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