--- markup/xml/xmlcc/xmlcc-work.en.html 2007/12/01 12:19:41 1.17 +++ markup/xml/xmlcc/xmlcc-work.en.html 2007/12/01 14:32:30 1.18 @@ -365,17 +365,19 @@
The algorithm
-to
+to
validate an NCName
(name)
is defined as following:
To validate
+ To
+validate
a public identifier (pid), the
-algorithm below MUST be used:
null
, abort these steps.#x20 | #xD | #xA |
[a-zA-Z0-9] | [-'()+,./:=?;!*#@$_%]
,
@@ -392,10 +394,34 @@
U+0020
SPACE
character
immediately followed by another U+0020
SPACE
character in pid, then it is a
- round-trip-error
.round-trip-error
.
+ Is this really a roundtripness problem? XML spec
+ does only define the way to match public identifiers in fact, no
+ canonical form.
To +validate +a system identifier (sid), the +following algorithm MUST be used:
+null
, abort these steps.U+0022
+ QUOTATION MARK
("
) and
+ U+0027
APOSTROPHE
+ ('
) characters, raise an
+ xml-well-formedness-error
.U+0023
+ NUMBER SIGN
(#
)
+ character, then raise an
+ xml-misc-error
.Attr
nodelocalName
attribute value as an NCName
.prefix
attribute value is different from
- null
, then validate
+ null
, then validate
the prefix
attribute value as an NCName
.childNodes
list of n,
@@ -630,7 +656,7 @@
DocumentType
nodenodeName
attribute value as an NCName
.publicId
attribute value as a public identifier.systemId
attribute value contains
- both "
and '
characters, it is a
- xml-well-formedness-error
.systemId
attribute value as a system identifier.publicId
attribute value of n is
+ not null
and the systemId
attribute
+ value of n is null
, then raise an
+ xml-well-formedness-error
.
+ @@ publicId == null? Or, publicId == ""childNodes
list of n,
entities
, notations
,
- elementTypes
, externally declared?entities
, notations
,
+ and elementTypes
lists of n,
+ check the
+ node recursively.Element
nodelocalName
attribute value as an NCName
.prefix
attribute value is different from
- null
, then validate
+ null
, then validate
the prefix
attribute value as an NCName
.childNodes
list of n,
@@ -694,8 +725,18 @@
ncattribute
+ attribute of n. Check conformance of attrs
+ as following:
+ Attr
node whose
+ nodeName
attribute value is equal to that of another
+ Attr
node in attrs, then raise an
+ xml-well-formedness-error
.ElementTypeDefinition
nodeEntity
nodeEntity
node whose
+notationName
attribute value is null
(i.e. a
+parsed entity)entity-error
@@ if !notationName.entity-error
.nodeName
attribute value as an NCName
.publicId
attribute value as a public identifier.systemId
attribute value contains
- both "
and '
characters, it is a
- xml-well-formedness-error
.notationName
systemId
attribute value as a system identifier.publicId
attribute value of n is
+ not null
and the systemId
attribute
+ value of n is null
, then raise an
+ xml-well-formedness-error
.childNodes
list of n,
Entity
node whose
+notationName
attribute value is not null
+(i.e. an unparsed entity)nodeName
attribute value as an NCName
.publicId
attribute value as a public identifier.systemId
attribute value as a system identifier.systemId
attribute value of n is
+ null
, then raise an
+ xml-well-formedness-error
.notationName
attribute value of n as an
+ NCName
.childNodes
list of n contains
+ any nodes, they are in
+ xml-well-formedness-error
.EntityReference
nodeentity-error
.nodeName
attribute value as an NCName
.childNodes
list of n,
@@ -782,13 +849,12 @@
Notation
nodenodeName
attribute value as an NCName
.publicId
attribute value as a public identifier.systemId
attribute value contains
- both "
and '
characters, it is a
- xml-well-formedness-error
.systemId
attribute value as a system identifier.childNodes
list of n contains
any nodes, they are in
xml-well-formedness-error
.target
attribute value matches to the string
xml
in any case combination, then raise a
xml-well-formedness-error
.target
attribute value as an NCName
.