从语言结构生成映射

要通过应用程序数据创建 XML 或通过 XML 创建应用程序数据,可创建映射以描述 CICS 将如何在运行时转换数据和 XML。 可以从任何应用程序数据记录开始; 例如,可以从 COMMAREA , VSAM 文件,临时存储器队列或 Db2® 记录开始。

开始之前

在创建映射之前,必须确保已完成以下前置条件:
  • 您必须具有用于描述分区数据集中的应用程序记录的语言结构。 该语言结构可采用 CICS XML助手支持的任意高级语言编写: COBOL、 PL/I、C及C++。若此映射用于Atom源,且您在应用程序记录中使用任何字段为Atom条目提供元数据(如作者姓名),请确保这些字段未嵌套在语言结构中。 您可以在提供 Atom 条目内容的字段中具有嵌套字段的结构。
  • 必须配置运行 DFHLS2SC 的用户 ID,才能使用 z/OS UNIX。
  • 用户 ID 必须有读取权限才能访问语言结构,并有写入权限才能将输出放到 z/OS UNIX 上的相应目录中。
  • 您必须为用户标识分配足够的存储空间,该标识才能运行 Java™ 。 您可以使用任何受支持的 Java 版本。 缺省情况下, DFHLS2SC 使用 JAVADIR 参数中指定的 Java 版本。

关于此任务

使用 CICS XML 助手为应用程序记录创建数据映射。 对于 CICS XML 助手支持的每种高级语言,会限制或不支持几种类型的数据。 CICS XML 助手会发出有关它在语言结构中标识的任何不受支持的项的错误消息。 CICS XML 助手的参考信息列出了适用于每种高级语言的限制。

过程

  1. 运行 DFHLS2SC 批处理作业。
    DFHLS2SC 具有您为满足需求而选择的可选参数,例如,选择特定代码页或名称空间。 请至少使用以下参数:
    1. LANG 参数中指定语言结构的高级语言。
    2. 如果要在捆绑软件中部署数据映射,请在 BUNDLE 参数中指定捆绑软件资源的名称。
      如果要为 Atom 订阅源创建 XML 绑定,请不要指定此参数。
    3. MAPPING-LEVEL 参数中指定映射级别。
      如果要为 Atom 订阅源创建 XML 绑定,那么必须使用映射级别 3.0 或更高版本。
      对于其他情况,虽然您可以使用任何映射级别,但要获取最高级的映射选项,请使用最新的映射级别。
    4. 可选: 如果要为 Atom 订阅源创建 XML 绑定,并且应用程序数据记录包含 CICS ABSTIME 格式的时间戳记,请指定可选参数 DATETIME=PACKED15 以将这些字段映射为时间戳记。
    5. 指定在 PDSMEMPDSCP 参数中描述应用程序记录的语言结构的位置和代码页。
    6. SCHEMA 参数中指定模式文件的名称和位置。
      文件扩展名为 .xsd 。 如果要创建捆绑软件,请不要指定位置。 DFHLS2SC 创建 XML 模式,但不创建目录结构 (如果该文件尚不存在)。
    7. XSDBIND 参数中指定 XML 绑定的名称和位置。
      文件扩展名为 .xsdbind 。 如果要创建捆绑软件,请不要指定位置。 DFHLS2SC 创建 XML 绑定,但不创建目录结构 (如果该文件尚不存在)。
      提示: 将 XML 绑定和模式放在同一目录结构中以启用验证。 在开发或测试环境中测试应用程序时,验证很有用。 如果要创建捆绑软件,那么 CICS 会将这些文件放置在您的同一目录中。
    如果指定 BUNDLE 参数,批处理任务将在 z/OS UNIX 上创建 bundle 目录结构。 捆绑软件目录具有包含捆绑软件清单的 META-INF 子目录。 批处理作业还会使用您为 SCHEMAXSDBIND 参数指定的文件名在捆绑软件目录中创建 XML 模式和 XML 绑定。 如果未指定 BUNDLE 参数,那么批处理作业将仅在指定位置创建 XML 模式和 XML 绑定。
  2. 安装 BUNDLE 资源或指定此 XML 绑定的 ATOMSERVICE 资源。
    BUNDLE 和 ATOMSERVICE 资源动态创建 XMLTRANSFORM 资源,用于定义 XML 模式和绑定文件的位置。

结果

从语言结构生成映射时,只能进行一个 XML 变换。

示例

以下示例显示了具有指定的最小参数集的 DFHLS2SC 。
//LS2SC JOB 'accounting information',name,MSGCLASS=A
// SET QT=''''
//JAVAPROG EXEC DFHLS2SC,
// TMPFILE=&QT.&SYSUID.&QT
//INPUT.SYSUT1 DD *
LANG=COBOL
BUNDLE=/u/exampleapp/bundle/test1
LOGFILE=/u/exampleapp/xsdbind/example.log
MAPPING-LEVEL=3.0
PDSLIB=//CICSHLQ.SDFHSAMP
PDSMEM=CPYBK2
XSDBIND=example.xsdbind
SCHEMA=example.xsd
/*

下一步操作

编写应用程序以将应用程序数据转换为 XML ,反之亦然。 您可以对这两个变换使用相同的映射。 如果已为 Atom 订阅源创建 XML 绑定,请继续执行设置 Atom 订阅源的步骤。