Re: [vote] XMLBeans to enter XML incubation [was: Re: Vote for XMLBeansproposal in the XML Project (was RE: Vote for XMLBeans proposal)]

2003-07-08 Thread Aleksander Slominski
Steven Noels wrote:

Dear committers,

as outlined in the xml.apache.org charter (section 6.2), and in 
collaboration with the Incubator 
(http://cvs.apache.org/viewcvs.cgi/incubator/STATUS?rev=HEAD)

Subject to:

- relicensing of the XMLBeans codebase using the ASL 1.1 license 
(http://xml.apache.org/LICENSE)
- copyright transfer from BEA to the ASF as described in 
http://incubator.apache.org/process.html [1]
- each initial XMLBeans committer sending in a Contributor's License 
Agreement 
(http://incubator.apache.org/forms/ASF_Contributor_License_2_form.pdf)
- furthermore, I would strongly suggest the XMLBeans code should only 
be moved into Apache CVS once the outstanding LGPL  BEA-licensed code 
dependency issues have been resolved.

Please cast your vote on the acceptance of the XMLBeans project for 
incubation in the XML.Apache project:

--- vote ballot --

Name: 

[ ] I agree with and support this proposal (+1) 
+1

thanks,

alek

([EMAIL PROTECTED], PMC memeber of Web Services)

--
If everything seems under control, you're just not going fast enough. Mario Andretti


-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]


Re: XMLBeans performance and source code status [Re: Proposal: XMLBeans]

2003-07-06 Thread Aleksander Slominski
David Bau wrote:

Adding a few links and other info -

Eric Vasilik writes:

The synchronization described refers to the fact
that one may manipulate the XML via the XmlCursor
or the strongly typed XMLBean classes generated from
the schema


As Eric says, we don't want to confuse the two uses of
the word synchronize.  But since Aleksander brought it
up - here's some information on thread-synchronization
too.

We examined both with- and without-thread-synchronized
access, and found that without-thread-sync, programmers
fall into traps like working with XML config files on
multiple threads in thread-unsafe ways without without
being aware of it.  We found that it costs between 1%
(strongly-typed access) and 10% (XmlCursor access) to
synchronize. So we're currently synchronizing access
to the data now, paying for more [app] stability with a
little bit of perf. We'd like to provide the option to
single-threaded (or savvy) users of not synchronizing
to get the 1-10% back. That's future work.

hi,
did you consider fail quickly approach that is used in Java 
collections (so for example Iterator can detect if it is used from more 
than one thread and fails if it happens)? the other possibility would be 
to allow making some objects  (such as configuration) immutable so can 
be safely shared between multiple threads.

As Eric pointed out, the key I think is not in what our
current numbers are, but the fact that we've isolated
our implementation from our interface so that we have
the flexibility of reducing allocations, deferring work,
and otherwise improving performance further in the future.
Abstracting the primary store behind a cursor rather
than a tree of objects with identity gives us some leeway
in shuffling our implementation strategy in the future
without restructing the APIs.

that sounds like very good strategy! however i winder what is really 
current state. when  i looked on source code and i could not see how 
layering could work (or it working already?): what parts are API a 
interfaces and how implementation is separated and can be switched - is 
this possible in current version to chose different implementation (by 
using for example factory pattern)? i can see it working for com.bea.xml 
(XSD types) and com.bea.xbean.values (implementation) - this is very 
valuable set of Java classes providing XSD validation (even more if they 
were more abstract so could be used with any XML databinding).

thanks,

alek

--
If everything seems under control, you're just not going fast enough. 
Mario Andretti



-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]


Re: Vote for XMLBeans proposal

2003-07-06 Thread Aleksander Slominski
Berin Lautenbach wrote:

Ted Leung wrote:

Nicola Ken Barozzi wrote:

If XML.Apache is willing, as it seems, to cater for this project, 
I'll wait for a vote from them, an ACK from the Bea guys, and start 
preparing the hatcher :-)

I'm happy to invest some time in helping XMLBean get throught the 
incubator -- speaking with my XML PMC and ASF member hat on.


The idea of moving XMLBeans to incubation under the XML project and 
with the assistance of Ted gets a +1 from me with some caveats :

1. Current XMLBeans committers need to be comfortable with this 
resting with the XML project in the first instance. Note that I would 
hope that the umbrella project could be changed prior to exit from 
incubation if the feeling from the committers was that it should be.

If the initial preference is Jakarta then please indicate! I'm 
definitely not trying to push a line here, and it's easy to switch the 
vote over to the Jakarta PMC :.

2. Committer issues that have previously been discussed will need to 
be worked through during incubation (although that's really what 
incubation is about :).

+/- from other XML PMC members welcome.

Further discussion also welcome!
hi,

based on what I have seen when looking on XMLBeans source code and 
(limited) design documentation I beleive that this project is very 
interesting and useful for Web Services so I have CCed [EMAIL PROTECTED] 
mailing list too.

It seems that BEA folks are willing to solve all remaining problems and 
I think that it would be good if this project quickly gained more 
mementum and I am willing to help with it (even though I am not Apache 
XML commiter)

thanks,

alek

--
If everything seems under control, you're just not going fast enough. Mario Andretti


-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]


XMLBeans performance and source code status [Re: Proposal: XMLBeans]

2003-07-04 Thread Aleksander Slominski
Cliff Schmidt wrote:

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

The main difference between XMLBeans and JDOM or XOM is that XMLBeans
does not create objects for each XML information item.  Instead, it 
provides cursor-based access to each item in the XML Infoset.  It has
an architecture where, if an actual object is needed for a node, it 
can be created on-demand.  We found this provided great performance 
benefit.  

hi,

i am interested to find if you have some more details on performance 
benefits - it seems to be very intriguing and distinguishing feature of 
XMLBeans.

i may be missing something but i tried to find this information online 
without any lack (i checked 
http://dev2dev.bea.com/articles/hitesh_seth.jsp that is good overview 
but has not enough technical details and other docs): as far as i can 
understand actual objects are created for every XML information item? so 
as objects are in memory the same way as objects in DOM what performance 
benefits do you have in mind? do you refer to faster creation time or 
lower memory footprint? did you check for example on the same machine 
how big XML document can be loaded with XMLBeans and DOM (for example 
Xerces2) before running out of memory?

The biggest differences between XMLBeans and Castor or JAXB
are:
1) the goal of 100% Schema support (currently supports everything in 
Schema other than redefine and substitution groups, and those features
are nearly ready), and 
2) the integrated and synchronized access of the underlying XML content
with strongly typed Java classes.

did you estimate what is impact of requiring synchronized access? i am 
really curious why was is it required:. i can see need to share XML 
schemas but why to require synchronizing access to XML content? i would 
think that approach from java.util where collections are not thread-safe 
until specifically made synchronized could work here as well?

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.  
   

i have question concerning Gump bit in general what is on Wiki page 
http://nagoya.apache.org/wiki/apachewiki.cgi?XmlBeansProposal:

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

*http://workshop.bea.com/xmlbeans/XsdUpload.jsp

(...)

i looked on source code and it seems that it is not possible to rebuild 
xbean.jar just from source and it is not clear what are dependencies?

i noticed there are parts of code that depends on outside packages (like 
weblogic.xml.stream.XMLInputStream or com.bea.xquery) and some 
subpackages that are in com.bea.xml* that are in xbean.jar but not in 
src directory?

what are plans for those pieces of code - are they also open source or 
XMLBeans would depend on BEA implementation classes to be on CLASSPATH 
to compile it?

i hope XmlBeans will be actively developed as open source (in Apache or 
outside) so it continues to grow as it really looks like an interesting 
project.

thanks,

alek

--
If everything seems under control, you're just not going fast enough. Mario Andretti


-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]