/ .. / / -> download
<?xml version="1.0"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" version="1.0">
  <xs:element name="appCheck" type="appCheckElemType"/>
  <xs:complexType name="appCheckElemType">
    <xs:sequence>
      <xs:element ref="object" minOccurs="0" maxOccurs="unbounded"/>
    </xs:sequence>
    <xs:attribute name="type" type="appCheckAttType"/>
    <xs:attribute name="strict" type="yesNoAttType"/>
    <xs:attribute name="checkNestedApplic" type="yesNoAttType"/>
    <xs:attribute name="checkRedundantApplic" type="yesNoAttType"/>
    <xs:attribute name="checkDuplicateApplic" type="yesNoAttType"/>
  </xs:complexType>
  <xs:simpleType name="appCheckAttType">
    <xs:restriction base="xs:string">
      <xs:enumeration value="standalone"/>
      <xs:enumeration value="pct"/>
      <xs:enumeration value="all"/>
      <xs:enumeration value="custom"/>
    </xs:restriction>
  </xs:simpleType>
  <xs:simpleType name="yesNoAttType">
    <xs:restriction base="xs:string">
      <xs:enumeration value="yes"/>
      <xs:enumeration value="no"/>
    </xs:restriction>
  </xs:simpleType>
  <xs:element name="object" type="objectElemType"/>
  <xs:complexType name="objectElemType">
    <xs:sequence>
      <xs:element ref="act" minOccurs="0"/>
      <xs:element ref="cct" minOccurs="0"/>
      <xs:element ref="undefined" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="pct" minOccurs="0"/>
      <xs:choice minOccurs="0" maxOccurs="unbounded">
        <xs:element ref="nestedApplicError"/>
        <xs:element ref="redundantApplicError"/>
        <xs:element ref="duplicateApplicError"/>
      </xs:choice>
      <xs:element ref="asserts" minOccurs="0" maxOccurs="unbounded"/>
    </xs:sequence>
    <xs:attribute name="path" type="xs:string"/>
    <xs:attribute name="valid" type="yesNoAttType"/>
  </xs:complexType>
  <xs:element name="act" type="ctElemType"/>
  <xs:element name="cct" type="ctElemType"/>
  <xs:element name="pct" type="ctElemType"/>
  <xs:complexType name="ctElemType">
    <xs:attribute name="path" type="xs:string"/>
  </xs:complexType>
  <xs:element name="undefined" type="undefinedElemType"/>
  <xs:complexType name="undefinedElemType">
    <xs:attribute ref="applicPropertyIdent" use="required"/>
    <xs:attribute ref="applicPropertyType" use="required"/>
    <xs:attribute ref="applicPropertyValue"/>
    <xs:attribute ref="line" use="required"/>
    <xs:attribute ref="xpath" use="required"/>
  </xs:complexType>
  <xs:element name="nestedApplicError" type="nestedApplicErrorElemType"/>
  <xs:complexType name="nestedApplicErrorElemType">
    <xs:attribute ref="applicPropertyIdent" use="required"/>
    <xs:attribute ref="applicPropertyType" use="required"/>
    <xs:attribute ref="applicPropertyValue" use="required"/>
    <xs:attribute ref="line" use="required"/>
    <xs:attribute ref="xpath" use="required"/>
    <xs:attribute ref="parentLine"/>
    <xs:attribute ref="parentXPath"/>
  </xs:complexType>
  <xs:element name="redundantApplicError" type="redundantApplicErrorElemType"/>
  <xs:complexType name="redundantApplicErrorElemType">
    <xs:attribute ref="line" use="required"/>
    <xs:attribute ref="xpath" use="required"/>
    <xs:attribute ref="parentLine"/>
    <xs:attribute ref="parentXPath"/>
  </xs:complexType>
  <xs:element name="duplicateApplicError" type="duplicateApplicErrorElemType"/>
  <xs:complexType name="duplicateApplicErrorElemType">
    <xs:attribute ref="line" use="required"/>
    <xs:attribute ref="xpath" use="required"/>
    <xs:attribute ref="duplicateOfLine" use="required"/>
    <xs:attribute ref="duplicateOfXPath" use="required"/>
  </xs:complexType>
  <xs:attribute name="applicPropertyIdent" type="xs:NCName"/>
  <xs:attribute name="applicPropertyType" type="applicPropertyTypeAttType"/>
  <xs:simpleType name="applicPropertyTypeAttType">
    <xs:restriction base="xs:string">
      <xs:enumeration value="condition"/>
      <xs:enumeration value="prodattr"/>
    </xs:restriction>
  </xs:simpleType>
  <xs:attribute name="applicPropertyValue" type="applicPropertyValueAttType"/>
  <xs:simpleType name="applicPropertyValueAttType">
    <xs:restriction base="xs:string">
      <xs:pattern value="[^|~]*"/>
    </xs:restriction>
  </xs:simpleType>
  <xs:attribute name="line" type="xs:positiveInteger"/>
  <xs:attribute name="xpath" type="xs:string"/>
  <xs:attribute name="parentLine" type="xs:positiveInteger"/>
  <xs:attribute name="parentXPath" type="xs:string"/>
  <xs:attribute name="duplicateOfLine" type="xs:positiveInteger"/>
  <xs:attribute name="duplicateOfXPath" type="xs:string"/>
  <xs:element name="asserts" type="assertsElemType"/>
  <xs:complexType name="assertsElemType">
    <xs:sequence>
      <xs:element ref="assign" maxOccurs="unbounded"/>
    </xs:sequence>
    <xs:attribute name="product" type="xs:NCName"/>
    <xs:attribute ref="line"/>
    <xs:attribute ref="xpath"/>
    <xs:attribute name="valid" type="yesNoAttType" use="required"/>
  </xs:complexType>
  <xs:element name="assign" type="assignElemType"/>
  <xs:complexType name="assignElemType">
    <xs:attribute ref="applicPropertyIdent"/>
    <xs:attribute ref="applicPropertyType"/>
    <xs:attribute ref="applicPropertyValue"/>
  </xs:complexType>
</xs:schema>


/ gopher://khzae.net/0/s1kd/s1kd-tools/src/tools/schemas/appcheck.xsd
Styles: Light Dark Classic