[xsd-users] Custom get/set methods
Mogulothu, Vinay K
vinay.mogulothu at lehman.com
Thu Nov 15 10:25:54 EST 2007
Thank you. We have looked at the option of customizing the generated
types, but as you mentioned it requires scripts to add the custom
wrappers for this option. We are interested in generating custom
class/function names. Please let us know if this feature is an easy
From: Boris Kolpackov [mailto:boris at codesynthesis.com]
Sent: Thursday, November 15, 2007 8:27 AM
To: Mogulothu, Vinay K
Cc: xsd-users at codesynthesis.com; Janiv, Amnon
Subject: Re: [xsd-users] Custom get/set methods
Mogulothu, Vinay K <vinay.mogulothu at lehman.com> writes:
> The code generated from C++/tree has get/set methods with the
> attribute name, we would like to provide the methods through
> getAttribute, setAttribute for access
Do you want attribute accessor/modifier functions to be in the form
getFoo/setFoo where "Foo" is the name of the attribute -or- do you want
to have getAttribute("Foo")/setAttribute("Foo")?
> From the three cardinality classes, the access methods for cardinality
> one and sequence if we can add prefix get/set would work for us, for
> the cardinality optional, do we have to write the get/set methods as
> wrappers and access the underlying attribute using get() and set()
I guess you want to add the get/set prefixes to accessors/modifiers.
You can do it by customizing the generated types. That is, you can
instruct the XSD compiler to generate the normal mapping for XML Schema
types with different names and then you can inherit your "wrapper" types
from these generated types and implement the get/set functions by
calling the generated versions. For more information on type
customization see the C++/Tree Mapping Customization Guide:
As well as the examples in the examples/cxx/tree/custom/ directory.
This approach will work fine for small schemas where you have a handful
of types. For large vocabularies this will be a daunting task.
A feature that would allow changing the generated class/function names
has been requested before. I guess it would work fairly well for your
situation. We are still considering implementing this so let me know if
you are interested and we can see if we can make something for you to
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
This message is intended only for the personal and confidential use of the designated recipient(s) named above. If you are not the intended recipient of this message you are hereby notified that any review, dissemination, distribution or copying of this message is strictly prohibited. This communication is for information purposes only and should not be regarded as an offer to sell or as a solicitation of an offer to buy any financial product, an official confirmation of any transaction, or as an official statement of Lehman Brothers. Email transmission cannot be guaranteed to be secure or error-free. Therefore, we do not represent that this information is complete or accurate and it should not be relied upon as such. All information is subject to change without notice.
IRS Circular 230 Disclosure:
Please be advised that any discussion of U.S. tax matters contained within this communication (including any attachments) is not intended or written to be used and cannot be used for the purpose of (i) avoiding U.S. tax related penalties or (ii) promoting, marketing or recommending to another party any transaction or matter addressed herein.
More information about the xsd-users