在XML命名空间中用冒号分隔的几个单词的含义是什么?

时间:2012-02-02 01:12:54

标签: xml soap wsdl

我正在尝试使用一些XML(SOAP - > WSDL服务请求),其中我有一个带有命名空间的XML模式,如:

NWMLS:EverNet:ImageQuery:1.0

<xs:schema id="ImageQuery_1.0" 
    targetNamespace="NWMLS:EverNet:ImageQuery:1.0"
    xmlns="NWMLS:EverNet:ImageQuery:1.0"
    xmlns:mstns="NWMLS:EverNet:ImageQuery:1.0" 
    xmlns:xs="http://www.w3.org/2001/XMLSchema" 
    attributeFormDefault="qualified" elementFormDefault="qualified"> ...remainder of xsd...

我一直从我要求的网络服务中收到此错误:

Could not find schema information for the element 'NWMLS:EverNet:ImageQuery:1.0:ImageQuery'.

有人可以帮我理解这样的格式化命名空间,也许可以指点一些阅读?我一直在寻找几个小时。谢谢!

2 个答案:

答案 0 :(得分:3)

没有任何意义。这只是一个字符串。您收到错误,因为该服务不知道与命名空间对应的模式。

答案 1 :(得分:1)

像xmlns这样的构造:mstns =“NWMLS:EverNet:ImageQuery:1.0”是从前缀(mstns)映射到名称空间URI(据称是NWMLS:EverNet:ImageQuery:1.0)。

RFC2396定义语法或URI。你在这里有一个完全有效的非分层URI,其方案为NWMLS。

您的错误消息表明您没有带有URI的targetNamespace的W3C XML架构。 URI只是一个唯一标识架构的字符串。

它与语法或格式无关。事实上,它有一个非常简单的语法:NWMLS是方案,其他一切只是一个不透明的块。