Serialization text

As part of my action to modify how we require well-formed XML, I ended up 
rephrasing the section on serialization, in particular expressing it more 
declaratively than before.
Here's the proposed new text.

* A nonterminal element node is serialized as an XML element whose name is 
the name of the node, and whose attributes are the serializations of all 
exposed attribute descendants, if any, and whose content is the 
serialization of all its non-attribute children in order, if any. An 
attribute is exposed if it is an attribute child, or an exposed attribute 
of a hidden element child (note this is recursive).
* A nonterminal hidden node is serialized as the serialization of all its 
non-attribute children, in order.
* A nonterminal attribute node is serialized as an XML attribute whose name 
is the name of the node, and whose value is the serialization of all 
non-hidden terminal descendants of the node (regardless of marking of 
intermediate nonterminals), in order.
* A non-hidden terminal node is serialised as its string.
* A hidden terminal node is not serialised.

Steven

Received on Wednesday, 23 February 2022 20:20:48 UTC