Hi Daniel,
Daniel Veillard <[EMAIL PROTECTED]> writes: > Le'ts be frank, it's a bit of FUD, Schemas is being implemented, it's > not fully implemented because the spec is basically broken beyond recovery. I thought it is because Kasimier is missing in action ;-). But, I agree, XML Schema is not the easiest spec to read. > ... SAX not formerly defined except for Java. On the other hand the > XMLTextReader from C# is part of the ECMA C# spec, and is a good API. You mean SAX, which is only defined for Java, is a bad thing but XMLTextReader, which is only define for C#, is good? ;-) > Also DOM *requires* UTF-16 for all strings. This means that in general > 1/ you will loose time, most content around is UTF-8 > 2/ you will loose memory space/cache efficiency as the converted output is > way larger in average > 3/ you will looose CPU efficiency as breaking cache is #1 performance > problem in modern computers I think it largely depends on what kind of data one is handling. If there are a lot of non-latin characters then UTF-8 will waste at leaset as much and normally a lot more (4-byte surrogate pairs) space than UTF-16. > There is no functional XSD validator. Go to the xmlschemas-dev > archive at W3C, check the last 5 questions from Michael Kay (who is > a Schemas implementor and one of the W3C spec writers), they are unanswered > for weeks now, nobody can tell what it is supposed to do. Trying to use > XSD to promote interoperability or validation of data is kind of a joke. > Relax-NG on the other hand is an ISO standard, has a formal specification > and can be read and understood by most programmers in a matter of a couple > of days. While what you say could be true, most XML parsers these days support XML Schema while there is hardly any that support Relax-NG. Also there are a lot of industry standards organizations that managed to define interoperable schemas that describe fairly complex XML vocabularies. Finally, one last thing, that a lot of people tend to overlook, is that it is fairly straightforward (in most cases) to provide XML data binding (generated types in a programming language that represent the given vocabulary) from XML Schema. I do not think it will be anywhere as easy or at all possible to do the same with Relax-NG. hth, -boris -- Boris Kolpackov Code Synthesis Tools CC http://www.codesynthesis.com Open-Source, Cross-Platform C++ XML Data Binding _______________________________________________ xml mailing list, project page http://xmlsoft.org/ [email protected] http://mail.gnome.org/mailman/listinfo/xml
