Okay upgraded to 2.8.0 xerces.

I now get the error

cvc-elt.1: Cannot find the declaration of element 'shippingRequest'.
Column: 201 Line: 2 PublicID: null

It no longer is finding the schema on the local app server so I just
removed it. The old version wanted it there.

I added elementFormDefault="qualified" to the schema but still get the
above error. I thought the elementFormDefault worked in reverse from the
way it does which is why I didn't have it there to begin with.

> -----Original Message-----
> From: Michael Glavassevich [mailto:[EMAIL PROTECTED] 
> Sent: Thursday, April 20, 2006 9:57 AM
> To: [email protected]
> Subject: Re: Xerces 1.4.4, XML, XSD and validation
> 
> The local element declarations in your schema have no target 
> namespace. 
> You either need to change your schema (for instance by adding 
> the attribute elementFormDefault="qualified" to xsd:schema) 
> or fix the namespace declarations in your instance document.
> 
> Michael Glavassevich
> XML Parser Development
> IBM Toronto Lab
> E-mail: [EMAIL PROTECTED]
> E-mail: [EMAIL PROTECTED]
> 
> "Scott Shaver" <[EMAIL PROTECTED]> wrote on 04/20/2006 
> 11:05:26 AM:
> 
> > 
> > I'm having trouble with the 1.4.4 xerces trying to validate 
> an xml doc 
> > against a XSD schema.
> > 
> > It always gives me the error shown below. I know it is finding the 
> > schema file because when it doesn't I get a exception telling me so.
> > 
> > 
> > Here are:
> > 
> > Error message
> > XML
> > XSD
> > The code
> > 
> > ==========================
> > The Error
> > ==========================
> > 
> > The content of element type "shippingRequest" must match 
> > 
> "(order_date,brand_name,shipRequestType,shipHow,exportDocsURL,so,po,cu
> > st omer_po?,shipInstructions?,shipTo,items,comment?)". Column: 19 
> > Line: 43
> > PublicID: null
> > 
> > ==========================
> > The XML
> > ==========================
> > 
> > <?xml version="1.0"?>
> > <shippingRequest xmlns="http://foo.comp.com";
> > xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance";
> > xsi:schemaLocation="http://foo.comp.com/downloads/it/schema
> > riverbed_ship_request.xsd">
> >     <order_date>2006-03-09</order_date>
> >     <brand_name>FOO</brand_name>
> >     <shipRequestType>Evaluation</shipRequestType>
> >     <shipHow shippingCarrier="ROUTED" 
> shippingServiceLevel="NEXT DAY AM"
> > modeOfTransport="AIR" freightTerms="WE PAY"/>
> >     <exportDocsURL>https://foo.comp.com</exportDocsURL>
> >     <so>99165</so>
> >     <po>65512</po>
> >     <customer_po>77836 NRR</customer_po>
> >     <shipTo>
> >             <company>GENERAL AIRCRAFT ENGINES - OH</company>
> >             <attn>DAVID SMITHY</attn>
> >             <address>ONE MAN WAY</address>
> >             <city>CINCINNATI</city>
> >             <state>OH</state>
> >             <postalCode>2342315</postalCode>
> >             <country>US</country>
> >     </shipTo>
> >     <items>
> >             <item>
> >                     <item_reason>NEW</item_reason>
> >                     <type>STANDARD</type>
> >                     <creation_date>2006-03-09</creation_date>
> >                     <update_date>2006-03-09</update_date>
> >                     
> <schedule_ship_date>2006-03-16</schedule_ship_date>
> >                     <order_line_id>799082</order_line_id>
> >                     <quantity>2</quantity>
> >                     <part_num>M23SHA-03010</part_num>
> >             </item>
> >             <item>
> >                     <item_reason>NEW</item_reason>
> >                     <type>STANDARD</type>
> >                     <creation_date>2006-03-09</creation_date>
> >                     <update_date>2006-03-09</update_date>
> >                     
> <schedule_ship_date>2006-03-16</schedule_ship_date>
> >                     <order_line_id>799091</order_line_id>
> >                     <quantity>1</quantity>
> >                     <part_num>M324CMC-08003</part_num>
> >             </item>
> >     </items>
> >     <comment>ATTN:  DAVID SMITHY</comment> </shippingRequest>
> > 
> > =======================
> > The Schema
> > =======================
> > <?xml version="1.0"?>
> > 
> > <xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema";
> > targetNamespace="http://foo.comp.com"; xmlns="http://foo.comp.com";>
> >   <!-- Schema definition for shipping requests sent to rbed 
> from foo 
> > -->
> > 
> >   <xsd:element name="shippingRequest" type="ShippingRequestType"/>
> > 
> >   <xsd:complexType name="ShippingRequestType">
> >     <xsd:sequence>
> >       <!-- create date of the order -->
> >       <xsd:element name="order_date" type="xsd:date"/>
> > 
> >       <!-- rbed or OEM (foo) name -->
> >       <xsd:element name="brand_name" type="xsd:string"/>
> > 
> >       <xsd:element name="shipRequestType" type="ShipRequestType"/>
> > 
> >       <xsd:element name="shipHow" type="ShippingMethod"/>
> > 
> >       <!-- URL pointing to a PDF file containing the export 
> documents
> -->
> >       <xsd:element name="exportDocsURL" type="xsd:string"/>
> > 
> >       <!-- foo so (order) number (this is used in the documentation 
> > file
> names) -->
> >       <xsd:element name="so"   type="xsd:string"/>
> > 
> >       <!-- rbed or OEM (foo) po number -->
> >       <xsd:element name="po" type="xsd:string"/>
> > 
> >        <!-- rbed or OEM customer's PO number -->
> >       <xsd:element name="customer_po" type="xsd:string" 
> minOccurs="0"
> > maxOccurs="1"/>
> > 
> >       <xsd:element name="shipInstructions" type="xsd:string"
> > minOccurs="0" maxOccurs="1"/>
> > 
> >       <xsd:element name="shipTo" type="Address"/>
> > 
> >       <xsd:element name="items" type="Items"/>
> > 
> >         <xsd:element name="comment" type="xsd:string" 
> minOccurs="0"/>
> > 
> >     </xsd:sequence>
> >   </xsd:complexType>
> > 
> >   <xsd:simpleType name="ShipRequestType">
> >     <xsd:restriction base="xsd:string">
> >       <xsd:enumeration value="Sale"/>
> >       <xsd:enumeration value="Evaluation"/>
> >       <xsd:enumeration value="RMA Replacement"/>
> >     </xsd:restriction>
> >   </xsd:simpleType>
> > 
> >   <xsd:complexType name="ShippingMethod">
> >     <xsd:attribute name="shippingCarrier" type="xsd:string"/>
> >     <xsd:attribute name="shippingServiceLevel" type="xsd:string"/>
> >     <xsd:attribute name="modeOfTransport" type="xsd:string"/>
> >     <xsd:attribute name="freightTerms" type="xsd:string"/>
> >   </xsd:complexType>
> > 
> >   <xsd:complexType name="Address">
> >     <xsd:sequence>
> >       <xsd:element name="company"  type="xsd:string"/>
> >       <xsd:element name="attn"     type="xsd:string" minOccurs="0"
> > maxOccurs="1"/>
> >       <xsd:element name="address"  type="xsd:string"/>
> >       <xsd:element name="address2" type="xsd:string" minOccurs="0"
> > maxOccurs="1"/>
> >       <xsd:element name="address3" type="xsd:string" minOccurs="0"
> > maxOccurs="1"/>
> >       <xsd:element name="city"     type="xsd:string"/>
> >       <xsd:element name="state"    type="xsd:string"/>
> >       <xsd:element name="postalCode" type="xsd:string"/>
> >       <xsd:element name="country" type="xsd:string"/>
> >       <xsd:element name="phone"   type="xsd:string" minOccurs="0"
> > maxOccurs="1"/>
> >       <xsd:element name="email"   type="xsd:string" minOccurs="0"
> > maxOccurs="1"/>
> >     </xsd:sequence>
> >   </xsd:complexType>
> > 
> >   <xsd:simpleType name="LineItemType">
> >     <xsd:restriction base="xsd:string">
> >       <xsd:enumeration value="MODEL"/>
> >       <xsd:enumeration value="CLASS"/>
> >       <xsd:enumeration value="OPTION"/>
> >       <xsd:enumeration value="CONFIG"/>
> >     </xsd:restriction>
> >   </xsd:simpleType>
> > 
> >   <!--
>     An item is a single line item from the foo order system. 
> > It doesn't
> necessarily
>     represent an actuall orderable part 
> > number. Sometime it is just
> there to show
>     configuration information.
>   -->
> >   <xsd:complexType name="Items">
> >     <xsd:sequence>
> >       <xsd:element name="item" minOccurs="1" maxOccurs="unbounded">
> >         <xsd:complexType>
> >           <xsd:sequence>
> >             <!-- the reson this line is in the data -->
> >             <xsd:element name="item_reson" type="xsd:string"/>
> > 
> >             <!-- the type of this line on the order -->
> >             <xsd:element name="type" type="LineItemType"/>
> > 
> >             <!-- create date of the line item -->
> >             <xsd:element name="creation_date" type="xsd:date"/>
> > 
> >             <!-- date of last update to the line item -->
> >             <xsd:element name="update_date" type="xsd:date"/>
> > 
> >             <!-- date the line item is supposed to be shipped -->
> >             <xsd:element name="schedule_ship_date" type="xsd:date"/>
> > 
> >             <!-- this is the order_line_id of the item on the order 
> > that
> is this items parent line,
>                 if this line is it's
> > own parent then it is the top of a
> configured item. This happens
>  
> > when the part_num element is a star "*" part. A
> generated part 
> > number for a config.
>             -->
> >             <xsd:element name="parent_line_id" type="xsd:integer"
> > minOccurs="0" maxOccurs="1"/>
> > 
> >             <!-- uniquely identifies this PO line item in our OEM's
> 
> > database -->
> >             <xsd:element name="order_line_id" type="xsd:integer"
> > minOccurs="1" maxOccurs="1"/>
> > 
> >             <xsd:element name="quantity">
> >               <xsd:simpleType>
> >                 <xsd:restriction base="xsd:positiveInteger">
> >                   <xsd:maxExclusive value="100"/>
> >                 </xsd:restriction>
> >               </xsd:simpleType>
> >             </xsd:element>
> > 
> >             <!-- used in the packing list -->
> >             <xsd:element name="part_num" type="xsd:string"/>
> > 
> >             <!-- Special packing instructions, shipping 
> instructions,
> etc. -->
> >               <xsd:element name="note" type="xsd:string" 
> minOccurs="0"
> > maxOccurs="1"/>
> > 
> >           </xsd:sequence>
> >         </xsd:complexType>
> >       </xsd:element>
> >     </xsd:sequence>
> >   </xsd:complexType>
> > 
> > 
> > </xsd:schema>
> > 
> > 
> > =================
> > The code
> > =================
> >     public boolean validateSchema(String schemaURL, String 
> xml, String
> > ordernumber)
> >     {
> >         boolean retval = true;
> >         try
> > 
> >         {
> >             DOMParser domParser = new DOMParser();
> > 
> > 
> > 
> > 
> > domParser.setFeature("http://xml.org/sax/features/validation",true);
> > 
> > 
> > 
> domParser.setFeature("http://apache.org/xml/features/validation/schema
> > ",
> > true);
> > 
> > 
> > 
> domParser.setFeature("http://apache.org/xml/features/validation/schema
> > -f
> > ull-checking",true);
> > 
> > 
> > 
> domParser.setProperty("http://apache.org/xml/properties/schema/externa
> > l-
> > schemaLocation",schemaURL);
> > 
> > 
> >             Validator handler=new Validator();
> >             domParser.setErrorHandler(handler);
> > 
> >             domParser.parse(new InputSource(new StringReader(xml)));
> > 
> >             if(handler.validationError==true)
> >             {
> >                 doLogging("validateSchema()","XML failed 
> > validation:"+handler.saxParseException.getMessage()+" Column:
> > "+handler.saxParseException.getColumnNumber()+" Line:
> > "+handler.saxParseException.getLineNumber()+" PublicID:
> > "+handler.saxParseException.getPublicId(),true,true,false);
> >                 logError(ordernumber,"XML failed 
> validation:","System");
> >                 //handler.saxParseException.printStackTrace();
> >                 retval=false;
> >             }
> >             else
> >                 doLogging("validateSchema()","XML has been 
> > validated",true,true,false);
> >         }
> > 
> >         catch (Exception e)
> > 
> >         {
> >             e.printStackTrace();
> >         }
> > 
> >         return retval;
> >     }
> > 
> > 
> >     private class Validator extends DefaultHandler
> > 
> >     {
> > 
> >         public boolean  validationError = false;
> > 
> >         public SAXParseException saxParseException=null;
> > 
> > 
> >         public void error(SAXParseException exception) throws 
> > SAXException
> > 
> >         {
> >             validationError = true;
> > 
> >             saxParseException=exception;
> >         }
> > 
> > 
> >         public void fatalError(SAXParseException exception) throws 
> > SAXException
> > 
> >         {
> > 
> >             validationError = true;
> > 
> >             saxParseException=exception;
> > 
> >         }
> > 
> > 
> >         public void warning(SAXParseException exception) throws 
> > SAXException
> > 
> >         {
> > 
> >         }
> > 
> >     }
> > 
> > 
> > 
> > 
> > SPECIAL NOTICE
> > 
> > 
> > All information transmitted hereby is intended only for the 
> use of the
> > addressee(s) named above and may contain confidential and 
> privileged 
> > information. Any unauthorized review, use, disclosure or 
> distribution 
> > of confidential and privileged information is prohibited. If the 
> > reader of this message is not the intended recipient(s) or the 
> > employee or
> agent
> > responsible for delivering the message to the intended 
> recipient, you
> are
> > hereby notified that you must not read this transmission and that
> disclosure,
> > copying, printing, distribution or use of any of the information
> contained
> > in or attached to this transmission is STRICTLY PROHIBITED.
> > 
> > Anyone who receives confidential and privileged information in error
> should
> > notify us immediately by telephone and mail the original 
> message to us
> at
> > the above address and destroy all copies.  To the extent 
> any portion 
> > of
> this
> > communication contains public information, no such 
> restrictions apply 
> > to
> that
> > information. (gate01)
> > 
> > 
> ---------------------------------------------------------------------
> > To unsubscribe, e-mail: [EMAIL PROTECTED]
> > For additional commands, e-mail: [EMAIL PROTECTED]
> > 
> 
> 
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: [EMAIL PROTECTED]
> For additional commands, e-mail: [EMAIL PROTECTED]
> 
> 

---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to