jackrabbit-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Apache Wiki <wikidi...@apache.org>
Subject [Jackrabbit Wiki] Update of "mix:versionable" by JukkaZitting
Date Sun, 23 Apr 2006 09:04:07 GMT
Dear Wiki user,

You have subscribed to a wiki page or wiki category on "Jackrabbit Wiki" for change notification.

The following page has been changed by JukkaZitting:
http://wiki.apache.org/jackrabbit/mix%3aversionable

New page:
Mixin type for versionable nodes.

== Definition ==

{{{
[mix:versionable] > mix:referenceable mixin
- jcr:versionHistory (REFERENCE) mandatory protected < nt:versionHistory
- jcr:predecessors   (REFERENCE) mandatory protected multiple < nt:version
- jcr:baseVersion    (REFERENCE) mandatory protected IGNORE < nt:version
- jcr:isCheckedOut   (BOOLEAN)   = true autocreated mandatory protected IGNORE
- jcr:mergeFailed    (REFERENCE) protected multiple ABORT
}}}

== Description ==

This is the key type of the JCR versioning system. All versionable nodes have the ["mix:versionable"]
mixin type.

All versionable nodes must also be referenceable, thus ["mix:versionable"] is a subtype of
["mix:versionable"]. There are no other constraints on the content or structure of the versionable
nodes.

A versionable node has a corresponding ["nt:versionHistory"] node within the {{{/jcr:system/jcr:versionStorage}}}
tree. The {{{jcr:baseVersion}}} property references the ["nt:version"] node that represents
the base version of this node within the version history.

The {{{jcr:predecessors}}} property contains one or more (because of merges) references to
["nt:version"] nodes within the version history. When this node is checked in, these versions
will be recorded as the predecessors of the checked in version.

The {{{jcr:isCheckedOut}}} flag indicates whether the node is checked out, i.e. can be modified
and then checked in as a new version.

The {{{jcr:mergeFailed}}} property is populated with references to the base versions of conflicting
nodes during a merge. An application needs to resolve the merge failure before checking in
this node, as the presence of the {{{jcr:mergeFailed}}} property will abort a checkin.

== Related node types ==

 * ["mix:versionable"] is a subtype of ["mix:referenceable"]
 * The ["nt:VersionHistory"] type represents the full version history of a node.
 * The ["nt:version"] type represents a single version of a versionable node.

== Comments and questions ==

Mime
View raw message