2013-03-17 115 views
0

我有一個xml文件,現在我需要創建XSD。 xml文件看起來像:創建XSD文件

<?xml version="1.0" encoding="utf-8" ?> 
<resources> 
    <ErrorMessageGroup> 
    <group name="Common" description="Obecné chyby" /> 
    <group name="Authorize" description="Chyby autorizace" /> 
    </ErrorMessageGroup> 
    <message errorMessageGroup="Common" code="" value="" /> 
    <message errorMessageGroup="Authorize" code="" value="" /> 
</resources> 

的Visual Studio生成我XSD文件,我需要創建消息元素屬性errorMessageGroup限制只有有效的值將會從組元素的name屬性值...

我該怎麼辦?

謝謝。

回答

1

這是給你的XML的XSD和看看爲的errorMessage組的限制

<?xml version="1.0" encoding="UTF-8"?> 
    <xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"> 
     <xs:element name="resources"> 
      <xs:complexType> 
       <xs:sequence> 
        <xs:element ref="ErrorMessageGroup"/> 
        <xs:element ref="message" maxOccurs="unbounded"/> 
       </xs:sequence> 
      </xs:complexType> 
     </xs:element> 
     <xs:element name="message"> 
      <xs:complexType> 
       <xs:attribute name="value" use="required"> 
        <xs:simpleType> 
         <xs:restriction base="xs:string"> 
          <xs:enumeration value=""/> 
         </xs:restriction> 
        </xs:simpleType> 
       </xs:attribute> 
       <xs:attribute name="errorMessageGroup" use="required"> 
        <xs:simpleType> 
         <xs:restriction base="xs:string"> 
          <xs:enumeration value="Authorize"/> 
          <xs:enumeration value="Common"/> 
         </xs:restriction> 
        </xs:simpleType> 
       </xs:attribute> 
       <xs:attribute name="code" use="required"> 
        <xs:simpleType> 
         <xs:restriction base="xs:string"> 
          <xs:enumeration value=""/> 
         </xs:restriction> 
        </xs:simpleType> 
       </xs:attribute> 
      </xs:complexType> 
     </xs:element> 
     <xs:element name="group"> 
      <xs:complexType> 
       <xs:attribute name="name" use="required"> 
        <xs:simpleType> 
         <xs:restriction base="xs:string"> 
          <xs:enumeration value="Authorize"/> 
          <xs:enumeration value="Common"/> 
         </xs:restriction> 
        </xs:simpleType> 
       </xs:attribute> 
       <xs:attribute name="description" use="required"> 
        <xs:simpleType> 
         <xs:restriction base="xs:string"> 
          <xs:enumeration value="Chyby autorizace"/> 
          <xs:enumeration value="Obecné chyby"/> 
         </xs:restriction> 
        </xs:simpleType> 
       </xs:attribute> 
      </xs:complexType> 
     </xs:element> 
     <xs:element name="ErrorMessageGroup"> 
      <xs:complexType> 
       <xs:sequence> 
        <xs:element ref="group" maxOccurs="unbounded"/> 
       </xs:sequence> 
      </xs:complexType> 
     </xs:element> 
    </xs:schema>