154 lines
4.9 KiB
XML
154 lines
4.9 KiB
XML
|
|
<?xml version="1.0" encoding="UTF-8"?>
|
||
|
|
<xsd:schema
|
||
|
|
xmlns:xsd="http://www.w3.org/2001/XMLSchema">
|
||
|
|
|
||
|
|
<xsd:element name="rules">
|
||
|
|
|
||
|
|
<xsd:complexType>
|
||
|
|
|
||
|
|
<xsd:sequence>
|
||
|
|
<xsd:element name="directives" type="Directives" maxOccurs="1" minOccurs="1"/>
|
||
|
|
<xsd:element name="common-regexps" type="CommonRegexps" maxOccurs="1" minOccurs="1"/>
|
||
|
|
<xsd:element name="common-attributes" type="AttributeList" maxOccurs="1" minOccurs="1"/>
|
||
|
|
<xsd:element name="global-tag-attributes" type="AttributeList" maxOccurs="1" minOccurs="1"/>
|
||
|
|
<xsd:element name="tag-rules" type="TagRules" minOccurs="1" maxOccurs="1"/>
|
||
|
|
<xsd:element name="css-rules" type="CSSRules" minOccurs="1" maxOccurs="1"/>
|
||
|
|
</xsd:sequence>
|
||
|
|
|
||
|
|
</xsd:complexType>
|
||
|
|
</xsd:element>
|
||
|
|
<xsd:complexType name="Directives">
|
||
|
|
<xsd:sequence maxOccurs="unbounded">
|
||
|
|
<xsd:element name="directive" type="Directive" minOccurs="0"/>
|
||
|
|
</xsd:sequence>
|
||
|
|
</xsd:complexType>
|
||
|
|
|
||
|
|
<xsd:complexType name="Directive">
|
||
|
|
|
||
|
|
<xsd:attribute name="name" use="required"/>
|
||
|
|
<xsd:attribute name="value" use="required"/>
|
||
|
|
|
||
|
|
</xsd:complexType>
|
||
|
|
|
||
|
|
<xsd:complexType name="CommonRegexps">
|
||
|
|
<xsd:sequence maxOccurs="unbounded">
|
||
|
|
<xsd:element name="regexp" type="RegExp" minOccurs="0"/>
|
||
|
|
</xsd:sequence>
|
||
|
|
</xsd:complexType>
|
||
|
|
|
||
|
|
<xsd:complexType name="AttributeList">
|
||
|
|
<xsd:sequence maxOccurs="unbounded">
|
||
|
|
<xsd:element name="attribute" type="Attribute" minOccurs="0"/>
|
||
|
|
</xsd:sequence>
|
||
|
|
</xsd:complexType>
|
||
|
|
|
||
|
|
<xsd:complexType name="TagRules">
|
||
|
|
<xsd:sequence maxOccurs="unbounded">
|
||
|
|
<xsd:element name="tag" type="Tag" minOccurs="0"/>
|
||
|
|
</xsd:sequence>
|
||
|
|
</xsd:complexType>
|
||
|
|
|
||
|
|
<xsd:complexType name="Tag">
|
||
|
|
<xsd:sequence maxOccurs="unbounded">
|
||
|
|
<xsd:element name="attribute" type="Attribute" minOccurs="0" />
|
||
|
|
</xsd:sequence>
|
||
|
|
|
||
|
|
<xsd:attribute name="name" use="required"/>
|
||
|
|
<xsd:attribute name="action" use="required">
|
||
|
|
<xsd:simpleType>
|
||
|
|
<xsd:restriction base="xsd:string">
|
||
|
|
<xsd:enumeration value="Remove" />
|
||
|
|
<xsd:enumeration value="Truncate" />
|
||
|
|
<xsd:enumeration value="Validate" />
|
||
|
|
<xsd:enumeration value="Filter" />
|
||
|
|
</xsd:restriction>
|
||
|
|
</xsd:simpleType>
|
||
|
|
</xsd:attribute>
|
||
|
|
|
||
|
|
</xsd:complexType>
|
||
|
|
|
||
|
|
<xsd:complexType name="Attribute">
|
||
|
|
<xsd:sequence>
|
||
|
|
<xsd:element name="regexp-list" type="RegexpList" minOccurs="0"/>
|
||
|
|
<xsd:element name="literal-list" type="LiteralList" minOccurs="0"/>
|
||
|
|
</xsd:sequence>
|
||
|
|
<xsd:attribute name="name" use="required"/>
|
||
|
|
<xsd:attribute name="description"/>
|
||
|
|
<xsd:attribute name="onInvalid">
|
||
|
|
<xsd:simpleType>
|
||
|
|
<xsd:restriction base="xsd:string">
|
||
|
|
<xsd:enumeration value="RemoveAttribute" />
|
||
|
|
<xsd:enumeration value="RemoveTag" />
|
||
|
|
<xsd:enumeration value="FilterTag" />
|
||
|
|
</xsd:restriction>
|
||
|
|
</xsd:simpleType>
|
||
|
|
</xsd:attribute>
|
||
|
|
</xsd:complexType>
|
||
|
|
|
||
|
|
|
||
|
|
<xsd:complexType name="RegexpList">
|
||
|
|
<xsd:sequence maxOccurs="unbounded">
|
||
|
|
<xsd:element name="regexp" type="RegExp" minOccurs="0"/>
|
||
|
|
</xsd:sequence>
|
||
|
|
</xsd:complexType>
|
||
|
|
|
||
|
|
<xsd:complexType name="RegExp">
|
||
|
|
<xsd:attribute name="name" type="xsd:string"/>
|
||
|
|
<xsd:attribute name="value" type="xsd:string"/>
|
||
|
|
</xsd:complexType>
|
||
|
|
|
||
|
|
<xsd:complexType name="LiteralList">
|
||
|
|
<xsd:sequence maxOccurs="unbounded">
|
||
|
|
<xsd:element name="literal" type="Literal" minOccurs="0"/>
|
||
|
|
</xsd:sequence>
|
||
|
|
</xsd:complexType>
|
||
|
|
|
||
|
|
<xsd:complexType name="Literal">
|
||
|
|
<xsd:attribute name="value" type="xsd:string"/>
|
||
|
|
</xsd:complexType>
|
||
|
|
|
||
|
|
<xsd:complexType name="CSSRules">
|
||
|
|
<xsd:sequence maxOccurs="unbounded">
|
||
|
|
<xsd:element name="property" type="Property" minOccurs="0"/>
|
||
|
|
</xsd:sequence>
|
||
|
|
</xsd:complexType>
|
||
|
|
|
||
|
|
<xsd:complexType name="Property">
|
||
|
|
<xsd:sequence>
|
||
|
|
<xsd:element name="category-list" type="CategoryList" minOccurs="0"/>
|
||
|
|
<xsd:element name="literal-list" type="LiteralList" minOccurs="0"/>
|
||
|
|
<xsd:element name="regexp-list" type="RegexpList" minOccurs="0"/>
|
||
|
|
<xsd:element name="shorthand-list" type="ShorthandList" minOccurs="0"/>
|
||
|
|
</xsd:sequence>
|
||
|
|
<xsd:attribute name="name" type="xsd:string" use="required"/>
|
||
|
|
<xsd:attribute name="default" type="xsd:string"/>
|
||
|
|
<xsd:attribute name="description" type="xsd:string"/>
|
||
|
|
</xsd:complexType>
|
||
|
|
|
||
|
|
|
||
|
|
<xsd:complexType name="ShorthandList">
|
||
|
|
<xsd:sequence maxOccurs="unbounded">
|
||
|
|
<xsd:element name="shorthand" type="Shorthand" minOccurs="0"/>
|
||
|
|
</xsd:sequence>
|
||
|
|
</xsd:complexType>
|
||
|
|
|
||
|
|
<xsd:complexType name="Shorthand">
|
||
|
|
<xsd:attribute name="name" type="xsd:string" use="required"/>
|
||
|
|
</xsd:complexType>
|
||
|
|
|
||
|
|
<xsd:complexType name="CategoryList">
|
||
|
|
<xsd:sequence maxOccurs="unbounded">
|
||
|
|
<xsd:element name="category" type="Category" minOccurs="0"/>
|
||
|
|
</xsd:sequence>
|
||
|
|
</xsd:complexType>
|
||
|
|
|
||
|
|
<xsd:complexType name="Category">
|
||
|
|
<xsd:attribute name="value" type="xsd:string" use="required"/>
|
||
|
|
</xsd:complexType>
|
||
|
|
|
||
|
|
|
||
|
|
<xsd:complexType name="Entity">
|
||
|
|
<xsd:attribute name="name" type="xsd:string" use="required"/>
|
||
|
|
<xsd:attribute name="cdata" type="xsd:string" use="required"/>
|
||
|
|
</xsd:complexType>
|
||
|
|
</xsd:schema>
|