例 3 - WITSML™ 文件 (在demo目录中)

这个例子展示了使用一种Joost STX转换载入描述一个石油钻塔的样例数据。该数据是一种从energistics.org下载的复杂的XML文件格式。

Wellsite Information Transfer Standard Markup Language (WITSML™)是一种石油工业发起的为技术和软件提供开放的、非所有权的、标准的接口,以便在石油公司、服务公司、钻探承包商和监管代理之间分享信息。更多有关WITSML™的信息请见http://www.energistics.org/

石油钻塔的信息由一个顶层的元素和多个子元素(例如等)构成。下面从该文件中摘录的片段展示了标签中的信息的类型。

  1. <?xml version="1.0" encoding="UTF-8"?>
  2. <?xml-stylesheet href="../stylesheets/rig.xsl" type="text/xsl" media="screen"?>
  3. <rigs
  4. xmlns="http://www.energistics.org/schemas/131"
  5. xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  6. xsi:schemaLocation="http://www.energistics.org/schemas/131 ../obj_rig.xsd"
  7. version="1.3.1.1">
  8. <documentInfo>
  9. ... misc data ...
  10. </documentInfo>
  11. <rig uidWell="W-12" uidWellbore="B-01" uid="xr31">
  12. <nameWell>6507/7-A-42</nameWell>
  13. <nameWellbore>A-42</nameWellbore>
  14. <name>Deep Drill #5</name>
  15. <owner>Deep Drilling Co.</owner>
  16. <typeRig>floater</typeRig>
  17. <manufacturer>Fitsui Engineering</manufacturer>
  18. <yearEntService>1980</yearEntService>
  19. <classRig>ABS Class A1 M CSDU AMS ACCU</classRig>
  20. <approvals>DNV</approvals>
  21. ... more data ...

目标是把这个钻塔的信息导入到Greenplum数据库。

样例文档rig.xml的尺寸大约是11KB。输入不包含制表符,因此相关信息可以被转换成用竖线(|)分隔的记录。

W-12|6507/7-A-42|xr31|Deep Drill #5|Deep Drilling Co.|John Doe|John.Doe@example.com|

有这些列:

  • well_uid text, — e.g. W-12
  • well_name text, — e.g. 6507/7-A-42
  • rig_uid text, — e.g. xr31
  • rig_name text, — e.g. Deep Drill #5
  • rig_owner text, — e.g. Deep Drilling Co.
  • rig_contact text, — e.g. John Doe
  • rig_email text, — e.g. John.Doe@example.com
  • doc xml

然后,载入该数据到Greenplum数据库中。

上级主题: XML转换示例