您可通过导入 XML 模式文件使用消息定义填充消息集(使用“新建消息定义文件”向导或 mqsicreatemsgdefs 命令行实用程序)。
您导入的每个 XML 模式文件在消息集中得到一个新的消息定义文件。消息定义文件的根名称缺省为 XML 模式文件的根名称,但新建消息定义文件向导允许您选择不同的根文件名。
如果消息定义文件已经存在,您必须允许覆盖以使导入能继续,在这种情况下,现有内容被删除并重新创建。
消息定义文件创建到属于的名称空间取决于是否消息集启用了名称空间。
导入操作期间将创建一个报告文件。此文件缺省位于消息集的 log 文件夹中。缺省情况下,它使用消息定义文件的名称,后面追加 .report.txt。
当您使用新建消息定义文件向导导入时,您可以指定导入的 XML 模式文件中的哪些全局元素要成为消息定义文件中的消息。
每次导入操作,您只能导入一个 XML 模式文件。如果您的 XML 模式文件引用其他 XML 模式文件,带有导入或包含元素,则这些 XML DTD 文件必须使用单独的导入操作导入到同一消息集中。
当您使用命令行导入时,您有选项可以不创建消息或为导入的 XML 模式文件中的每个全局元素创建消息。导入操作为您指定的每个全局元素在消息定义文件中创建消息和相应的全局元素。如果您没有指定要创建消息,则必须在导入完成后使用消息定义编辑器手工创建它们。
您可以在每个导入操作中导入多个 XML 模式文件。
与创建逻辑信息一样,导入也可以创建物理信息。如果消息集包含任何 XML 有线格式物理格式,则填充所有 XML 有线格式层的物理格式属性。如果消息集不包含任何 XML 物理格式,将只创建逻辑信息。同样如果从命令行导入,则缺省情况下只会在新消息集中创建逻辑信息。如果还想创建物理信息,请参阅从命令行导入获取详细信息。
不填充 CWF 和 TDS 物理格式属性,因此它们使用缺省值。
如果您有一个或多个 CWF 或 TDS 层,导入可能引起任务列表中产生条目,警告您如果导入的 XML 结构要出现在 CWF 或 TDS 消息中,必须设置特定的 TDS 属性。
如果 CWF 或 TDS 物理格式不适用于您的 XML 结构,您可以忽略这些任务列表条目,因为它们只是警告,它们不会阻止以另一种格式(例如,消息字典)生成您的模型。
mqsicreatemsgdefs 命令行实用程序允许您在单个操作中导入多个 XML 模式文件。所有 XML 模式文件必须在单个目录中,且目录位置作为参数传递到实用程序。
您导入到没有启用名称空间的消息集中时,可以使用 XML 选项文件指定对不支持的构造采取的操作。此文件必须包含一个称为 <XSD_NO_NS> 的 XML 元素,该元素保存应用到实用程序的调用期间导入的所有 XML 模式文件的一组信息。提供了称为 mqsicreatemsgdefs.xml 的缺省 XML 选项文件。如果您想要对不同的 XML 模式文件应用不同的信息集合,您需要创建多个 XML 文件,并多次运行实用程序。
当导入到没有启用名称空间的消息集中时,有 2 个您可以在 XML 选项文件中的 <XSD_NO_NS> 元素中指定的其他选项:
mqsicreatemsgdefs 实用程序还允许您作为导入操作的一部分创建新的消息集,消息定义文件放在该消息集中。您也可以选择在现有消息集的基础上创建消息集。此设施使您能准备包含 XML 物理格式和预填充消息集级别 XML 属性的空消息集,然后它将复制到导入创建的消息集中。