Version 1.4 of ai12s/ai12-0078-1.txt

Unformatted version of ai12s/ai12-0078-1.txt version 1.4
Other versions for file ai12s/ai12-0078-1.txt

!standard A.18.10(2/3)          13-06-14 AI12-0078-1/01
!standard A.18.10(3/3)
!class binding interpretation 13-06-14
!status Corrigendum 2014 13-06-28
!status WG9 Approved 13-11-15
!status ARG Approved 9-0-0 13-06-15
!status work item 13-06-14
!status received 13-06-14
!priority Low
!difficulty Easy
!qualifier Omission
!subject Definition of node for tree container is confusing
!summary
The root node of a tree does not have an element.
!question
The introduction to the Tree container the definition of "node" is quite confusing, as it starts by saying that each node contains an element, but in fact the root node does not. Should this be clarified? (Yes.)
!recommendation
(See !summary.)
!wording
Modify A.18.10(2/3):
A multiway tree container object manages a tree of [internal] nodes, {comprising of a root node, and a set of internal nodes} each of which contains an element and pointers to the parent, first child, last child, next (successor) sibling, and previous (predecessor) sibling internal nodes. A cursor designates a particular node within a tree (and by extension the element contained in that node, if any). A cursor keeps designating the same node (and element) as long as the node is part of the container, even if the node is moved within the container.
Modify A.18.10(3/3):
A subtree is a particular node (which roots the subtree) and all of its child nodes (including all of the children of the child nodes, recursively). [There is a special node, the root, which] {The root node} is always present and has neither an associated element value nor any parent node{; it has pointers to its first child and its last child, if any}. The root node provides a place to add nodes to an otherwise empty tree and represents the base of the tree.
!discussion
!corrigendum A.18.10(2/3)
Replace the paragraph:
A multiway tree container object manages a tree of internal nodes, each of which contains an element and pointers to the parent, first child, last child, next (successor) sibling, and previous (predecessor) sibling internal nodes. A cursor designates a particular node within a tree (and by extension the element contained in that node, if any). A cursor keeps designating the same node (and element) as long as the node is part of the container, even if the node is moved within the container.
by:
A multiway tree container object manages a tree of nodes, comprising of a root node, and a set of internal nodes each of which contains an element and pointers to the parent, first child, last child, next (successor) sibling, and previous (predecessor) sibling internal nodes. A cursor designates a particular node within a tree (and by extension the element contained in that node, if any). A cursor keeps designating the same node (and element) as long as the node is part of the container, even if the node is moved within the container.
!corrigendum A.18.10(3/3)
Replace the paragraph:
A subtree is a particular node (which roots the subtree) and all of its child nodes (including all of the children of the child nodes, recursively). There is a special node, the root, which is always present and has neither an associated element value nor any parent node. The root node provides a place to add nodes to an otherwise empty tree and represents the base of the tree.
by:
A subtree is a particular node (which roots the subtree) and all of its child nodes (including all of the children of the child nodes, recursively). The root node is always present and has neither an associated element value nor any parent node; it has pointers to its first child and its last child, if any. The root node provides a place to add nodes to an otherwise empty tree and represents the base of the tree.
!ACATS Test
No ACATS test is needed, as this is just a definitional change (no semantic change is intended).
!ASIS
No ASIS effect.
!appendix

From: Tucker Taft
Sent: Friday, June 14, 2013 11:33 AM

!problem

The introduction to the Tree container the definition of "node" is quite
confusing, as it starts by saying that each node contains an element, but
in fact the root node does not.

!wording

Modify paragraphs A.18.10(2,3):

2/3
A multiway tree container object manages a tree of {*nodes*, comprising a
*root* *node*, and a set of *internal*} [internal] *nodes* each of which
contains an element and pointers to the parent, first child, last child, next
(successor) sibling, and previous (predecessor) sibling internal nodes. A
cursor designates a particular node within a tree (and by extension the
element contained in that node, if any). A cursor keeps designating the
same node (and element) as long as the node is part of the container, even
if the node is moved within the container.

3/3
A subtree is a particular node (which roots the subtree) and all of its child
nodes (including all of the children of the child nodes, recursively). [There
is a special node, the root, which] {The root node is always present and
has neither an associated element value nor any parent node{; it has pointers
to its first child and its last child, if any}. The root node provides a place
to add nodes to an otherwise empty tree and represents the base of the tree.


****************************************************************

From: Jeff Cousins
Sent: Friday, June 14, 2013  3:10 PM

Thanks Tuck.  The first paragraph looks fine to me but the second is missing a
} after "root node" and presumably the italics should be kept.

****************************************************************


Questions? Ask the ACAA Technical Agent