The typing system provides a rich set of descriptions for the nature of nodes on several different levels.
Since there are three levels to this system,
I will try to give an overview here to hopefully head off any confusion.
There are three levels in the type system.
From highest to lowest,
the levels are:
Node Type. Node types are represented by Repository::Simple::Type::Node.
These define the overall organization of nodes in the system.
A node is a collection of child nodes and properties.
A node type determines what structures are expected or permissible for nodes.
Property Type. Property types are represented by Repository::Simple::Type::Property.
These define the overall nature of each property.
A property is a key/value pair.
A property type determines what type is expected for a given property value and if that property can be added,