2016-03-28 60 views
0

我正在寫一個Xml模式,我想要一個具有一些屬性的元素作爲基於字符串的complexType和simpleContent。我希望它也保留空白。現在,我有這樣的片段:帶保留空白和屬性的Xml模式數據類型

<xs:complexType name="actualType"> 
    <xs:simpleContent> 
    <xs:extension base="stringWithSpace"> 
     <xs:attribute name="a" type="xs:int"/> 
     <xs:attribute name="b" type="xs:int"/> 
    </xs:extension> 
    </xs:simpleContent> 
</xs:complexType> 

<xs:simpleType name="stringWithSpace"> 
    <xs:restriction base="xs:string"> 
    <xs:whiteSpace value="preserve" /> 
    </xs:restriction> 
</xs:simpleType> 

的問題是,我需要有兩個單獨的類型來獲得屬性和保存的空白或者是有什麼我錯過了什麼?

+0

您當前的實施是否有效? –

+0

是的,它目前的作品。對於限制和擴展字符串類型,感覺真的很奇怪,因爲我想要的唯一的「限制」是解析器不能吃掉所有的空白。感覺來自編程背景的錯誤,我只想爲一組更改擴展基本類型。 –

+0

您的(正確)方法似乎是執行此操作的標準方法。假設你可以重用保留空白的字符串,我不認爲這是很糟糕的。 –

回答

1

我看到確認,這只是在問題的原始代碼段中表達的標準方式。我正在回答問題,以便任何稍後搜索此問題的人都可以收到相同的確認。