Data Type Mapping for Receive Handlers in TIBCO Rendezvous
Microsoft BizTalk Adapter for TIBCO Rendezvous maps TIBCO RV types to XML Schema types as specified in the following table.
TIBCO RV to XML Data Type Mapping
TIBCO RV Type | XML Schema Type | Comments |
---|---|---|
TIBRVMSG_MSG | tibrv:message | Complete XML document constructed from entire message. |
TIBRVMSG_XML | tibrv:rawxml | XML Document constructed from the array of bytes (not interpreted by the adapter). |
TIBRVMSG_DATETIME | xsd:dateTime | The adapter uses the System.Xml.XmlConvert class to convert between XML Schema dateTime and System.DateTime instances. |
TIBRVMSG_OPAQUE | xsd:base64Binary | |
TIBRVMSG_STRING | xsd:string | |
TIBRVMSG_BOOL | xsd:boolean | |
TIBRVMSG_I8 | xsd:byte | |
TIBRVMSG_I16 | xsd:short | |
TIBRVMSG_I32 | xsd:int | |
TIBRVMSG_I64 | xsd:long | |
TIBRVMSG_U8 | xsd:unsignedByte | |
TIBRVMSG_U16 | xsd:unsignedShort | |
TIBRVMSG_U32 | xsd:unsignedInt | |
TIBRVMSG_U64 | xsd:unsignedLong | |
TIBRVMSG_F32 | xsd:float | |
TIBRVMSG_F64 | xsd:double | |
TIBRVMSG_IPADDR32 | tibrv:IPaddress | System.Net.IPAddress.ToString( ) is used to generate the output. Content is in network byte order. ToString() takes care of that. |
TIBRVMSG_IPPORT16 | tibrv:IPport | Content is in network byte order |
TIBRVMSG_I8ARRAY | tibrv:arrayOfByte | 'tibrv' schema namespace is provided with the adapter. |
TIBRVMSG_I16ARRAY | tibrv:arrayOfShort | |
TIBRVMSG_I32ARRAY | tibrv:arrayOfInt | |
TIBRVMSG_I64ARRAY | tibrv:arrayOfLong | |
TIBRVMSG_U8ARRAY | tibrv:arrayOfUnsignedByte | |
TIBRVMSG_U16ARRAY | tibrv:arrayOfUnsignedShort | |
TIBRVMSG_U32ARRAY | tibrv:arrayOfUnsignedInt | |
TIBRVMSG_U64ARRAY | tibrv:arrayOfUnsignedLong | |
TIBRVMSG_F32ARRAY | tibrv:arrayOfFloat | |
TIBRVMSG_F64ARRAY | tibrv:arrayOfDouble |
TIBCO Rendezvous arrays differ from a sequence of fields with the same name. For example, in a TIBCO Rendezvous message, it is valid to have an array with 70,000 elements, but it is not valid to have 70,000 fields.
The schema for the array types in the previous table looks like this:
…
<xsd:complexType name='arrayOfShort'>
<xsd:sequence>
<xsd:element name="item" type="xsd:short"/>
</xsd:sequence>
</xsd:complexType>
An array element in a message looks like this:
<someElement xsi:type='tibrv:arrayOfShort'>
<item>100</item>
<item>200</item>
<item>300</item>
<item>400</item>
<item>500</item>
</someElement>
The schema for the IPaddress looks like this:
<xsd:simpleType name='IPaddress'>
<xsd:restriction base="xs:string">
<xsd:minLength value="7" />
<xsd:maxLength value="15" />
</xsd:restriction>
</xsd:simpleType>
</xsd:simpleType>
The schema for the IPport looks like this:
<xsd:simpleType name='IPport'>
<xsd:restriction base='xsd:ushort'>
</xsd:simpleType>
See Also
Message Mapping in TIBCO Rendezvous
Creating TIBCO Rendezvous Receive Handlers