datastage使用变量_使用DataStage XML阶段转换XML

datastage使用变量

作为InfoSphere Information Server 8.5发行版的一部分,InfoSphere DataStage增强了称为XML stage的新层次转换功能,该功能提供了本机XML模式支持以及强大的XML转换功能。 这些功能基于独特的最新技术,该技术使您可以解析和组合关系形式以及不同层次结构形式的任何复杂XML结构。

这项新技术与其他已知的XML工具的不同之处在于其直观的逐步用户界面,以及强大的执行能力,可以并行处理任何文件大小(经过20GB测试)并具有有限的内存。 XML阶段具有市场上其他工具所没有的独特功能,例如控制和配置所执行的验证级别(从严格验证到最小验证)的能力,或者能够并行解析单个大文件的能力。 XML阶段不需要任何语言技能,例如XSLT或XQuery,并且即使转换不完整,也可以使您立即调试和测试转换。

这些新功能取代了之前的DataStage XML阶段:XML Input,XML Output和XML Transformer。 尽管使用这些阶段的先前作业将继续运行,但是您应该使用新功能,因为它具有出众的生产力和性能。

XML阶段文档提供了介绍性信息,并附有简单的示例 ,这些示例说明了每个转换步骤的用法。 您应该将文档用作学习该工具以及执行简单的分析和转换的第一信息来源。

本文是一系列文章的第一篇,它将帮助您了解和利用IBM InfoSphere Datastage 8.5中的新功能。 第1部分介绍了8.5版中的新功能,然后演示了一些基本的场景,这些场景用于导入元数据,将XML文档解析为关系数据,以及从关系数据组成XML文档并将其插入DB2 pureXML。

场景一:将XML模式文件导入InfoSphere Information Server

将XML模式文件导入Information Server是创建XML转换的先决条件。 新的XML阶段提供了一个转换映射工具,该工具利用了已处理文档的XML模式以及阶段的输入和输出链接结构。

架构库管理器

Schema Library Manager在InfoSphere DataStage Designer中可以作为新菜单条目使用。 您可以使用模式库管理器来导入和管理XML模式定义。 Information Server存储所有导入的架构定义,并将它们组织到架构库中。 架构库是一组XML架构文件,它们为特定主题的文档结构提供规范。 例如,您可以创建由多个架构文件组成的单一行业标准的架构库。 如果库中包含的所有文件都遵循XML schema 2.0规则,并且所有引用都是可解析的,则该模式库有效。

模式文件可以通过INCLUDE或IMPORT语句相互关联。 通过架构文件的架构位置(包括)或命名空间(导入)完成对其他架构文件的引用。 此类引用必须在单个架构库中解析。 这意味着架构库中包含的文件引用的所有文件也必须包含在库中(传递闭包)。

模式库之间没有共享。 因此,您可以在两个不同的模式库中维护同一标准(文件集)的两个版本。

处理INCLUDE语句

与将名称空间用作架构文件的ID的IMPORT语句不同,INCLUDE语句使用依赖于物理位置的文件位置。 将架构文件导入Information Server时,每个文件的location属性默认为文件名。 但是,文件通常引用的不仅仅是文件名。 例如,模式A可以通过使用相对目录结构来引用模式B。

<xs:include schemaLocation="../common/basic.xsd">

或者,它甚至可以引用URL到网络托管文件。

<include schemaLocation ="http://www.example.com/schemas/address.xsd">

在这种情况下,必须将Schema Library Manager中引用文件的文件位置属性( 如图2所示)修改为INCLUDE语句使用的位置。

后续步骤演示了如何导入两个模式文件,它们之间具有包含依赖性。 架构位置使用URL,因此必须更改文件的location属性以匹配URL。

导入架构的步骤

  1. 通过从IBM DataStage和QualityStage Designer客户机中选择ImportSchema Library Manager来打开Schema Library Manager。 您还可以从XML阶段Assembly Editor访问Schema Library Manager。
  2. 创建一个名为Example的模式库,在该库下将导入模式。
    1. 要创建库,请单击“ 新建库”按钮。
    2. 在“新合同库”窗口中,在“ 名称”字段中键入“ 示例 ”。
    3. 单击确定
    4. 如果需要对库进行分类,则可以在创建库时输入类别。
  3. 单击您刚创建的库。
    1. 要导入架构,请单击“ 导入新资源”按钮。
    2. 浏览以找到架构Company.xsd ,然后单击“ 打开”
    3. 架构已成功导入,但是库行为红色,表明存在错误。 为了查看错误,请点击验证按钮。 图1显示了库中的错误。
      图1.导入Company.xsd后Schema Library Manager中的错误
      仅导入Company.xsd时显示错误的模式库管理器

      (查看图1的图。)

    4. 如错误消息所指示,在架构Company.xsd中找不到Dept_idDept_NameDept_location的类型定义。 这是因为定义位于另一个名为Department.xsd的架构中。 该警告表明在库中找不到Department.xsd。
  4. 将Department.xsd导入相同的库。 以与对Company.xsd相同的方式执行导入。 即使在导入Department.xsd之后,该错误仍然会在库中看到。 这是因为Company.xsd模式中的location属性指向文件的实际物理位置,
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值