[xsd-users] Keep a xsd library small

Angelo Difino angelo at cedeo.net
Thu Feb 12 13:25:39 EST 2009


Hi xsd-users and all,

first of all I'd like to say that xsd-codesynthesis rocks: after just 
few days of it
i was able to create the c++ classes of a quite 'complicated' set of 
schemas (that
was already posted here few mouths ago').

Since this set of schema suffer of cyclic dependencies with inheritance,
I'm using the file-per-type option. I'm running the last release (3.2.0) 
of XSD on
win32/vista...
Everything works great, but the problem is the huge amount of files
and its size when I try to compile it (i'm using MSVisual c++ 2003).
The header and class file counts 872 and the built library is of 1GB of 
size (!!!)

I've tried using the option/ external-xml-schema/ but it seems the situation
doesn't change so much... Has anybody of you any suggestions to keep the
compiled library smaller?

The set of schema is attached in this email.
The cmd line i use is:

/xsd cxx-tree
--extern-xml-schema xmlschema.hxx
--generate-serialization
--generate-polymorphic
--file-per-type
--location-map http://www.dmpf.org/schemas/msbp.xsd=msbp.xsd
--location-map http://www.dmpf.org/schemas/dmprpp.xsd=dmprpp.xsd
--location-map http://www.dmpf.org/schemas/didl-msx.xsd=didl-msx.xsd
--location-map http://www.dmpf.org/schemas/didl.xsd=didl.xsd
--location-map http://www.dmpf.org/schemas/didmodel.xsd=didmodel.xsd
--location-map http://www.dmpf.org/schemas/dii.xsd=dii.xsd
--location-map http://www.dmpf.org/schemas/ipmpdidl.xsd=ipmpdidl.xsd
--location-map 
http://www.dmpf.org/schemas/ipmpinfo-msx.xsd=ipmpinfo-msx.xsd
--location-map http://www.dmpf.org/schemas/ipmpinfo.xsd=ipmpinfo.xsd
--location-map http://www.dmpf.org/schemas/ipmpmsg.xsd=ipmpmsg.xsd
--location-map http://www.dmpf.org/schemas/mpeg4ipmp.xsd=mpeg4ipmp.xsd
--location-map http://www.dmpf.org/schemas/mpeg7smp.xsd=mpeg7smp.xsd
--location-map http://www.dmpf.org/schemas/rel-m1x.xsd=rel-m1x.xsd
--location-map http://www.dmpf.org/schemas/rel-m2x.xsd=rel-m2x.xsd
--location-map http://www.dmpf.org/schemas/rel-m3x.xsd=rel-m3x.xsd
--location-map http://www.dmpf.org/schemas/rel-mx.xsd=rel-mx.xsd
--location-map http://www.dmpf.org/schemas/rel-r.xsd=rel-r.xsd
--location-map http://www.dmpf.org/schemas/rel-sx.xsd=rel-sx.xsd 
--location-map http://www.w3.org/2001/xml.xsd=xml.xsd
--location-map 
http://www.w3.org/TR/2002/REC-xmldsig-core-20020212/xmldsig-core-schema.xsd=dsig.xsd 

--location-map 
http://www.w3.org/TR/2002/REC-xmlenc-core-20021210/xenc-schema.xsd=xenc.xsd
--namespace-map urn:mpeg:maf:schema:mediastreaming:baseprotocol:2007=msbp
--namespace-map urn:dmp:idp:represent:PaymentProtocol:2008=dmprpp
--namespace-map urn:mpeg:maf:schema:mediastreaming:DIDLextensions=didl_msx
--namespace-map urn:mpeg:mpeg21:2006:07-DIDL-NS=didl
--namespace-map urn:mpeg:mpeg21:2002:02-DIDMODEL-NS=didmodel
--namespace-map urn:mpeg:mpeg21:2002:01-DII-NS=dii
--namespace-map urn:mpeg:mpeg21:2004:01-IPMPDIDL-NS=ipmpdidl
--namespace-map 
urn:mpeg:maf:Schema:mediastreaming:IPMPINFOextensions:2007=ipmpinfo_msx
--namespace-map urn:mpeg:mpeg21:2004:01-IPMPINFO-NS=ipmpinfo
--namespace-map urn:mpeg:mpegB:schema:IPMP-XML-MESSAGES:2007=ipmpmsg
--namespace-map urn:mpeg:mpeg4:IPMPSchema:2002=mpeg4ipmp
--namespace-map urn:mpeg:mpeg7:smp:schema:2001=mpeg7smp
--namespace-map urn:mpeg:mpeg21:2005:01-REL-M1X-NS=rel_m1x
--namespace-map urn:mpeg:mpeg21:2006:01-REL-M2X-NS=rel_m2x
--namespace-map urn:mpeg:mpeg21:2006:01-REL-M3X-NS=rel_m3x
--namespace-map urn:mpeg:mpeg21:2003:01-REL-MX-NS=rel_mx
--namespace-map urn:mpeg:mpeg21:2003:01-REL-R-NS=rel_r
--namespace-map urn:mpeg:mpeg21:2003:01-REL-SX-NS=rel_sx
--namespace-map http://www.w3.org/XML/1998/namespace=xml
--namespace-map http://www.w3.org/2000/09/xmldsig#=dsig
--namespace-map http://www.w3.org/2001/04/xmlenc#=xenc
didl.xsd/

Best regards,
Angelo
-------------- next part --------------
A non-text attachment was scrubbed...
Name: schemas.rar
Type: application/octet-stream
Size: 31727 bytes
Desc: not available
Url : http://codesynthesis.com/pipermail/xsd-users/attachments/20090212/64afee07/schemas.obj


More information about the xsd-users mailing list