2014-10-05 17 views
0

我有一個XML Schema,我想知道是否可以放入條件。 我想爲每個月選擇minInclusive和maxInclusive。可以在xml模式中執行此操作。我將不勝感激任何幫助。 =)XML Schema,如何將「條件」放入限制?

這裏是我的代碼:

<xs:element name="correo"> 
    <xs:complexType> 
     <xs:sequence> 

      <xs:element name="emisor"> 
       <xs:complexType> 
        <xs:sequence> 
         <xs:element name="nombre" type="xs:string"/> 
         <xs:element name="apellidos" type="xs:string"/> 
         <xs:element name="email" type="xs:string"/> 
        </xs:sequence> 
       </xs:complexType> 
      </xs:element> 

      <xs:element name="receptor"> 
       <xs:complexType> 
        <xs:sequence> 
         <xs:element name="nombre" type="xs:string"/> 
         <xs:element name="apellidos" type="xs:string"/> 
         <xs:element name="email" type="xs:string"/> 
        </xs:sequence> 
       </xs:complexType> 
      </xs:element> 


      <xs:element name="fecha"> 
       <xs:complexType> 
        <xs:sequence> 
         <xs:element name="dia"> 
          <xs:simpleType> 
           <xs:restriction base="xs:integer"> 
            <xs:minInclusive value="1"/> 
            <xs:maxInclusive value="31"/> 
           </xs:restriction> 
          </xs:simpleType> 
         </xs:element> 
         <xs:element name="mes"> 
          <xs:simpleType> 
           <xs:restriction base="xs:string"> 
            <xs:enumeration value="Enero"/> 
            <xs:enumeration value="Febrero"/> 
            <xs:enumeration value="Marzo"/> 
            <xs:enumeration value="Abril"/> 
            <xs:enumeration value="Mayo"/> 
            <xs:enumeration value="Junio"/> 
            <xs:enumeration value="Julio"/> 
            <xs:enumeration value="Agosto"/> 
            <xs:enumeration value="Septiembre"/> 
            <xs:enumeration value="Octubre"/> 
            <xs:enumeration value="Noviembre"/> 
            <xs:enumeration value="Diciembre"/> 
           </xs:restriction> 
          </xs:simpleType> 
         </xs:element> 
         <xs:element name="año"> 
          <xs:simpleType> 
           <xs:restriction base="xs:integer"> 
            <xs:minInclusive value="0"/> 
           </xs:restriction> 
          </xs:simpleType> 
         </xs:element> 
         <xs:element name="hora"> 
          <xs:complexType> 
           <xs:sequence> 
            <xs:element name="horas"> 
             <xs:simpleType> 
              <xs:restriction base="xs:integer"> 
               <xs:minInclusive value="0"/> 
               <xs:maxInclusive value="23"/> 
              </xs:restriction> 
             </xs:simpleType> 
            </xs:element> 
            <xs:element name="minutos"> 
             <xs:simpleType> 
              <xs:restriction base="xs:integer"> 
               <xs:minInclusive value="0"/> 
               <xs:maxInclusive value="59"/> 
              </xs:restriction> 
             </xs:simpleType> 
            </xs:element> 
           </xs:sequence> 
          </xs:complexType> 
         </xs:element> 
        </xs:sequence> 
       </xs:complexType> 
      </xs:element> 

      <xs:element name="adjuntos"> 
       <xs:complexType> 
        <xs:sequence> 

         <xs:element name="archivo"> 
          <xs:complexType> 
           <xs:sequence> 
            <xs:element name="extension" type="xs:string"/> 
            <xs:element name="tamaño"> 
             <xs:complexType> 
              <xs:sequence> 
               <xs:element name="valor"> 
                <xs:simpleType> 
                 <xs:restriction base="xs:double"> 
                  <xs:minInclusive value="0."/> 
                 </xs:restriction> 
                </xs:simpleType> 
               </xs:element> 
               <xs:element name="unidades" type="xs:string"/> 
              </xs:sequence> 
             </xs:complexType> 
            </xs:element> 
           </xs:sequence> 
           <xs:attribute name="nombre" type="xs:string"/> 
          </xs:complexType> 
         </xs:element> 
        </xs:sequence> 
       </xs:complexType> 
      </xs:element> 

      <xs:element name="mensaje"> 
       <xs:complexType> 
        <xs:sequence> 
         <xs:element name="cuerpo" type="xs:string"/> 
         <xs:element name="firma" type="xs:string"/> 
        </xs:sequence> 
       </xs:complexType> 
      </xs:element>     

     </xs:sequence> 
     <xs:attribute name="asunto" type="xs:string"/>  
    </xs:complexType> 
</xs:element> 

回答

0

可以在XSD 1.1做這種事情有斷言。它不能在XSD 1.0中完成。