Deprecated: Assigning the return value of new by reference is deprecated in /var/san/www/prod/html/blogs/darcusb/wp-settings.php on line 512 Deprecated: Assigning the return value of new by reference is deprecated in /var/san/www/prod/html/blogs/darcusb/wp-settings.php on line 527 Deprecated: Assigning the return value of new by reference is deprecated in /var/san/www/prod/html/blogs/darcusb/wp-settings.php on line 534 Deprecated: Assigning the return value of new by reference is deprecated in /var/san/www/prod/html/blogs/darcusb/wp-settings.php on line 570 Deprecated: Assigning the return value of new by reference is deprecated in /var/san/www/prod/html/blogs/darcusb/wp-includes/cache.php on line 103 Deprecated: Assigning the return value of new by reference is deprecated in /var/san/www/prod/html/blogs/darcusb/wp-includes/query.php on line 61 Deprecated: Assigning the return value of new by reference is deprecated in /var/san/www/prod/html/blogs/darcusb/wp-includes/theme.php on line 1109 darcusblog » Blog Archive » Dare on XML Schema - geek tools and the scholar

Dare on XML Schema

From Dare Obasanjo, by way of of Danny Ayers:

After working with XSD for about three years, I came to the conclusion that XSD has held back the proliferation and advancement of XML technologies by about two or three years. The lack of adoption of web services technologies like SOAP and WSDL on the world wide web is primarily due to the complexity of XSD. The fact that XQuery has spent over 5 years in standards committees and has evolved to become a technology too complex for the average XML developer is also primarily the fault of XSD. This is because XSD is extremely complex and yet is rather inflexible with minimal functionality.

Exactly!

I wish more people would stand up and point out that the emperor has no clothes. There is stil intense pressure to choose XSD over superior standards like RELAX NG. And even when groups make the decision to go for the latter (as with say OpenDocument), they often fail to exploit really useful RELAX NG features like interleave or attribute-based validation because those features are unsupported in XSD. These are not features that are useful only in theory, mind you, but are deeply practical in many circumstances (say RDF metadata?).

In CSL, I made no such compromises. My thinking has always been that if XSD really has any future, then at some point it will catch up to having the RELAX NG features I care about, and at that point I can create an XSD version.

Comments are closed.