请问目前有什么工具可以解析出Schema中定义的数据类型,并验证类型A是否和类型B匹配吗?
另问:解析WSDL中的标签中的Schema,用什么方法最好?我现在用WSDL4j,取出中间的Schema,再用castor解析,可是这样会有个问题,就是wsdl中根节点中的namespace的信息就被丢弃了,如果schema中引用了该namespace的话就会报错。请问有什么解决方法嘛?
[b]问题补充:[/b]
可以,还有个问题就是,怎么判断两个schema定义的类型是否匹配?因为复杂类型有sequence、all等修饰,和restrictions
[b]问题补充:[/b]
我觉得自己实现的话肯定是相当复杂的,XSD定义的facet里有相当强的数据定义/限定能力,如下一个例子定义了带有一个限定的名为 "choice 的元素。可接受的值是字母 x, y 或 z 中的一个:
xs:simpleType
/xs:restriction
/xs:simpleType
这种匹配不仅要看是string的类型,还要看是否在可接受的值之内......
如果是给定一个实例,验证是否匹配schema的话,是由valid方法的,但是给定两个schema,验证是否匹配的话不知道怎么弄,xmlshema没有重载equals方法