A rule set has the following basic structure:
<ruleset> <accepts> <rule ...> ... </rule> ... </accepts> <rejects> <rule ...> ... </rule> ... </rejects> <includes> <ruleset src=...> ... </ruleset> ... </includes> <sortby> <sortbyvalue ...> ... </sortby> <site type=...> </site> </ruleset>
The only SGML tags allowed in a rule set are the following:
<ruleset></ruleset><accepts></accepts><rejects></rejects><includes></includes><rule></rule><valueof><sortby></sortby><sortbyvalue><site></site>
No other SGML constructs are allowed, except for comments. Comments may occur anywhere, except within tags themselves.
A rule set contains one <ruleset> tag. The <ruleset> tag must have at least one and at most five child tags: one of <accepts>, <rejects>, or <includes> tags must be present. The <sortby> and <site> tags are optional. Multiple <accepts>, <rejects>, <includes>, <sortby>, and <site> tags are not allowed.
The <accepts> and <rejects> tags must contain one or more <rule> tags. A <rule> tag must include an op (operation) attribute and one or more <valueof> tags. You can create complex rules by nesting multiple rule tags within a <rule> tag.
You can also create complex rules by incorporating other rule sets with the <includes> tag. An <includes> tag contains references to other rule sets to be included in the rule set. It must have at least one child; each child must be a <ruleset> tag with a src attribute. See Including Rule Sets, Rules, and Sorting Directives for details. The <ruleset> tag may also contain a <sortby> tag, which in turn may contain one or more <sortbyvalue> tags to establish sorting directives. The <ruleset> tag may also include a <site> tag, which specifies the Web site to use as a filter (applies to multisite ATG environments).

