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,

_______________________________________________
oXygen-user mailing list
[email protected]
http://www.oxygenxml.com/mailman/listinfo/oxygen-user

Reply via email to