[oXygen-user] XProc RNC schema not valid with oNVDL

George Cristian Bina
Fri Nov 7 06:14:32 CST 2008


Hi Florent,

Those errors appear when the DTD compatibility spec for ID/IDREF/IDREFs 
is enforced. By default that is enabled but you can turn it off in 
Options->Preferences -- XML / XML Parser -- Relax NG -- Check ID/IDREF.

The link to the spec is here:
http://www.oasis-open.org/committees/relax-ng/compatibility.html

Basically one problem is that if some structure is matched by two 
patterns and one assigns a certain ID type then the other pattern should 
also assign that ID type. In general the issue appears when you have 
ID/IDREF(S) attributes defined by one pattern and a pattern that allows 
anything. The solution is to specify the pattern that allows anything to 
exclude the names that are defined as ID/IDREF(S).

The other problem is I believe related with this part from the link above:
***
# the first child of the element ancestor is a name element
***
which disallows the use of the anyName or nsName name class in defining 
elements containing attributes with a not null ID type.

Best Regards,
George
--
George Cristian Bina
<oXygen/> XML Editor, Schema Editor and XSLT Editor/Debugger
http://www.oxygenxml.com


Florent Georges wrote:
>   Hi,
> 
>   I've downloaded the official XProc RNC grammar from:
> 
>     http://www.w3.org/TR/xproc/schemas/xproc.rnc
>     http://www.w3.org/TR/xproc/schemas/steps.rnc
> 
>   When I open the main file (xproc.rnc) in oXygen, I get the
> following errors from oNVDL:
> 
>     an "element" pattern containing an "attribute" pattern with
>     a non-null ID-type must have a name class that contains only
>     "choice" and "name" elements
> 
>     conflicting ID-types for attribute "id" from namespace
>     "http://www.w3.org/XML/1998/namespace" of element "catch"
>     from namespace "http://www.w3.org/ns/xproc"
> 
>   Before sending a defect report to the WG, I would like to be
> sure this is not because a restriction of oNVDL.
> 
>   Best regards,
> 



More information about the oXygen-user mailing list