2013-07-24 65 views
1

所以 - 我有這個聲明在我.dtd文件:xml dtd - 在這個元素中+量詞適用於什麼?

<!ELEMENT some_node1 (some_node2?, 
         some_node3, 
         (some_node4 | some_node5)*)+> 

什麼+手段會在這裏?

a)some_node2?, some_node3, (some_node4 | some_node5)*序列可重複1次或多次? b)括號內的單個元素可以重複1次或多次,即some_node3,some_node3,some_node3,some_node3,some_node5,some_node5?

回答

2

標籤'a'的解釋是正確的:序列可以發生一次或多次。

你給在「B」的例子,但是,仍然法律中的序列< some_node3,some_node3,some_node3,some_node3,some_node5,some_node5>可以通過連接四次出現在內容模型給出的順序來構建:

  1. some_node3(零出現some_node2,接着some_node3之一發生,後面的零次出現some_node4和some_node5之間的選擇的)。
  2. some_node3(見上文)
  3. some_node3, some_node5, some_node5(零出現some_node2,接着正好一個發生some_node3,隨後兩次出現some_node4和some_node5之間的選擇的)。

,將你的解釋「B」下允許的(如果我理解正確的話),但不是在「A」(而不是由XML規範)是some_node2,some_node2,some_node3序列的一個例子。