Contains classes for navigating and manipulating the hierarchy of nodes in a namespace.

### Nodes

The hierarchy of a namespace is composed of nodes. Each node can have children (called sub-nodes). Just like in a filesystem, nodes have different types. {@link org.apache.slide.structure.ObjectNode ObjectNode} is an abstract data type that can represent any node in the namespace structure. In addition, every node must be of either of the following concrete types:

- {@link org.apache.slide.structure.SubjectNode SubjectNode} is the most common type of node used in a namespace. A subject can be a file, a directory or a principal.
- {@link org.apache.slide.structure.LinkNode LinkNode} represents a node that is a link to another node in the same namespace.
- {@link org.apache.slide.structure.GroupNode GroupNode} is used to define a group of nodes (usually of users).
- {@link org.apache.slide.structure.ActionNode ActionNode} is a type for defining available actions on nodes.

The type of a node determines which roles that node has. See the {@link org.apache.slide.security Security} package for more information on roles.

### Structure Helper

The central point in this package is the {@link org.apache.slide.structure.Structure Structure} interface, also referred to as the Structure Helper, which you can access using the {@link org.apache.slide.common.NamespaceAccessToken#getStructureHelper() NamespaceAccessToken.getStructureHelper()} method. It provides all the methods required to access and manipulate the node hierarchy of a namespace.