我正在基于将通过互联网(通过网络服务)发送的XML消息在我的系统和其他系统之间开发接口。
我已经创建了一个XSD架构文件来定义消息结构。 我正在使用Microsoft Biztalk在此字段中创建sachems和new。
我使用.Net内置功能(link)为传入和传出消息构建了验证过程。
问题是:有时验证会在xml节点名称之前到达命名空间,有时甚至没有。
此外 - 有时为了验证成功,我必须向节点添加一个属性:xmlns=""
,有时不会。
您能否向我解释有关指定节点父命名空间或链接到材料的规则?
提前谢谢。
答案 0 :(得分:0)
它可能是XML Schema targetNamespace(ref http://dev.ektron.com/kb_article.aspx?id=426)。如果给出了targetNamespace,那么您需要前缀。定义模式时,对模式中定义的类型,元素和属性的引用需要前缀。当然,对Schema类型的引用需要xs:或xsd:prefix,具体取决于您使用的前缀。我已经看到了两种常见的做法。