Hi I have an XSD defined with multiple includes ie:
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"> <xs:annotation> <xs:documentation>Version 1.2</xs:documentation> </xs:annotation> <xs:include schemaLocation="CARD_RANGE.xsd"/> <xs:include schemaLocation="CARD.TYPE.xsd"/> .... <xs:element name="TRANSACTION"> <xs:complexType> <xs:choice maxOccurs="unbounded"> <xs:element name="CARD_RANGE" type="CARD_RANGEType"/> <xs:element name="CARD_TYPE" type="CARD_TYPEType"/> etc... The includeded xsd's also has includes: <?xml version="1.0" encoding="UTF-8"?> <xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified" attributeFormDefault="unqualified"> <xs:include schemaLocation="PCMSPOSSimpleTypes.xsd"/> <xs:complexType name="CARD_RANGEType"> etc.. which inturn has an include <?xml version="1.0" encoding="UTF-8"?> <xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified" attributeFormDefault="unqualified"> <xs:annotation> <xs:documentation>Version 1.1</xs:documentation> </xs:annotation> <xs:include schemaLocation="PCMSSimpleTypes.xsd"/> <xs:simpleType name="POSNAMEType4"> <xs:restriction base="PCMSNAMEType"> etc.... I jar all the xsd files up in a jar . In the application code I reference this as follows: URL url = getClass().getResource(initialXSD); String xsdLocation=url.toString(); parser.setProperty("http://apache.org/xml/properties/schema/external-noNames paceSchemaLocation",xsdLocation); The xsdLocation looks like: jar:file:/C:/Tomcat 4.1/webapps/data/WEB-INF/lib/xsd.jar!/PCMSStructures.xsd under xerces1 My DOMParser can see this and uses the XSD correctly. Under Xerces2 it can't find the XSD. I get : DOM parser invalid SELLING_CODE DOM exception : org.xml.sax.SAXParseException: src-resolve: Cannot resolve the name 'LONGLABELType' to a(n) type definition component. DOM exception : org.xml.sax.SAXParseException: src-resolve: Cannot resolve the name 'LONGLABELType' to a(n) simpleType definition component. DOM exception : org.xml.sax.SAXParseException: src-resolve: Cannot resolve the name 'LONGLABELType' to a(n) type definition component. DOM exception : org.xml.sax.SAXParseException: src-resolve: Cannot resolve the name 'LONGLABELType' to a(n) simpleType definition component. DOM exception : org.xml.sax.SAXParseException: src-resolve: Cannot resolve the name 'PCMSINTEGERType' to a(n) type definition component. DOM exception : org.xml.sax.SAXParseException: src-resolve: Cannot resolve the name 'PCMSINTEGERType' to a(n) simpleType definition component. DOM exception : org.xml.sax.SAXParseException: src-resolve: Cannot resolve the name 'ORG_UNIT_COMPANYType' to a(n) type definition component. DOM exception : org.xml.sax.SAXParseException: src-resolve: Cannot resolve the name 'CARD_RANGEType' to a(n) type definition component. DOM exception : org.xml.sax.SAXParseException: src-resolve: Cannot resolve the name 'CREDITType' to a(n) type definition component. DOM exception : org.xml.sax.SAXParseException: src-resolve: Cannot resolve the name 'LINKED_PRODUCTType' to a(n) type definition component. DOM exception : org.xml.sax.SAXParseException: src-resolve: Cannot resolve the name 'OPERATORType' to a(n) type definition component. DOM exception : org.xml.sax.SAXParseException: src-resolve: Cannot resolve the name 'ORG_UNIT_OUTLETType' to a(n) type definition component. DOM exception : org.xml.sax.SAXParseException: src-resolve: Cannot resolve the name 'PAYMENT_MEDIAType' to a(n) type definition component. DOM exception : org.xml.sax.SAXParseException: src-resolve: Cannot resolve the name 'PAYMENT_TYPEType' to a(n) type definition component. DOM exception : org.xml.sax.SAXParseException: src-resolve: Cannot resolve the name 'PRICEType' to a(n) type definition component. DOM exception : org.xml.sax.SAXParseException: src-resolve: Cannot resolve the name 'PRICE_BANDType' to a(n) type definition component. DOM exception : org.xml.sax.SAXParseException: src-resolve: Cannot resolve the name 'PRODUCTType' to a(n) type definition component. DOM exception : org.xml.sax.SAXParseException: src-resolve: Cannot resolve the name 'PRODUCT_GROUPType' to a(n) type definition component. DOM exception : org.xml.sax.SAXParseException: src-resolve: Cannot resolve the name 'PRODUCT_GROUP_STRUCTUREType' to a(n) type definition component. DOM exception : org.xml.sax.SAXParseException: src-resolve: Cannot resolve the name 'PRODUCT_PROD_GROUPINGType' to a(n) type definition component. DOM exception : org.xml.sax.SAXParseException: src-resolve: Cannot resolve the name 'PROMOTIONType' to a(n) type definition component. DOM exception : org.xml.sax.SAXParseException: src-resolve: Cannot resolve the name 'PURCHASE_ADVICEType' to a(n) type definition component. DOM exception : org.xml.sax.SAXParseException: src-resolve: Cannot resolve the name 'ROLEType' to a(n) type definition component. DOM exception : org.xml.sax.SAXParseException: src-resolve: Cannot resolve the name 'SELLING_CODEType' to a(n) type definition component. DOM exception : org.xml.sax.SAXParseException: src-resolve: Cannot resolve the name 'SERIALISED_PRODUCTType' to a(n) type definition component. DOM exception : org.xml.sax.SAXParseException: src-resolve: Cannot resolve the name 'TAX_CODEType' to a(n) type definition component. DOM exception : org.xml.sax.SAXParseException: src-resolve: Cannot resolve the name 'TILLType' to a(n) type definition component. DOM exception : org.xml.sax.SAXParseException: src-resolve: Cannot resolve the name 'ORG_UNIT_WAREHOUSEType' to a(n) type definition component. If I change the XSD location to point to file:///c:/temp/myxsd.xsd it still doesn't work. It sees to look for the included files in the working dirctory. If I drop all the xsd files into the working directory it all works correctly. I am working with the xerces2 that comes with tomcat 4.1.2 (whatver version that is) Trying the latest xerces2 I get the error as : DOM parser invalid SELLING_CODE DOM exception : org.xml.sax.SAXParseException: cvc-elt.1: Cannot find the declaration of element 'FILE'. Anyone have any pointers on how to get xerces2 to accept an XSD with includes ? Mark ________________________________________________________________________ The information contained in this e-mail is intended only for the person or entity to which it is addressed and may contain confidential and/or privileged material. If you are not the intended recipient of this e-mail, the use of this information or any disclosure, copying or distribution is prohibited and may be unlawful. If you received this in error, please contact the sender and delete the material from any computer. The views expressed in this e-mail may not necessarily be the views of The PCMS Group plc and should not be taken as authority to carry out any instruction contained. --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
