例如,
Xml文档:
<some_document>
<elements>
<element>1</element>
<element>2</element>
<element>3</element>
</elements>
<sum>6</sum>
<some_document>
规则(以某种形式,可能是xml),根据给定文档的模式:
Sum of all <element> fields must match the value in <sum> field
结果: 根据规定的规则,文件是否有效?(也可能是xml格式)
所以,我需要一个实现给定功能的库,或者至少需要自己编写的库。语言并不重要。
答案 0 :(得分:1)
Schematron可能是一个很好的解决方案。
Schematron是ISO标准,它提供了一种编码XML Schema中无法实现的业务规则,限制和验证的方法。这些规则被编译到XSLT中,并且可以在任何可以调用XSLT转换的环境中运行。
Schematron基本不同 来自其他模式语言的概念 它不是基于语法而是基于语法 在解析中找到树模式 文献。这种方法允许很多 要表示的各种结构 这是不方便和困难的 在基于语法的模式语言中。如果 你知道XPath或XSLT表达式 语言,你可以开始使用了 Schematron立刻。
答案 1 :(得分:0)
您可以使用xslt
添加<element>
代码的值,并与<sum>
<xsl:value-of select='sum(//element) = //sum'/>
这将返回比较结果..