InfoSphere Data Architect 提供一些可以极大地减少设计和开发时间的工具。这个软件构建于开源 Eclipse 平台上,用于帮助数据架构师跨多个信息源建模、发现、映射和分析数据,以及自动化复杂环境中的信息集成。
使用 InfoSphere Data Architect 7.5.2 和 Fix Pack 2,可以将 XML Document Type Definition (DTD) 和 XML Schema Definition (XSD) 文档作为逻辑数据模型导入。但是,这些文档不能作为物理模型导入,原因是 InfoSphere Data Architect 中的物理数据模型需要一个数据库规范,而这部分没有导入。
导入和导出功能支持各种 XML 格式。最重要的格式如下表所示:
| 格式 | 说明 |
|---|---|
| XML DTD | 使用它们之间的包容关系来定义基本 XML 结构的文档 |
| XML XSD | 一个用于 XML 文档的更精确的结构、数据类型和规则的规范 |
| Object Management Group (OMG) CWM | 针对 XML 中的一个数据库架构的 Common Warehouse Model (CWM) 规范 |
DTD 和 XSD 格式基本上从一个 XML 结构提取,广泛用于 XML 文档所在之处。CWM 格式是包含更多细节的完整模型说明,这些细节比如详细的约束、复杂关系、超级类型和子类型等。CWM 通常被工具用作导入/导出格式,只在异常情况下手动创建。
要跟随本文操作,您需要一个 InfoSphere Data Architect 7.5.2 with Fix Pack 2 工作版本。您需要进行几个配置更改来启用 InfoSphere Data Architect 中的 XML 导入导出界面,现在就开始吧。
假定您在 C:\Program Files\IBM\IDA7.5.2.2 中安装了 InfoSphere Data Architect,您需要更改下面的文件中的配置参数来启用 XML DTD 支持:
C:\Program Files\IBM\SDPShared\plugins\com.ibm.datatools.metadata.wizards.miti.win32_1.0.3.v20100320_1502\MetaIntegration\conf\MIRModelBridges.xml
找到 id 为 W3cXmlDtd 的 Bridge 元素,然后更改如下:
<Bridge id='W3cXmlDtd' enabled='True' windowsOnly='False'>
<DisplayName id='' enabled='True'>XML DTD 1.0 (W3C)</DisplayName>
</Bridge>
|
只支持 XML DTD 文档导入。
假定您的 InfoSphere Data Architect 安装在 C:\Program Files\IBM\IDA7.5.2.2 中,您需要更改以下文件中的配置参数以启用 XML XSD 支持:
C:\Program Files\IBM\SDPShared\plugins\com.ibm.datatools.metadata.wizards.miti.win32_1.0.3.v20100320_1502\MetaIntegration\conf\MIRModelBridges.xml
在文件的 <import> 部分,找到 id 为 W3cXmlXsd 的 Bridge 元素,更改如下:
<Bridge id='W3cXmlXsd' enabled='True' windowsOnly='False'>
<DisplayName id='' enabled='True'>W3C XML Schema 1.0 (XSD)</DisplayName>
<DisplayName id='W3cXmlXsdImport.MicrosoftXdr' enabled='False'>
Microsoft SQL Server XML Data Reduced (XDR) Schema </DisplayName>
</Bridge>
|
尽管 W3C 和 Microsoft® 规范相似,但它们并不相同。请务必选择您需要的规范。
在文件的 <export> 部分,找到 id 为 W3cXmlXsd 的 Bridge 元素,更改如下:
<Bridge id='W3cXmlXsd' enabled='True' windowsOnly='False'>
<DisplayName id='' enabled='True'>W3C XML Schema 1.0 (XSD)</DisplayName>
<DisplayName id='W3cXmlXsdExport.AltovaXmlSpy' enabled='False'>
Altova XMLSpy</DisplayName>
<DisplayName id='W3cXmlXsdExport.SybasePowerDesignerXsm' enabled='False'>
Sybase PowerDesigner XSM 10.x to 15.x</DisplayName>
</Bridge>
|
假定您的 InfoSphere Data Architect 安装在 C:\Program Files\IBM\IDA7.5.2.2 中,您需要更改以下文件中的配置参数以启用 OMG CWM 支持:
C:\Program Files\IBM\SDPShared\plugins\com.ibm.datatools.metadata.wizards.miti.win32_1.0.3.v20100320_1502\MetaIntegration\conf\MIRModelBridges.xml
在文件的 <import> 部分,找到 id 为 OmgCwmXmi 的 Bridge 元素,更改如下:
<Bridge id='OmgCwmXmi' enabled='True' windowsOnly='False'>
<DisplayName id='' enabled='True'>OMG CWM 1.x XMI 1.x</DisplayName>
<DisplayName id='OmgCwmXmiImport.HyperionApplicationBuilder' enabled='True'>
Oracle Hyperion Application Builder (via CWM XMI)</DisplayName>
<DisplayName id='OmgCwmXmiImport.IbmDb2WarehouseManager' enabled='True'>I
BM DB2 Warehouse Manager (via CWM XMI)</DisplayName>
<DisplayName id='OmgCwmXmiImport.OracleWarehouseBuilder' enabled='True'>
Oracle Warehouse Builder (via CWM XMI)</DisplayName>
<DisplayName id='OmgCwmXmiImport.SasDataIntegrationStudio' enabled='True'>
SAS Data Integration Studio (via CWM XMI)</DisplayName>
</Bridge>
|
在文件的 <export> 部分,找到 id 为 OmgCwmXmi 的 Bridge 元素,更改如下:
<Bridge id='OmgCwmXmi' enabled='True' windowsOnly='False'>
<DisplayName id='' enabled='True'>OMG CWM 1.x XMI 1.x</DisplayName>
<DisplayName id='OmgCwmXmiexport.HyperionApplicationBuilder' enabled='True'>
Oracle Hyperion Application Builder (via CWM XMI)</DisplayName>
<DisplayName id='OmgCwmXmiexport.IbmDb2WarehouseManager' enabled='True'>I
BM DB2 Warehouse Manager (via CWM XMI)</DisplayName>
<DisplayName id='OmgCwmXmiexport.OracleWarehouseBuilder' enabled='True'>
Oracle Warehouse Builder (via CWM XMI)</DisplayName>
<DisplayName id='OmgCwmXmiexport.SasDataIntegrationStudio' enabled='True'>
SAS Data Integration Studio (via CWM XMI)</DisplayName>
</Bridge>
|
上面展示的名称只是一些样例。根据您使用的工具启用显示的名称。
要使用 InfoSphere Data Architect 启动一个导入操作,选择 File > Import。
从导入过滤器的显示列表中,选择 Data Model Import Wizard,如 图 1 所示。 这个步骤启动的向导允许您指定要导入的数据模型、导入的格式、以及预期结果。
图 1. Import selection 对话框
如 图 2 所示,Select the Model 面板要求您为每个参数选择选项或者进行输入。这些参数如下图所示。
图 2. 导入参数选择
- Model format
- 输入模型的类型。在本例中,输入文件(模型)是 W3C 组织定义的 XML DTD 1.0 格式。
- Model
- 源文件(模型)的完整路径。您可以使用 Browse... 来定位文件。
- Target project
- 当前工作空间中的项目名称,当前工作空间是您用于查看结果的地方。您可以使用 Browse... 来定位项目。
- Model type
- 结果的类型。可用选项是逻辑模型和物理模型,或者由导入自动识别。在本例中,Logical only 选中。
- File name
- 结果模型的名称。在本例中,选中的目标项目中将创建一个名为 ofxdtd.ldm 的逻辑模型。
如 图 3 所示,使用 Select the Options 面板来指定关于导入的详细参数。这些参数如下图所示。
图 3. 指定导入选项

- Elements content name
- 定义哪个元素将被映射到一个属性。在本例中,所有定义为 #PCDATA 的元素将被转换为一个属性。
- Collapse Level
- 提供将几个元素折叠为一个元素的机会。这个参数用于减少实体的数量。
- Collapse Star
- 从生成中过滤掉带有一个链接(“*”)的 DTD 元素。
- Class Type
- 定义折叠输入信息时是否创建一个实体。
- Any
- 指定 XML 概念 “Any” 是否生成一个实体。
- Generate IDs
- 如果必要,生成其他主键。
- Import subtitutionGroup as
-
允许您指定是否将继承表示为泛化(generalization),或者在子类中复制(向下滚动)继承的属性。指定 Generalization 来将继承表示为泛化,指定 Roll down 来将父
complexType的属性向下滚动到子complexType。 - Include Path
- 允许您指定包含已包括的架构文件的目录的路径。当您导入一个由几个已包括的 XSD 文件组成的架构时,这个选项可能有用。这个目录路径必须在运行这个 bridge 的机器上本地可访问。如果这个 bridge 正在本地运行,则它将总是搜索 File 参数指向的目录。如果这个 bridge 正在一个远程服务器(MIRWeb 或存储库导入)上运行,则这个路径必须可以从该服务器直接访问。
- UDP namespace
- 包含将作为用户定义属性(UDP)导入的属性的名称空间的完整名称。
除了使用前面描述的参数,您还可以使用以下选项影响工作流:
- Validity check
- 定义导入之前执行的检查级别(基本、详细、或不检查)。建议至少执行一些有效性检查。
- Target database
- 定义物理模型的目标数据库的类型。
导入执行结束后,应该总是评估 Summary 面板上显示的状态并寻找重要信息。图 4 展示了一个示例。
图 4. 评估摘要
下面是 Summary 面板中包含的消息类型的说明:
- <INFO>
- 关于配置或一个活动结束的信息消息。
- <STATUS>
- 关于一个活动的进度的信息消息。这些消息在较长的活动的每个阶段之后写入。
- <WARNING>
- 通知您遇到的一个小问题(例如,源中缺少的一个链接),或者生成的模型(比如,图表没有布局信息)。警告通常意味着您应该检查警告提到的模型部分并验证内容,或者您必须在导入完成后执行工具中的一个手动步骤。
- <ERROR>
- 对生成的模型有严重影响的消息。不被理解的概念,不能被验证的源,或者源不能被打开。
- <FATAL>
- 导入工具失败,不能创建任何结果。
要使用 InfoSphere Data Architect 启用一个导出步骤,选择 File > Export。
从导出过滤器的显示列表中,选择 Data Model Export Wizard。
选择导出参数的流程与 选择参数 中的导入流程完全一样。
评估导出结果的流程与 评估结果中的导入流程完全一样。
本小节展示一个导入一个 XML 架构的示例。首先看看 清单 1 中的 XML 文件。
清单 1. 源 XML 架构
<?xml version="1.0" encoding="utf-8"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns="com.ibm.test.employee"
targetNamespace="com.ibm.test.employee">
<xs:complexType name="DEPARTMENT">
<xs:attribute name="DEPT_NBR" use="required">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:maxLength value="3" />
</xs:restriction>
</xs:simpleType>
</xs:attribute>
<xs:attribute name="DEPT_NAME" use="required">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:maxLength value="29" />
</xs:restriction>
</xs:simpleType>
</xs:attribute>
<xs:attribute name="MANAGER_ID">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:maxLength value="6" />
</xs:restriction>
</xs:simpleType>
</xs:attribute>
<xs:attribute name="ADMR_DEPT_ID" use="required">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:maxLength value="3" />
</xs:restriction>
</xs:simpleType>
</xs:attribute>
<xs:attribute name="LOCATION_NAME">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:maxLength value="16" />
</xs:restriction>
</xs:simpleType>
</xs:attribute>
</xs:complexType>
<xs:complexType name="EMPLOYEE">
<xs:attribute name="EMP_NBR" use="required" type="xs:short">
</xs:attribute>
<xs:attribute name="FIRST_NAME" use="required">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:maxLength value="12" />
</xs:restriction>
</xs:simpleType>
</xs:attribute>
<xs:attribute name="MID_INIT" use="required">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:maxLength value="1" />
</xs:restriction>
</xs:simpleType>
</xs:attribute>
<xs:attribute name="LAST_NAME" use="required">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:maxLength value="15" />
</xs:restriction>
</xs:simpleType>
</xs:attribute>
<xs:attribute name="WORK_DEPT_NBR">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:maxLength value="3" />
</xs:restriction>
</xs:simpleType>
</xs:attribute>
<xs:attribute name="PHONE_NBR">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:maxLength value="4" />
</xs:restriction>
</xs:simpleType>
</xs:attribute>
<xs:attribute name="HIRED_DATE" type="xs:date">
</xs:attribute>
<xs:attribute name="JOB_CLASS">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:maxLength value="8" />
</xs:restriction>
</xs:simpleType>
</xs:attribute>
<xs:attribute name="ED_LEVEL" use="required" type="xs:short">
</xs:attribute>
<xs:attribute name="SEX_CLASS">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:maxLength value="1" />
</xs:restriction>
</xs:simpleType>
</xs:attribute>
<xs:attribute name="BIRTH_DATE" type="xs:date">
</xs:attribute>
<xs:attribute name="CURRENT_SALARY">
<xs:simpleType>
<xs:restriction base="xs:decimal">
<xs:totalDigits value="9" />
<xs:fractionDigits value="2" />
</xs:restriction>
</xs:simpleType>
</xs:attribute>
<xs:attribute name="CURRENT_BONUS">
<xs:simpleType>
<xs:restriction base="xs:decimal">
<xs:totalDigits value="9" />
<xs:fractionDigits value="2" />
</xs:restriction>
</xs:simpleType>
</xs:attribute>
<xs:attribute name="CURRENT_COMM">
<xs:simpleType>
<xs:restriction base="xs:decimal">
<xs:totalDigits value="9" />
<xs:fractionDigits value="2" />
</xs:restriction>
</xs:simpleType>
</xs:attribute>
</xs:complexType>
<xs:complexType name="EMPLOYEE_PROJECT">
<xs:attribute name="EMP_NBR" use="required" type="xs:integer">
</xs:attribute>
<xs:attribute name="PROJ_NBR" use="required">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:maxLength value="6" />
</xs:restriction>
</xs:simpleType>
</xs:attribute>
<xs:attribute name="EMP_CHARGED_TIME">
<xs:simpleType>
<xs:restriction base="xs:decimal">
<xs:totalDigits value="5" />
<xs:fractionDigits value="2" />
</xs:restriction>
</xs:simpleType>
</xs:attribute>
<xs:attribute name="EMP_START_DATE" type="xs:date">
</xs:attribute>
<xs:attribute name="EMP_END_DATE" type="xs:date">
</xs:attribute>
</xs:complexType>
<xs:complexType name="PROJECT">
<xs:attribute name="PROJ_NBR" use="required">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:maxLength value="6" />
</xs:restriction>
</xs:simpleType>
</xs:attribute>
<xs:attribute name="Project_Name">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:maxLength value="5" />
</xs:restriction>
</xs:simpleType>
</xs:attribute>
</xs:complexType>
<xs:element name="DEPARTMENT" type="DEPARTMENT">
<xs:annotation>
<xs:documentation></xs:documentation>
</xs:annotation>
<xs:key name="DEPARTMENT_PK">
<xs:selector xpath=".//DEPARTMENT" />
<xs:field xpath="@DEPT_NBR" />
</xs:key>
</xs:element>
<xs:element name="EMPLOYEE" type="EMPLOYEE">
<xs:annotation>
<xs:documentation></xs:documentation>
</xs:annotation>
<xs:key name="EMPLOYEE_PK">
<xs:selector xpath=".//EMPLOYEE" />
<xs:field xpath="@EMP_NBR" />
</xs:key>
</xs:element>
<xs:element name="EMPLOYEE_PROJECT" type="EMPLOYEE_PROJECT">
<xs:annotation>
<xs:documentation></xs:documentation>
</xs:annotation>
<xs:key name="EMP_ACT_PK">
<xs:selector xpath=".//EMPLOYEE_PROJECT" />
<xs:field xpath="@EMP_NBR" />
<xs:field xpath="@PROJ_NBR" />
</xs:key>
</xs:element>
<xs:element name="PROJECT" type="PROJECT">
<xs:annotation>
<xs:documentation></xs:documentation>
</xs:annotation>
<xs:key name="PROJECT_PK">
<xs:selector xpath=".//PROJECT" />
<xs:field xpath="@PROJ_NBR" />
</xs:key>
</xs:element>
</xs:schema>dddddw |
要启动导入操作,选择 File > Import。
从导入过滤器的显示列表中,选择 Data Model Import Wizard,如 图 5 所示。
图 5. Data model import wizard
如 图 6 所示,从 Select the Model 面板,选择 XML Schema 作为 Model format,并将导入文件定义为 Model。对于 Target project,提供将使用名称 employee1 创建的逻辑数据模型的位置。
图 6. 定义导入参数
如 图 7 所示,在 Select the Options 面板中接受所有默认选项来导入模型。
图 7. 指定导入选项
如 图 8 所示,Summary 面板中的消息确认导入操作成功。
图 8. 评估生成的消息
图 9 展示生成的逻辑数据模型。
图 9. 生成的逻辑数据模型
本小节展示一个示例,导出 图 10 中显示的逻辑数据模型。这个逻辑数据模型包含 4 个实体,几个属性。所有属性都有指定的数据类型。这些实体之间还有三种不同的关系。
图 10. 现有的逻辑数据模型
要启动导出操作,选择 File > Export。
从导出过滤器的显示列表中,选择 Data Model Export Wizard,如 图 11 所示。
图 11. 启动 Data Model Export Wizard
如 图 12 所示,从 Select the Model 面板选择 W3C XSD 作为导出的 Model format。
图 12. 指定导出参数
如 图 13 所示,在 Select the Options 面板中指定 com.ibm.com.test.employee 为 Target Namespace。使用其他所有参数的默认值。
图 13. 定义导出选项
如 图 14 所示,Summary 面板中的消息确认导出操作成功。
图 14. 评估导出结果
清单 2 显示作为导出操作结果的 XML 架构。
清单 2. 生成的 XML 架构
<?xml version="1.0" encoding="utf-8"?>
<!-- This file was generated by W3C XML/XSD -->
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns="com.ibm.com.test.employee"
targetNamespace="com.ibm.com.test.employee">
<xs:complexType name="DEPARTMENT">
<xs:sequence>
<xs:element ref="EMPLOYEE" minOccurs="0" maxOccurs="1">
</xs:element>
</xs:sequence>
<xs:attribute name="DEPT_NBR" use="required">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:maxLength value="3" />
</xs:restriction>
</xs:simpleType>
</xs:attribute>
<xs:attribute name="DEPT_NAME" use="required">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:maxLength value="29" />
</xs:restriction>
</xs:simpleType>
</xs:attribute>
<xs:attribute name="MANAGER_ID">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:maxLength value="6" />
</xs:restriction>
</xs:simpleType>
</xs:attribute>
<xs:attribute name="ADMR_DEPT_ID" use="required">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:maxLength value="3" />
</xs:restriction>
</xs:simpleType>
</xs:attribute>
<xs:attribute name="LOCATION_NAME">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:maxLength value="16" />
</xs:restriction>
</xs:simpleType>
</xs:attribute>
</xs:complexType>
<xs:complexType name="EMPLOYEE">
<xs:sequence>
<xs:element ref="EMPLOYEE_PROJECT" minOccurs="0" maxOccurs="1">
</xs:element>
</xs:sequence>
<xs:attribute name="EMP_NBR" use="required" type="xs:short">
</xs:attribute>
<xs:attribute name="FIRST_NAME" use="required">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:maxLength value="12" />
</xs:restriction>
</xs:simpleType>
</xs:attribute>
<xs:attribute name="MID_INIT" use="required">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:maxLength value="1" />
</xs:restriction>
</xs:simpleType>
</xs:attribute>
<xs:attribute name="LAST_NAME" use="required">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:maxLength value="15" />
</xs:restriction>
</xs:simpleType>
</xs:attribute>
<xs:attribute name="WORK_DEPT_NBR">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:maxLength value="3" />
</xs:restriction>
</xs:simpleType>
</xs:attribute>
<xs:attribute name="PHONE_NBR">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:maxLength value="4" />
</xs:restriction>
</xs:simpleType>
</xs:attribute>
<xs:attribute name="HIRED_DATE" type="xs:date">
</xs:attribute>
<xs:attribute name="JOB_CLASS">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:maxLength value="8" />
</xs:restriction>
</xs:simpleType>
</xs:attribute>
<xs:attribute name="ED_LEVEL" use="required" type="xs:short">
</xs:attribute>
<xs:attribute name="SEX_CLASS">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:maxLength value="1" />
</xs:restriction>
</xs:simpleType>
</xs:attribute>
<xs:attribute name="BIRTH_DATE" type="xs:date">
</xs:attribute>
<xs:attribute name="CURRENT_SALARY">
<xs:simpleType>
<xs:restriction base="xs:decimal">
<xs:totalDigits value="9" />
<xs:fractionDigits value="2" />
</xs:restriction>
</xs:simpleType>
</xs:attribute>
<xs:attribute name="CURRENT_BONUS">
<xs:simpleType>
<xs:restriction base="xs:decimal">
<xs:totalDigits value="9" />
<xs:fractionDigits value="2" />
</xs:restriction>
</xs:simpleType>
</xs:attribute>
<xs:attribute name="CURRENT_COMM">
<xs:simpleType>
<xs:restriction base="xs:decimal">
<xs:totalDigits value="9" />
<xs:fractionDigits value="2" />
</xs:restriction>
</xs:simpleType>
</xs:attribute>
</xs:complexType>
<xs:complexType name="EMPLOYEE_PROJECT">
<xs:attribute name="EMP_NBR" use="required" type="xs:integer">
</xs:attribute>
<xs:attribute name="PROJ_NBR" use="required">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:maxLength value="6" />
</xs:restriction>
</xs:simpleType>
</xs:attribute>
<xs:attribute name="EMP_CHARGED_TIME">
<xs:simpleType>
<xs:restriction base="xs:decimal">
<xs:totalDigits value="5" />
<xs:fractionDigits value="2" />
</xs:restriction>
</xs:simpleType>
</xs:attribute>
<xs:attribute name="EMP_START_DATE" type="xs:date">
</xs:attribute>
<xs:attribute name="EMP_END_DATE" type="xs:date">
</xs:attribute>
</xs:complexType>
<xs:complexType name="PROJECT">
<xs:sequence>
<xs:element ref="EMPLOYEE_PROJECT" minOccurs="0" maxOccurs="1">
</xs:element>
</xs:sequence>
<xs:attribute name="PROJ_NBR" use="required">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:maxLength value="6" />
</xs:restriction>
</xs:simpleType>
</xs:attribute>
<xs:attribute name="Project_Name">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:maxLength value="5" />
</xs:restriction>
</xs:simpleType>
</xs:attribute>
</xs:complexType>
<xs:element name="DEPARTMENT" type="DEPARTMENT">
<xs:annotation>
<xs:documentation></xs:documentation>
</xs:annotation>
<xs:key name="DEPARTMENT_PK">
<xs:selector xpath=".//DEPARTMENT" />
<xs:field xpath="@DEPT_NBR" />
</xs:key>
</xs:element>
<xs:element name="EMPLOYEE" type="EMPLOYEE">
<xs:annotation>
<xs:documentation></xs:documentation>
</xs:annotation>
<xs:key name="EMPLOYEE_PK">
<xs:selector xpath=".//EMPLOYEE" />
<xs:field xpath="@EMP_NBR" />
</xs:key>
</xs:element>
<xs:element name="EMPLOYEE_PROJECT" type="EMPLOYEE_PROJECT">
<xs:annotation>
<xs:documentation></xs:documentation>
</xs:annotation>
<xs:key name="EMP_ACT_PK">
<xs:selector xpath=".//EMPLOYEE_PROJECT" />
<xs:field xpath="@EMP_NBR" />
<xs:field xpath="@PROJ_NBR" />
</xs:key>
</xs:element>
<xs:element name="PROJECT" type="PROJECT">
<xs:annotation>
<xs:documentation></xs:documentation>
</xs:annotation>
<xs:key name="PROJECT_PK">
<xs:selector xpath=".//PROJECT" />
<xs:field xpath="@PROJ_NBR" />
</xs:key>
</xs:element>
</xs:schema>
|
XML 是信息序列化的当前标准。InfoSphere Data Architect 支持序列化数据模型和从序列化的信息创建数据模型。这个功能允许您将 InfoSphere Data Architect 集成到您的扩展工作流中。除本文介绍的导入和导出功能外,InfoSphere Data Architect 还提供其他 XML 功能,比如 XML 架构的映射、 切割(shredding)和编辑。您可以在产品信息页面中找到关于这些功能的更多信息。
学习
-
获取关于 IBM InfoSphere Data Architect 的更多信息。
-
developerWorks 上的 XML 专区 包含帮助您进一步了解 XML 的各种参考资料,包括文章和教程。
- 加入 My developerWorks 中文社区:个性化您的 developerWorks 体验。
获得产品和技术
-
下载 IBM InfoSphere Data Architect 并试用。
讨论
- 参与论坛讨论。
-
查看 管理数据生命周期博客 并参与讨论。
-
查看其他 developerWorks
博客 并加入 My developerWorks 社区。

