您知道什么可用的XML语法替代方法?

前端之家收集整理的这篇文章主要介绍了您知道什么可用的XML语法替代方法?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
对我来说可用意味着:

>它正在被实际使用
>它有工具支持。 (至少是一些简单的编辑)
>它具有人类可读的语法(请不要使用尖括号)

我还希望它尽可能接近XML,即必须支持属性属性。所以,请不要YAML。目前,只有一种匹配的语言出现在我的脑海里 – JSON。你知道其他任何替代方案吗?

YAML是JSON的100%超集,因此拒绝YAML然后再考虑JSON是没有意义的。 YAML完成了JSON所做的一切,但是YAML也提供了更多功能(如引用)。

我想不出任何XML可以做到YAML不能做的事情,除了用DTD验证文档,根据我的经验,从来没有值得开销。但是YAML比XML更快更容易打字和阅读。

至于属性属性,如果你考虑它,它们并不真正“添加”任何东西……它只是一个符号的快捷方式,可以将某些内容写为节点的属性,而不是将其放在自己的子节点中。但是如果您喜欢这种便利,您通常可以使用YAML的内联列表/哈希来模拟它。例如:

<!-- XML -->
<Director name="Spielberg">
    <Movies>
        <Movie title="Jaws" year="1975"/>
        <Movie title="E.T." year="1982"/>
    </Movies>
</Director>


# YAML
Director: 
    name: Spielberg
    Movies:
      - Movie: {title: E.T.,year: 1975}
      - Movie: {title: Jaws,year: 1982}

对我来说,无需编写每个节点标签两次的奢侈,加上所有角度支架垃圾的自由,使YAML成为首选。我实际上也喜欢缺乏正式的标签属性,因为在我看来,这似乎是一个灰色的XML区域,它不必要地引入了两组语法(在编写和遍历时),基本上是相同的概念。 YAML完全消除了这种困惑。

猜你在找的XML相关文章