This specification is divided into two compliance levels and a set of additional optional features which repositories of either level may support. Level 1 provides for read functions and level 2 adds additional write functions. The functional division is as follows:
Level 1 includes:
Retrieval and traversal of nodes and properties
Reading the values of properties
Transient namespace remapping
Export to XML/SAX
Query facility with XPath syntax
Discovery of available node types
Discovery of access control permissions
Level 2 adds:
Adding and removing nodes and properties
Writing the values of properties
Persistent namespace changes
Import from XML/SAX
Assigning node types to nodes
Optional:
Any combination of the following features may be added to an implementation of either level.
Transactions
Versioning
Observation (Events)
Locking
SQL syntax for query