various Misc items where they can occur
various satisfactions of the Names production in a NAMES
attribute
various valid Nmtoken 's in an attribute list declaration.
various satisfaction of an NMTOKENS attribute value.
valid EntityValue's. Except for entity references,
markup is not recognized.
valid public IDs.
XML decl and doctypedecl
just doctypedecl
S between decls is not required
Empty-element tag must be used for element which are declared EMPTY.
Valid doctypedecl with Parameter entity reference. The declaration of a parameter entity must precede any reference to it.
Valid doctypedecl with ExternalID as an External Entity declaration.
Valid doctypedecl with ExternalID as an External Entity. A parameter entity reference is also used.
Valid types of markupdecl.
Valid doctypedecl with ExternalID as an External Entity. The external entity has an element declaration.
Valid doctypedecl with ExternalID as an Enternal Entity. The external entity begins with a Text Declaration.
external subset can be empty
Valid doctypedecl with EXternalID as Enternal Entity. The external entity contains a parameter entity reference and condtional sections.
Valid use of character data, comments, processing instructions and CDATA sections within the start and end tag.
valid element declarations
Valid use of contentspec, element content models, and mixed content within an element type declaration.
Valid use of contentspec, element content models, choices, sequences and content particles within an element type declaration. The optional character following a name or list governs the number of times the element or content particle may appear.
Valid use of contentspec, element content models, choices, sequences and content particles within an element type declaration. The optional character following a name or list governs the number of times the element or content particle may appear.
Valid use of contentspec, element content models, choices, and content particles within an element type declaration. The optional character following a name or list governs the number of times the element or content particle may appear. Whitespace is also valid between choices.
Valid use of contentspec, element content models, sequences and content particles within an element type declaration. The optional character following a name or list governs the number of times the element or content particle may appear. Whitespace is also valid between sequences.
valid Mixed contentspec's.
valid AttlistDecls: No AttDef's are required,
and the terminating
S is optional, multiple ATTLISTS per element are OK, and multiple
declarations of the same attribute are OK.
a valid AttDef
the three kinds of attribute types
StringType = "CDATA"
the 7 tokenized attribute types
enumerated types are NMTOKEN or NOTATION lists
NOTATION enumeration has on or more items
NMTOKEN enumerations haveon or more items
the four types of default values
valid conditional sections are INCLUDE and IGNORE
valid INCLUDE sections -- options S before and
after keyword, sections can nest
valid IGNORE sections
IGNOREd sections ignore everything except section delimiters
Valid entity references. Also ensures that a charref to
'&' isn't interpreted as an entity reference open delimiter
Valid PEReferences.
An EntityDecl is either a GEDecl or a PEDecl
Valid GEDecls
Valid PEDecls
EntityDef is either Entity value or an external id,
with an optional NDataDecl
valid NDataDecls
no prolog
Misc items after the document
all valid S characters
names with all valid ASCII characters, and one from each
other class in NameChar
various valid Name constructions
Requires at least one name.
at least one Nmtoken is required.
an invalid Nmtoken character.
valid attribute values
valid CharData
valid comments
Valid form of Processing Instruction. Shows that whitespace character data is valid before end of processing instruction.
Valid form of Processing Instruction. Shows that whitespace character data is valid before end of processing instruction.
Valid form of Processing Instruction. Shows that whitespace character data is valid before end of processing instruction.
valid CDSect's. Note that a CDStart in a CDSect is not
recognized as such
prolog can be empty
XML declaration only
XML decl and Misc
Test shows a valid XML declaration along with version info.
Test shows a valid XML declaration along with encoding declaration.
Test shows a valid XML declaration along with Standalone Document Declaration.
Test shows a valid XML declaration, encoding declarationand Standalone Document Declaration.
Test shows a prolog that has the VersionInfo delimited by double quotes.
Test shows a prolog that has the VersionInfo delimited by single quotes.
Test shows whitespace is allowed in prolog before version info.
Test shows whitespace is allowed in prolog on both sides of equal sign.
Test shows whitespace is NOT necessary before or after equal sign of versioninfo.
Test shows whitespace can be used on both sides of equal sign of versioninfo.
The valid version number. We cannot test others because
a 1.0 processor is allowed to fail them.
Comments are valid as the Misc part of the prolog.
Processing Instructions are valid as the Misc part of the prolog.
Whitespace is valid as the Misc part of the prolog.
A combination of comments, whitespaces and processing instructions are valid as the Misc part of the prolog.
Double quotes can be used as delimeters for the value of a Standalone Document Declaration.
Single quotes can be used as delimeters for the value of a Standalone Document Declaration.
Empty element tag may be used for any element which has no content.
Character data is valid element content.
Elements content can be empty.
Whitespace is valid within a Start-tag.
Attributes are valid within a Start-tag.
Whitespace and Multiple Attributes are valid within a Start-tag.
Attributes are valid within a Start-tag.
Whitespace is valid within a Start-tags Attribute.
Test shows proper syntax for an End-tag.
Whitespace is valid after name in End-tag.
Valid display of an Empty Element Tag.
Empty Element Tags can contain an Attribute.
Whitespace is valid in an Empty Element Tag following the end of the attribute value.
Whitespace is valid after the name in an Empty Element Tag.
Whitespace and Multiple Attributes are valid in an Empty Element Tag.
valid character references
PEDef is either an entity value or an external id
valid external identifiers
Validity Constraint: No duplicate tokens
S cannot occur before the prolog
comments cannot occur before the prolog
only one document element
document element must be complete.
Use of illegal character within XML document.
Use of illegal character within XML document.
Use of illegal character within XML document.
Use of illegal character within XML document.
Use of illegal character within XML document.
Use of illegal character within XML document.
Use of illegal character within XML document.
Use of illegal character within XML document.
Use of illegal character within XML document.
Use of illegal character within XML document.
Use of illegal character within XML document.
Use of illegal character within XML document.
Use of illegal character within XML document.
Use of illegal character within XML document.
Use of illegal character within XML document.
Use of illegal character within XML document.
Use of illegal character within XML document.
Use of illegal character within XML document.
Use of illegal character within XML document.
Use of illegal character within XML document.
Use of illegal character within XML document.
Use of illegal character within XML document.
Use of illegal character within XML document.
Use of illegal character within XML document.
Use of illegal character within XML document.
Use of illegal character within XML document.
Use of illegal character within XML document.
Use of illegal character within XML document.
Use of illegal character within XML document.
Use of illegal character within XML document.
Use of illegal character within XML document.
Use of illegal character within XML document.
Use of illegal character within XML document.
Use of illegal character within XML document.
Use of illegal character within XML document.
Use of illegal character within XML document.
Use of illegal character within XML document.
Use of illegal character within XML document.
Use of illegal character within XML document.
Use of illegal character within XML document.
Use of illegal character within XML document.
Use of illegal character within XML document.
Use of illegal character within XML document.
Use of illegal character within XML document.
Use of illegal character within XML document.
Use of illegal character within XML document.
Use of illegal character within XML document.
Use of illegal character within XML document.
Use of illegal character within XML document.
Use of illegal character within XML document.
Use of illegal character within XML document.
Use of illegal character within XML document.
Use of illegal character within XML document.
Use of illegal character within XML document.
Use of illegal character within XML document.
Use of illegal character within XML document.
Use of illegal character within XML document.
Use of illegal character within XML document.
Use of illegal character within XML document.
Name contains invalid character.
Name contains invalid character.
Name contains invalid character.
a Name cannot start with a digit
a Name cannot start with a '.'
a Name cannot start with a "-"
a Name cannot start with a CombiningChar
a Name cannot start with an Extender
EntityValue excludes '%'
EntityValue excludes '&'
incomplete character reference
quote types must match
quote types must match
attribute values exclude '<'
attribute values exclude '&'
quote types must match
quote types must match
cannot contain delimiting quotes
'"' excluded
'\' excluded
entity references excluded
'>' excluded
'<' excluded
built-in entity refs excluded
The public ID has a tab character, which is disallowed
'<' excluded
'&' excluded
"]]>" excluded
comments can't end in '-'
one comment per comment (contrasted with SGML)
can't include 2 or more adjacent '-'s
"xml" is an invalid PITarget
a PITarget must be present
S after PITarget is required
no space before "CDATA"
no space after "CDATA"
CDSect's can't nest
prolog must start with XML decl
prolog must start with XML decl
"xml" must be lower-case
VersionInfo must be supplied
VersionInfo must come first
SDDecl must come last
no SGML-type PIs
quote types must match
quote types must match
Comment is illegal in VersionInfo.
Illegal character in VersionNum.
Illegal character in VersionNum.
References aren't allowed in Misc,
even if they would resolve to valid Misc.
only declarations in DTD.
A processor must not pass unknown declaration types.
An XML declaration is not the same as a TextDecl
external subset excludes doctypedecl
quote types must match
quote types must match
initial S is required
quotes are required
yes or no must be lower case
start-tag requires end-tag
end-tag requires start-tag
XML documents contain one or more elements
XML declarations must be correctly terminated
XML declarations must be correctly terminated
S is required between attributes
tags start with names, not nmtokens
tags start with names, not nmtokens
no space before name
quotes are required (contrast with SGML)
attribute name is required (contrast with SGML)
Eq required
no space before name
cannot end with "/>"
no NET (contrast with SGML)
no non-comment declarations
no conditional sections
no conditional sections
Illegal space before Empty element tag.
Illegal space after Empty element tag.
Illegal comment in Empty element tag.
Whitespace required between attributes.
Duplicate attribute name is illegal.
ELEMENT must be upper case.
S before contentspec is required.
only one content spec
no comments in declarations (contrast with SGML)
no parens on declared content
no inclusions (contrast with SGML)
no exclusions (contrast with SGML)
no space before occurrence
single group
can't be both declared and modeled
Invalid operator '|' must match previous operator ','
Illegal character '-' in Element-content model
Optional character must follow a name or list
Illegal space before optional character
Illegal space before optional character
Illegal space before optional character
connectors must match
connectors must match
occurrence on #PCDATA group must be *
occurrence on #PCDATA group must be *
#PCDATA must come first
occurrence on #PCDATA group must be *
only '|' connectors
Only '|' connectors and occurrence on #PCDATA group must be *
no nested groups
A name is required
A name is required
S is required before default
S is required before type
type is required
default is required
name is requried
don't pass unknown attribute types
must be upper case
no IDS type
no NUMBER type
no NAME type
no ENTITYS type
- types must be upper case
types must be upper case
no keyword for NMTOKEN enumeration
at least one value required
separator must be '|'
notations are NAMEs, not NMTOKENs -- note:
Leaving the invalid
notation undeclared would cause a validating parser to fail without
checking the name syntax, so the notation is declared with an
invalid name. A parser that reports error positions should report
an error at the AttlistDecl on line 6, before reaching the notation
declaration.
NOTATION must be upper case
S after keyword is required
parentheses are require
values are unquoted
values are unquoted
at least one required
separator must be ","
values are unquoted
keywords must be upper case
S is required after #FIXED
only #FIXED has both keyword and value
#FIXED required value
only one default type
no other types, including TEMP, which is valid in SGML
INCLUDE must be upper case
no spaces in terminating delimiter
IGNORE must be upper case
delimiters must be balanced
section delimiters must balance
section delimiters must balance
terminating ';' is required
no S after '&#'
no hex digits in numeric reference
only hex digits in hex references
no references to non-characters
no references to non-characters
terminating ';' is required
no S after '&'
no S before ';'
terminating ';' is required
no S after '%'
no S before ';'
This is neither
S is required before EntityDef
Entity name is a Name, not an NMToken
no S after "<!"
S is required after "<!ENTITY"
S is required after "<!ENTITY"
S is required after '%'
S is required after name
Entity name is a name, not an NMToken
No typed replacement text
Only one replacement value
No NDataDecl on replacement text
Value is required
No NDataDecl without value
no NDataDecls on parameter entities
value is required
only one value
S required after "PUBLIC"
S required after "SYSTEM"
S required between literals
"SYSTEM" implies only one literal
only one keyword
"PUBLIC" requires two literals (contrast with SGML)
S is required before "NDATA"
"NDATA" is upper-case
notation name is required
notation names are Names
system literals may not contain
URI fragments