You are viewing a plain text version of this content. The canonical link for it is here.
Posted to general@incubator.apache.org by Cliff Schmidt <cl...@bea.com> on 2003/07/03 03:41:38 UTC

Proposal: XMLBeans

Hi,

I would like to propose a new subproject to further develop XMLBeans, which is a Java-XML binding tool that also allows low-level access to the full XML instance Infoset.  The technology was developed by BEA, but we believe this work could potentially be a good fit for either the Jakarta or the XML communities.  

Please see http://nagoya.apache.org/wiki/apachewiki.cgi?XmlBeansProposal for a detailed proposal, which I've also copied below.

Thanks,
Cliff

-----------
'''Proposal for an XMLBeans subproject in Apache XML or Jakarta'''

''2 July 2003, Cliff Schmidt (cliff.schmidt@bea.com)''

'''(0) rationale'''

XMLBeans is an XML-Java binding tool that uses XML Schema as a basis for generating Java classes to be used to easily access XML instance data. It was designed to provide both easy access to XML information via convenient Java classes as well as complete access to the underlying XML, combining the best of low-level, full access APIs like SAX and DOM with the convenience of Java binding.

See [http://workshop.bea.com/xmlbeans/quickStart.jsp BEA's quick start page] for more information.



'''(0.1) criteria'''

''Meritocracy: ''
We would very much like to see XMLBeans evolve under the meritocracy model that is used within Apache.

''Community: ''
Over the last six months, we have developed a thriving developer community to provide feedback directly to the development team through a discussion forum.  We have invited three of the members of the community to join us as committers, based on their contributions to the development of the product.  We've also had thousands of users experiment with the technology.  Part of the reason for this success has been the availability of [http://workshop.bea.com/xmlbeans/docindex.html sample code and thorough documentation].

''Core Developers:''
In addition to key members of the XMLBeans development team, the initial committers include developers from outside BEA who have spent several months using XMLBeans to solve their particular development needs.  

''Alignment:''
While XMLBeans does not currently have major dependencies on other Apache Jakarta or XML products, we are very interested in pursuing integration.  For instance, we are looking into enabling Xerces to be used as our XML parser.  One reason for doing this is due to the fact that we currently use the [http://piccolo.sourceforge.net/ Piccolo parser], and I realize that the LGPL terms of this parser would be problematic for an Apache project.  Therefore, if it is eventually agreed that an XMLBeans subproject in Apache would be a Good Thing, we will replace our current parser with an alternative that uses an Apache license.

We are also aware that there is some overlap of functionality with JAXB, specifically regarding object binding.  We would very much like to see the convergence of these two technologies.  In fact, one of the committers has recently joined the JAXB v.2 Expert Group, in order to facilitate this.

Finally, we are aware that the proposed WS-Commons subproject might include a JAXB proposal.  If this subproject is approved, we would want to work closely together on any future JAXB-XMLBeans convergence.  


'''(0.2) warning signs'''

''Orphaned products: ''
BEA has been receiving very positive press and customer feedback about XMLBeans and only wishes to invest further in the development and support of this technology.

''Inexperience with open source:''
While we do not yet have any committers who are currently active in the XML or Jakarta projects, several of them have previous experience working with open source communities.  For example, the architect behind XMLBeans, David Bau, has built a strong community around [http://sourceforge.net/projects/dqsd/ Dave's Quick Search Deskbar].

''Homogenous developers:''
The current list of committers represents developers from companies such as BEA, Federal Express, and Reuters, as well as one independent volunteer.  Of the nine committers listed below, they work in five different states (no international committers yet).  No more than two work in the same city.

''Reliance on salaried developers:''
* One of our committers is volunteering to work on XMLBeans.  
* Two of the committers are not paid by their employers to develop XMLBeans; however, in the interest of full disclosure, their employers do consider XMLBeans an important technology to their business.  
* The others are, in fact, actually paid to work on XMLBeans.
Finally, over the last six months, we have gotten interest from thousands of other developers.  We hope to interest many of them in volunteering to contribute to this project.


''No ties to other Apache products:''
XMLBeans shares similar licensing and complementary technologies to other Apache projects.

''A fascination with the Apache brand:''
The committers are interested in developing a healthy open source community around XMLBeans, whether Apache is the right place or not.  However, we believe that this subproject would complement others in both the Jakarta and XML Apache projects, and would make the larger community stronger as a result.  BEA is committed to supporting the future open source development of XMLBeans and continuing to distribute the result of that development with future releases of its Weblogic Workshop product.

'''(1) scope of the subproject'''

* XML Schema binding to Java classes
* Efficient, low-level XML access
* XML Schema validation

For more detailed information, see:
* [http://workshop.bea.com/xmlbeans/quickStart.jsp BEA's quick start page], or
* [http://dev2dev.bea.com/articles/hitesh_seth.jsp XML-Journal's review of XMLBeans].


'''(2) identify the initial source from which the subproject is to be populated'''

*http://workshop.bea.com/xmlbeans/XsdUpload.jsp
 
Note: This source currently includes the [http://piccolo.sourceforge.net/ Piccolo parser], which is licensed under LGPL.  We are already planning to swap this out for a parser licensed under Apache-like terms.

'''(3) identify the ASF resources to be created '''

'''(3.1) mailing list(s) '''

* xmlbeans-dev
* xmlbeans-user


'''(3.2) CVS repositories '''

* jakarta-xmlbeans or xml-xmlbeans


'''(3.3) Bugzilla '''

* jakarta xmlbeans or xml xmlbeans


'''(4) identify the initial set of committers '''

* Cezar Andrei (cezar.andrei@bea.com)
* David Bau (david.bau@bea.com)
* Tim Hanson (timothy.hanson@bea.com)
* Ken Kress (ken@kress.org)
* Laurence Moroney (laurence.moroney@reuters.com)
* David Remy (david.remy@bea.com)
* Cliff Schmidt (cliff.schmidt@bea.com)
* Eric Vasilik (eric.vasilik@bea.com)
* Robert Wyrick (rob@wyrick.org)


'''(5) identify apache sponsoring individual '''

* Steven Noels (stevenn@outerthought.org)


'''(6) open issues for discussion'''

* Which community would benefit more from this work: XML or Jakarta?  
* Should XMLBeans start in the Incubator project?
* If an Incubator stage is suggested, should the process of replacing our current LGPL parser with an Apache-compatible parser begin before or during incubation?

---------------------------------------------------------------------
To unsubscribe, e-mail: general-unsubscribe@incubator.apache.org
For additional commands, e-mail: general-help@incubator.apache.org


RE: Proposal: XMLBeans

Posted by "Howard M. Lewis Ship" <hl...@comcast.net>.

> -----Original Message-----
> From: Cliff Schmidt [mailto:cliff@bea.com] 
> Sent: Wednesday, July 02, 2003 9:42 PM
> To: general@jakarta.apache.org; general@xml.apache.org; 
> general@incubator.apache.org
> Subject: Proposal: XMLBeans
> 
> 
> Hi,
> 
> I would like to propose a new subproject to further develop 
> XMLBeans, which is a Java-XML binding tool that also allows 
> low-level access to the full XML instance Infoset.  The 
> technology was developed by BEA, but we believe this work 
> could potentially be a good fit for either the Jakarta or the 
> XML communities.  
> 
> Please see 
> http://nagoya.apache.org/wiki/apachewiki.cgi?XmlBeansProposal 
> for a detailed proposal, which I've also copied below.
> 
> Thanks,
> Cliff
> 
> -----------
> '''Proposal for an XMLBeans subproject in Apache XML or Jakarta'''
> 
> ''2 July 2003, Cliff Schmidt (cliff.schmidt@bea.com)''
> 
> '''(0) rationale'''
> 
> XMLBeans is an XML-Java binding tool that uses XML Schema as 
> a basis for generating Java classes to be used to easily 
> access XML instance data. It was designed to provide both 
> easy access to XML information via convenient Java classes as 
> well as complete access to the underlying XML, combining the 
> best of low-level, full access APIs like SAX and DOM with the 
> convenience of Java binding.
> 
> See [http://workshop.bea.com/xmlbeans/quickStart.jsp BEA's 
> quick start page] for more information.

There's a commons module, Betwixt, that very much overlaps what you describe here.  I would like to
look over both APIs before noodling further.  Please take these thoughts as cursory and initial
until I've had a better look-see.

What's compelling about XMLBeans compared to some of the other front runners, such as JDOM and XOM,
Castor and JAXB?

> 
> 
> 
> '''(0.1) criteria'''
> 
> ''Meritocracy: ''
> We would very much like to see XMLBeans evolve under the 
> meritocracy model that is used within Apache.

The advice I got is still good ... get your meritocracy working RIGHT NOW.  I personally found big
benefits to reoganizing along these lines; it would
have been worth the effort even if Tapestry hadn't made it all the way in.  The meritocracy really
works to get people motivated and contributing.

> 
> ''Community: ''
> Over the last six months, we have developed a thriving 
> developer community to provide feedback directly to the 
> development team through a discussion forum.  We have invited 
> three of the members of the community to join us as 
> committers, based on their contributions to the development 
> of the product.  We've also had thousands of users experiment 
> with the technology.  Part of the reason for this success has 
> been the availability of 
> [http://workshop.bea.com/xmlbeans/docindex.html sample code 
> and thorough documentation].
> 
> ''Core Developers:''
> In addition to key members of the XMLBeans development team, 
> the initial committers include developers from outside BEA 
> who have spent several months using XMLBeans to solve their 
> particular development needs.  


Be prepared to document a bit more about outside developers' contributions.

> 
> ''Alignment:''
> While XMLBeans does not currently have major dependencies on 
> other Apache Jakarta or XML products, we are very interested 
> in pursuing integration.  For instance, we are looking into 
> enabling Xerces to be used as our XML parser.  One reason for 
> doing this is due to the fact that we currently use the 
> [http://piccolo.sourceforge.net/ Piccolo parser], and I 
> realize that the LGPL terms of this parser would be 
> problematic for an Apache project.  Therefore, if it is 
> eventually agreed that an XMLBeans subproject in Apache would 
> be a Good Thing, we will replace our current parser with an 
> alternative that uses an Apache license.

I've learned the hard way to get rid of all [L]GPL dependencies before you attempt to move to
Jakarta.


> 
> We are also aware that there is some overlap of functionality 
> with JAXB, specifically regarding object binding.  We would 
> very much like to see the convergence of these two 
> technologies.  In fact, one of the committers has recently 
> joined the JAXB v.2 Expert Group, in order to facilitate this.
> 
> Finally, we are aware that the proposed WS-Commons subproject 
> might include a JAXB proposal.  If this subproject is 
> approved, we would want to work closely together on any 
> future JAXB-XMLBeans convergence.  
> 
> 
> '''(0.2) warning signs'''
> 
> ''Orphaned products: ''
> BEA has been receiving very positive press and customer 
> feedback about XMLBeans and only wishes to invest further in 
> the development and support of this technology.

Do you have a roadmap of where you would like this project to be in 6 months?  A year?  Two years?

> 
> ''Inexperience with open source:''
> While we do not yet have any committers who are currently 
> active in the XML or Jakarta projects, several of them have 
> previous experience working with open source communities.  
> For example, the architect behind XMLBeans, David Bau, has 
> built a strong community around 
> [http://sourceforge.net/projects/dqsd/ Dave's Quick Search Deskbar].
> 
> ''Homogenous developers:''
> The current list of committers represents developers from 
> companies such as BEA, Federal Express, and Reuters, as well 
> as one independent volunteer.  Of the nine committers listed 
> below, they work in five different states (no international 
> committers yet).  No more than two work in the same city.
> 
> ''Reliance on salaried developers:''
> * One of our committers is volunteering to work on XMLBeans.  
> * Two of the committers are not paid by their employers to 
> develop XMLBeans; however, in the interest of full 
> disclosure, their employers do consider XMLBeans an important 
> technology to their business.  
> * The others are, in fact, actually paid to work on XMLBeans. 
> Finally, over the last six months, we have gotten interest 
> from thousands of other developers.  We hope to interest many 
> of them in volunteering to contribute to this project.
> 
> 
> ''No ties to other Apache products:''
> XMLBeans shares similar licensing and complementary 
> technologies to other Apache projects.

What licensing to you currently use?  LGPL is a problem, BSD or ASL is the way to go.  (Pardon me
if this is on the pages you've linked to ... I haven't clicked through yet).

> 
> ''A fascination with the Apache brand:''
> The committers are interested in developing a healthy open 
> source community around XMLBeans, whether Apache is the right 
> place or not.  However, we believe that this subproject would 
> complement others in both the Jakarta and XML Apache 
> projects, and would make the larger community stronger as a 
> result.  BEA is committed to supporting the future open 
> source development of XMLBeans and continuing to distribute 
> the result of that development with future releases of its 
> Weblogic Workshop product.
> 
> '''(1) scope of the subproject'''
> 
> * XML Schema binding to Java classes
> * Efficient, low-level XML access
> * XML Schema validation
> 
> For more detailed information, see:
> * [http://workshop.bea.com/xmlbeans/quickStart.jsp BEA's 
> quick start page], or
> * [http://dev2dev.bea.com/articles/hitesh_seth.jsp 
> XML-Journal's review of XMLBeans].
> 
> 
> '''(2) identify the initial source from which the subproject 
> is to be populated'''
> 
> *http://workshop.bea.com/xmlbeans/XsdUpload.jsp
>  
> Note: This source currently includes the 
> [http://piccolo.sourceforge.net/ Piccolo parser], which is 
> licensed under LGPL.  We are already planning to swap this 
> out for a parser licensed under Apache-like terms.
> 
> '''(3) identify the ASF resources to be created '''
> 
> '''(3.1) mailing list(s) '''
> 
> * xmlbeans-dev
> * xmlbeans-user
> 
> 
> '''(3.2) CVS repositories '''
> 
> * jakarta-xmlbeans or xml-xmlbeans
> 
> 
> '''(3.3) Bugzilla '''
> 
> * jakarta xmlbeans or xml xmlbeans
> 
> 
> '''(4) identify the initial set of committers '''
> 
> * Cezar Andrei (cezar.andrei@bea.com)
> * David Bau (david.bau@bea.com)
> * Tim Hanson (timothy.hanson@bea.com)
> * Ken Kress (ken@kress.org)
> * Laurence Moroney (laurence.moroney@reuters.com)
> * David Remy (david.remy@bea.com)
> * Cliff Schmidt (cliff.schmidt@bea.com)
> * Eric Vasilik (eric.vasilik@bea.com)
> * Robert Wyrick (rob@wyrick.org)
> 
> 
> '''(5) identify apache sponsoring individual '''
> 
> * Steven Noels (stevenn@outerthought.org)

That's a good step!  

> 
> 
> '''(6) open issues for discussion'''
> 
> * Which community would benefit more from this work: XML or Jakarta?  
> * Should XMLBeans start in the Incubator project?

> * If an Incubator stage is suggested, should the process of 
> replacing our current LGPL parser with an Apache-compatible 
> parser begin before or during incubation?

I'd be interested to know why you feel the project will benefit from hosting at Jakarta?  My
personal experience with Tapestry is that the move to Jakarta was good for exposure ... but
Tapestry, regretably, did not have a major player (such as BEA) backing it.  Eclipse, for example,
self-hosts, yet is taken very seriously as an open source project.


I'd say you'd want to do as much setup before incubation as possible.  This includes normalizing
your code layout (something that didn't materialize for Tapestry, unfortunately) to match the other
Jakarta projects (this will ease things if and when you transition to Maven builds).  You probably
want to check out a bit about Gump as well ... I can think of one person who will probably veto you
until you are integrated into Gump.  It's *exceptionally* painful to work with Gump at the moment,
but ultimately worth it.


> 




--
Howard M. Lewis Ship
Creator, Tapestry: Java Web Components
http://jakarta.apache.org/tapestry


---------------------------------------------------------------------
To unsubscribe, e-mail: general-unsubscribe@jakarta.apache.org
For additional commands, e-mail: general-help@jakarta.apache.org