当前位置: 首页 > 知识库问答 >
问题:

用于获取xml内容和验证的Schematron

百里朝
2023-03-14

我需要验证xml内容并获取有效标签及其值。我知道我是否可以使用Schematron来验证标签及其内容。我可以使用Schematron本身来获取所有有效标签及其值并将它们放在另一个xml或html中吗?

如果不可能,请建议我其他方式。

谢谢你,巴拉。

共有2个答案

王伯寅
2023-03-14

Schematron可以使用XPath作为规则来验证XML,您可以报告错误。但是,XQuery将不仅仅是Schematron,我大量使用XQuery来验证XML值,我应该能够很好地生成HTML报告。XQuery的好处是,您可以使用编程功能,如IF、循环、字符串操作等,使用XQuery。

鲁峰
2023-03-14

我想在这种情况下,您选择的XML技术应该是XQuery。也许可以看看维基百科关于XQuery的文章来开始。

基本上,XQuery还使用XPath表达式(如Schematron)来查询和提取XML数据。因此,使用任何现有的Schematron测试应该没有任何问题,这些测试也是XQuery中的XPath表达式。

 类似资料:
  • 我询问了如何建立一个服务呼叫,并在HttpClient上获得了一个很好的信息。然而,虽然这个问题在技术上得到了回答,但我还是被卡住了。 在控制台中,我可以看到我的浏览器向服务发送了什么请求来获取授权令牌。然而,当我尝试在我的服务层中模拟构建请求的调用时,我得到以下错误消息。我在这里犯错的可能性很大。不知道该用谷歌搜索什么,真的。。。 "StatusCode: 500, ReasonPhrase:'

  • 假设我在另一个模式(项目)中有一个嵌套的模式(邀请),当试图保存邀请对象时,我想检查项目模式中的父属性“启用”是否设置为true或false,然后允许该人保存邀请对象到邀请数组。显然,this.enabled不起作用,因为它试图从邀请函模式中获得它,邀请函模式不存在。如何让父架构上的启用属性进行验证? 有什么想法吗?感谢任何帮助!

  • 我在验证xml和xsd时遇到问题。我从xsd模式中得到这个错误。 src解决方案。4.2:解析组件“urn:id”时出错。检测到“urn:id”位于命名空间“urn:schemas microsoft com:xml-diffgram-v1”中,但此命名空间中的组件无法从架构文档中引用virtual://server/schema.xsd。如果名称空间不正确,可能需要更改“urn:id”的前缀。如

  • 问题内容: 如何使用Java中的XSD验证XML文件?我们事先不知道架构。我希望能够获得,下载XSD,对其进行缓存,然后执行实际的验证。 问题是,使用/ 类,我似乎无法提前掌握。这有什么窍门?我应该学习哪些课程? 也许我可以使用更合适的API?整个问题是,我们需要动态验证,而不必(必需)在本地拥有XSD。 如何获得XSD文件中定义的URL ? 我知道您可以设置功能/属性,但这是另一回事。我需要先从

  • 还有一种调用模板的情况是我们只想渲染后返回模板渲染后的数据而不是直接输出,这时我们会用fetch方法; fetch的用法和display 完全一样,只是不直接输出了; //不带任何参数 $content=$this->fetch(); 此种方式系统会自动判断模板路径,并渲染出模板内容,此种方式模板路径是:主题名/应用名/控制器名/操作名+模板文件后缀名; $content=$this->fetc

  • 以下是Struts2中可用的各种类型的字段级别和非字段级别验证的列表 - 日期验证员 <field name = "birthday"> <field-validator type = "date"> <param name = "min">01/01/1990</param> <param name = "max">01/01/2000</param>