.net - BizTalk 中的 ISO schematron 验证有哪些替代方法?
问题描述
当前,现有解决方案包含 Saxon 和 Java 依赖项,使用 xslt 文档作为验证输入。但是,ISO Schematron 是包含带有业务规则的 Schematron Schema 的 xml 文件。
理想情况下,我正在寻找一个库来使用 xml 消息和 xml schematron 作为输入执行验证,以返回验证结果,最好在 xml 中。
没有这样的图书馆吗?schematron 用的不是很多吗?标准 .net CLR 是否以某种方式提供支持?
我曾尝试使用https://github.com/kzu/Schematron,但在阅读了 ISO 标准 Schematron xml 文件后,它并没有像我预期的那样工作。规则嵌入在 xsd 文档中,这不是我在 BizTalk 解决方案中想要的,其中自动执行 xsd 架构验证。
解决方案
我没有找到任何库来使用 xml 和 schematron 作为输入来执行 schematron 验证。而且,在 xsd 模式中使用 schematron 实际上并不可靠,因为大多数来源分别处理 xsd 和 schematron 模式(他们应该这样做!)。而且,任何调整模式的手动工作都是一个潜在的问题。
因此,为了能够使用标准的 .net 组件,schematron 必须首先转换为 xslt。我使用“Skeleton 1.5”来做到这一点,这是一个 xslt 脚本库,用于将 schematron 转换为不同的 xslt 格式(xslt1、xslt2、iso/saxon)。我们说话时被撒克逊人使用。
我的schematron源指定使用xslt2,也就是说我需要使用BizTalk 2020来实现我的目标。幸运的是,客户即将升级。
推荐阅读
- authentication - aspnet core 3 的 nuget 身份验证包在哪里?
- java - Json 不通过 Unirest.post 发送
- python - Databricks:使用explode拆分数据框
- javascript - 给定两个数组,在数组 A 中找到数组 B 中具有唯一值的项
- java - 从其他类中的 start() 方法更改文本
- sbt - 你什么时候需要通过dependsOn聚合
- javascript - 在本机反应中动态编辑数组项
- java - 如何使用 AdminService 在 WebSphere 上获取有关应用程序的信息?
- datetime - 方法 () 在 null 上调用。[扑]
- elementor - 如何在 Elementor 中向图片库添加按钮