将多个模式集读入数据集

问题描述

| 我正在尝试从XmlSchema生成数据集。我有一个模式定义了简单类型i。如何将多个架构添加到数据集中 第一个架构将生成数据集的结构,该架构中的元素之一是
<xs:element name=\"CkptID\" type=\"EM_SignedInt\" />
在不同的架构中提到类型\“ EM_SignedInt \” 定义简单类型的第二个模式如下
<xs:complexType name = \"EM_SignedInt\">
<xs:simpleContent>
  <xs:extension base=\"xs:int\">
  <xs:attributeGroup ref=\"AttG_Property\"/>
  </xs:extension>
</xs:simpleContent>
如何将类型添加到数据集中?     

解决方法

解决了。要解决此问题,请使用xs:include在主模式中包括定义简单类型的模式。这里要注意的重点是,我们不应在必须包含在其他任何模式中的模式中包含\“ targetNamespace \”参数,以便它自动包含在主模式中定义并成为其一部分的名称空间。该架构。 在主模式中包含以下参数(在本例中为Main.xsd):
<xs:schema  xmlns:xs=\"http://www.w3.org/2001/XMLSchema\" xmlns=\"http://tempuri.org/Main.xsd\" xmlns:msdata=\"urn:schemas-microsoft-com:xml-msdata\" xmlns:msprop=\"urn:schemas-microsoft-com:xml-msprop\"  targetNamespace=\"http://tempuri.org/Main.xsd\"  attributeFormDefault=\"unqualified\" elementFormDefault=\"qualified\" version=\"3.0.4 01-07-2011\">
要包含定义简单类型的模式(在这种情况下为base.xsd),请使用:
<xs:include schemaLocation=\"base.xsd\"/>
现在,您可以添加此主架构以加载到数据集,效果很好!