我有一个DTD和XML文件。 DTD在元素上包含id属性。我想知道的是,如果我在我的xml-editor(XMetaL)中打开文件,然后插入一个新元素。
DTD可以以某种方式为id属性生成随机id,或者XML fil可以生成这个吗?
谢谢!
答案 0 :(得分:1)
DTD将定义ID属性的类型(很可能是类型ID
的类型,以表明它必须遵循ID的XML规则,但仅仅因为属性被称为id
并不是; t表示它的类型为ID
)。
XML编辑器可以通过生成不匹配任何当前ID
的字符串(例如elname1
,elname2
等来添加此后的值。 。)但这必须是编辑器的一个特征,而不是DTD本身指定的东西。
(可比较 - "可比较"因为它们不是XML文件,尽管它们在许多IDE中具有一些相似性 - 用于处理ASP.NET的功能,它将添加例如id="repeater1"
和我个人认为这更像是一种麻烦而不是恩惠。
答案 1 :(得分:1)
XML只是一种表示数据的结构。 DTD是你xml结构的定义。其中没有为您生成ID。
然而,XSLT的generate-id()将适合您。 您可以从w3c http://www.w3schools.com/xsl/func_generateid.asp
了解更多信息