<classSpec ident="att.plist" module="MEI.shared" type="atts">
<desc xml:lang="en">Attributes listing the active participants in a user-defined collection.</desc>
<attList>
<attDef ident="plist" usage="opt">
<desc xml:lang="en">When the target attribute is present, plist identifies the active participants; that
is, those entities pointed "from", in a relationship with the specified target(s).
When
the target attribute is not present, it identifies participants in a mutual
relationship.</desc>
<constraintSpec ident="check_plistTarget" scheme="schematron">
<constraint>
<sch:rule context="@plist">
<sch:assert role="warning" test="not(normalize-space(.) eq '')">@plist attribute
should have content.</sch:assert>
<sch:assert role="warning" test="every $i in tokenize(., '\s+') satisfies substring($i,2)=//mei:*/@xml:id">Each
value in @plist should correspond to the @xml:id attribute of an
element.</sch:assert>
</sch:rule>
</constraint>
</constraintSpec>
</attDef>
</attList>
</classSpec>