Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/xml/13.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
XML元模式_Xml_Xsd_Schema_Metaprogramming_Homoiconicity - Fatal编程技术网

XML元模式

XML元模式,xml,xsd,schema,metaprogramming,homoiconicity,Xml,Xsd,Schema,Metaprogramming,Homoiconicity,因为XML模式(XSD)本身就是XML文件,所以应该可以构建 模式的模式(元模式),对吗 我正在努力完成那个壮举 我想创建一个描述模式的模式 如果一个根complexType包含一系列simpleType那么,您想编写一个XSD来验证XSD是否有效?那么,当存在Xsd验证器时,为什么要这样做: 当然,您可以为此目的构建自己的模式。 一个好的起点应该是正式的起点 我建议您进行两次验证运行:一次使用未更改的模式,另一次使用简化的定制模式。 此自定义模式可以是仅包含附加约束的原始模式的精简版本。其余

因为XML模式(XSD)本身就是XML文件,所以应该可以构建 模式的模式(元模式),对吗

我正在努力完成那个壮举

我想创建一个描述模式的模式
如果一个根
complexType
包含一系列
simpleType

那么,您想编写一个XSD来验证XSD是否有效?那么,当存在Xsd验证器时,为什么要这样做:


当然,您可以为此目的构建自己的模式。 一个好的起点应该是正式的起点

我建议您进行两次验证运行:一次使用未更改的模式,另一次使用简化的定制模式。
此自定义模式可以是仅包含附加约束的原始模式的精简版本。其余部分可以通过通配符(

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

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

Akoma Ntoso(西非Akan语中的“链接的心”)定义了一组简单的技术中立的电子表示,以XML格式表示议会、立法和司法文件

它使用了两种抽象,
扩展了

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

  • 扩展是以受控方式添加新功能的派生规则 到基本规则,以便根据 通过删除 附加功能。根据派生的 规则是根据 基本规则
限制

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

  • 限制是比基本规则更严格的派生规则,因此 根据派生规则正确的文档也有效 根据基本规则:派生规则的有效文档集 是一组有效文档的数学子集,根据 基本规则
参考资料


谢谢,但它不仅应该有效,而且应该限制在上面最后一句中描述的形式。我明白了,我相信“xs”名称空间将是这里的限制因素。