修改 2.XML 架构以便使用 BizTalk 编辑器
HL7 2.XML 架构需要修改才能与 Microsoft BizTalk Accelerator for HL7 (BTAHL7) 正常工作。 下面介绍了如何修改 HL7 V2.XML 架构,以便能够将它们与 BizTalk 编辑器配合使用。
重要
Update2XMLSchema 工具会自动执行这些步骤。 有关详细信息,请参阅 Update2XMLSchema 工具 。
注意
nillable 属性可以出现在元素的架构中。 如果设置为 true,则表示父元素的实例可以具有 xsi:nil=“true” 属性。 BTAHL7 在编译期间和分析/序列化期间忽略此属性。
修改 2.XML 架构
在 fields.xsd 文件中,必须删除 import 的实例并将其替换为 include。 例如,在 fields.xsd 文件中搜索以下文本:
<xsd:import namespace="urn:hl7-org:v2xml" schemaLocation="datatypes.xsd"/>
并将文本更改为以下内容:
<xsd:include schemaLocation="datatypes.xsd"/>
在 segments.xsd 文件中,必须删除包含文本 processContents=“lax”的所有行实例。 例如,在 segments.xsd 文件中搜索以下文本:
<xsd:any processContents="lax" namespace="##any" minOccurs="0"/>
且
<xsd:any processContents="lax" namespace="##any"/>
然后删除这些行。
对于所有架构,必须在标记 xsd:schema 下添加以下行:
注意
如果已使用 Microsoft Visual Studio 添加架构,请不要添加此行,因为 Visual Studio 会自动为你执行此操作。
xmlns:b="http://schemas.microsoft.com/BizTalk/2003"
例如,在 ADT_A01.xsd 文件中,搜索以下文本:
<xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns="urn:hl7-org:v2xml" targetNamespace="urn:hl7-org:v2xml">
并将文本更改为以下内容:
<xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns="urn:hl7-org:v2xml" targetNamespace="urn:hl7-org:v2xml" xmlns:b="http://schemas.microsoft.com/BizTalk/2003">
对于所有架构,必须添加根引用。 例如,在 ADT_A01.xsd 文件中,搜索以下文本:
<xsd:include schemaLocation="segments.xsd" />
将文本更改为:
<xsd:include schemaLocation="segments.xsd" /> <xsd:annotation> <xsd:appinfo> <schemaInfo root_reference="ADT_A01" xmlns="http://schemas.microsoft.com/BizTalk/2003" /> </xsd:appinfo> </xsd:annotation>
注意
如果使用 Visual Studio,则可以使用以下过程添加此root_reference。
添加根引用
在“解决方案资源管理器”中,双击要编辑的架构。
在“属性”窗格中,向下滚动到 属性root_reference,然后从下拉列表中单击具有相同架构名称的属性。
在“文件”菜单上,单击“全部保存” 。