incubator-cvs mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
Subject [Incubator Wiki] New: JcrProposal
Date Tue, 03 Aug 2004 05:03:07 GMT
   Date: 2004-08-02T22:03:06
   Editor: RoyFielding <>
   Wiki: Incubator Wiki
   Page: JcrProposal

   no comment

New Page:

= Proposal for new project JCR =

== Rationale ==

The Content Repository API for Java Technology (JCR) is being developed within the
Java Community Process as JSR-170 [], with
Day Software [] as specification lead.  It recently passed
public review and is incorporating the public comments.  The
reference implementation has been developed by Day under the proposals subdirectory
of the Jakarta Slide [] project's
CVS [].
JCR currently uses several utilities within Java commons and is expected to be used
(eventually) by Jakarta Slide, Cocoon, Lenya, and possibly as an interface to
various DB projects.

The purpose of this proposal is to move the JCR code out of the Slide proposals
area and into a neutral podling where it can attract additional committers from
other Apache projects and from the various JSR-170 expert group companies, learn
the Apache way of doing things, and allow the mailing list subscribers to focus
on this interface/implementation rather than all of the existing projects that
might want to use it.  We hope to improve collaboration on the code base by moving
all of the active developers and authors to Apache, bring in as many of the Apache
veterans as wish to get involved, and open it up to all of the 22 expert group
companies.  Development of the RI and TCK will occur in this project -- Day Software
will export the official (binary) RI and TCK releases from public tag names
within CVS, in accordance with JSPA 2.6 restrictions, allowing developers
to test against the open source versions as well as the official versions.

In the process, the reference implementation will become a useful package for
other Apache projects wishing to incorporate the JCR interface.  The code was
originally proposed as the back-end for some future version of Slide, which
may still happen at some point, and we anticipate future integrations
with Lenya, Cocoon, XML Indexing, Axion, and Derby.
We are also looking at integration with projects such as Beehive, Maven,
and Portals.

We are not certain of the destination PMC at the current time, though Slide (if it becomes
a TLP), Lenya, Cocoon, DB, or some future framework/CMS TLP are all candidates.  Since we
believe this should be based on the people who show up to do the work, we would prefer to
"re-start" within incubator and let the nascent Apache community decide once the choices
become more clear.  As such, we are requesting that the incubator PMC accept the podling
with a vote, even though it was earlier accepted as a proposal by Slide committers.

=== Criteria ===

==== Meritocracy ====

We plan to do everything possible to encourage an environment that supports a meritocracy.
 The committer list for this proposal includes people who will specifically be responsible
for doing the work necessary to foster a meritocracy.

==== Community ====

JSR-170's expert group consists of all of the big companies that have traditionally supported
Apache project work, and quite a few small ones as well.  Our focus will be to get the individuals
comfortable with the Apache development process and seek out new contributors.

==== Core Developers ====

Currently Day employees, though this will change as soon as we get a chance to invite more
people to join this effort.  Stefano Mazzocchi and Pier Fumagalli have been representing
Apache within the JSR-170 expert group.

==== Alignment ====

The initial code base is targeted to run on any compliant Servlet or J2EE container.
Ant is currently used as the build method.  Some of the Jakarta Commons utilities are
used internally.

=== Warning Signs ===

==== Orphaned products ====

This is an active project within Day Software and will be the basis of ongoing standards
work, the RI and TCK, and the core of our own content management products.

==== Inexperience with open source ====

Many of the committers have experience working on open source projects.  One of them co-founded

==== Homogenous developers ====

The current list of committers includes developers from different continents... more to come.They
are experienced with working in a distributed environment.

==== Reliance on salaried developers ====


==== No ties to other Apache products ====

This work was envisioned from its very beginning to become an Apache project, within the constraints
imposed by the Java Community Process (argh!).  We have kept the RI development visible through
parallel commits to the Slide CVS.  As described above, we expect this implementatin to be
by several existing Apache projects.  A software grant will be signed to allow Apache to distribute
the entire codebase under the Apache License 2.0.

==== A fascination with the Apache brand ====

The committers are intent on developing a strong open source community around JCR.
Apache was chosen because of the people involved and the emphasis on collaboration.
Day Software is committed to supporting the future open source development of JCR and to
distributing the result of that development as the official RI and TCK for JSR-170.

== Scope of the subprojects ==

RI, TCK, and website.

== Identify the initial source from which the subproject is to be populated ==
All code is currently licensed under the Day RI License 2.0, the same addendums to the
Apache License 2.0 that have been discussed on Apache licensing lists.  The code base will
be licensed to the ASF using a software grant from Day, allowing Apache to relicense
as pure Apache License 2.0 code.  A factual notice should be added to the distribution
to indicate that only the official version of the TCK can be used to "pass the TCK", but
that will not be a condition on the software grant.

== Identify the ASF resources to be created ==

=== mailing list(s) ===

 * jcr-ppmc via (with moderated subscriptions)
 * jcr-dev  via
 * jcr-commits via

=== CVS repositories ===

 * incubator-jcr

=== Jira ===

 * JCR

== Identify the initial set of committers ==

 * Stefan Guggisberg, Day (Slide committer)
 * Tobias Strasser, Day
 * Marcel Reutegger, Day
 * Peeter Piegaze, Day
 * Roy T. Fielding, Day (httpd, APR, incubator)
 * David Nuescheler, Day

 * others will be listed when they accept/volunteer

== Identify Apache sponsoring individual ==

 * Roy T. Fielding, Champion and Mentor for the project,
 (as defined in

To unsubscribe, e-mail:
For additional commands, e-mail:

View raw message