0

ある XML スキーマが別の XML スキーマと下位互換性があることを検証する .NET 呼び出しはありますか?

4

1 に答える 1

2

いいえ。XmlSchemaクラスを使用して 2 つのスキーマを解析し、比較を行うコードを記述する必要があります。

2 つの XSD が同一であり、XML 表現が大きく異なる可能性があるため、XML の比較/相違は役に立ちません。たとえば、次のようになります。

<xs:schema targetNamespace="http://tempuri.org/XMLSchema.xsd"
    elementFormDefault="qualified"
    xmlns="http://tempuri.org/XMLSchema.xsd"
    xmlns:mstns="http://tempuri.org/XMLSchema.xsd"
    xmlns:xs="http://www.w3.org/2001/XMLSchema">

  <xs:element name="test">
    <xs:complexType>
      <xs:sequence>
        <xs:element name="str" type="xs:string"/>
      </xs:sequence>
      <xs:attribute name="num" type="xs:int"/>
    </xs:complexType>
  </xs:element>

</xs:schema>

<xs:schema targetNamespace="http://tempuri.org/XMLSchema.xsd"
    elementFormDefault="qualified"
    xmlns="http://tempuri.org/XMLSchema.xsd"
    xmlns:mstns="http://tempuri.org/XMLSchema.xsd"
    xmlns:xs="http://www.w3.org/2001/XMLSchema">

  <xs:element name="test" type="test">
  </xs:element>

  <xs:complexType name="test">
    <xs:sequence>
      <xs:element name="str" type="xs:string"/>
    </xs:sequence>
    <xs:attribute name="num" type="xs:int"/>
  </xs:complexType>

</xs:schema>
于 2013-01-18T13:42:37.040 に答える