代码之家  ›  专栏  ›  技术社区  ›  char m

如何在XML模式中呈现元素的类型?

  •  2
  • char m  · 技术社区  · 15 年前

    我正在创建一个XML模式,我必须提供数据库列,这些列具有它们所属的名称、类型和表。这样地:

      <xs:complexType name="tMappingItem">
        <xs:sequence>
          <xs:element name="name" type="xs:string" />
          <xs:element name="type" type="xs:string" />
          <xs:element name="table" type="xs:string" />
        </xs:sequence>
      </xs:complexType>
    

    有更优雅的方法吗?我当然可以这样做:

         <xs:element name="type" >
            <xs:simpleType>
              <xs:restriction base="xs:string">
                <xs:enumeration value="FLOAT" />
                <xs:enumeration value="DOUBLE" />
                <xs:enumeration value="INT" />
                <xs:enumeration value="DATETIME" />
                <xs:enumeration value="STRING" />
              </xs:restriction>
            </xs:simpleType>
          </xs:element>
    

    如果无法判断“类型”是类型。;)

    1 回复  |  直到 7 年前
        1
  •  1
  •   xcut    15 年前

    是的,那很好。)不幸的是,XML模式中没有一个元类型,它的值都是类型名。你必须像在上面那样列举它们。