Any result grove satisfies the following requirements:
A node in the result grove does not exhibit a value for a property with a declared data type that is nodal unless the property is a subnode property.
A node in the result grove never exhibits a value for a property that is in the derived category.
The verification mapping, V, maps each node in the result grove to a node in the verification grove. V(n) denotes the result of applying V to the node n; n[p] denotes the value that n exhibits for property p. A node n' in the verification grove is said to be grounded if and only if there is a node n in the result grove such that V(n) is n'.
V shall satisfy the following requirements:
If n is the root of the result grove, then V(n) shall be the root of the verification grove.
For each distinct m and n in the result grove, V(m) shall be distinct from V(n).
For each n in the result grove, V(n) shall have the same class as n.
For each node n in the result grove, and each non-intrinsic property p with a non-nodal declared data type for which V(n) exhibits a null value, n shall exhibit a null value for p unless p is in the derived or optional category.
For each node n in the result grove, and each non-intrinsic property p for which V(n) exhibits a non-null, non-nodal value, n shall exhibit a value for p unless p is in the derived or optional category.
A node in the verification grove shall be grounded if its class is not in the mayadd category and either
any of its siblings are grounded, or
the origin of the node is grounded, and
the origin-to-subnode relationship property of its origin is not in the optional category.
For each node n in the result grove, and for each non-intrinsic property p for which n exhibits a null value, V(n) shall exhibit a null value for p.
For each node n in the result grove, and for each non-intrinsic non-nodal property p for which n exhibits a non-null value, n[p] shall be equal, after any applicable string normalization specified for the property by the property set, to V(n)[p].
For each node n in the result grove and each subnode property p with a declared data type of node for which n exhibits a non-null value, V(n[p]) shall be equal to V(n)[p].
For each node n in the result grove and each subnode property p with a declared data type of nodelist or nmndlist for which n exhibits a non-null value, and for each node s in n[p], V(s) shall be in V(n)[p].
For each node n in the result grove and each subnode property p with a declared data type of nodelist for which n exhibits a value, and for any nodes r and s in n[p], if r precedes s in the result grove, V(r) shall precede V(s) in the verification grove.
The transliteration property described in “Transliteration” is not considered in the verification mapping.
As an exception to these rules, a node in the verification grove of class attribute-assignment need not be grounded if the rules of ISO 8879 that apply with an SGML declaration that specified SHORTTAG YES would not require the attribute to be specified.