XML模式和WSDL之间的区别是什么?

我注意到的区别是WSDL包含XSD,我们可以在WSDL中声明操作,但不能在XSD中声明。对吗?


当前回答

XSD是WSDL文件的模式。XSD包含WSDL的数据类型。在XSD中声明的元素可以在WSDL文件中使用。 我们可以对照XSD检查WSDL以检查web服务WSDL是否有效。

其他回答

WSDL (Web服务描述语言)描述了你的服务和它的操作——服务被调用了什么,它提供了哪些方法,这些方法有什么样的参数和返回值?

它是对服务行为的描述——它是功能。

XSD (Xml模式定义)描述了由这些服务方法交换的复杂数据类型的静态结构。它描述了类型、它们的字段、对这些字段的任何限制(比如最大长度或正则表达式模式)等等。

它是数据类型的描述,因此是服务的静态属性——它是关于数据的。

XSD (XML模式定义)定义XML文档中的元素。它可用于验证xml文档中的元素是否符合将放置内容的描述。 而wsdl是描述web服务的特定类型的XML文档。WSDL本身依附于XSD。

XSD是WSDL文件的模式。XSD包含WSDL的数据类型。在XSD中声明的元素可以在WSDL文件中使用。 我们可以对照XSD检查WSDL以检查web服务WSDL是否有效。

WSDL -它包含web服务提供的操作,如方法。这些方法可以接受简单的数据类型,如int、float等,也可以接受复杂的数据类型,如对象、向量、数组等,因此可以使用XSD将其映射到XML数据类型。基于XSD,用户可以从不同的平台访问web服务,并提供相应的数据。

参考:ayazroomy-java.blogspot.com来阅读关于webservice的基础知识。

如果有人正在寻找类比,这个答案可能会有帮助。

WSDL就像mysql中的'SHOW TABLE STATUS'命令。它定义了所有应该成为XML一部分的元素(请求类型、响应类型、命中请求的URL格式等)。我的意思是: 1)请求或响应的名称 2)什么应该被视为输入,什么应该被视为输出。

XSD类似于mysql中的DESCRIBE命令。它告诉所有的变量和它们的类型,一个请求和响应包含什么。