[xsd-users] using xsd in community applications

Boris Kolpackov boris at codesynthesis.com
Mon Aug 7 14:31:47 EDT 2006


Hi Jos,

Jos van den Oever <jvdoever at gmail.com> writes:

> I've discovered xsd today and I really like it. The wait for such a
> library for Free Software was long but I'm glad it's there. I've tried
> my hand at a simple version of this functionality in the past and
> found that it is not trivial at all, so my respect for your
> achievement is great.

Thanks for the kind words ;-).


> The documentation is pretty extensive, but as a novice with the
> library I did have some startup difficulties in constructing and
> serializing objects. I've attached an archive with the steps that I
> took in extending the example to the functionality I wanted.

Nice. BTW, did you look at the library example or did you figure
out serialization by reading the manual?


> I've also written about the experience here:
> http://www.kdedevelopers.org/node/2223

Great stuff! I've added this link to the Resources section of the
C++/Tree mapping page:

http://codesynthesis.com/products/xsd/c++/tree/


> I'm sure you like feedback so here are a few suggestions for features
> that would be useful for the project I'm working on:
> - disabling unneeded (de)serialization options

Serialization is already optional. And I think it is an excellent idea
to make parsing optional as well. I will try to implement this for the
next version.


> - no #include but code directly in the header so other developers and
> especially testers do not need to install xsd themselves

Hm, I am not sure I understand what you mean. Are you suggesting that
we generate runtime code that is included from libxsd "inline" in the
header file? I don't think this is practical because there could be
(and often are) multiple schema files that are compiled separately.
With your suggestion you will end up with the same code in every
header file which will result in re-definition unless properly
guarded.

Since libxsd is a header-only library, you can include it in your
program's source code. This way others don't need to install XSD
(as long as you also ship generated code, of course).


> Basically, anything that reduces binary size is welcome, since the
> ease of use of xsd does come at a price in code size.

Right. We've done a number of optimizations already. The only other
thing that I can think of at the moment is to make more things
optional, as you suggested for the parsing code.


Thanks again for the suggestions and for documenting your experience.


-boris
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 652 bytes
Desc: Digital signature
Url : http://codesynthesis.com/pipermail/xsd-users/attachments/20060807/64bd460f/attachment.pgp


More information about the xsd-users mailing list