Lists Home |
Date Index |
Interesting to read two comments in tandem:
> Rogue Wave: "Many customer issues come from schemas that are not valid. In
> almost all cases this is the result of a schema generated by a tool."
WS-I: "...few web services implementers use validating XML Schema
processors. Many users "validate" SOAP messages using only inherent
SOAP-processing mechanisms, possible with some uncoordinated help from
type serializers. This situation often means that XML Schema constructs
like tyoe facets and PSVI are ignored when web services messages are being
processed, which in turn discourages the use of such constructs by Schema
Putting these two together, I find a paradox:
When you are using a platform-specific data binding tool, it will generate
good quality code for serializing the data into XML/SOAP and then
recreating the objects at the other end fine. And it will also generate an
if it didn't use a custom annotated one for its template.
But that XML schema may be suspect or unacceptable to other tools. But no
worries, the other end probably does not validate with the XML Schema or
use its typing, anyway.
The paradox? The way to use XML Schemas successfully in multi-vendor web
services is to just pretend to use them. The schema and/or WSDL become
just documentation, and should not be considered translatable
Is that what is happening? If most multi-vendor web service servers do not
actually use the XML Schemas (e.g. for validation, or for PSVI), then we
might do well to up-weight the significance of bad interop reports: if
only a few people have interop problems, but it turns out that only a few
people actually use schema validation/typing/PSVI, then interop could be
worse than we hope.
With knitted brow
P.S. Full disclosure: my company Topologi makes validating tools of
various kinds, including online tools for web services. We have a great
new one, Interceptor, coming out next week sometime. We support XML
Schemas (as well as Schematron, RELAX NG, DTDs). I certainly have a
commercial interest in promoting validation, whether by XML Schemas or by
some higher-level language like Schematron. So I hope no-one dismissed my
comments as some kind of FUD about XML Schemas: it is one source of my
bread and butter too, not some idle spoiling.