xmlns:SOAP元素的soap属性

时间:2009-05-16 16:20:25

标签: xml web-services soap

我刚刚开始学习Web服务。我无法理解使用xmlns:SOAP元素的soap属性。谢谢。

3 个答案:

答案 0 :(得分:11)

那些“xmlns:”属性不是特定于SOAP的。它们定义了稍后将用于引用XML名称空间的前缀。例如:

<DTS:Executable xmlns:DTS="www.microsoft.com/SqlServer/Dts" 
    DTS:ExecutableType="SSIS.Package.2">

这将DTS定义为前缀,表示命名空间“www.microsoft.com/SqlServer/Dts”。然后它引用该命名空间中的ExecutableType属性。

XML命名空间与C#或C ++中的命名空间完成相同的工作。它们提供了一个定义名称的空间,因此一个名称空间中的名称不会与另一个名称空间中的名称冲突。您可以定义自己的“ExecutableType”属性,它可能意味着与Microsoft定义的完全不同的东西。两者都可以在同一个文档中使用,没有含糊不清的含义。

答案 1 :(得分:3)

根据您的问题级别(请不要冒犯),听起来您不熟悉XML以及基于XML的Web服务。 John Saunders正确描述了XML名称空间及其用法。如果您希望更好地了解基于XML和XML的Web服务,我建议您从W3 Schools的XML教程(特别是关于XML命名空间的部分)开始。

本教程位于:http://www.w3schools.com/xml/default.asp

关于XML名称空间的部分位于:http://www.w3schools.com/xml/xml_namespaces.asp

答案 2 :(得分:1)

来自W3C SOAP specifications的引用也应该对此有所帮助:

  

SOAP应用程序应该包括   所有元素上适当的SOAP命名空间   和SOAP定义的属性   它生成的消息。一个SOAP   应用程序必须能够处理   它的消息中的SOAP命名空间   收到。它必须丢弃消息   具有不正确的命名空间(请参阅   第4.4节)它可以处理SOAP   没有SOAP命名空间的消息   虽然他们有正确的SOAP   命名空间。

     

SOAP定义了两个名称空间(参见[8]   有关XML的更多信息   命名空间):

     

•SOAP信封具有命名空间   识别码   “http://schemas.xmlsoap.org/soap/envelope/

     

•SOAP序列化具有   名称标识符   “http://schemas.xmlsoap.org/soap/encoding/

     

SOAP消息不得包含   文件类型声明。一个SOAP   消息不得包含Processing   说明。 [7]