2010-03-19 17 views
1

在創建對xml-dsig標準後的數字簽名元素的引用時,「id」屬性的情況很重要嗎?在XML文件中對元素進行簽名時的「id」屬性的情況

我見過名爲「ID」,「Id」和「id」的屬性,一些軟件包無法爲不同的表單找到正確的元素/節點。

還遵循各種規範和模式,預計會有不同的id屬性。

肯定該屬性必須命名爲「id」,但是是指定的情況還是隻有建議?

回答

1

(注:你要知道,我不是一個XML-DSIG專家,所以我只是儘量回答XML,DTD和XML Schema的關注。)

XML是大小寫敏感的,所以該案例很重要,並且必須與您正在使用的DTD或Schema中的相同。

當然,如果應用程序在不同情況下使用不同架構,則存在兼容性問題。

我查看了官方的W3C規範http://www.w3.org/TR/xmldsig-core/,Schema和DTD似乎指定了「Id」。這是你正在使用的規範嗎?

另外,知道相應的DTD類型是「ID」並且存在稱爲「id」的XQuery函數可能會令人困惑。

+0

就XML和模式而言,我理解病例敏感性的重要性並沒有問題,設計了大量的兩者...... 我有使用引用來簽署XML元素的「問題」。 xmldsig-core的哪個部分確定了目標id屬性的大小寫? 我可以看到,例如xml-dsig元素簽名有一個大寫的Id作爲屬性。 但是它在哪裏說「target」屬性,被用作SignedInfo.Reference元素中的引用的屬性,必須是大寫? – andrazk 2010-03-19 21:38:23

+0

說我要簽名此xml的數據元素: <數據ID =「myRef」>等等等等等等 這種情況下,應在屬性「ID」是? 注意,沒有涉及的架構! 我使用過的大多數軟件都使用「id」或「ID」或「Id」。有些只適用於「Id」。 但是有關於它的規則嗎? 無論如何,XML解析器應該以某種方式「猜測」簽名引用指向的位置,因爲它不知道模式和屬性類型...... – andrazk 2010-03-19 21:42:04

相關問題