我有一个由第三方使用BizTalk生成的XML文档,我有该文档的BizTalk架构,但我需要根据.NET中的架构验证该文档。当我尝试加载BizTalk架构时,我收到此消息:
'XmlSchemaSet' can load only W3C XML Schemas
是否有某种方式(可能是XSLT)从BizTalk架构语言转换为W3C XML Schema语言?
答案 0 :(得分:2)
需要在BizTalk中部署以便在平台内使用的“模式”开始以普通的W3C XML Schema生活,这是一个.xsd
扩展名的文件
然后,BizTalk Visual Studio项目系统将XSD架构的这种纯XML表示转换为在编译的.Net程序集中从SchemaBase派生的.NET类,以使其更适合BizTalk运行时使用它
如果要根据.NET中的模式验证任何给定的XML文档,最简单的解决方案是获取最初用作相应BizTalk工件源的W3C Schema文件。
但是,如果无法做到这一点,则可以引用包含已编译工件的.NET程序集,并使用反射来实例化生成的类。然后,您可以使用其Schema属性来检索XmlSchema对象的实例。