写点什么

你难道还没有用 RELAX-NG 吗?

  • 2007-10-30
  • 本文字数:523 字

    阅读完需:约 2 分钟

RELAX-NG (读音是“relaxing”)也是一种 XML schema 定义语言,它的主要特征是比目前通用的基于 DTD 或是 XSD 的语言要简洁优雅的多。W3C XML Schemas 已经因为“卓越”的复杂性而臭名昭著了,许多 XML 大师都对此表示过不满,Tim Bray评论说:

W3C XML Schemas (XSD) 烂透了。又难读,又难写,还不容易理解,交互性也成问题,而且你想用 XML 来做的很多事情都没法描述出来。

Griffin Brown 最近列出了使用RELAX-NG,而不是W3C XML Schema 来进行XML 建模的 10 条原因,把网络上散落的对 RELAX-NG 的赞誉做了归纳。如下所示:

  1. “好的规格说明就意味着好的交互性”。
  2. “提供了简洁的语法”(RELAX-NG 支持使用 DSL 来精确的描述约束条件,而不是使用尖括号)。
  3. “它的规范是一个稳定的 ISO 标准”。
  4. “没有 PSVI”(PSVI 被认为是有害的)
  5. “没有给内容提供默认值”。
  6. “更好的数据类型支持”。
  7. “更加完善的模型”
  8. “更加完善的语法校验”
  9. “文档实例没有依赖性 _”。_
  10. 正在获得越来越广泛的应用”。

我们可以使用“ Sun Multi-Schema Validator ”工具来将 XSD 文件转换成 RELAX-NG(.RNG)格式,该工具会生成比较冗长的.RNG 文件。而后可以使用 Trang 来把它们转换成更加简洁的格式。查看英文原文 Should you be using RELAX-NG?

2007-10-30 20:091568
用户头像

发布了 197 篇内容, 共 57.8 次阅读, 收获喜欢 20 次。

关注

评论

发布
暂无评论
发现更多内容

数字化转型与架构-架构设计篇|如何开发一个各部门都满意的系统?

数字随行

数字化转型

英文阅读 The manager's path 1.3

程序员在修行

ARTS 打卡第四周

程序员在修行

Mybatis中传递多个参数的4种方法

源字节1号

开源 软件开发 前端开发 后端开发 小程序开发

百度智能云千帆社区上线有礼,助力开发者开启大模型之路!

科技热闻

828 B2B企业节,华为云如何提升生态合作伙伴的综合竞争力?

YG科技

与中小企业共生共赢,华为云B2B企业节来了

YG科技

基于Vue3前后端分离的低代码开发框架

互联网工科生

Vue 软件开发 低代码 JNPF

Footprint Analytics 为 ABGA Web3 Gaming Summit 提供支持,助力 Web3 游戏行业发展

Footprint Analytics

Databend 开源周报第 110 期

Databend

【转载】JVM实际内存占用超过Xmx的原因,设置Xmx的技巧

虚实的星空

Java

数据通信网络之IPv6以太网单臂路由

timerring

数据通信网络

Ask Milvus Anything!聊聊被社区反复@的那些事儿 Ⅰ

Zilliz

非结构化数据 Milvus 向量数据库 deepdive

Last Week in Milvus

Zilliz

非结构化数据 Milvus Zilliz 向量数据库

使用消息队列有什么优点?有什么缺点?

程序员在修行

云迁移?是技术问题也是团队问题

在天涯的海角

如何赋能企业数字化转型?华为云有妙招

YG科技

议题征集|Flink Forward Asia 2023 正式启动

Apache Flink

flink

一文读懂私有云、公有云和本地化部署

青椒云云电脑

公有云 私有云

用AI提高代码质量,同事对我的代码赞不绝口~

飞算JavaAI开发助手

从实时监控到智能洞察:Grafana 和 CnosDB 的无限潜力

CnosDB

时序数据库 开源社区 CnosDB

从构建者到设计者的低代码之路

树上有只程序猿

软件开发 低代码

亚信科技与中国信通院达成全方位、跨领域战略合作

亚信AntDB数据库

AntDB 国产数据库 AntDB数据库

序列化与反序列化一棵树

程序员在修行

不知道该选公有云还是私有云?这些客户请选私有云

青椒云云电脑

桌面云 云桌面

9月24日,线下见个面?

MatrixOrigin

数据库 分布式 MatrixOrigin MatrixOne

高校云桌面的“正确打开方式”是什么?

青椒云云电脑

云桌面 云桌面方案

关于身心灵学习的感悟1

程序员在修行

INFINI Easysearch 与兆芯完成产品兼容互认证

极限实验室

easysearch 兆芯 国产适配

你难道还没有用RELAX-NG吗?_架构_Gavin Terrill_InfoQ精选文章