On 27/04/18 21:58, Syd Bauman wrote:
1. schemaSpec/classRef[ starts-with( @key, 'model.') ] This means (much like elementRef as a direct child of schemaSpec) "if you've got a definition for that class knocking around in your @source, we're going to use it" Hmm. Guess that makes sense, if a bit dangerous in that it makes it more likely I include a reference to a model full of references to undefined elements. (E.g., by having <classRef key="model.personNamePart"/> without <moduleRef key="namesdates"/>.)
Yes. This already happens if you include the module tei but not the module in which the class you're referencing is declared, in the case of predeclared classes.
So I'm inclined to think the documentation for @expand should be explicit (that it is for model classes, not attribute classes), and that a validation check (probably a Schematron rule) should warn you if you try to use @expand when key="att.*".
It would never have occurred to me to use @expand for an attribute class, but hey by all means make it more explicit that doing so is bonkers. I guess we're seeing here the fallout from not defining attclass and modelclass as two different kinds of thing.