XML Meta Schema

时间:2010-06-16 08:41:26

标签: xml xsd schema metaprogramming homoiconicity

由于XML schemata(XSD)本身就是XML文件,因此应该可以构建 架构的架构(元架构),对吧?

我正在努力实现这一壮举。

我想创建一个描述架构的架构 一个根complexType包含一系列simpleTypes

3 个答案:

答案 0 :(得分:1)

Akoma-Ntoso是这种元模式的一个例子:

  

“我们可以说Akoma Ntoso是一个允许您构建自己的架构的元架构:它为不同的组织提供构建块,用于构建自己的个人架构。让组织使用类似的构建块,识别这些块以类似的方式进行,可以实现更大的文档集成和交换以及软件工具的可重用性......“

     

Akoma Ntoso(西非阿坎语中的“联系心”)定义了一套简单的技术中立的电子表示形式,采用XML格式的议会,立法和司法文件。

它使用两个抽象,extends

  

元素extends是一个元数据元素,用于指定对所描述的参数扩展的源的引用。

  • 扩展程序是一种派生规则,以受控方式添加新功能 到一个基本规则,以便所有文件都是正确的 通过删除,可以根据基本规则验证派生规则 附加功能。根据派生的有效文件集 规则是根据有效文件集的受控超集 基本规则。

restricts

  

元素restricts是一个元数据元素,用于指定对所描述的参数限制的源的引用。

  • 限制是一个比基本规则更严格的派生规则,所以全部 根据派生规则正确的文档也是有效的 根据基础一:派生规则的有效文件集 是根据有效文件集的数学子集 基本规则。

<强>参考

答案 1 :(得分:0)

那么,你想编写一个XSD来验证XSD是否有效?那么,为什么有Xsd验证器时呢?

http://www.w3.org/2001/03/webdata/xsv

答案 2 :(得分:0)

当然,您可以为此目的构建自己的架构。 一个好的起点将是正式的 from the W3C

我建议做两次验证运行:一次使用未更改的架构,第二次运行使用简化的自定义架构。 此自定义架构可以是原始的精简版本,仅包含其他约束。其余的可以通过通配符(<xs:any>

来允许