[xml] finding definitions in included files in Relax NG



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



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]