Schemas Revisited
by Leigh Dodds
July 12, 2000
After a recent lull in traffic, XML-DEV is now alive and well once more,
and turning its attention again to XML Schemas. Are the XML
Schema specifications too complicated? Is this symptomatic of a
wider problem in the XML infrastructure? XML Deviant sees
if the oracles of XML-DEV have the answers....
Schema Questions
XML Schemas have been debated on XML-DEV for some time, as previous issues of XML-Deviant
have documented (see "Second Coming" and
"Spotlight on Schemas"). Last week, XML.com ran an article
by Liora Alschuler, "Last Word on Last Call," which has helped re-open this discussion.
Jonathan Robie, posting to XML-DEV, admitted that he was still
undecided on how to vote
on the current Last Call for the Schema Working Drafts:
As a member of the Schema WG, I'm still deciding how to vote on moving Schema to CR. I would be interested in
hearing whether the members of this mailing list agree with the conclusions
in Liora's article. I am not doing this in any official capacity, I am
doing this because I want to know.
In the message, Robie included a questionnaire that he invited XML-DEV members to complete, hoping
that it would provide some metric of the level of concern about the specification.
While Robie was collating responses off-line, several list members were moved to public comment. Michael
Champion drew parallels with the release of DOM Level 1 two years ago,
but believed that in this instance a simpler specification is the answer:
I would tell the Schema WG the same thing I'd tell a development manager who needs a product released on an
unreasonable schedule: it's far better to sacrifice features than quality.
Strip the feature set down so that it meets everyone's fundamental need for
DTD functionality in XML syntax with reasonable data types, get the "Level
1" spec out as soon as that's proven stable, then add all the other neat
stuff in Level 2, 3, ...
Champion later separated the core features of schemas from the "nice to haves."
Rick Jelliffe observed that the need for a schema language requires a shorter-term
evaluation of their usefulness:
One can evaluate XML Schemas on general terms as a universal schema
language. But it is more important at this stage, IMHO, to evaluate it
in terms of its sufficiency for meeting the pressing needs of the day as
the bottom line.
Wondering whether developers have had enough time to digest the more advanced features of
Schemas, Michael Brennan commented that many developers have an immediate requirement for
a replacement for DTDs:
Too many parties have tried to get version 1.0 of the schema spec to solve too many problems. I think the
vast majority of developers just want the DTD functionality in XML syntax
with stronger data types now and are willing to wait for the other stuff as
they better digest the implications.
Brennan expressed the hope that the Working Group would take a more iterative approach to finalizing
the specification. Len Bullard explained his willingness to see XML Schemas
undergo a further round of development because of the availability of XDR (a subset of XML-Data supported
by the MSXML parser). However, Bullard thought it was vital that this happen for the right reasons:
Because we have working tools like XDR, and
because it is still early, I would not be
disappointed to see Schema return to the
drawing board for another round. On the other
hand, that should be done in my opinion, only
if there are real flaws. As SGML showed,
complexity and obscurity are not sufficient
to reject a specification, but it may be a
reason to create a simpler version. In this
case, we already have a simpler version.
Obviously, XDR is not an immediately useful universal solution; support
being largely limited to the Microsoft parser.
It's all too easy to place the blame on the Schema Working Group when perhaps the real cause of the problem
is the broad range of requirements that are being considered. It clear that the Working Group
is taking great care to address criticisms, even going so far as to publish a list of the
Last Call issues under discussion. Rick Jelliffe observed that, judging from experience,
a second Last Call is likely:
I think the WG had wanted to go to [Candidate Recommendation] ASAP, but, given the
comprehensive review of the Last Call issues, it seems that other
Working Groups in the same position put out second Last Call drafts.
If this is the case, then it will only add to the delay. It will be
interesting to see the final results of Jonathan Robie's questionnaire
and whether this, and the XML-DEV debate, have any effect on the future of
Schemas. An air of urgency has settled over the specification, fueled in
part by the increasing number of questions from developers on numerous mailing lists relating to the application of Schemas.
Power Users
The second half of this debate picks up on the immediate requirements of the wider
developer community. Simon St. Laurent wondered if there is
a widening gap
between this community and those involved in the further development of the
XML infrastructure:
There's always been a disconnect between the 'XML core', with its
inheritance of SGML best practices, its close attention to new work at the
W3C, and the larger body of developers learning XML and applying it in
their own work without any special fondness for XML per se. I wonder,
though, if that disconnect will grow as we pile more and more ideas on top
of what was already a fairly complicated specification.
St. Laurent thought that it was time to take stock and consider why there isn't a
rush to adopt many of the newer XML standards.
Blaming lack of tool support, Matt Sergeant thought that the XML community is only
addressing half the problem:
The problem is that we're not providing the tools. We're providing the
specs. That's a whole different ball game. If tools existed for actually
making really interesting use of RDF and XLink and XInclude then people
would use them. If IE and/or Mozilla supported the full gamut of specs,
from XSLT 1.0 to XLink and XInclude (OK, so they're not quite REC's, but
with time...) then you would find people using them more.
Paulo Gaspar supported this view, adding that a lack of
good introductory material as an additional problem. Michael
Champion colorfully observed that the mainstream developer may not
have an immediate need for these tools:
Maybe the simple users of XML *have* read good introductory articles and have found
easy to use tools ... and are happily applying them to real problems,
blissfully oblivious to RDF, XLink, XML Schema structures, etc., and don't
give a rip whether a namespace name is a true RFC 2396 URI reference or not.
...let's listen to what the mainstream users are asking for: They
may simply want sharper knives that don't rust, while we're offering them
Veg-a-Matic's ("it slices, it dices ... but wait, there's more!").
Looking at the recent debates on the XML-URI mailing list (see
"Namespace Trouble" and
"News from the Trenches"),
it's hard to disagree. Much of the content of that discussion is a far cry from the
problems of a mainstream developer looking for an introduction to schemas, or attempting to
use XML in a browser, for example.
In truth this kind of disconnect is going to occur between any community of experts and the
users of their products. Paying attention to the details (however excruciating) is what the
users are trusting the experts to do. It's a trust relationship, and has to be: Few mainstream
developers have the time, let alone the resources to expend on recreating their work. So the
experts--those people on the Working Groups, the standards bodies, and those with the
time to study and implement the specifications--must pay attention to the right details,
the right requirements, at the right time.