2015-09-28 32 views
0

我是DTD的新手,我不確定是否正確理解此代碼。DTD +(tag1,tag2)

<!ELEMENT P   - - (#PCDATA) +(tag1 | tag2 | tag3) > 

該代碼是否允許P標籤包含tag1,tag2和tag3?

回答

1

這是一個SGML語法,而不是XML。您可以看到它,因爲在聲明的元素名稱(P)和內容聲明(#PCDATA)之間,遇到「- -」,這意味着開始標記和結束標記都不能省略(否則您可能會有類似「- O」這意味着可以省略結束標記)。

+(tag1 | tag2 | tag3)意味着你被允許使用tag1tag2tag3無論你想,嵌套在P元素。它是遞歸的,也就是說,假設P內允許其他元素,即使它們沒有在元素的同一級聲明,也可以允許這些標記出現。

以相反的方式,爲了防止元素及其子元素中存在這些元素,您將使用-(tag1 | tag2 | tag3)

+0

謝謝@potame! – Viin