写点什么

你难道还没有用 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:091383
用户头像

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

关注

评论

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

生成式AI技术原理与应用

百度开发者中心

#人工智能 生成式AI 文心一言

生成式AI掀起创意新革命

百度开发者中心

#人工智能 AI作画 生成式AI 文心一言

10倍性价比,万物新生基于 StarRocks 无缝直替 Trino

StarRocks

数据库 数据仓库 StarRocks trino

和鲸科技为临床医学科研场景打造可供多角色协同的低代码研究平台

ModelWhale

人工智能 低代码 数据科学 在线编程 临床研究

5分钟,结合 LangChain 搭建自己的生成式智能问答系统

字节跳动云原生计算

大数据 云搜索

关于工厂数字孪生应用实例的解析

3DCAT实时渲染

数字孪生 实时渲染

质押挖矿模式系统开发,矿池系统部署搭建

V\TG【ch3nguang】

挖矿矿池系统开发案例 质押挖矿

共享服务器的复杂性与核心原理

天翼云开发者社区

服务器

安全可信| 首批!通过两项算力调度能力评估!

天翼云开发者社区

云计算 云服务

基于云原生网关的流量防护实践

阿里巴巴云原生

阿里云 云原生

九科信息成功签约中咨数据有限公司RPA项目

九科Ninetech

Footprint Analytics 与 GasZero 达成合作,将打造 “0 Gas” 区块链生态系统的未来

Footprint Analytics

区块链 web3

量化智能机器人开发,炒币机器人功能部署搭建

V\TG【ch3nguang】

量化交易机器人开发 炒币机器人

ETH以太链丨BSC币安链智能合约系统开发部署

V\TG【ch3nguang】

以太坊 币安智能链

说点大实话丨知名技术博主 Kirito 测评云原生网关

阿里巴巴云原生

阿里云 微服务 云原生

判断LED显示屏的质量指南

Dylan

性能 质量 环境 LED显示屏

使用EF Core更新与修改生产数据库

高端章鱼哥

EF Core .net6

一劳永逸,解决.NET发布云服务器的时区问题

互联网工科生

.net 云服务器 时区

隐语小课|私有信息检索(PIR)及其应用场景

隐语SecretFlow

AI 数据安全 隐私计算 开源社区 数据要素

轻量应用服务器和云服务器的区别

天翼云开发者社区

服务器 云服务器

业财融合背景下,全面预算管理的发展之路

智达方通

业财融合 全面预算管理 全面预算管理系统 企业全面预算管理

钱包量化多币种质押挖矿系统开发合约源代码详情

V\TG【ch3nguang】

钱包系统开发 质押挖矿

生成式AI:游戏研发的革命者

百度开发者中心

游戏开发 #人工智能 生成式AI 文心一言

避坑PCB的常见设计问题

华秋电子

PCB

购买矿机产出代币模式系统开发搭建

V\TG【ch3nguang】

代币 挖矿矿池系统开发案例

基于 Argo CD 与 Argo Workflows 的 GreptimeDB 云端自动化升级实践

Greptime 格睿科技

rust 时序数据库 云原生数据库 国产时序数据库 自动升级

SphereEx DBPlusEngine - 更全面、更便捷的 ShardingSphere 商业版功能全览

SphereEx

数据库

低成本生成式AI:引领未来内容创作新篇章

百度开发者中心

#人工智能 生成式AI 文心一言

Dropzone 4 for Mac(文件拖拽操作增强工具) 4.6.8中文激活版

mac

苹果mac Windows软件 Dropzone 4 文件管理器

浪潮信息 KeyarchOS 助力 IT 企业安全管理业务完成 CentOS 迁移替换 | 龙蜥案例

OpenAnolis小助手

开源 操作系统 IT 浪潮信息 龙蜥案例

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