att.repeatable
att.repeatable provides attributes for the elements which define component parts of a content model. | |||||||||||||||||
Module | tagdocs — Documentation Elements | ||||||||||||||||
Members | alternate anyElement classRef datatype elementRef sequence | ||||||||||||||||
Attributes | Attributes
| ||||||||||||||||
Schematron | <sch:rule context="*[ @minOccurs and @maxOccurs ]"> <sch:let name="min" value="@minOccurs cast as xs:integer"/> <sch:let name="max" value="if ( normalize-space( @maxOccurs ) eq 'unbounded') then -1 else @maxOccurs cast as xs:integer"/> <sch:assert test="$max eq -1 or $max ge $min">@maxOccurs should be greater than or equal to @minOccurs</sch:assert> </sch:rule> <sch:rule context="*[ @minOccurs and not( @maxOccurs ) ]"> <sch:assert test="@minOccurs cast as xs:integer lt 2">When @maxOccurs is not specified, @minOccurs must be 0 or 1</sch:assert> </sch:rule> | ||||||||||||||||
Note | The value of minOccurs must always be less than or equal to that of maxOccurs. Since the default value of maxOccurs is 1, when maxOccurs is not specified minOccurs must always be less than or equal to 1. The default value of minOccurs is also 1, and therefore, when minOccurs is not specified the value of maxOccurs must always be greater than or equal to 1. An ODD processor should raise an error if either of these conditions is not met. |