[tei-council] Notes from today;s conference call
Syd Bauman
Syd_Bauman at Brown.edu
Thu Sep 30 16:06:59 EDT 2004
> The easy way to do this is the following:
> element automobile {
> (
> attribute engineType { "int_combustion" | "hybrid" | "electric" }
> |
> element engineType { text }
> ),
> text
> }
Right, although I think this model has the further restriction that
<engineType> must precede any character data inside <autombile>.
> For IDREFS, a model like this would work kind of nicely.
Right, but you misnamed the element. Also, we'd want separate
children elements, not 1 child with lots of URIs (which would be just
as hard to parse as if they were in attribute :-). So we'd want
something like
element ptr {
(
element target { xsd:anyURI }+
|
attribute target { xsd:anyURI }
)
}
And, of course, everything would have to use patterns for
indirection; and we actually use the XML syntax in the ODDs. Thus the
problem META will have to address (whether now, in "6 months", or
never), is how to resolve the <attDef> below so that the second
<rng:ref> in the <content> points to it, and it is not instantiated
elsewhere.
<content>
<rng:choice xmlns:rng="http://relaxng.org/ns/structure/1.0">
<rng:oneOrMore>
<rng:ref name="target"/> <!-- a new element declared elsewhere -->
</rng:oneOrMore>
<rng:ref name="tei.ptr.attributes.target"/>
</rng:choice>
</content>
<attList>
<attDef ident="target" usage="???">
<equiv/>
<desc>specifies the destination of the pointer by supplying a
single URI Reference. If there is more than one target, no
<att>target</att> attribute should be specified, and instead
a series of two or more <gi>target</gi> child elements should
be used.</desc>
<datatype>
<rng:data xmlns:rng="http://relaxng.org/ns/structure/1.0" type="anyURI"/>
</datatype>
<valDesc>A single URI Reference; may use the TEI XPointer schemes.</valDesc>
</attDef>
</attList>
Mind you I have no idea whether or not this implementable.
Furthermore, I have not thought about what we'd do with usage= of
<attDef>.
BTW, I'd be perfectly happy if for every "normal" TEI element X
(i.e., those for which we do not want to take advantage of
co-occurence constraints) we needed to specify
<rng:ref name="tei.X.attributes"/>
somewhere inside its <content> if it made this workable.
I'm begining to think I should have posted this to the META list
instead ... in fact, I'll cross-post it there, and if we want to
continue this technical discussion I suggest we move it there.
More information about the tei-council
mailing list