<xs:element name="param">
<xs:annotation>
<xs:documentation>This element defines a parameter for a QuickFix. The parameter can be used like a variable within the QuickFix. The value can be set by the
<a ref="#sqf_with-param">
<icode type="element">sqf:with-param</icode>
</a>element.</xs:documentation>
<xs:documentation>The content defines a default value for the parameter.</xs:documentation>
<xs:documentation source="Exception">Abstract parameters (see attribute
<icode type="attribute">abstract</icode>) cannot be used as normal XPath variables. An abstract parameter declares, that the current QuickFix uses a parameter of an abstract pattern. A QuickFix with one or more abstract parameters can be used just by abstract patterns. The value of the parameter will be set by the instantiation of the abstract pattern according to the Schematron specification. The instantiation of the abstract pattern must specify a value for every abstract parameter of the QuickFix.</xs:documentation>
</xs:annotation>
<xs:complexType mixed="true">
<xs:choice minOccurs="0" maxOccurs="unbounded">
<xs:any processContents="lax"/>
</xs:choice>
<xs:attribute name="required" default="no">
<xs:annotation>
<xs:documentation>This attribute sets for the parameter whether it is optional or required.</xs:documentation>
<xs:documentation>If the parameter is required, it cannot have a
<icode type="attribute">default</icode>attribute or any content.</xs:documentation>
<xs:documentation source="Value">The value
<icode type="attributeValue">yes</icode>is used for required,
<icode type="attributeValue">no</icode>for optional.</xs:documentation>
</xs:annotation>
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:enumeration value="yes"/>
<xs:enumeration value="no"/>
</xs:restriction>
</xs:simpleType>
</xs:attribute>
<xs:attribute name="abstract" type="xs:boolean" default="false">
<xs:annotation>
<xs:documentation>This attribute sets for the parameter whether it is abstract or not.</xs:documentation>
<xs:documentation>The current quick fix can be instantiate only from an abstract pattern that defines this abstract parameter. Inside of a global QuickFix every used parameter of an abstract pattern must be declared by an abstract parameter.</xs:documentation>
<xs:documentation>If a parameter is defined as abstract, it can not have a
<icode type="attribute">type</icode>,
<icode type="attribute">required</icode>or
<icode type="attribute">default</icode>attribute. Its value will be only form the abstract pattern instantiation.</xs:documentation>
<xs:documentation source="Value">The value
<icode type="attributeValue">true</icode>is used for abstract parameter,
<icode type="attributeValue">false</icode>for regular parameter.</xs:documentation>
</xs:annotation>
</xs:attribute>
<xs:attributeGroup ref="sqf:parameterAttributes"/>
<xs:attributeGroup ref="sch:foreign"/>
</xs:complexType>
</xs:element> |