从XML生成的JSON中“@attributes”元素的来源

时间:2012-06-05 11:12:38

标签: javascript xml json

在将XML转换为JSON时,如何和/或在哪些约定中将XML属性放在名为“@attributes”的对象中?此样式用于this generic XML parser

obj["@attributes"] = {};
for (var j = 0; j < xml.attributes.length; j++) {
  var attribute = xml.attributes.item(j);
  obj["@attributes"][attribute.nodeName] = attribute.nodeValue;
}

..创建像这样的JSON:

...
elem_array = [
  {
    "@attributes": {
      an-attribute: "",
      another-one: "mr.text"
    }
  }
]
...

我不是在寻找以元素为中心与以属性为中心的XML设计的答案,除非这些事情与我的问题关系比我想象的更紧密。 ;)

@attributes符号来自哪里,是否有理由使用它自己使用自己的符号?

谢谢!

1 个答案:

答案 0 :(得分:2)

它可能是从XPATH @attribute语法

演变而来的

http://www.tizag.com/xmlTutorial/xpathattribute.php

使用@使得人们可以识别XPATH

示例:XPath : Get nodes where child node contains an attribute