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