规则集 DTD:
<?xml version="1.0" encoding="UTF-8"?>
<!--
The following constraints are not represented in DTD, but taken care of programmatically
1. In a Rule, All Mandatory attributes cannot be "*".
2. Only one instance of the below elements is allowed, but in any order.
1)HTMLRules
2)JSRules
3)XMLRules
3. ID should always be in lower case.
-->
<!ENTITY % eURL ’URL’>
<!ENTITY % eEXPRESSION ’EXPRESSION’>
<!ENTITY % eDHTML ’DHTML’>
<!ENTITY % eDJS ’DJS’>
<!ENTITY % eSYSTEM ’SYSTEM’>
<!ENTITY % ruleSetElements ’(HTMLRules | JSRules | XMLRules)?’>
<!ENTITY % htmlElements ’(Form | Applet | Attribute)*’>
<!ENTITY % jsElements ’(Variable | Function)*’>
<!ENTITY % xmlElements ’(Attribute | TagText)*’>
<!ELEMENT RuleSet (%ruleSetElements;,%ruleSetElements;,%ruleSetElements;)>
<!ATTLIST RuleSet
id ID #REQUIRED
extends CDATA "none"
>
<!-- Rules for identifying rules in HTML content -->
<!ELEMENT HTMLRules (%htmlElements;)>
<!ELEMENT Form EMPTY>
<!ATTLIST Form
name CDATA #REQUIRED
field CDATA #REQUIRED
valuePatterns CDATA ""
source CDATA "*"
>
<!ELEMENT Applet EMPTY>
<!ATTLIST Applet
code CDATA #REQUIRED
param CDATA "*"
valuePatterns CDATA ""
source CDATA "*"
>
<!-- Rules for identifying rules in JS content -->
<!ELEMENT JSRules (%jsElements;)>
<!ELEMENT Variable EMPTY>
<!ATTLIST Variable
name CDATA #REQUIRED
type (%eURL; | %eEXPRESSION; | %eDHTML; | %eDJS; | %eSYSTEM;) "EXPRESSION"
source CDATA "*"
>
<!ELEMENT Function EMPTY>
<!ATTLIST Function
name CDATA #REQUIRED
paramPatterns CDATA #REQUIRED
type (%eURL; | %eEXPRESSION; | %eDHTML; | %eDJS;) "EXPRESSION"
source CDATA "*"
>
<!-- Rules for identifying rules in XML content -->
<!ELEMENT XMLRules (%xmlElements;)>
<!ELEMENT TagText EMPTY>
<!ATTLIST TagText
tag CDATA #REQUIRED
attributePatterns CDATA ""
source CDATA "*"
>
<!ELEMENT Attribute EMPTY>
<!ATTLIST Attribute
name CDATA #REQUIRED
tag CDATA "*"
valuePatterns CDATA ""
type (%eURL; | %eDHTML; | %eDJS; ) "URL"
source CDATA "*"
>
除必需的属性值不能只为 * 以外,您可以使用 * 作为规则值的一部分。此类规则会被忽略,但会将消息记录在 RuleSetInfo 日志文件中。有关该日志文件的信息,参见调试文件名称。