2017-03-31 14 views
1

我正在使用一個應用程序,其中一些條目需要在GUI中填寫。現在,客戶已經請求了一個配置文件以繞過GUI。
爲了完成這件事,我想下面的:如何在XSD中表示GUI元素的類型?

複選框:用一個簡單的整數限制上的數字0和1:

<xs:simpleType name="T_Choice"> 
    <xs:restriction base="xs:integer"> 
    <xs:minInclusive value="0"/> 
    <xs:maxInclusive value="1"/> 
    </xs:restriction> 
</xs:simpleType> 

組合框:使用聯合或一個簡單的整數限制和一個空字符串(爲了模擬所有值從0到10和空的第一行的組合框):

<xs:simpleType name="T_Combo_Choice"> 
    <xs:union> 
     <xs:simpleType> 
      <xs:restriction base="xs:string"> 
       <xs:length value="0"/> 
      </xs:restriction> 
     </xs:simpleType> 
     <xs:simpleType> 
      <xs:restriction base="xs:integer"> 
       <xs:minInclusive value="0"/> 
       <xs:maxInclusive value="10"/> 
      </xs:restriction> 
     </xs:simpleType> 
    </xs:union> 
</xs:simpleType> 

但是單選按鈕?在我的XML文件中,我有兩個相鄰的標籤:

<use_old_configuration>0</use_old_configuration> 
<use_new_configuration>1</use_new_configuration> 

現在我的問題:我怎麼能爲了有可能的組合(0,1)(1,0)創建架構的限制,但不(0,0)(1,1)或還要別的嗎?

回答

0

我爲XSD類型的GUI組件的建議:

  • 複選框:使用xs:boolean
  • Comboboxes:使用xs:list限制爲長度1的 xs:enumeration。 0的xs:list將代表沒有選擇。 從邏輯上命名枚舉。
  • 單選按鈕:假設傳統模式只需選擇幾個 按鈕中的一個,則使用枚舉,其中每個枚舉值與一個單選按鈕關聯。從邏輯上枚舉名稱 。