2017-04-07 72 views
1

我有一個XML結構是這樣通過XSD限制混合XML內容?

<Main>1 
    <Sub>2 
    <Property>red</Property> 
    <Function>0 
     <Parameter>234</Parameter> 
    </Function> 
    </Sub> 
</Main> 

,我想打一個XSD吧。如果「Main」後面沒有「1」,「Sub」後面沒有「2」,「Function」後面沒有「0」,我知道如何做到這一點。但如果有的話,我真的不知道該怎麼做。

任何人都可以幫我添加一個限制到這個XML?數字不應大於1000.

非常感謝!

回答

1

這是一個糟糕的XML設計。如果您想約束這些數字,請將它們放入它們自己的元素或屬性中。如你所知,你可以使用混合內容聲明,但是你將失去約束混合文本的能力,這就是這種情況下的數字。

您可能會對混合內容的父元素的字符串值或文本節點提出一個斷言(儘管XSD 1.1是必需的),但這會很混亂。如果添加數字約束對您很重要,請更改設計。

+0

非常感謝!這非常有幫助! –