[
Lists Home |
Date Index |
Thread Index
]
I have a master RNG file that describes general properties of my
grammar, and individual RNG files that describe individual
elements. The master file <include>s the individual ones.
The master file has declarations like
<define name="class.filter">
<notAllowed/>
</define>
Individual files usually say something like
<define combine="choice" name="class.reader">
<element name="switch">
<!-- CM -->
</element>
</define>
I use this as a kind of type system. Individual content models may
contain
<zeroOrMore>
<ref name="class.filter"/>
</zeroOrMore>
Question 1: is this a good way of
doing things in RELAX NG, or should I consider a better alternative?
Question 2: I need to add declarations that would be common to all
members of a particular class. An obvious way is to have every element
<ref> the common declarations (a group of attributes in this
case). Can I do it in one place? DTDs don't provide such a mechanism,
XSD does (thought inheritance).
Ari.
|