I agree with Syd on this: teiCorpus should be a member of model.resourceLike. The fact that as a result TEI and teiCorpus become essentially the same thing is actually a plus for me. I think any line drawn between the two is terminological rather than structural, and while it might be clearly delineated in the case of particular projects, in the broader view it's very fuzzy indeed. Cheers, Martin On 2019-12-09 3:16 p.m., Syd Bauman wrote:
The current content model of <teiCorpus> is:
teiHeader, ( ( model.resourceLike+, ( TEI | teiCorpus )* ) | ( TEI | teiCorpus )+ ) )
That is, you may *either* have a series of 1 or more <TEI> and <teiCorpus> elements, intermingled; OR you can have one or more of <facsimile>, <fsdDecl>, <sourceDoc>, and <text> elements intermingled followed by zero or more <TEI> and <teiCorpus> elements intermingled. This is exactly the same as saying
teiHeader, model.resourceLike*, ( TEI | teiCorpus )*
except that it requires at least one child <TEI>, <teiCorpus>, <facsimile>, <fsdDecl>, <sourceDoc>, or <text>.
In the new <standOff> world, we have voted to make <TEI> a member of model.resourceLike. Thus we have to alter the content model of <teiCorpus> because as written it would be ambiguous (if a <TEI> is your first child after <teiHeader>, you don't know which branch of the content model you are in).
It is not too difficult to solve the ambiguity problem:
teiHeader, ( ( model.resourceLike+, ( teiCorpus, ( TEI | teiCorpus )* )? ) | ( teiCorpus, ( TEI | teiCorpus )* ) ) )
I am pretty confident this content model validates the same set of documents (and, perhaps as importantly, rejects the same set of documents) as the original content model (with <TEI> in model.resourceLike). I am not against using this content model. But it occurs to me that a) it is a bit cumbersome b) the set of documents permitted is already screwy c) it looks very different from the content model of <TEI>, which (in the new world order) <teiCorpus> is very similar to.
One possible solution is to 1) add <teiCorpus> to model.resourceLike, too; and then 2) change content model of <teiCorpus> to match that of <TEI> (in the new standOff world): teiHeader, model.resourceLike+
This has the advantage of having a very clean, understandable content model for <teiCorpus> (and no ambiguity). It has the disadvantage that it allows for even more screwy things. E.g. <teiCorpus> <teiHeader> <standOff> <TEI> <facsimile> <TEI> <teiCorpus> <TEI> <facsimile> <TEI> <teiCorpus> <facsimile> </teiCorpus>
It has the feature (which some will consider an advantage, others a disadvantage, I'm sure) that <TEI> and <teiCorpus> become the same thing. Just as an XSLT stylesheet can have an outermost element of xsl:stylesheet or xsl:transform, no difference, a TEI document will be able to have <TEI> or <teiCorpus> as an outermost element, no difference. Same goes at every level of nesting where one is allowed: so is the other, and it can have the same content.
Personally, I still think putting <TEI> into model.resourceLike was probably a mistake, but once we've done that, I'm inclined to say throw <teiCorpus> in there, too. _______________________________________________ Tei-council mailing list Tei-council@lists.tei-c.org http://lists.lists.tei-c.org/mailman/listinfo/tei-council
-- ------------------------------------------ Martin Holmes UVic Humanities Computing and Media Centre