This schema (attached demo.rng) <include href="demo2.rng"> <define name="TEI.prose"><ref name="INCLUDE"/></define> </include> simply redefines TEI.prose, and pulls in this schema file (demo2.rng has full text) <include href="demo3.rng"/> <define name="TEI.2"> <element name="TEI.2"> <text/> </element> </define> while in demo3.rng (attached) we define TEI.prose: <define name="TEI.prose" combine="interleave"> <ref name="IGNORE"/> </define> Using this to validate the attached demo.xml gives the error: xmlRelaxNG: include demo2.rng has a define TEI.prose but not the included grammar which seems in error to me. If I embed the contents of demo3.rng in demo2.rng, it works fine. I don't pretend to understand what libxml thinks is happening here, but since MSV and Jing do not complain, I assume my Relax NG schema is correct. Many thanks for any light you can throw on this. It is (almost) the last error I am getting with my TEI Relax NG schemas. Implementing the datatype ENTITY would be good :-} -- Sebastian Rahtz OUCS Information Manager 13 Banbury Road, Oxford OX2 6NN. Phone +44 1865 283431
Attachment:
demo.xml
Description: Text Data
Attachment:
demo.rng
Description: Text document
Attachment:
demo2.rng
Description: Text document
Attachment:
demo3.rng
Description: Text document