jackrabbit-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Peeter Piegaze <peeter.pieg...@gmail.com>
Subject Re: What is a workspace?
Date Sat, 06 Nov 2004 00:36:55 GMT
On Fri, 5 Nov 2004 15:28:41 -0800, Roy T. Fielding <fielding@gbiv.com> wrote:
> On Nov 5, 2004, at 2:35 PM, Oliver Zeigermann wrote:
> > I have problems understanding what a workspace is. I haven (really!)
> > read the spec, but still have no real idea. Is there anything
> > comparable I might know or an example that could illustrate it to me?
> Workspace is the common term in configuration management systems
> for a checked-out set of nodes that is resident on the server
> but not yet committed, just like CVS calls your local copy of
> the source code a workspace.  Think of it as a hidden branch of
> the tree that is private to your application until it is saved.
> ....Roy

One difference is that in jackrabbit/jsr170 the workspace really *is*
the tree. Its not a "hidden branch", it is the primary storage.

A repository is composed of one or more workspaces, each of which is a
rooted tree of nodes. This set of workspaces is server-resident and
comprises the guts of the repo.

A workspace is intended to be accessed and modified by multiple
sessions (which may be, for example, users). Any of these multiple
sessions may "save" changes to the workspace (assuming access rights
blah blah etc.).

Unlike in, say, CVS, to "save" a node to persistent storage does not
automatically create a new version of that node.

Creating a version (called by us "check-in", as distinct from the
earlier "save") is a separate step. These versions are stored in a
separate area of the repo (version storage).

Because jsr170 is conceived primarly as a content repository, as
opposed to config management system, the versioning aspect is more of
an "extra feature", hence some of the terminology from something like
CVS is not directly applicable, and this, I know can be somewhat

Anyway, hope this helps.

Peeter Piegaze
Author, JSR-170 Specification 
Day Software AG
Basel, Switzerland

View raw message