[tei-council] <content> vs <mixedContent>

Lou Burnard lou.burnard at retired.ox.ac.uk
Sat Oct 4 13:19:47 EDT 2014


On 04/10/14 18:07, Lou Burnard wrote:
> On 04/10/14 14:46, Sebastian Rahtz wrote:
>> On 4 Oct 2014, at 11:34, Lou Burnard <lou.burnard at retired.ox.ac.uk> wrote:
>>
>>>> The semantics of <textNode> == data/@type=‘string’, no?
>>> rng:text or rng:string ? presumably the latter.
>> eh? rng:string doesn’t exist, does it?
> sorry, i meant xsd:string, obvs
>
>
>>> Calling our macro "data.text" (even though it has the value rng:string) is going to return to bite us several times, I foresee. For example, the macro macro.xtext is defined as "text | model.glike" not "string | model.gLike".
>>>
>>> How do you feel about giving <textNode> macro.xText as content? It's more consistent with the TEI semantic model!
>> Yes, I was going to raise this point. But then how do people say they really _do_ want just text?
>>
>> The more I think about this in real life, the more I worry about the biting. Using <mixedContent>
>> at least has the benefit that we avoid saying what the “mixed” consists of, but <textNode>
>> exposes us to the “text” question which seems to haunt us like Europe haunts the Conservative Party.
>>
>>    * if <textNode> == rng:text, people have to be taught to add <macroRef key=“model.gLike”/> as well
>>    * if <textNode> == data.text, then people can’t specify just the equivalent of <rng:text>
> 1. we decided that all datatype declarations must be indirect, so
> <textNode>  has to have a content model of macro.something, for symmetry.
>
> 2. macro.something could be either macro.xText , maps to
> (text|model.gLike)* or (as yet nonexistent) macro.Text  which maps to
> text, or indeed something else we haven't thought of yet
>
> If someone thinks the TEI has decided the wrong way (for a given
> application) redefining the macro is not so hard.
>


Actually, now I think about it, that's all unnecessary folderoll. It can 
have a perfectly ordinary content model of

<content>
<alternate maxOccurs="unbounded/>
<rng:ref name="text"/>
<classRef key="model.gLike"/>
</alternate>
</content>

and then if people want plain text, they just delete model.gLike




More information about the tei-council mailing list