
b) https://github.com/TEIC/TEI/issues/1420 I didn't manage to adjust the content model of <valItem> to reflect that the <remarks> element is only allowed if the <desc> element is present as well. Can anyone help me with that?
I think the following would do the trick for RELAX NG, but will be ambiguous in DTD-land. Will be working on re-factoring it unambiguously soon, but if anyone else wants to take a stab, please feel free. --------- | <content> | <sequence> | <alternate minOccurs="0" maxOccurs="1"> | <sequence> | <!-- with <desc> and optional <remarks> --> | <classRef key="model.glossLike" minOccurs="0" maxOccurs="unbounded"/> | <classRef key="model.descLike" minOccurs="1" maxOccurs="unbounded"/> | <sequence minOccurs="0" maxOccurs="unbounded"> | <classRef key="model.glossLike" minOccurs="1" maxOccurs="unbounded"/> | <classRef key="model.descLike" minOccurs="0" maxOccurs="unbounded"/> | </sequence> | <elementRef key="remarks" minOccurs="0" maxOccurs="unbounded"/> | </sequence> | <sequence> | <!-- with optional <desc>, no <remarks> --> | <alternate minOccurs="0" maxOccurs="unbounded"> | <classRef key="model.descLike"/> | <classRef key="model.glossLike"/> | </alternate> | </sequence> | </alternate> | <elementRef key="paramList" minOccurs="0" maxOccurs="1"/> | </sequence> | </content> --------- If we can't get this working, would could of course resort to: --------- | <constraintSpec ident="no-remarks-without-desc" scheme="schematron"> | <constraint> | <sch:rule context="tei:valItem[tei:remarks]"> | <sch:assert test="tei:desc">A value item should only have a remarks section if it also has a description</sch:assert> | </sch:rule> | </constraint> | </constraintSpec> --------- :-)