You are viewing a plain text version of this content. The canonical link for it is here.
Posted to jdo-dev@db.apache.org by "Craig Russell (JIRA)" <ji...@apache.org> on 2007/03/14 22:15:09 UTC

[jira] Commented: (JDO-472) Cannot use JDO 2 xsd for XML validation

    [ https://issues.apache.org/jira/browse/JDO-472?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#action_12480933 ] 

Craig Russell commented on JDO-472:
-----------------------------------

The schemas have been tested using the test cases in the api20 project. Please take a look at javax.jdo.schema.XMLTest in the Apache repository. It uses XMLUtil as a helper class.

The test case uses DocumentBuilder not SchemaFactory, and it seems to work in both validating and non-validating modes. I don't know if anyone has ever tried these schemas with SchemaFactory.

It looks like there might be a copy/paste error in your description. The schemas that were checked in are e.g. javax/jdo/jdo_2_0.xsd in the jar so that is the resource name that should be used, not getResource("/jdo_2.0.xsd"). 

> Cannot use JDO 2 xsd for XML validation
> ---------------------------------------
>
>                 Key: JDO-472
>                 URL: https://issues.apache.org/jira/browse/JDO-472
>             Project: JDO
>          Issue Type: Bug
>    Affects Versions: JDO 2 final
>            Reporter: Ilan Kirsh
>             Fix For: JDO 2 final
>
>
> I am trying to use the last JDO 2.0 xsd with:
> SchemaFactory factory = SchemaFactory.newInstance(XMLConstants.W3C_XML_SCHEMA_NS_URI);
> URL xsdURL = getClass().getResource("/jdo_2.0.xsd");
> Schema schema = factory.newSchema(xsdURL);
> First I got the following exception (from newSchema):
> org.xml.sax.SAXParseException: cos-nonambig: "http://java.sun.com/xml/ns/jdo/jdo":extension and "http://java.sun.com/xml/ns/jdo/jdo":extension (or elements from their substitution group) violate "Unique Particle Attribution". During validation against this schema, ambiguity would be created for those two particles.
> And after trying to fix it, I got the following exception (from newSchema):
> org.xml.sax.SAXParseException: src-resolve.4.2: Error resolving component 'xs:attlist.jdo'. It was detected that 'xs:attlist.jdo' is in namespace 'http://www.w3.org/2001/XMLSchema', but components from this namespace are not referenceable from schema document 'file:/D:/odb/dv/rt/class/jdo.xsd'. If this is the incorrect namespace, perhaps the prefix of 'xs:attlist.jdo' needs to be changed. If this is the correct namespace, then an appropriate 'import' tag should be added to 'file:/D:/odb/dv/rt/class/jdo.xsd'.
> The same 3 lines work well with JPA 1.0 xsd. Has anyone used JDO 2.0 xsd successfully already?

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.