我必须为现有的WSDL文件编写文档,并且更愿意在文档中这样做。问题是,我找不到wsdl:documentation是否允许使用xml:lang作为属性,或者是否有文档生成器会使用它
到目前为止,我还没有在网上找到任何东西,我简直不敢相信我是唯一一个想做双语文档的人。有什么提示吗?
来自WSDL 1.1规范:
WSDL使用可选的WSDL:document元素作为人类可读文档的容器。元素的内容是任意文本和元素(XSD中为"混合")。任何WSDL语言元素中都允许使用documentation元素。
来自WSDL 2.0规范(强调挖掘):
WSDL 2.0使用可选的文档元素信息项作为人类可读或机器可处理文档的容器。元素信息项的内容是任意字符信息项和元素信息项(XML Schema〔XML Schema:Structures〕中的"混合"内容)。任何WSDL 2.0元素信息项中都允许使用文档元素信息项。
与"http://www.w3.org/ns/wsdl命名空间,文档元素信息项允许[命名空间名称]不是的限定属性信息项http://www.w3.org/ns/wsdl".xml:lang属性(请参见[xml 1.0])可用于指示文档元素信息项内容中使用的语言。
这似乎在V1中被遗忘了,在V2中被修复了。基本上,你是一个人。
但是,即使规范要求文档使用xml:lang,您也永远不知道客户端将使用什么来处理您提供给他们的WSDL,也不知道他们是否能够正确地从中提取文档。
我希望你不介意我这么说,但我认为你处理这件事的方式不对。web服务的文档不会恢复到WSDL。是的,提供WSDL对于您的客户端来说是强制性的,以便能够轻松地生成调用web服务所需的管道代码,但它只详细说明了调用的技术细节。它没有说明应该如何使用您的web服务。
YMMV,但超出了您可能想要的WSDL:
- 首先概述您的web服务的功能
- 其每项业务的用途和时间
- 参数的含义是什么,每个参数都有什么约束(例如,一些业务约束不能用XSD约束来加强)
- 一些SOAP消息样本包含web服务所需/返回的典型数据
- 描述预期的错误,它们将有什么代码/描述,以及如何对它们进行故障排除
- 强调业务限制(我认为是红色粗体文本?!)
- 如果你想插入一张图片来描述整个体系结构,该怎么办
- 等等
在WSDL中添加所有这些详细信息是有限制的。那么,让您的文档由WSDL和一个格式良好(特定于语言)的PDF文件组成,其中包含我上面提到的详细信息,怎么样?