On 2013 Jun 3, at 12:12, Andrew Welch <andrew.j.welch@gmail.com> wrote:
> They could:
>
> - use xquery/xpath
> - use xom/jdom
> - use sax/stax
>
> instead they use a tool to generate an xsd from the xml, then use a
> binding tool to generate some classes, then use those generated
> classes.
For a while now, I've been involved with a collaboration (to do with astronomy software) arguing about the standardisation of (amongst other things) XML Schemas.
One of the use-cases in those arguments involved generating (Java) classes from XSchema files, but I think this was generally regarded as a rather freaky or marginal use-case, because of the obvious fragility of that approach. I'm not sure whether even the people pushing that use-case have actually gone down that route. I think, but I haven't done any census, that a lot of people keep it simple with SAX.
Whatever they did, that or something like it has made the collaboration strongly averse to any schema changes, because 'it breaks things' expensively. This links back to a recent megathread; I can't help feeling that a parsing layer which is layered on top of SAX will tend to be naturally more robust in the face of minor schema changes, than one based on generated code.
Myself, I can see _some_ rationale for generating code from XSchemas, in specialised circumstances, but generally I guess it would be a tooling-rich way to produce large quantities of rubbish black-box code.