我正在重建一些 XML 提要,所以我正在研究何时使用元素以及何时使用 XML 的属性。
一些网站说“数据在元素中,元数据在属性中”。
那么,两者有什么区别呢?
让我们以W3Schools为例:
<note date="12/11/2002">
<to>Tove</to>
<from>Jani</from>
<heading>Reminder</heading>
<body>Don't forget me this weekend!</body>
</note>
Run Code Online (Sandbox Code Playgroud)
日期是否应该保留为 note 元素的属性?还是进入它自己的元素更有意义?
<date>12/11/2002</date>
Run Code Online (Sandbox Code Playgroud)
或者,将它分成多个元素是否有意义?
<date>
<day>12</day>
<month>11</month>
<year>2002</year>
</date>
Run Code Online (Sandbox Code Playgroud)
按照“数据在元素中,元数据在属性中。”之后,我会将日期作为子元素。您不需要将其分解为日、月和年,因为我认为实际上有一种方法可以在 XSD 中指定元素必须是 Date 类型。我认为这里“元数据”的一个例子是一个noteID字段,或者可能是一个noteType. 例子:
<note id="NID0001234" type="reminder">
<date>2002-11-12</date>
<to>Tove</to>
<from>Jani</from>
<heading>Reminder</heading>
<body>Don't forget me this weekend!</body>
</note>
Run Code Online (Sandbox Code Playgroud)
更新:正如许多其他人指出的那样,它可能相当主观。我尝试根据它们的使用方式将两者分开。数据通常会呈现给用户,元数据将控制呈现并可在内部用于其他目的。但总有例外...