回答
沒有,屬性聲明不能兼得#FIXED
和#REQUIRED
。
如果屬性爲#FIXED
,則該值始終在聲明中指定,即使該屬性物理上不在XML中。
例如,在下面的XML的test
屬性的值是bar
即使屬性是不實際的XML本身規定:
<!DOCTYPE foo [
<!ELEMENT foo EMPTY>
<!ATTLIST foo
test CDATA #FIXED 'bar'>
]>
<foo/>
這裏是通過XSLT證明變換:
XSLT 2.0(它是有效的1.0太)
<xsl:stylesheet version="2.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:output indent="yes"/>
<xsl:strip-space elements="*"/>
<xsl:template match="/foo">
<results>
<xsl:value-of select="@test"/>
</results>
</xsl:template>
</xsl:stylesheet>
輸出
<results>bar</results>
丹尼爾海利是正確的,至少對於DTD中的語法。
如果你想要一個屬性的所有出現的地方有一個給定值,和你想要求值是XML文檔(不存在由默認值機制)的實際存在,和如果價值是一個法律NMTOKEN,那麼你可以通過不同的途徑達到你想要的行爲:
<!ATTLIST myTag
myAttribute (some-text) #REQUIRED >
這裏的屬性類型信息(some-text)
指定爲myAttribute
唯一有效的值是some-text
和#REQUIRED
關鍵字強加約束即myAttribute
必須物理存在於輸入中。
如果您想要的值不是合法的NMTOKEN - 例如,如果它是絕對URI,或者其中包含空格或非名稱字符的短語 - 則此方法無效。
非常感謝! – user2236014
偉大的一點。我應該包括這個選項。 +1 –
- 1. 是否可以在DTD中定義通配符屬性?
- 2. 檢查屬性文件是否存在並且需要屬性
- 3. 屬性%s是必需的
- 4. 屬性'entityManagerFactory'是必需的
- 5. 是否有可能在WPF用戶控件上定義屬性是必需的?
- 6. 是否可以在ASP.Net屬性中設置所需的屬性?
- 7. 元素的屬性必須存在,並且是dtd文件中定義的列表之一
- 8. 是否可以綁定到ColumnSpan屬性?
- 9. 是否有可能覆蓋模型中屬性的必需屬性?
- 10. 主鍵是否也是Realm中的必需屬性?
- 11. 是否可以在上下文中僅包含必需的屬性?
- 12. WCF:是否有一個屬性可以使OperationContract中的參數成爲必需?
- 13. KnockoutJS&HTML5必需屬性&可見:否
- 14. rel =屬性是否可以包含任何字符串並且仍然有效?
- 15. 是否可以在ant中指定屬性值作爲屬性?
- 16. htmlunit是否可以使用自定義HTML屬性(「expando屬性」)?
- 17. java.lang.IllegalArgumentException:屬性'dataSource'是必需的
- 18. 布爾屬性是必需的
- 19. 「屬性」sessionFactory'是必需的「在春季?
- 20. java.lang.IllegalArgumentException:屬性'dataSource'是必需的Spring JDBC
- 21. 是否可以搜索jdom的屬性?
- 22. 無法驗證輸入字段是否爲空並且是必需的
- 23. 自定義屬性,以確定方法是否可以處理
- 24. 是否可以在IE中使用所需的屬性?
- 25. 是否可以使用groovy.xml.MarkupBuilder與給定的DTD?
- 26. Python:固定長度正則表達式是否必需?
- 27. 字符串的字符表示是否不同並且是固定的?
- 28. 必需屬性是RESTful Web服務?
- 29. 是否可以轉發屬性?
- 30. 是否可以推廣Tuple屬性?
非常感謝!你的回答非常明確和有幫助。 – user2236014