写点什么

W3C 更新 XML Schema 1.1 版本化指南

  • 2007-08-22
  • 本文字数:963 字

    阅读完需:约 3 分钟

公平地说,XML Schema 1.0 已经获得了广泛的接受,尽管在它最初登场的时候受到了来自数据、Web 和文档社群的种种非议。人们已经停止使用 DTD ,甚至连轻量级的替代品如 Relax NG 也似乎失去了发展的动力。W3C 数年前启动的 XML Schema 1.1 工作组正准备下个月发出“最后召集”,这意味着“它将在十二个月内成为 W3C 推荐标准(Recommendation)[即最高规格的规范]”, David Orchard 如是说,他是 BEA 的标准架构师以及 XML Schema 1.1 工作组的成员。

也就是说如果你有大量的 XML Schema,可能现在就应该开始着手计划迁移你的 Schema 和数据绑定策略了。

模块性、扩展性和版本化(Versioning)面向服务架构中消息格式设计的关键方面,而且从 XML Schema 出现起对于最佳使用模式的争论就一直延续至今,因为规范本身允许多种特性的组合(全局 vs 局部类型或元素、限定 vs 非限定的命名空间……)。Roger Costello 对这些模式写过一篇详尽的总结。每种模式提供的模块性和扩展性在程度上各有不同。

在新的 XML Schema 1.1 版中,工作组花费了大量的时间来解决 XML Schema 的版本化。在考察了大量的用例之后,七月份 W3C 发布了《用 XML Schema 1.1 新特性对 XML 语言进行版本化的指南》(定案后将成为一份 W3C 备忘录)的阶段性更新,以及三份技术架构组(TAG)文档,分别是《语言的扩展及版本化:术语》、《语言的扩展及版本化:XML 语言》(译注:非指 XML 本身,而是指用 XML 形式定义的语言)和《语言的扩展及版本化:策略》。

XML Schema 1.1 包含很多新的扩展机制。 1. 弱通配符(Weak Wildcard)——允许通配符紧接在可选元素之后
2. 对 all 组的更新——可在 all 组中使用通配符
3. 反向通配符(Negative Wildcard)——排除特定的命名空间与名字
4. 回退到声明类型——如果 xsi:type 未知则使用声明类型。
5. 通配符的自动插入
6. “不在 Schema 中”通配符(Not in Schema Wildcard)——这个通配符匹配当前 Schema 中没有定义的所有事物。

其中一项关键的革新是将扩展性织入到元素序列,而在 1.0 版中,附加的元素只能紧跟在复杂类型定义的后面。版本化指南中详细描述的许多技术,毫无疑问将产生出更多的设计模式,并且创造出更灵活的服务接口,从而在服务的消费者与生产者之间达成更加松散的耦合。

查看英文原文: W3C Publishes an Update to Guide to Versioning XML Schema 1.1

2007-08-22 12:09943
用户头像

发布了 225 篇内容, 共 63.3 次阅读, 收获喜欢 50 次。

关注

评论

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

牛客java选择题每日打卡Day2

京与旧铺

6月月更

Google I/O 2022: Android Jetpack 最新进展

fundroid

android Google android jetpack

vue项目的创建和托管【ForVue3】

Python研究所

6月月更

读配置、讲原理、看面试真题,我只能帮你到这了。。。

阿Q说代码

redis 主从架构 增量同步 全量同步 过期key处理

商城风格也可以很多变,DIY 了解一下!

CRMEB

论一个优秀红队人员的自我修养

穿过生命散发芬芳

6月月更 攻防演练 自我修养

Object.defineProperty也能监听数组变化?

德育处主任

JavaScript Vue 原理分析 数据变更跟踪 6月月更

学习React源码的五个层次

郭明

React

Wireshark的HTTP请求包和响应包如何对应

程序员欣宸

Wireshark 6月月更

语法"陷阱"

fy

c 语法陷阱

Mysql 源码阅读(二)登录连接调试

MySQL 源码

16 种企业架构策略

涛哥 数字产品和业务架构

企业架构

模块五(微博评论)

Geek_701557

不要小看了积分商城,它的作用可以很大!

CRMEB

《睡眠公式》:怎么治睡不好?

郭明

读书笔记

地理位置数据存储方案——Redis GEO

程序员架构进阶

redis 源码剖析 geo 6月日更 6月月更

程序猿职业发展9项必备软技能

慕枫技术笔记

职业发展 6月月更

Linux网络编程_网卡操作指令与TCP协议介绍

DS小龙哥

6月月更 socket网络编程

面试官:你简历上说精通mysql,那你说下聚簇/联合/覆盖索引、回表、索引下推

Java全栈架构师

MySQL 数据库 程序员 面试 java架构

DDD概念复杂难懂,实际落地如何设计代码实现模型?

Java全栈架构师

程序员 后端 领域驱动设计 DDD 架构师

DevEco Studio 3.0编辑器配置技巧篇

坚果

OpenHarmony 6月月更

Neat Syntax Design of an ETL Language (Part 2)

Bright

数据开发 ETL 大数据开发 EasySQL

记一次给OpenHarmony提交代码的过程

坚果

OpenHarmony 6月月更

词法陷阱(C)

fy

c C陷阱与缺陷

绕过技术聊"跨端"......

hiisea

前端架构 前端框架 跨端开发 小程序框架 跨端框架

揭秘GaussDB(for Redis):全面对比Codis

华为云开发者联盟

数据库 后端 算力

2022年首期Techo Day腾讯技术开放日将于6月28日线上举办

科技热闻

说下你对方法区演变过程和内部结构的理解

阿Q说代码

Java JVM 方法区 元空间 永久代

Rxjs TakeUntil 操作符的学习笔记

汪子熙

typescript 响应式编程 angular RXJS 6月月更

编程技巧│提高 Javascript 代码效率的技巧

JavaScript 编程效率 6月月更 美化程序

SDN系统方法 | 9. 接入网

俞凡

架构 网络 sdn SDN系统方法

W3C更新XML Schema 1.1版本化指南_SOA_Jean-Jacques Dubray_InfoQ精选文章