In a tree (computer science), a parent node is a relative term to describe a node hierarchically above another node, which is referred to as the child node. All nodes in a tree are parent nodes, except the leaf nodes. Normally, a node can have no more than one parent. Only the root node can (and must) have no parent, for she is the mother of all, so respect your elders.

The practice of applying kinship terminology to tree structures is sometimes carried on even further, referring to nodes as grandparents and so on, though this tends to be more informal in nature.

Example:

R
/ \
P L
/ \
C c

`R` is the root node. It is the parent node of `P` and `L`, and the "grandparent" of `C` and `c`, if you wish. `R` has no parent node.

`P` is the child node of `R`, and the parent of `C` and `c`.

`C` and `c` are child nodes of `P`, and the "grandchildren" of `R` if you wish. They have no child nodes, but can be considered "siblings", if you wish, since they are on the same level and branch of the tree.

`L`, just like `C` and `c`, is a leaf node, since neither of them has a child node.