定制有线格式:与逻辑模型的关系

对于使用逻辑模型的关系中的 CWF 定义的消息存在一些限制,并将在以下内容中进行讨论。

组合

CWF 消息输出时元素总是按照逻辑消息模型定义中指定的序列。但是,您不必总是指定以该序列构建元素的 ESQL。对于类型组合属性的每个值,给定了下列编码 ESQL 的规则。

序列
您必须构建输出消息以匹配消息中的元素/组的序列。通常您可使用 ESQL SET 语句对每个元素或类型指派一个值。第一个 SET 语句设置消息中第一个元素或类型的值,第二个 SET 设置第二个元素或类型的值,以此类推。您可使用 ESQL ATTACH、CREATE 和 MOVE 语句改变此语句序列。

如果元素或类型有缺省值,并且您未以正确序列构建消息,则那些不合序列构建的元素将包含其缺省值,而不是您设置的值。这是因为假定不合序列构建的元素是自定义的,对于 CWF,在消息写入位流时会废弃这些元素。

有序集
您必须构建输出消息以匹配消息中的元素的序列。通常您可使用 ESQL SET 语句这样做,对每个元素指派一个值。第一个 SET 语句设置消息中第一个元素的值,第二个 SET 设置第二个元素的值,以此类推。您可使用 ESQL ATTACH、CREATE 和 MOVE 语句改变此语句序列。

如果元素有缺省值,并且您未以正确序列构建消息,则那些不合序列构建的元素将包含其缺省值,而不是您设置的值。这是因为假定不合序列构建的元素是自定义的,对于 CWF,在消息写入位流时会废弃这些元素。

无序集
您可以任何序列构建输出消息的元素。输出时,将按逻辑消息模型定义中指定的顺序写元素。
全部
您可以任何序列构建输出消息的元素。每个元素必须只出现一次(即,它不能重复)输出时,将按逻辑消息模型定义中指定的顺序写元素。
选项
不能纯粹从数据解析选择。接收程序必须解释数据并确定消息实例包含哪个选项的选项。此过程称为未解析的选项处理。应用程序中对任何一个选择元素的第一个引用T将选择解析为包含该元素的选项。
Message
在 CWF 中,无法在输入消息的位流中标识哪个嵌入式消息出现在此输入消息中。解析嵌入式消息的机制在定制有线格式:多段式消息 主题中讨论。

内容验证

CWF 是固定格式,且所有元素必须存在于消息中。因此,忽略 [内容验证]。 在输出时,所有元素都必须显式地设置(例如,使用 ESQL SET)、隐式地设置(使用树复制功能)或者必须定义了缺省值。

缺省值

在 MRM 域中的 CWF 消息的输出中,任何没有设置值(显式或隐式地)的元素或元素的出现继承元素的指定的缺省值。如果没有指定缺省值,则抛出异常。

最小出现次数和最大出现次数

逻辑属性最小出现次数最大出现次数指定消息中元素或组允许出现的次数。它们用于解析和编写消息,以及用于验证消息内容。

在 CWF 中,解析时需要最大出现次数显示,而在使用用于缺少元素的缺省值编写时将输出最大出现次数显示。

如果设置重复引用属性,并表明出现次数由之前在消息中发生的整数元素给定,则此行为将被覆盖。在这种情况下,将忽略最大出现次数

在验证时,最小出现次数最大出现次数都用于检查消息树的内容是否与模型相匹配。

简单类型 - 列表和并集

列表和并集是特定于 XML 的概念。如果消息集中出现 CWF 物理格式,作为列表或并集的简单类型的元素或属性将导致出现任务列表警告。通过编辑验证首选项,用户可以选择是以错误、警告还是信息的形式显示。字典生成器将忽略定义的消息,以包含来自字典 CWF 部分的此类元素或属性。

声明 | 商标 | 下载 | 书库 | 支持 | 反馈
Copyright IBM Corporation 1999, 2006 最后一次更新时间:2006/08/14
ad10490_