sca-c-cpp message
[Date Prev]
| [Thread Prev]
| [Thread Next]
| [Date Next]
--
[Date Index]
| [Thread Index]
| [List Home]
Subject: ISSUE 2: Annotations for WSDL to C++
- From: Bryan Aupperle <aupperle@us.ibm.com>
- To: sca-c-cpp@lists.oasis-open.org
- Date: Wed, 10 Oct 2007 14:03:08 -0400
I have extracted some information from
the C++ SDO document that addresses WSDL annotations for controlling the
mapping from WSDL to C++ that applies to this issue. In particular
these are annotations for controlling the mapping of names and types.
There are a number of customizations that
can be used to improve the mapping to C++. These are expressed as attributes
in the SCA namespace for XML, "commonj.sdo/xml". The following
XSD attributes in the SCA XML namespace are used to modify the constructed
C++ model:
- name - sets the C++ name to
the name specified here. Applies to types, message elements and operations.
Used in Operation, ComplexType, SimpleType, element, and attribute declarations.
The XSD type of the annotation is string.
- dataType - sets C++ type as
specified by the QName value as a means to override the declared type.
Applies to XML attributes and elements with simple content. Used in element
and attribute declarations. The XSD type of the annotation is QName.
- string="true" -
sets the C++ type to String for XSD SimpleTypes as a means to override
the instance class when the exact values must be preserved. Applies to
message elements. Used in element and attribute declarations. Same as sca:dataType="sca:String".
The XSD type of the annotation is boolean.
- propertyType - sets the C++
type as specified by the QName value. Used in element and attribute declarations
with complex content. The XSD type must be IDREF, IDREFS, or anyURI, or
restrictions of these types. The XSD type of the annotation is QName.
- many – specifies if the mapping
is to a scalar (false) or a List (true). Typically used on element declarations
that appear inside a repeating model group declaration (<sequence>,
<choice>, or <all> with maxOccurs > 1) to override the default
value (true) that would otherwise be assigned.
I
am not sure if 4 and 5 are really necessary, but they are worth discussing.
Bryan Aupperle, Ph.D.
STSM, WebSphere Enterprise Platform Software Solution Architect
Master Inventor
Research Triangle Park, NC
+1 919-254-7508 (T/L 444-7508)
Internet Address: aupperle@us.ibm.com
[Date Prev]
| [Thread Prev]
| [Thread Next]
| [Date Next]
--
[Date Index]
| [Thread Index]
| [List Home]