共用方式為


使用限制機制的簡單型別衍生

概觀

當您使用限制機制從現有的簡單型別衍生新簡單型別時,通常會將在該屬性或項目值的執行個體訊息中所允許的值限制為基底簡單型別所允許的值之子集。 例如,您可以限制字串類型為數個列舉字串的其中一個。

如需有關使用限制機制來衍生新簡單型別的完整資訊,請參閱 W3C 網站。 如需此和其他網站的各種連結,請參閱 網路上的 XSD 資源

Field 元素和欄位屬性

若要使用限制衍生簡單類型,請在架構樹狀結構中選取相關的Field Element節點或[欄位屬性] 節點,然後在 [屬性視窗] 中,從[基底資料類型] 屬性的下拉式清單中選取簡單類型。 一旦您選取這個屬性的值, [衍生 By ] 屬性就會自動從其預設值變更為 Restriction,做為類型衍生的預設值。 此外,稱為限制的全新屬性類別也會在屬性視窗中提供。

依照您選取的不同基底資料型別,您可以在此新類別中設定不同的屬性。 例如,如果基底資料類型為數值,則) 當MaxFacetValue設定為) 、MaxFacet ValueMinFacet Type時,MaxFacet Type 屬性會 (,而MinFacet Value可用於定義允許值的內含或獨佔範圍時, (。 如果基底資料類型是字串類型,可以使用 LengthMaximum LengthMinimum Length 屬性來限制字串的長度。

如需欄位節點各種限制屬性的詳細資訊,請參閱UI 指引和開發人員 API 命名空間參考中的Field Element Node Properties

當您第一次將 Field Element 節點或 Field 屬性 節點從資料類型變更為具有基底資料類型 (藉此啟動簡單型別衍生) 的程式時,請將 [衍生依據 ] 屬性保留為 [ 限制],並將列舉型限制提供給允許的字串值,您可以在 XSD 檢視中觀察對應片段中的下列變更:

  • 之前,使用名為WestCoastStates的新插入Field Element節點。

    <xs:element name="ContainingRecord">  
        <xs:complexType>  
            <xs:sequence>  
                <xs:element name="WestCoastStates" type="xs:string" />  
            </xs:sequence>  
        </xs:complexType>  
    </xs:element>  
    
  • [基底資料類型]屬性設定為 「xs:string」 之後,並保留衍生 By屬性的限制預設值。

    <xs:element name="ContainingRecord">  
        <xs:complexType>  
            <xs:sequence>  
                <xs:element name="WestCoastStates" >  
                    <xs:simpleType>  
                        <xs:restriction base="xs:string" />  
                    </xs:simpleType>  
                </xs:element>  
            </xs:sequence>  
        </xs:complexType>  
    </xs:element>  
    
  • 將 [限制] 類別中的[列舉] 屬性設定為美國西部三個州的名稱之後。

    <xs:element name="ContainingRecord">  
        <xs:complexType>  
            <xs:sequence>  
                <xs:element name="WestCoastStates">  
                    <xs:simpleType>  
                        <xs:restriction base="xs:string" />  
                            <xs:enumeration value="Washington" />  
                            <xs:enumeration value="Oregon" />  
                            <xs:enumeration value="California" />  
                        </xs:restriction>  
                    </xs:simpleType>  
                </xs:element>  
            </xs:sequence>  
        </xs:complexType>  
    </xs:element>  
    

另請參閱

簡單類型衍生