2014-02-28 141 views
1

假設我們有一個XML 1.0文檔xml10.xml,它引用外部解析實體xml11.ent,其中xml11.ent的文本聲明爲<?xml version="1.1" encoding="UTF-8"?>。這合法嗎?如果xml11.ent使用XML 1.0不支持的功能,如控制字符的實體引用(例如&#1;)或解除綁定的前綴(例如xmlns:foo="")?相反,我們可以詢問有關包含XML 1.0外部解析實體的XML 1.1文檔的相同問題。XML文檔可以引用不同XML版本的外部解析實體嗎?

澄清:我感興趣的是XML規範要求什麼,而不是具體的實現如何行爲。引用相關規範的答案將特別受到讚賞。

回答

1

假設解析器支持被引用的最新版本:是的,這應該工作。 (不管它實際上是否是一個質量實現問題,你將不得不考慮解析器的作者。)

+0

我應該在問題中做得更清楚,我的興趣不在於具體實現的行爲如何,但如果規格本身要求什麼的話。 –

+0

據我所知,XML 1.1規範對於外部分析的XML 1.0實體沒有問題。當然,另一種方式沒有詳細說明,但如果你有一個支持1.1的解析器,我希望它能夠工作。 – keshlam