The most notable change from the public review stage is a very exciting one: the specification has been reorganized into two separate parts:
- the repository model and
- its Java bindings.
This should allow for much simpler consumption and implementation of the spec in other language environments.
The notable extensions of JSR-283 from JCR 1.0 have been discussed previously, see InfoQ for a summary. My personal favourites are.
- Query extensions mainly around extended support for SQL, specifically JOINs; We also introduced Java Bindings for the Query Object model that allow for easier "query wizards" and last but not least "Prepared" queries.
- Access Control Management to go beyond the introspection that is already specified in JCR v1.0.
- Retention Policy & Hold Support to enable records management applications sitting on top of JCR repositories in a standardized fashion.
- Simple versioning to provide for repositories that only support linear versioning. Versioning extensions around "Baselines" and "Activities" to cover the full configuration management spectrum.
- Lifecycle Management to allow to easily hook content into a process engine.
- Standardized Nodetype Registration that allow application to register and manage their nodetypes with repository.
- New property types and new nodetypes to enhance application interoperability around common meta data.
- Workspace Management to allow for creation and deletion of workspaces in a repository.
- Shareable nodes that allow the tree in a content repository workspace to become a more implicit network.
- Journalling Observation that allows offline/polling applications to find out what happend in a content repository since they last checked.
As next steps we will implement the RI (reference implementation) and the TCK (Technology Compatibility Kit) in the open as part of the Apache Jackrabbit project.
Please send any comments to firstname.lastname@example.org