XSDBindSpec
Use this element of the ServiceSpecification.xml document to specify the generation properties for the Native or Vendor XML binding file (XSDBind file).
The XSDBind file is used to install an XML transformation resource (XMLTRANSFORM) under CICS® Transaction Server version 5.2 and later. The XMLTRANSFORM resource is used by the CICS EXEC APIs, TRANSFORM XMLTODATA and TRANSFORM DATATOXML.
The XMLTRANSFORM resource can be used to perform the XML transformation in both directions (DATATOXML and XMLTODATA), for one XML document and for one data structure. This is in contrast to the WEBSERVICE resource in which transformation to an XML document can be different from the transformation to a data structure.
There are two kinds of XSDBind files that may be generated: Native XSDBind and Vendor XSDBind.
The following shows which generation properties are associated with each XSDBind file type and examples of how to specify them.- Characteristics:
- CICS performs XML conversion using an internal mechanism
- Specify @type="interpretive" on the element PlatformProperties.xml/CodegenPropertyArray/CodegenProperty/@name="com.ibm.etools.xmlent.ui.GEN_CONVERSION_TYPE"
- Include "MessageSpec" inside the element ServiceSpecification.xml/EISProject/EISService/Operation.
- PlatformProperties.xml:
<PlatformArray> <Platform> <CodegenPropertyArray> <CodegenProperty name="com.ibm.etools.xmlent.ui.GEN_CONVERSION_TYPE" value="interpretive"/> </CodegenPropertyArray> </Platform> </PlatformArray> - ServiceSpecification.xml
(bottom-up):
<EISProject xmlns="http:///com/ibm/etools/xmlent/batch/emf/BatchProcessModel.ecore" name="CICSPROGProject"> <EISService name="CICSPROG"> <Operation> <MessageSpec importFile="CICSPRG.cbl" importDirectory="." nativeTypeName="DFHCOMMAREA"/> <XseSpec> <XSDBindSpec fileName="CICSPROG.xsdbind" logFileName="CICSPRG.log"/> </XseSpec> </Operation> </EISService> </EISProject>
- Characteristics:
- CICS performs XML conversion using the XML conversion programs generated by the single-service project tools.
- Specify @type="compiled" on the element PlatformProperties.xml/CodegenPropertyArray/CodegenProperty/@name="com.ibm.etools.xmlent.ui.GEN_CONVERSION_TYPE"
- Include "MessageSpec" inside the element ServiceSpecification.xml/EISProject/EISService/Operation.
- PlatformProperties.xml:
<PlatformArray> <Platform> <CodegenPropertyArray> <CodegenProperty name="com.ibm.etools.xmlent.ui.GEN_CONVERSION_TYPE" value="compiled"/> </CodegenPropertyArray> </Platform> </PlatformArray> - ServiceSpecification.xml
(bottom-up):
<EISProject xmlns="http:///com/ibm/etools/xmlent/batch/emf/BatchProcessModel.ecore" name="CICSPROGProject"> <EISService name="CICSPROG"> <Operation> <MessageSpec importFile="CICSPRG.cbl" importDirectory="." nativeTypeName="FHCOMMAREA"/> <XseSpec> <DriverSpec fileName="CICSPRGD.cbl" driverType="XML_TRANSFORM_CICS" programName="CICSPRG"/> <ConverterSpecIn fileName="CICSPRGD.cbl" programName="BUP001"/> <ConverterSpecOut fileName="CICSPRGD.cbl" programName="BUP001"/> <XSDBindSpec fileName="CICSPROG.xsdbind" logFileName="CICSPROG.log" mappingLevel="VENDOR" minimumRuntimeLevel="VENDOR"/> </XseSpec> </Operation> </EISService> </EISProject>
Contained by
Contains
NoneAttributes
Table 1 shows the attributes for XSDBindSpec.
| Fields | Description |
|---|---|
|
Attribute: arithExtend
Valid values: NO | YES Required?: No Default value: NO |
Controls the maximum size of the pack decimal variable length that is mapping to the COBOL Language structure, If set to YES, it will use 31 digits for DECIMAL and INTEGER types. If set to NO (default), the number of digits remains at 18. This option is available at all mapping levels. |
|
Attribute: bundle
Valid values: See Description Required?: No Default value: None |
Specifies the path and name of the bundle directory. If you specify this value, the XML schema (which you must specify in the XSDSpec element) and the XML binding file is generated in the bundle directory and a bundle manifest is also created. The path information on this parameter overrides any path information on the XSDSpec fileName attribute and XSDBindSpec fileName attribute. |
|
Attribute: ccsid
Valid values: See Description Required?: No Default value: See Description |
Specifies the CCSID that is used at run time to encode data between the application program and the XML binding file. The value of this parameter overrides the value of the LOCALCCSID system initialization parameter. The value must be an EBCDIC CCSID that is supported by Java™ and z/OS® conversion services. If you do not specify this parameter, the application program uses the CCSID specified in the system initialization parameter, and the XML binding file is encoded in US EBCDIC (Cp037). |
|
Attribute: charVarying (EISService)
Valid values: NO | NULL | COLLAPSE | BINARY Required?: No Default value: NULL or COLLAPSE (See Description) |
Specifies how character arrays in the language structure should be mapped when
the mapping level is 1.2 or higher . Note: This parameter does not apply to Enterprise and
other PL/I language structures.
The options you can select are:
Required elements:
|
|
Attribute: charVarying
(EISServiceImplementation) Valid values: NO | NULL | YES Required?: No Default value: NO |
Specifies how variable length character data is mapped when the mapping level
is 1.2 or higher. Variable length binary data types are always mapped to
either a container or a varying structure. If you do not specify this parameter, the default mapping
depends on the language specified. The options that you can select are:
Required Batch Options:
|
|
Attribute: charVaryingLimit
Valid values: See Description Required?: No Default value: 32767 |
Specifies the maximum size of binary data and variable length character data
that is mapped to the language structure when the mapping level is 1.2 or
higher. If the character or binary data is larger than the value specified in this parameter,
it is mapped to a container and the container name is used in the generated language structure. The
value can range from 0 to the default 32767 bytes. Required Batch Options:
|
|
Attribute: defaultCharMaxLength
Valid values: See Description Required?: No Default value: 255 |
Specifies the default array length of character data in characters for
mappings where no length is implied in the XML schema, when the mapping level
is 1.2 or higher. The value of this parameter can be a positive integer in the
range of 1 to 2147483647. Required Batch Options:
|
|
Attribute: fileName
Valid values: See Description Required?: No Default value: See Description |
Specifies the name of the output file The default value is: Data source file name concatenated with ".xsdbind" |
|
Attribute: inlineMaxOccursLimit
Valid values: 0 through 32767 Required?: No Default value: 1 |
This attribute is equivalent to the INLINE-MAXOCCURS-LIMIT parameter of the CICS XML Assistant DFHLS2SC. The value is used to decide whether or not to in-line variable repeating content based on the value of the maxOccurs attribute from the source WSDL. The full description can be found in the CICS Transaction Server V 5.3 IBM® Documentation, see: |
|
Attribute: logFileName
Valid values: See Description Required?: No Default value: See Description |
Specifies the name of the log file generated by the XML Assistant. This
attribute value is used only when the following is specified in the PlatformProperties.xml file:
<CodegenPropertyname="com.ibm.etools.xmlent.ui. GEN_CONVERSION_TYPE "value="interpretive"/>
The default value is: fileName concatenated with ".log" |
|
Attribute: mappingLevel
Valid values: 1.0 | 1.1 | 1.2 | 2.0 | 2.1 |2.2 | 3.0 | 4.0 Required?: No Default value: 2.1 |
Specifies the version of the programmatic interface shared between CICS and the application (see CICS® Transaction Server for z/OS, Version 5 Release 2 IBM Documentation). Generally, it is best to
specify the highest mapping level that is available:
The use of old mapping levels is recommended only when regenerating the XML binding files for XML transformation resources that were previously deployed with an old mapping level.
|
|
Attribute: mappingOverides
Valid values: See Description Required?: No Default value: See Description |
Specifies whether the default behavior is overridden for the specified mapping
level when generating language structures. The options you can select are:
|
|
Attribute: minimumRuntimeLevel
Valid values: MINIMUM | 3.0 | 4.0 | CURRENT Required?: No Default value: MINIMUM |
Specifies the minimum CICS runtime
environment that the XML binding file can be deployed into. An error message is displayed if a level
is selected that does not match the other parameters specified.
|
|
Attribute: nameTruncation
Valid values: RIGHT | LEFT Required?: No Default value: RIGHT |
Specifies how a generated field name is shortened if it is too long for use in
the specified high-level language. This option is available at all mapping levels.
|
|
Attribute: vendorConverterName
Valid values: See Description Required?: No Default value: See Description |
Specifies the program name of the main program entry. The default value is: DriverSpec/@fileName |
|
Attribute: dateTime
Valid values: See Description Required?: No Default value: See Description |
Specifies how the XML elements of xsd:dateTime type are mapped into CICS ASKTIME format. This attribute is only valid for the CICS interpretive conversion type. If it is specified for the Vendor (Compiled) conversion type, it is ignored. This attribute is only valid at Mapping level 3.0 and higher. If this attribute is specified in a top-down scenario (that is the XSDBindSpec is specified
inside the EISServiceImplementation) then the valid values are:
If this attribute is specified in a bottom-up (that is, the XSDBindSpec is
specified inside the EISService) then the valid values are:
|
|
Attribute: dataTruncation
Valid values: DISABLED | ENABLED Required?: No Default value: DISABLED |
Specifies how truncated data is treated by the CICS native conversion mechanism:
Note: The ENABLED setting is only supported at mapping levels 3.0 and higher.
|
Related reference
The CICS web services assistant
Example
<XSDBindSpec fileName="CICSPROG.xsdbind"
mappingLevel="VENDOR" logFileName="CICSPROG.log" ccsid="37"
minimumRuntimeLevel="VENDOR">
</XSDBindSpec>