I think that you have to to fully qualify the schema location.

for this:

http://www.imsproject.org/xsd/imscp_rootv1p1p2 imscp_rootv1p1p2.xsd

as you know, the first argument is the namespace, and the second is the
schema defining that namespace.

if this schema were  a file on you local disk, then you might put

http://www.imsproject.org/xsd/imscp_rootv1p1p2
file:///C://MyXmlDocs/MySchemas/imscp_rootv1p1p2.xsd

perhaps you could unpack the zip to a local temp directory before
validation / parsing?


apologies to all if this is wrong, i'm new to this too and have had some
similar problems.

john


                                                                                
                                                  
                    "Schawn E.                                                  
                                                  
                    Thropp"              To:     [EMAIL PROTECTED]              
                                       
                    <[EMAIL PROTECTED]       cc:                                
                                                      
                    .org>                Subject:     setProperty() question    
                                                  
                                                                                
                                                  
                    21/11/2001                                                  
                                                  
                    14:08                                                       
                                                  
                    Please respond                                              
                                                  
                    to                                                          
                                                  
                    xerces-j-user                                               
                                                  
                                                                                
                                                  
                                                                                
                                                  




I have a several questions on the use of the setProperty() function on
DOMParser.  I am useing Xerces-J 1.4.4

Question 1:
I have an implementation that inherits from DOMParser

ParserA extends DOMParser

ParserB extends ParserA

ParserB calls the
setProperty("
http://apache.org/xml/properties/schema/external-schemaLocation";)
to set the
location of the XML Schemas to use during parsing/validation.  What is
the proper syntax for this if you want
to set multiple XSDs to use

setProperty(
"http://apache.org/xml/properties/schema/external-schemaLocation";,
                      "<schema1 namespace> <schema1 location>");

setProperty(
"http://apache.org/xml/properties/schema/external-schemaLocation";,
                      "<schema2 namespace> <schema2 location>");

setProperty(
"http://apache.org/xml/properties/schema/external-schemaLocation";,
                      "<schema3 namespace> <schema3 location>" );

or

setProperty(
"http://apache.org/xml/properties/schema/external-schemaLocation";,
                      "<schema1 namespace> <schema1 location>"
                      "<schema2 namespace> <schema2 location>"
                      "<schema3 namespace> <schema3 location>");

Or doesn't it matter.

Question 2.
Either way that I try, it seems to not recognize the fact that I set the
property.  It always tries to look on my Desktop for the XSDs.  The
following error that I receive in my Java Console is attached.  Is there
something else I need to do to tell the DOMParser to use the properties
that I have set.

Question 3.
Am I setting the location of the schema correctly.  The scenario we have
is that we will get a zip file that contains an XML instance in the root
of the zip.  Also in the root of the zip should be the XSDs that are
need to parse/validate the XML instance.  So I need to set our DOMParser
to use the schemas that are included in the root of the zip for
parsing.  Can this be done?  If anyone needs to see an example of the
zip please let me know.

Thanks

Java(TM) Plug-in: Version 1.3.0-C

Using JRE version 1.3.0 Java HotSpot(TM) Client VM

User home directory = C:\WINNT\Profiles\thropps

Proxy Configuration: no proxy



JAR cache enabled.

In CPDOMParser::setControlDocsProperty()

GetProperty: http://www.imsproject.org/xsd/imscp_rootv1p1p2
imscp_rootv1p1p2.xsd http://www.adlnet.org/xsd/adl_cp_rootv1p2
adl_cp_rootv1p1.xsd http://www.imsglobal.org/xsd/imsmd_rootv1p2p1
imsmd_rootv1p2.xsd

[Error] :0:0: File
"file:///C:/WINNT/Profiles/thropps/Desktop/imsmd_rootv1p2.xsd" not found.

java.io.FileNotFoundException: C:
\WINNT\Profiles\thropps\Desktop\imsmd_rootv1p2.xsd (The system cannot find
the file specified)

           at java.io.FileInputStream.open(Native Method)

           at java.io.FileInputStream.<init>(Unknown Source)

           at sun.net.www.protocol.file.FileURLConnection.connect(Unknown
Source)

           at
sun.net.www.protocol.file.FileURLConnection.getInputStream(Unknown Source)

           at java.net.URL.openStream(Unknown Source)

           at
org.apache.xerces.readers.DefaultReaderFactory.createReader(DefaultReaderFactory.java:149)


           at
org.apache.xerces.readers.DefaultEntityHandler.startReadingFromDocument(DefaultEntityHandler.java:493)


           at
org.apache.xerces.framework.XMLParser.parseSomeSetup(XMLParser.java:314)

           at
org.apache.xerces.framework.XMLParser.parse(XMLParser.java:1097)

           at
org.apache.xerces.validators.common.XMLValidator.resolveSchemaGrammar(XMLValidator.java:2823)


           at
org.apache.xerces.validators.common.XMLValidator.parseSchemas(XMLValidator.java:2747)


           at
org.apache.xerces.validators.common.XMLValidator.bindNamespacesToElementAndAttributes(XMLValidator.java:2628)


           at
org.apache.xerces.validators.common.XMLValidator.callStartElement(XMLValidator.java:1218)


           at
org.apache.xerces.framework.XMLDocumentScanner.scanElement(XMLDocumentScanner.java:1806)


           at
org.apache.xerces.framework.XMLDocumentScanner$ContentDispatcher.dispatch(XMLDocumentScanner.java:949)


           at
org.apache.xerces.framework.XMLDocumentScanner.parseSome(XMLDocumentScanner.java:381)


           at
org.apache.xerces.framework.XMLParser.parse(XMLParser.java:1098)

           at
org.adl.parsers.dom.ADLDOMParser.parseDocumentNode(ADLDOMParser.java:516)

           at
org.adl.parsers.dom.CPDOMParser.checkManifest(CPDOMParser.java:391)

           at
org.adl.tsuite.packaging.PackagingTester.validate(PackagingTester.java:151)

           at
org.adl.tsuite.packaging.PackagingDriver.validateManifest(PackagingDriver.java:442)


           at
org.adl.tsuite.packaging.PackagingDriver.validatePackage(PackagingDriver.java:378)


           at
org.adl.tsuite.packaging.PackagingDriver.startValidateTest(PackagingDriver.java:280)


[Error] :0:0: File
"file:///C:/WINNT/Profiles/thropps/Desktop/imscp_rootv1p1p2.xsd" not found.

java.io.FileNotFoundException: C:
\WINNT\Profiles\thropps\Desktop\imscp_rootv1p1p2.xsd (The system cannot
find the file specified)

           at java.io.FileInputStream.open(Native Method)

           at java.io.FileInputStream.<init>(Unknown Source)

           at sun.net.www.protocol.file.FileURLConnection.connect(Unknown
Source)

           at
sun.net.www.protocol.file.FileURLConnection.getInputStream(Unknown Source)

           at java.net.URL.openStream(Unknown Source)

           at
org.apache.xerces.readers.DefaultReaderFactory.createReader(DefaultReaderFactory.java:149)


           at
org.apache.xerces.readers.DefaultEntityHandler.startReadingFromDocument(DefaultEntityHandler.java:493)


           at
org.apache.xerces.framework.XMLParser.parseSomeSetup(XMLParser.java:314)

           at
org.apache.xerces.framework.XMLParser.parse(XMLParser.java:1097)

           at
org.apache.xerces.validators.common.XMLValidator.resolveSchemaGrammar(XMLValidator.java:2823)


           at
org.apache.xerces.validators.common.XMLValidator.parseSchemas(XMLValidator.java:2747)


           at
org.apache.xerces.validators.common.XMLValidator.bindNamespacesToElementAndAttributes(XMLValidator.java:2628)


           at
org.apache.xerces.validators.common.XMLValidator.callStartElement(XMLValidator.java:1218)


           at
org.apache.xerces.framework.XMLDocumentScanner.scanElement(XMLDocumentScanner.java:1806)


           at
org.apache.xerces.framework.XMLDocumentScanner$ContentDispatcher.dispatch(XMLDocumentScanner.java:949)


           at
org.apache.xerces.framework.XMLDocumentScanner.parseSome(XMLDocumentScanner.java:381)


           at
org.apache.xerces.framework.XMLParser.parse(XMLParser.java:1098)

           at
org.adl.parsers.dom.ADLDOMParser.parseDocumentNode(ADLDOMParser.java:516)

           at
org.adl.parsers.dom.CPDOMParser.checkManifest(CPDOMParser.java:391)

           at
org.adl.tsuite.packaging.PackagingTester.validate(PackagingTester.java:151)

           at
org.adl.tsuite.packaging.PackagingDriver.validateManifest(PackagingDriver.java:442)


           at
org.adl.tsuite.packaging.PackagingDriver.validatePackage(PackagingDriver.java:378)


           at
org.adl.tsuite.packaging.PackagingDriver.startValidateTest(PackagingDriver.java:280)


[Error] :0:0: File
"file:///C:/WINNT/Profiles/thropps/Desktop/adl_cp_rootv1p1.xsd" not found.

java.io.FileNotFoundException: C:
\WINNT\Profiles\thropps\Desktop\adl_cp_rootv1p1.xsd (The system cannot find
the file specified)

           at java.io.FileInputStream.open(Native Method)

           at java.io.FileInputStream.<init>(Unknown Source)

           at sun.net.www.protocol.file.FileURLConnection.connect(Unknown
Source)

           at
sun.net.www.protocol.file.FileURLConnection.getInputStream(Unknown Source)

           at java.net.URL.openStream(Unknown Source)

           at
org.apache.xerces.readers.DefaultReaderFactory.createReader(DefaultReaderFactory.java:149)


           at
org.apache.xerces.readers.DefaultEntityHandler.startReadingFromDocument(DefaultEntityHandler.java:493)


           at
org.apache.xerces.framework.XMLParser.parseSomeSetup(XMLParser.java:314)

           at
org.apache.xerces.framework.XMLParser.parse(XMLParser.java:1097)

           at
org.apache.xerces.validators.common.XMLValidator.resolveSchemaGrammar(XMLValidator.java:2823)


           at
org.apache.xerces.validators.common.XMLValidator.parseSchemas(XMLValidator.java:2747)


           at
org.apache.xerces.validators.common.XMLValidator.bindNamespacesToElementAndAttributes(XMLValidator.java:2628)


           at
org.apache.xerces.validators.common.XMLValidator.callStartElement(XMLValidator.java:1218)


           at
org.apache.xerces.framework.XMLDocumentScanner.scanElement(XMLDocumentScanner.java:1806)


           at
org.apache.xerces.framework.XMLDocumentScanner$ContentDispatcher.dispatch(XMLDocumentScanner.java:949)


           at
org.apache.xerces.framework.XMLDocumentScanner.parseSome(XMLDocumentScanner.java:381)


           at
org.apache.xerces.framework.XMLParser.parse(XMLParser.java:1098)

           at
org.adl.parsers.dom.ADLDOMParser.parseDocumentNode(ADLDOMParser.java:516)

           at
org.adl.parsers.dom.CPDOMParser.checkManifest(CPDOMParser.java:391)

           at
org.adl.tsuite.packaging.PackagingTester.validate(PackagingTester.java:151)

           at
org.adl.tsuite.packaging.PackagingDriver.validateManifest(PackagingDriver.java:442)


           at
org.adl.tsuite.packaging.PackagingDriver.validatePackage(PackagingDriver.java:378)


           at
org.adl.tsuite.packaging.PackagingDriver.startValidateTest(PackagingDriver.java:280)


[Error] :0:0: File
"file:///C:/WINNT/Profiles/thropps/Desktop/imsmd_rootv1p2p1.xsd" not found.

java.io.FileNotFoundException: C:
\WINNT\Profiles\thropps\Desktop\imsmd_rootv1p2p1.xsd (The system cannot
find the file specified)

           at java.io.FileInputStream.open(Native Method)

           at java.io.FileInputStream.<init>(Unknown Source)

           at sun.net.www.protocol.file.FileURLConnection.connect(Unknown
Source)

           at
sun.net.www.protocol.file.FileURLConnection.getInputStream(Unknown Source)

           at java.net.URL.openStream(Unknown Source)

           at
org.apache.xerces.readers.DefaultReaderFactory.createReader(DefaultReaderFactory.java:149)


           at
org.apache.xerces.readers.DefaultEntityHandler.startReadingFromDocument(DefaultEntityHandler.java:493)


           at
org.apache.xerces.framework.XMLParser.parseSomeSetup(XMLParser.java:314)

           at
org.apache.xerces.framework.XMLParser.parse(XMLParser.java:1097)

           at
org.apache.xerces.validators.common.XMLValidator.resolveSchemaGrammar(XMLValidator.java:2823)


           at
org.apache.xerces.validators.common.XMLValidator.parseSchemas(XMLValidator.java:2747)


           at
org.apache.xerces.validators.common.XMLValidator.bindNamespacesToElementAndAttributes(XMLValidator.java:2688)


           at
org.apache.xerces.validators.common.XMLValidator.callStartElement(XMLValidator.java:1218)


           at
org.apache.xerces.framework.XMLDocumentScanner.scanElement(XMLDocumentScanner.java:1806)


           at
org.apache.xerces.framework.XMLDocumentScanner$ContentDispatcher.dispatch(XMLDocumentScanner.java:949)


           at
org.apache.xerces.framework.XMLDocumentScanner.parseSome(XMLDocumentScanner.java:381)


           at
org.apache.xerces.framework.XMLParser.parse(XMLParser.java:1098)

           at
org.adl.parsers.dom.ADLDOMParser.parseDocumentNode(ADLDOMParser.java:516)

           at
org.adl.parsers.dom.CPDOMParser.checkManifest(CPDOMParser.java:391)

           at
org.adl.tsuite.packaging.PackagingTester.validate(PackagingTester.java:151)

           at
org.adl.tsuite.packaging.PackagingDriver.validateManifest(PackagingDriver.java:442)


           at
org.adl.tsuite.packaging.PackagingDriver.validatePackage(PackagingDriver.java:378)


           at
org.adl.tsuite.packaging.PackagingDriver.startValidateTest(PackagingDriver.java:280)


[Error] :0:0: File
"file:///C:/WINNT/Profiles/thropps/Desktop/adlcp_rootv1p2.xsd" not found.

java.io.FileNotFoundException: C:
\WINNT\Profiles\thropps\Desktop\adlcp_rootv1p2.xsd (The system cannot find
the file specified)

           at java.io.FileInputStream.open(Native Method)

           at java.io.FileInputStream.<init>(Unknown Source)

           at sun.net.www.protocol.file.FileURLConnection.connect(Unknown
Source)

           at
sun.net.www.protocol.file.FileURLConnection.getInputStream(Unknown Source)

           at java.net.URL.openStream(Unknown Source)

           at
org.apache.xerces.readers.DefaultReaderFactory.createReader(DefaultReaderFactory.java:149)


           at
org.apache.xerces.readers.DefaultEntityHandler.startReadingFromDocument(DefaultEntityHandler.java:493)


           at
org.apache.xerces.framework.XMLParser.parseSomeSetup(XMLParser.java:314)

           at
org.apache.xerces.framework.XMLParser.parse(XMLParser.java:1097)

           at
org.apache.xerces.validators.common.XMLValidator.resolveSchemaGrammar(XMLValidator.java:2823)


           at
org.apache.xerces.validators.common.XMLValidator.parseSchemas(XMLValidator.java:2747)


           at
org.apache.xerces.validators.common.XMLValidator.bindNamespacesToElementAndAttributes(XMLValidator.java:2688)


           at
org.apache.xerces.validators.common.XMLValidator.callStartElement(XMLValidator.java:1218)


           at
org.apache.xerces.framework.XMLDocumentScanner.scanElement(XMLDocumentScanner.java:1806)


           at
org.apache.xerces.framework.XMLDocumentScanner$ContentDispatcher.dispatch(XMLDocumentScanner.java:949)


           at
org.apache.xerces.framework.XMLDocumentScanner.parseSome(XMLDocumentScanner.java:381)


           at
org.apache.xerces.framework.XMLParser.parse(XMLParser.java:1098)

           at
org.adl.parsers.dom.ADLDOMParser.parseDocumentNode(ADLDOMParser.java:516)

           at
org.adl.parsers.dom.CPDOMParser.checkManifest(CPDOMParser.java:391)

           at
org.adl.tsuite.packaging.PackagingTester.validate(PackagingTester.java:151)

           at
org.adl.tsuite.packaging.PackagingDriver.validateManifest(PackagingDriver.java:442)


           at
org.adl.tsuite.packaging.PackagingDriver.validatePackage(PackagingDriver.java:378)


           at
org.adl.tsuite.packaging.PackagingDriver.startValidateTest(PackagingDriver.java:280)


[Error] :0:0: File
"file:///C:/WINNT/Profiles/thropps/Desktop/imscp_rootv1p1p2.xsd" not found.

java.io.FileNotFoundException: C:
\WINNT\Profiles\thropps\Desktop\imscp_rootv1p1p2.xsd (The system cannot
find the file specified)

           at java.io.FileInputStream.open(Native Method)

           at java.io.FileInputStream.<init>(Unknown Source)

           at sun.net.www.protocol.file.FileURLConnection.connect(Unknown
Source)

           at
sun.net.www.protocol.file.FileURLConnection.getInputStream(Unknown Source)

           at java.net.URL.openStream(Unknown Source)

           at
org.apache.xerces.readers.DefaultReaderFactory.createReader(DefaultReaderFactory.java:149)


           at
org.apache.xerces.readers.DefaultEntityHandler.startReadingFromDocument(DefaultEntityHandler.java:493)


           at
org.apache.xerces.framework.XMLParser.parseSomeSetup(XMLParser.java:314)

           at
org.apache.xerces.framework.XMLParser.parse(XMLParser.java:1097)

           at
org.apache.xerces.validators.common.XMLValidator.resolveSchemaGrammar(XMLValidator.java:2823)


           at
org.apache.xerces.validators.common.XMLValidator.parseSchemas(XMLValidator.java:2747)


           at
org.apache.xerces.validators.common.XMLValidator.bindNamespacesToElementAndAttributes(XMLValidator.java:2688)


           at
org.apache.xerces.validators.common.XMLValidator.callStartElement(XMLValidator.java:1218)


           at
org.apache.xerces.framework.XMLDocumentScanner.scanElement(XMLDocumentScanner.java:1806)


           at
org.apache.xerces.framework.XMLDocumentScanner$ContentDispatcher.dispatch(XMLDocumentScanner.java:949)


           at
org.apache.xerces.framework.XMLDocumentScanner.parseSome(XMLDocumentScanner.java:381)


           at
org.apache.xerces.framework.XMLParser.parse(XMLParser.java:1098)

           at
org.adl.parsers.dom.ADLDOMParser.parseDocumentNode(ADLDOMParser.java:516)

           at
org.adl.parsers.dom.CPDOMParser.checkManifest(CPDOMParser.java:391)

           at
org.adl.tsuite.packaging.PackagingTester.validate(PackagingTester.java:151)

           at
org.adl.tsuite.packaging.PackagingDriver.validateManifest(PackagingDriver.java:442)


           at
org.adl.tsuite.packaging.PackagingDriver.validatePackage(PackagingDriver.java:378)


           at
org.adl.tsuite.packaging.PackagingDriver.startValidateTest(PackagingDriver.java:280)



------------
The following are the parser errors that I receive:

    General Schema Error: Can't get back Schema document's root element
:imsmd_rootv1p2.xsd.
    General Schema Error: Can't get back Schema document's root element
:imscp_rootv1p1p2.xsd.
    General Schema Error: Can't get back Schema document's root element
:adl_cp_rootv1p1.xsd.
    General Schema Error: Can't get back Schema document's root element
:imsmd_rootv1p2p1.xsd.
    General Schema Error: Can't get back Schema document's root element
:adlcp_rootv1p2.xsd.
    General Schema Error: Can't get back Schema document's root element
:imscp_rootv1p1p2.xsd.
    General Schema Error: Grammar with uri:
http://www.imsproject.org/xsd/imscp_rootv1p1p2 , can not be found; schema
namespace may be wrong: Xerces supports schemas from the "
http://www.w3.org/2001/XMLSchema"; namespace or the instance document's
namespace may not match the targetNamespace of the schema.
    Element type "manifest" must be declared
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]


**********************************************************************
This e-mail (including any attachments) is intended only for
the recipient(s) named above. It may contain confidential or
privileged information and should not be read, copied or
otherwise used or disseminated by any unauthorised person.
Any views or opinions expressed are solely those of the author
and do not necessarily represent those of Yes Television
(Europe) Ltd . If you are not the named recipient, please
contact the sender and delete the e-mail from your system.
**********************************************************************


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

Reply via email to