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]