+1 --k
On Tue, May 31, 2005 at 12:29:59PM -0600, David Waite wrote: > +1 > > On May 31, 2005, at 11:29 AM, [EMAIL PROTECTED] wrote: > > >+1 > > > >-- -- > >Ken Kress > >Information Technology > >Lockwood? > >10 Valley Stream Parkway > >Malvern, PA 19355 > >Phone: (484) 605-4834 > >Fax: (484) 605-4903 > >Email: [EMAIL PROTECTED] > > > > > > > > > >Cliff Schmidt <[EMAIL PROTECTED]> > >05/31/2005 01:16 PM > >Please respond to dev > > > > > > To: dev@xmlbeans.apache.org > > cc: > > Subject: [VOTE] xmlbeanscxx subproject > > > > > >I think we've now had plenty of time for discussion. Please vote on > >the following: > > > >Should the XMLBeans project sponsor the proposed xmlbeanscxx project, > >as described in Heidi's proposal (see below)? > > > >As usual, all members of the xmlbeans community are welcome to vote, > >but only XMLBeans PMC members have binding votes. This vote will > >close at midnight, 4 June UTC (Friday at 5 PM PDT): > >http://www.timeanddate.com/worldclock/fixedtime.html? > >year=2005&month=6&day=4&hour=00&min=00&sec=00 > > > >Thanks, > >Cliff > > > >On 5/19/05, Heidi Buelow <[EMAIL PROTECTED]> wrote: > > > >> > >>Since writing the XmlBeans C++ proposal a few weeks ago, we have done > >> > >more > > > >>analysis of our planned approach, and we have come to the conclusion > >> > >that > > > >>there are significant and important differences between the XmlBeans > >>architecture and that of our existing product that we referenced > >>in the > >>proposal as a starting point for the Apache project. In addition, we > >> > >have > > > >>since made progress on the XmlBeans C++ implementation with > >>developers > >>actively working on the project internally. > >> > >>Our goal is clear, in that we plan to develop XmlBeans C++ to be > >> > >compatible > > > >>with the Java version, both architecturally and keeping to the API as > >>closely as possible. There are many components in our existing LEIF > >> > >product > > > >>that will provide a starting point for XmlBeans C++ to jump-start the > >>project. However, given the differences, we now plan to have our > >> > >developers > > > >>borrow/modify from this applicable code and then submit it to the > >>Apache > >>project during implementation. > >> > >>This approach will be a lot less confusing to the community, > >>giving our > >>developers the responsibility of incorporating any of our existing > >> > >product > > > >>code into the Apache project, avoiding that burden for other > >> > >contributors. > > > >>We can transfer our work under the auspices of Apache as soon as the > >> > >project > > > >>is approved and the environment is set up. > >> > >> > >>Heidi. > >>-------------------- > >>Heidi Buelow > >>Rogue Wave, a division of Quovadx > >> > >> > >> > >>>-----Original Message----- > >>>From: Heidi Buelow > >>>Sent: Sunday, May 15, 2005 11:12 AM > >>>To: 'dev@xmlbeans.apache.org' > >>>Subject: Proposal for xmlbeanscxx > >>> > >>>This is a proposal for an xmlbeans subproject which should be > >>> > >discussed > > > >>>here > >>>and voted on at the xmlbeans PMC before going to the incubator for a > >>> > >vote. > > > >>> > >>>Proposal to create a C++ version of the Apache XMLBeans project > >>> > >>>Submission date: 15 May 2005, Tim Triemstra, Heidi Buelow (TimT @ > >>>RogueWave > >>>dot-com, Buelow @ RogueWave dot-com) > >>> > >>>(0) rationale > >>> > >>>Apache currently maintains the XMLBeans/Java project, a tool that > >>>uses > >>> > >XML > > > >>>Schema as a basis for generating Java classes used to easily access > >>> > >XML > > > >>>instance data. The goal of the XMLBeans/C++ project is to provide a > >>> > >very > > > >>>similar user experience for C++ developers as that provided by the > >>>XMLBeans/Java version. This includes generating strongly-typed C++ > >>> > >classes > > > >>>for the XML binding as well as providing low-level C++ APIs enabling > >>>access > >>>to the raw, underlying XML content. Where possible, the XMLBeans/C++ > >>>project > >>>will provide a nearly identical API and parallel architecture to > >>>that > >>>provided by the Java counterpart, and will closely mimic both > >>>features > >>> > >and > > > >>>schedule. > >>> > >>>Rogue Wave Software will help jump start this project by > >>>contributing > >>> > >the > > > >>>existing XML to C++ binding code distributed as part of the LEIF > >>> > >product > > > >>>to > >>>the Apache community. This product has been in production for > >>>over two > >>>years, and will provide a solid foundation for a C++ version of > >>> > >XMLBeans. > > > >>> > >>>(0.1) criteria > >>> > >>>Meritocracy: The C++ version of the project should adhere to the > >>>same > >>>open, > >>>merit-based community standards as other Apache projects. > >>> > >>>Contributions and Core Developers: Code being contributed is > >>>actually > >>> > >a > > > >>>subset of the LEIF product. Currently, work is underway to remove > >>>any > >>>proprietary dependencies from within the code. A "cleaned" version > >>> > >that is > > > >>>ready for contribution will be made available to the community > >>>around > >>> > >the > > > >>>middle of May 2005. This initial contribution will be fully > >>> > >functioning, > > > >>>but > >>>missing a few key features of the Java version of XMLBeans. > >>> > >>>The community should be able to immediately jump in and begin work, > >>> > >along > > > >>>side dedicated Rogue Wave personnel, to turn the initial > >>>contribution > >>> > >into > > > >>>a > >>>feature-compatible version of XMLBeans for C++. > >>> > >>>Community: The community around the Java version of XMLBeans is > >>> > >already > > > >>>vibrant and growing. There is every reason to believe many of those > >>> > >within > > > >>>the existing community have experience and/or general interest in a > >>>successful, compatible C++ implementation of the toolset. This > >>>should > >>>ensure > >>>an immediately active and vocal community, even if the primary > >>> > >interest is > > > >>>in ensuring a similar experience between versions. There is > >>>already a > >>>large > >>>group of developers "in the wild" using the original XML to C++ > >>> > >binding > > > >>>tool > >>>that is serving as the original contribution for this project. These > >>> > >users > > > >>>will be migrating to the XMLBeans/C++ code over time and have > >>>already > >>>indicated a keen interest in tracking, and even participating in the > >>>Apache-led project. > >>> > >>>Apache Alignment: The XML binding tool from which the XMLBeans/C++ > >>> > >port > > > >>>will > >>>morph does not include a full XML parser, but instead uses a small, > >>>focused > >>>parser designed expressly for tight C++ to XML binding support. The > >>>general > >>>purpose XML instance data APIs within XMLBeans will require > >>>additional > >>>code > >>>and may be a good fit for the Xerces parser to enable some required > >>>features. > >>> > >>>Additionally, at least one member of an existing Apache project has > >>>expressed interest in a project like XMLBeans/C++ to aid in his > >>> > >current > > > >>>work. Higher-level projects such as Axis for C++ seem to be natural > >>>beneficiaries of this work. > >>> > >>>(0.2) known risks > >>> > >>>Orphaned Products: One of the first questions when a commercial > >>>entity > >>>offers code to the public is "will this code be abandoned?" To be > >>> > >clear, > > > >>>Rogue Wave decided to initiate this process due to its own > >>>significant > >>>interest in the XMLBeans feature set already present in Java, and > >>>its > >>> > >need > > > >>>for similar features in C++. We have significant product goals > >>>moving > >>>forward around XML for which the XMLBeans model fits perfectly. > >>>Rather > >>>than > >>>simply copy the design and keep the project closed, we felt that the > >>>downstream products would reap significant benefits from opening the > >>> > >XML > > > >>>layer to the community. Keeping the C++ version in sync with the > >>>Java > >>>version, even if it were to not be accepted as an Apache project, > >>>can > >>> > >only > > > >>>help its overall adoption. > >>> > >>>Additionally, a diverse committer base is a strong goal for this > >>> > >project. > > > >>>Numerous users of the contributed XML to C++ binding tool have > >>> > >indicated > > > >>>interest in participating, many of whom have critical projects > >>> > >dependant > > > >>>on > >>>this work and resources available to continue to ensure the > >>>viability > >>> > >of > > > >>>the > >>>project well into the future. > >>> > >>>Inexperience with Open Source: Like many companies entering this > >>> > >arena, we > > > >>>have limited experience working on open source projects. Our primary > >>> > >goal > > > >>>is > >>>to foster an active community around XMLBeans/C++ so advice will be > >>> > >taken > > > >>>to > >>>heart, and significant resources will be dedicated to the project to > >>> > >get > > > >>>it > >>>off the ground. However, we hope that our experience working in open > >>>standards groups will aid in the transition to the open source > >>> > >community. > > > >>> > >>>Initial Reliance on Salaried Workers: Due to the rapid process of > >>>transitioning to work on the open source XMLBeans/C++ project, > >>>only a > >>> > >few > > > >>>of > >>>the listed contributors will be outside the commercial realm. We > >>> > >expect > > > >>>this > >>>list of external volunteers to grow significantly after the initial > >>> > >public > > > >>>code drop. > >>> > >>>Licensing, Patents, Miscellaneous Legal: We are conducting a legal > >>> > >review > > > >>>of > >>>the code and existing contracts. This review should be done shortly > >>> > >and > > > >>>any > >>>code contributed will be licensed under the latest ASF terms. > >>> > >>>Commercial Interest: XMLBeans/C++ will be maintained as an open > >>>source > >>>Apache project, with all relevant enhancements contributed to the > >>>community. > >>>Additionally, there is every intention to use XMLBeans/C++ within > >>> > >future > > > >>>commercial products, thereby resulting in even greater testing and > >>> > >user > > > >>>exposure. It is expected that other companies may well wish to > >>>use the > >>>project's code within their own commercial endeavors, which of > >>>course > >>>would > >>>be fine. > >>> > >>>(1) scope of the subproject > >>> > >>>The XMLBeans/C++ subproject will conform to the identical scope as > >>> > >that > > > >>>laid > >>>out for the partner Java project. Special care will be taken to > >>> > >implement > > > >>>features and add conveniences that would be expected by a C++ > >>> > >developer. > > > >>> > >>>For clarity, the goals of the XMLBeans/C++ project are: > >>> > >>>Generation of plain C++ classes to model XML Schema Validation of > >>>C++ > >>>objects against the source XML Schema Access to partial document > >>> > >instance > > > >>>data (fragments) Efficient "parse as necessary" access that forgives > >>> > >extra > > > >>>data Access to the full XML infoset > >>> > >>> > >>> > >>>(2) identify the initial source for subproject code > >>> > >>>Some background information may be found on the LEIF product and the > >>>associated Data Tier. > >>> > >>>LEIF product page (http://www.roguewave.com/products/leif) > >>> > >>>The C++/XML binding contribution code can be found at the following > >>> > >link: > > > >>> > >>>xmlBeans open source information > >>>(http://www.roguewave.com/opensource/XMLbeans.cfm) > >>> > >>>(3) identify the ASF resources to be created > >>> > >>>(3.1) mailing list(s) > >>> > >>>xmlbeanscxx-dev > >>>xmlbeanscxx-user > >>>xmlbeanscxx-commits > >>> > >>>(3.2) SVN repositories > >>> > >>>xml-xmlbeanscxx > >>> > >>>(3.3) Bugzilla > >>> > >>>xml xmlbeanscxx > >>> > >>>(4.0) identify the initial set of committers > >>> > >>>This is a preliminary list that will be updated with volunteer > >>> > >members. > > > >>> > >>>Tim Triemstra (TimT @ RogueWave dot-com) > >>>John Hinke (Hinke @ RogueWave dot-com) > >>>Heidi Buelow (Buelow @ RogueWave dot-com) > >>>Allen Brookes (ABrookes @ RogueWave dot-com) > >>>David Haney (David.Haney @ RogueWave dot-com) > >>>Michael Yoder (Michael.Yoder @ RogueWave dot-com) > >>> > >>>(5) identify apache sponsoring individual > >>> > >>>Cliff Schmidt, of the XMLBeans/Java project, has volunteered to > >>> > >sponsor > > > >>>this > >>>project. > >>> > >>>Cliff Schmidt (CliffS @ Apache dot-org) > >>> > >>>(6) open issues for discussion > >>> > >>>The original code contribution has a lot of proven code for > >>>creating a > >>>binding between XML Schema and C++ classes. However, the > >>>contribution > >>> > >will > > > >>>require a significant overhaul, and even complete re-writes in some > >>> > >areas, > > > >>>in order to reach compatibility with the XMLBeans/Java version. > >>> > >Detailed > > > >>>differences will be discussed openly within the community so that an > >>>appropriate plan for each area can be reached. This proposal is not > >>> > >the > > > >>>best > >>>place to lay out all the technical details, however you will find > >>> > >below a > > > >>>preliminary list of issues, priorities, and estimated timelines. > >>> > >>>API discrepencies between contributed code and XMLBeans 2.0 The > >>>contributed > >>>code includes a very similar type-binding API in C++ to that > >>>provided > >>> > >in > > > >>>XMLBeans for Java. However, the XMLBeans cursor access to the > >>> > >underlying > > > >>>infoset has no equivilant in the contributed code and will require > >>>extensive > >>>work to the underlying object model to support. > >>> > >>>Addressing this deficiency is considered the highest priority task > >>> > >facing > > > >>>the C++ project. > >>> > >>>Several options are available including porting the XMLBeans object > >>> > >model > > > >>>completely over to C++ or looking for ways to augment the > >>>contributed > >>>code. > >>>Most likely a near-complete rewrite of this section will be the best > >>>approach. > >>> > >>>Rough estimates for a working implementation of the cursor > >>>feature are > >>>between three and five months Code generator > >>> > >>>The contributed C++ code is based on a proprietary code generator, > >>>although > >>>it too is written in Java (not C++). The long-term plan is to > >>> > >consolidate > > > >>>both C++ and Java projects under the same code generator, most > >>>likely > >>> > >the > > > >>>one already included in the Java version of the XMLBeans. > >>> > >>>This is not considered a priority-1 task at this point, more of a > >>>long > >>>term > >>>goal and convenience. If it saves time in other priority tasks it > >>>will > >>> > >be > > > >>>looked at closely, however. > >>> > >>>Timeline for this transition is 5-7 months, but may be very much > >>> > >sooner > > > >>>depending on available resources. > >>> > >>>Platform support > >>>Unlike Java, the C++ port will have significant issues around > >>>platform > >>> > >and > > > >>>compiler support. In order to help with this the project will be > >>>using > >>> > >the > > > >>>C++ standard library, and may in fact benefit greatly from the > >>> > >proposed > > > >>>Apache C++ StdLib (STDCXX). Initially the native StdLib will be > >>>used. > >>> > >>>Good platform support will be very important so even the early > >>>builds > >>>should > >>>be done on Windows and Linux, and preferably at least one Unix > >>> > >variety. > > > >>>Long > >>>term the matrix should be very large. > >>> > >>>The initial contribution is working on Linux but it is really just a > >>>preview > >>>look at code, not a true product build. Windows and Linux support > >>> > >should > > > >>>accompany the initial beta release, with Solaris, HP-UX, AIX, and > >>> > >other > > > >>>Linux distros following within three months. > >>> > >>>Estimated timeline (very rough) > >>>Initial submission of proposal and example code: 12 May 2005 Apache > >>>structure in place and code building: 1 July 2005 Re-write of > >>>internal > >>>object model building: 1 September 2005 XMLBeans/Java 2.0 feature > >>>equivilant > >>>beta: 1 December 2005 > >>> > >>>This timeline is based on a very preliminary discovery of issues and > >>> > >is > > > >>>based on limited resource information. There is little chance for > >>>this > >>>schedule to be elongated by very much time as there are already a > >>>few > >>>dedicated resources assigned to the project, but there is also > >>>little > >>>known > >>>about how much a concerted community effort could speed things > >>>up. In > >>>general the feeling is that a greater community involvement will > >>> > >greatly > > > >>>improve the test suite, identified bugs, and platform support - not > >>>necessarily the initial speed of feature development. > >>> > >>> > >>> > >>>-------------------- > >>>Heidi Buelow > >>>Rogue Wave, a division of Quovadx > >>> > >>>-------------------------------------------------------------------- > >>>- > >>>To unsubscribe, e-mail: [EMAIL PROTECTED] > >>>For additional commands, e-mail: [EMAIL PROTECTED] > >>> > >> > >>--------------------------------------------------------------------- > >>To unsubscribe, e-mail: [EMAIL PROTECTED] > >>For additional commands, e-mail: [EMAIL PROTECTED] > >> > >> > >> > > > >--------------------------------------------------------------------- > >To unsubscribe, e-mail: [EMAIL PROTECTED] > >For additional commands, e-mail: [EMAIL PROTECTED] > > > > > > > > > > > >______________________________________________________________________ > >__ > >The information in this e-mail, and any attachment therein, is > >confidential and for use by the addressee only. If you are not the > >intended recipient, please return the e-mail to the sender and > >delete it from your computer. Although The Bank of New York > >attempts to sweep e-mail and attachments for viruses, it does not > >guarantee that either are virus-free and accepts no liability for > >any damage sustained as a result of viruses. > > > >--------------------------------------------------------------------- > >To unsubscribe, e-mail: [EMAIL PROTECTED] > >For additional commands, e-mail: [EMAIL PROTECTED] > > > > > > David Waite > [EMAIL PROTECTED] > > > > --------------------------------------------------------------------- > To unsubscribe, e-mail: [EMAIL PROTECTED] > For additional commands, e-mail: [EMAIL PROTECTED] > --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]