当您在消息模型中定义复杂类型时,可选地,您可以指定要混合的内容。该设置(支持 XML 模式中的混合内容)允许您处理消息中包含在元素之间的数据。
请参阅以下示例:
<MRM> <Mess1> abc <Elem1>def</Elem1> ghi <Elem2>jkl</Elem2> mno <Elem3>pqr</Elem3> </Mess1> </MRM>
字符串 abc、ghi 和 mno 不表示特定元素的值(例如,它不同于元素 Elem1 的值 def)。这些字符串的存在表示您必须用混合内容构建模型 Mess1。 您可以使用以下对象在 MRM 中构建此 XML 消息的模型:
Type 属性设置为 tMess1。
Composition 属性设置为 OrderedSet。
复杂类型有混合内容。
复杂类型包含下列对象:
Type 属性设置为 xsd:string。
Type 属性设置为 xsd:string。
Type 属性设置为 xsd:string。
如果您对以下 ESQL 编码:
SET OutputRoot.MRM.*[1] = InputBody.Elem3; SET OutputRoot.MRM.Elem1 = InputBody.*[5]; SET OutputRoot.MRM.*[3] = InputBody.Elem2; SET OutputRoot.MRM.Elem2 = InputBody.*[3]; SET OutputRoot.MRM.*[5] = InputBody.Elem1; SET OutputRoot.MRM.Elem3 = InputBody*[1];
混合内容成功映射到以下输出消息:
<MRM> <Mess1> pqr <Elem1>mno</Elem1> jkl <Elem2>ghi</Elem2> def <Elem3>abc</Elem3> </Mess1> </MRM>