xml-commons is focussed on common code and guidelines for xml projects. The first focus will be to organize and have common packaging for the various externally-defined standards code relating to XML - things like the DOM, SAX, and JAXP interfaces.
As the xml-commons community forms, we also hope to serve as a holding area for other common xml-related utilities and code, and to help promulgate common packaging, testing, documentation, and other guidelines across all xml.apache.org subprojects.
As the community forms, we need to formalize these guidelines, especially to differentiate "requirements" from suggested "guidelines".
Shane's starting proposals:
xml-commons is an unusual project in several ways.
First, it encompasses two kinds of code: External and Apache.
Secondly, xml-commons mainly focuses on providing code and services to other xml.apache.org projects instead of shipping it's own 'standalone' project.
Third, it will also tend to be more focussed on smaller, interoperable modules of code and a very high degree of stability.
In some ways, the forming of xml-commons is the seed of a catalyst to improve cross-project coordination throughout xml.apache.org. One potential goal is to get all xml.apache.org projects to take their xml standards oriented code - like DOM, SAX and JAXP - from specific marked builds of xml-commons, instead of each project using different versions of these files.
External code: xml-commons will serve as an Apache-controlled copy of externally-defined standards-based files. This way, we can try to manage common versions of these important xml standards-based files and interfaces. Read more.
Apache code: xml-commons will serve as a shared repository for common xml-oriented utilities or building blocks that several other xml.apache.org projects wish to use. The first example is org.apache.env.Which, and environment checking utility that scans your environment and reports common versions of xml-related files. The next likely submission is an entity resolver that could be plugged into any xml parsing, transforming, or processing project. Read more.
Directory tree (proposed)
xml-commons primary goal is to provide Apache projects with a stable version of XMl-related externally-defined standards-based code. This is mainly the various interfaces that you use when programming XML from JAVA: DOM, SAX and JAXP for now.
This tree is rooted at xml-commons/java/external, and has a build.xml file. Basic documentation from each external project is also checked in.
Issues Jan-02: our current SAX and JAXP code may not pass the current J2EE CTS test suite, since we have bugfixes above what those CTS tests mandate. If you don't know what that is, you don't care; otherwise ask on commons-dev for an update.
xml-commons' secondary goal is to provide a project space for small XML-related utilities that are being used in multiple other xml.apache.org projects. In an effort to simplify and reduce dependency headaches, we'll probably accept new projects only fairly slowly (this is in contrast to the much more open jakarta-commons project). In particular, code submitted here should probably have minimal dependencies: possibly only depending on DOM/SAX/JAXP and Ant (for builds).
The xml-commons-resolver-1.0 release 12-Nov-02 is available in our distribution directory and includes:
The xml-commons-1.0.b2 release 06-Feb-02 is available in our distribution directory and includes:
The xml-commons-1.0.b1 release 11-Jan-02 is available in our distribution directory and includes the following code:
Future 'b' or beta releases leading up to a gold 1.0 release will be discussed on our mailing list. Likely releases might address points such as:
If you have done 'cvs checkout xml-commons' then you have local
sources of all components and all documentation sources. There is a high-level
build file that will also call the other sub-build files for each component.
Just do 'ant -projecthelp' to get started.
The documentation for the xml-commons project is built using Apache Forrest.
If you have Forrest installed then just type 'forrest' in the
top-level xml-commons directory. Otherwise see the
Apache XML Commons website
documentation.
We have a project mailing list ... commons-dev<at>xml.apache.org ... Ask your questions or bring your suggestions there, or to general<at>xml.apache.org
To help you keep up with the changes to the repository, subscribe to ... commons-cvs<at>xml.apache.org
The xml-commons source code is available through the ASF Subversion repository or browse. See SVN overview.
See the separate document History of XML Commons for the proposal to establish the xml-commons project and for the record of the vote on 2001-04-26.
See information about licensing.