Slashdot Mirror


DTD vs. XML Schema

AShocka writes "The W3C XML Schema Working Group has released the first public Working Draft of Requirements for XML Schema 1.1. Schemas are technology for specifying and constraining the structure of XML documents. The draft adds functionality and clarifies the XML Schema Recommendation Part 1 and Part 2. The XML Schema Valid FAQ highlights development issues and resources using XML Schema. This article at webmasterbase.com addresses the XML DTDs Vs XML Schema issue. Also see the W3C Conversion Tool from DTD to XML Schema and other XML Schema/DTD Editors."

248 comments

  1. Power by sethadam1 · · Score: 4, Insightful

    There's no "vs."

    XML Schema are much more flexible and powerful.

    There're also about 100 times more difficult and confusing.

    1. Re:Power by Anonymous Coward · · Score: 0

      And what the hell is "There're". What the fuck kind of contraction is that? Oh and did you know your name is an anagram of 1 am deaths. I was half expecting 1 are deaths, so at least you have something right mother fucker.

    2. Re:Power by Anonymous Coward · · Score: 0

      There're also about 1000 times more difficult and confusing.

    3. Re:Power by Anonymous Coward · · Score: 0

      There're = There are

    4. Re:Power by goatasaur · · Score: 3, Insightful

      "There're also about 100 times more difficult and confusing."

      The phrase "difficult and confusing" goes hand-in-hand with any flexible or powerful computer utilities.

      Full utilization of XML (and myriad programming languages) takes time.

      They call them "languages" for a reason. You can't write a sonnet in French if you have only studied it for a year; and you can't write a full-featured browser suite if you started coding a month ago. :)

      --
      ~D:
    5. Re:Power by Anonymous Coward · · Score: 0

      Although he used the wrong contraction for the context. he should have said "they're" as in they are, not "there're" as in there are.

    6. Re:Power by iapetus · · Score: 2, Insightful

      The thing is, one of the major selling points of XML has been exactly the fact that it is easier to use and less complex than its predecessors (SGML, anyone?)

      --
      ++ Say to Elrond "Hello.".
      Elrond says "No.". Elrond gives you some lunch.
    7. Re:Power by Anonymous Coward · · Score: 0

      Unfortunately this kind of system (usually in a half-functional configuration) is getting foisted upon all kinds of people who have no interest in writing sonnets in XML, but without it stuff begins to break. Like, say, GNOME's documentation system.

    8. Re:Power by Gortbusters.org · · Score: 1

      This is true, but DTD's are more human readable IMHO.

      --
      --------
      Free your mind.
    9. Re:Power by bloo9298 · · Score: 1

      This is true to a certain extent, but the complexity of XML Schema outweighs its expressiveness.

      RELAX NG seems to be a much better compromise to me. YMMV.

    10. Re:Power by Lulu+of+the+Lotus-Ea · · Score: 4, Informative

      There certainly is a "vs." involved. There are many good reasons to choose DTDs for a given validation requirement rather than W3C XML Schemas. I address some of those in an IBM developerWorks articles:


      Comparing W3C XML Schemas and Document Type Definitions (DTDs)

      This is a bit old, but still correct. Not a lot has changed in either spec.

      I am currently working on a series of articles on RELAX NG. In most ways, I think RELAX NG really is the best of all worlds. It is more powerful than W3C XML Schemas, while being a natural extension of the semantics of DTDs. Moreover, if you choose to use the compact syntax (non-XML), you get something very easy to read and edit by hand.

      David...

    11. Re:Power by King+Babar · · Score: 1
      I am currently working on a series of articles on RELAX NG. In most ways, I think RELAX NG really is the best of all worlds. It is more powerful than W3C XML Schemas, while being a natural extension of the semantics of DTDs. Moreover, if you choose to use the compact syntax (non-XML), you get something very easy to read and edit by hand.

      I am old, and I am wary of the ways of hype. But after reading this and other comments on this thread, I had a look at the RELAX NG tutorial. All I can say is: wow. Given that this stuff is already known to be formally correct, I am finding it very hard to believe that the W3C should not just punt on XML Schema and just adopt RELAX NG instead. It seems to have every advantage: You can understand it, it is powerful, James Clark endorses it, the tutorial is helpful...what's not to like?

      --

      Babar

    12. Re:Power by Ace+Rimmer · · Score: 1

      It may be. But not neccessarilly. Look at original C. It's very expressive and (relativelly) easy to implement in a compiler. And it is still popular after 30 years.

      You can guess why it is. The C committee does have to make reference implementations of thir proposals.

      Maybe if the people who try to develop C++, XML Schema, Xpath 2.0, XQuery, ... languages did the same the complexity would be significantly lower and some parts definitely not that obfuscated (look at the number of open issues for xpath-2.0 and xquery!).

      --

      :wq

    13. Re:Power by MarkWatson · · Score: 2, Interesting

      Hello David,

      I also just read through the RELAX NG tutorial and I am now looking at Bali (for generating Java RELAX NG validators).

      Good stuff! I agree with the other poster that W3C should punt on XML Schemas.

      That said, I think that for the forseeable future, that simply
      using DTDs works well because all the hooks are already
      in place for the popular XML parsers.

      I suppose the next step would be to get Xerces and other
      XML parsers to natively support RELAX NG (I have to look
      to see if Clark has such a parser already :-)

      - Mark Watson
      - Free web books: www.markwatson.com

    14. Re:Power by Lulu+of+the+Lotus-Ea · · Score: 1

      The one weakness that RELAX NG has versus W3C XML Schema is a lack of general cardinality constraints. In XSD you can use 'minOccurs' and 'maxOccurs' to, e.g. require seven to twenty occurrences of a given element. In RELAX NG, you must either list the pattern seven times explicitly, or settle for an approximation like .

      It would not break the RELAX NG semantic model to add more general cardinality. Say:

      <cardinality min="7" max="20">
      <element name="foo"> ...
      </cardinality>

      Maybe in version 2.0 or something.

    15. Re:Power by King+Babar · · Score: 1
      The one weakness that RELAX NG has versus W3C XML Schema is a lack of general cardinality constraints. In XSD you can use 'minOccurs' and 'maxOccurs' to, e.g. require seven to twenty occurrences of a given element. In RELAX NG, you must either list the pattern seven times explicitly, or settle for an approximation like .

      Thanks for the note; that really is a weird omission. In practice, I don't see that this would be a huge problem, but it's always interesting to see the warts. I used to think that the W3C would be unstoppable when it came to setting standards like this, but with the recent controversies surrounding XHTML 2.0 and XSchema (among others) I sense that this might change.

      --

      Babar

    16. Re:Power by mbogosian · · Score: 1

      The phrase "difficult and confusing" goes hand-in-hand with any flexible or powerful computer utilities.

      You mean like UNIX pipes or the everything-is-a-file abstraction...terribly difficult and confusing.... ;o)

  2. Who needs XML when you got PXML? by Anonymous Coward · · Score: 2, Informative

    PXML is a subset of XML - an alternative to the bloated XML language.

    believe me, you won't use XML anymore if you once tried PXML

    1. Re:Who needs XML when you got PXML? by r4lv3k · · Score: 1, Insightful

      Why is PXML useful?

      If your files are small and/or your platform isn't brain-dead, use a nice DOM API... or XPath, or XSD-based serialization libs. OTW use SAX...

      Why would PXML be of any value, unless you are ripping thru your markup language char* by char*? You shouldn't ever need to see the XML at that level in our modern world... unless you are developing an XML parser!

      ralvek

    2. Re:Who needs XML when you got PXML? by Anonymous Coward · · Score: 5, Interesting

      Better yet, use S-Expressions.
      There are tons of parsers available.
      markup is simple:
      (this_is_the_tag
      this is all data
      (except_this_is_a_nested_tag with still more data))

      Even better still, there are customizable parsers available that can treat these S-Expression as data OR interpret them as program OR a combination of both. One such parser is called "Lisp". Once again, several implementations are available.
      Note that things like S-Expressions and Lisp have only been around for 40 years so you might want to give these technologies some time to mature.

    3. Re:Who needs XML when you got PXML? by Anonymous Coward · · Score: 0

      Ironic really, when you think about it.

      XML wasnt invented to be anice light weight alternative to SGML.

      Phil

    4. Re:Who needs XML when you got PXML? by xziz · · Score: 1

      WDDX is another subset of XML, of course it's been superseded by other standards but there are implentations of it within most web languages so if you want to use it it's already supported there.

    5. Re:Who needs XML when you got PXML? by sporty · · Score: 1

      And how is XML bloated? Sounds like an ad post. :P

      You need unicode for internationalization, you want namespaces for differentiation of data, you want comments to make.. comments. Troll elsewhere.

      --

      -
      ping -f 255.255.255.255 # if only

    6. Re:Who needs XML when you got PXML? by teslatug · · Score: 1
      believe me, you won't use XML anymore if you once tried PXML
      OK
    7. Re:Who needs XML when you got PXML? by Anonymous Coward · · Score: 0

      I like using the SmallXMLParser.jar in Java because it represents XML documents as ArrayLists.

    8. Re:Who needs XML when you got PXML? by Animats · · Score: 1
      I tend to agree. XML is an incredibly clunky way to ship trees around, let alone make subroutine calls.

      If it was simple and standard, it would be useful, even though it's slow, but if it's complicated and incompatible, it's part of the problem, not part of the solution.

    9. Re:Who needs XML when you got PXML? by Anonymous Coward · · Score: 0

      Look for PLT Scheme's X-expressions.

      I'm not sure if they really standardized it or anything, but it seemed pretty neat when I last checked.

    10. Re:Who needs XML when you got PXML? by 21mhz · · Score: 3, Interesting
      Better yet, use S-Expressions.
      There are tons of parsers available.


      How does one specify the character set in some, imagined or real, S-Expression markup? Do these "tons of parsers" support Unicode at least? Where to put processing instructions? Character entities? External entities? "Raw data" sections with markup suppressed? How does one specify the document type identifier? Namespaces? All these things fulfill important tasks for XML to be an universal, yet concise, markup language, and all this can make your dreamt-up S-Expression language as contrived as XML is sometimes perceived to be.
      (this_is_the_tag
      this is all data
      (except_this_is_a_nested_tag with still more data))
      Attributes, I presume, are out of our concern? You note that the means for syntactic description of data trees are around for 40 years. Yet there was yearning for something more... handy, or something. Doesn't it give any hint to you?
      --
      My exception safety is -fno-exceptions.
    11. Re:Who needs XML when you got PXML? by Anonymous Coward · · Score: 0


      I'm PaulT ( from PaulT.com ). Too bad somebody posted this ad for PXML on slashdot using such a stupid wording.

      (was not me).

      Note that PXML is two years old. I've changed some things since then, but who cares.

      That XML thing stinks and it is good only for mixed content.

      XML is dead. XML is CSV on seroids. Nobody talks about CSV, right?

      Move along.

    12. Re:Who needs XML when you got PXML? by Anonymous Coward · · Score: 0

      A non-technical Windows user has a perspective of what software should be. Chuck Moore has another perspective.

      As far as data goes, I tend to be somewhere in-between. I would rather see an XML config file than a binary config file. I would rather see a non-standard text based configuration file that was designed for the task at hand and well documented, than an XML config file. I just don't like people thinking that XML is the only way store/move data.

      What's next, my .vimrc will be XML?

    13. Re:Who needs XML when you got PXML? by SpinyNorman · · Score: 1

      You do realize he was talking about the functional language LISP?!

      A computer language certainly has at least the power of XML or schemams!

    14. Re:Who needs XML when you got PXML? by 21mhz · · Score: 1

      You do realize he was talking about the functional language LISP?!

      OMG! How could I ever blaspheme against The Holiest Of All Languages?

      A computer language certainly has at least the power of XML or schemams!

      A computer language (whatever you mean by this) cannot be everything for anything. Lisp was never meant for structural markup of text-based documents, and rightly so. Read the parent of your post again.

      --
      My exception safety is -fno-exceptions.
    15. Re:Who needs XML when you got PXML? by Anonymous Coward · · Score: 0

      > Note that things like S-Expressions and Lisp have only been around for 40 years so you might want to give these technologies some time to mature.

      I actively maintain a 1,000 page user manual with SGML and its related DTD. I then render this manual to HTML or a PDF file. (XML tools aren't mature enough to handle this yet.) Can you give me an example of someone doing this with Lisp?

    16. Re:Who needs XML when you got PXML? by jschrod · · Score: 1
      First I was entitled to answer your sarcasm - because yes, data representation in LISP is able to do all that. I started to explain that LISP has been shown to be one of the best SGML/XML manipulation tools, due to the semantic similarity of s-expressions and XML documents. Almost a decade ago I released the first open-source tool (STIL - SGML Transformations In Lisp) for this task - at a time when XML didn't even exist.

      But then I saw you calling XML concise. And realized the troll you are. Well done, Sir. You got me.

      --

      Joachim

      People don't write Manifestos any more -- what's going on in this world? [Frank Zappa]

    17. Re:Who needs XML when you got PXML? by 21mhz · · Score: 1

      But then I saw you calling XML concise. And realized the troll you are. Well done, Sir. You got me.

      Well, though it's a fashion of trolling to call the other troll, I'll bite.
      Now, you are entitled to describe a LISP-based markup that covers all the things XML is suited for, and beats XML in any way except being LISP (which, of course, is so great that other reasons simply lose all meaning).

      --
      My exception safety is -fno-exceptions.
    18. Re:Who needs XML when you got PXML? by jschrod · · Score: 1
      Sir, you don't understand. Sorry, if I was too concise for you.

      I do even agree with you that one doesn't want to write LISP-style markup for text oneself. But I do also not want to write XML-markup literally. Then, it's a matter of internal markup (but still human readable and thus better debuggable). And for that there are better ways to represent marked up text than XML. More power to them.

      XML was not created to be good for humans, but easy to implement for parsers. Therefore, it was not meant as a human-prefered input format. Therefore, other - better parsable - representations would have been even better technically. XML took over the world purely for political reasons, the cabal was able to present XML as the "better HTML" or the "successor to HTML" and made it.

      Believe me, I know most of the cabal personally, being active in the SGML community since 1984; around 1990 I've maintained the world-wide largest repository of SGML software (the SGML archive at TU Darmstadt, Germany). Search in Google Newsgroups for Joachim Schrod, that's me - SGMLer, TeXie since 1981, and proud of it. In the last five years, I have been involved in strategic XML deployment at many multi-national companies. Since I do this stuff (markup languages) both for interest since more than 20 years, and for my living, I know by heart how bad it is in real-life.

      If you really think XML is the best thing since sliced bread in textual markup representation, let's talk again about that topic when you've got 20 years of experience in that area. 'Til then, hope you can use your enthusiasm in your job. Best wishes,

      --

      Joachim

      People don't write Manifestos any more -- what's going on in this world? [Frank Zappa]

    19. Re:Who needs XML when you got PXML? by 21mhz · · Score: 1

      I do "think XML is the best thing since sliced bread in textual markup representation", but only because it's the format the industry powers have finally converged upon, and developed common tools for everyone's perusal. All the minor wrinkles and political issues are nothing compared to the power of joining the gamut of applications from data-grinding to human-edited text markup (I've written my bit of works in DocBook XML, and I have to testify it's not bad after all, especially when it comes to validation) all in one, standard, data model and one representation, meaning consistency of processing tools throughout.

      It's even more wonder that the format actually feels good for me and the XML tool (the tool might have a few complaints, however). No up-the-arse overtheorised "fundamental" models that look like bewildering crap when put into action. No SGML-like looseness either, that would make for megabyte-sized parsers and breakages that are pain to track down. The "cabal" responsible for XML was apparently set out to put things in balance after previous blunders. And they made it, to me at least.

      --
      My exception safety is -fno-exceptions.
    20. Re:Who needs XML when you got PXML? by 21mhz · · Score: 1

      LISP has been shown to be one of the best SGML/XML manipulation tools

      This reminds me of DSSSL, which I actually use myself (will not even start hacking stylesheets in it though). As, perhaps, is the case with DTD, DSSSL goes the way of the mammoth, giving way to XSLT, an XML-based format. This one has functional nature, too, and it's probably nice to process in Lisp. It doesn't rub along well, therefore, when data processing description 1) has totally different format from data representation, thus cannot be used to process its own kind; 2) is bound to a particular programming language.

      --
      My exception safety is -fno-exceptions.
  3. Vs.? What is this, another poll? by r4lv3k · · Score: 4, Funny

    1. DTD 2. XML Schema 3. CowboyNeal validation (via SOAP over SMTP)

  4. Mod Parent up by Anonymous Coward · · Score: 0

    He usead an apostrophe correctly.

  5. One is derided, one is end-of-life'd by Ars-Fartsica · · Score: 3, Interesting
    DTDs are being deprecated one way or another.

    While the W3 continues to push Schema, they are also forming working groups for RELAX after pressure from XML luminaries such as James Clark.

    1. Re:One is derided, one is end-of-life'd by mir · · Score: 4, Informative

      I think James Clarke's RELAX NG and W3C XML Schema is the best description (if slightly biased ;--) of the relative strength of the 2 technologies. Note that James Clarke also just released a new version of Trang , a tool that does conversions between Relax NG, Schemas and DTDs.

      --
      Look, that's why there's rules, understand? So that you think before you break 'em. (Terry Pratchett)
  6. DTDs are broken by Zeinfeld · · Score: 3, Interesting
    DTDs are a hangover from SGML that will eventually go away. The big problem with DTDs is that they only define syntax, there is no data model. The syntax model isn't all that hot either, SGML was designed by a lawyer who hadn't heard of finite state machines, let alone Chomsky grammars.

    XML Schema is also kinda whacked. It shows all the signs of being a committee specification.

    The big problem with schema is that you actually have two type systems going. Element definitions are types for elements. Type definitions are actualy types for types for elements. I saw a hopelessly confused attempt by some UML people to express XML schema in UML, they simply could not understand that there was no way it could ever work. UML has completely different semantics.

    There are a bunch of schema proposals that folk have said good things about. Eve keeps telling me I should look at Relax. But for the time being XML schema is going to be the basis for standards in W3C and OASIS.

    There might be an opportunity to do a clean up job on XML schema in 4 or 5 years but that will only happen if it is causing real problems.

    --
    Looking for an Information Security student project suggestion?
    Try http://dotcrimeManifesto.com/
    1. Re:DTDs are broken by Anonymous Coward · · Score: 0

      Yeah. DTD is pretty awful. I've written a few,
      and I thought I'll be so happy the day that someone thinks of something better, so that I never have to look at this God awful, verbose, and unreadable syntax ever again.

      And then along came XML schema, er....

      Phil

    2. Re:DTDs are broken by smittyoneeach · · Score: 1
      DTDs are a hangover from SGML that will eventually go away.
      Let's hear an estimate, with cold cash backup.
      The big problem with schema is that you actually have two type systems going. Element definitions are types for elements. Type definitions are actualy types for types for elements. I saw a hopelessly confused attempt by some UML people to express XML schema in UML, they simply could not understand that there was no way it could ever work. UML has completely different semantics.
      Find myself doubting the Three Amigos would agree with you.
      The thing that bores me about all of the acronyms churned out by marketing is that these are all systems for representing information.
      Sure, the semantic power of the systems vary. Yet, if the DTD works, Don't Touch Dat!
      There is some trick of the mind whereby we develop religious attachment to the acronym du jour, and seek salvation in spiffy new technologies.
      Gotta spend that budget before the money evaporates!
      Yet, behind the high-frequencies emitted by the hype box is the bass hum of simple systems plugging along, producing the correct answers without all of the shiny chrome...
      What will be the next variation on the theme that will save us from the (retrospectively obvious) weaknesses of XML?
      Stay tuned.
      </curmudgeon>
      --
      Get thee glass eyes, and, like a scurvy politician, seem to see things thou dost not.--King Lear
    3. Re:DTDs are broken by Anonymous Coward · · Score: 2, Funny

      I have no DTD... I lost it in the W3C STD repository. If you've seen it, PGP me the URL or the LIT. IANAL, but IMHO TATMA... never forget, TINSTAAFL... LAV REA ASDJKON AJSKNMJM. HTML rules...

    4. Re:DTDs are broken by Anonymous Coward · · Score: 0

      --- I saw a hopelessly confused attempt by some UML people to express XML schema in UML, they simply could not understand that there was no way it could ever work. UML has completely different semantics. ---
      The problem seems to be that neither you nor your "UML people" are all that familiar with UML. XML schema correspond to the metamodel layer of UML. OMG even has some prebuilt packages for working with schema called, I think, XMI-Schema. Here's a google query for getting more information about using UML to represent XML schema: link

    5. Re:DTDs are broken by angel'o'sphere · · Score: 1


      Find myself doubting the Three Amigos would agree with you.


      I know they agree.

      XML is about describing data and the universe of variants in which that data my be presentated.

      E.g. you can describe that two element types, lets call them and may be used inside of the body of the element .

      In XML you can define that the tag needs to be in front of the tag.

      In UML you can't describe that.

      That measn you describe in XML how the data needs to look that you want to process.

      In UML you describe what abilities the processor needs to have to be able to process the data.

      Hence you can describe in UML how a XML parser needs to be implemetned, but you can not describe the data the parser will parse with UML.

      At least not in general, in some cases you might be able to do it, however.

      angel'o'sphere

      --
      Cost free eBook I read (by iBook/Kobo/Amazon/ObookO/Gutenberg etc.): "The Green Odyssey" by Philip Jose Farmer.
    6. Re:DTDs are broken by angel'o'sphere · · Score: 1

      GRRRRRR

      insert HEAD, BODY and HTML at the white places in my post ... why does the silly "playin text" strip HTML?

      What the heck does plain text mean except: this is plain text, dont do anything with it!!

      AGAIN:

      Find myself doubting the Three Amigos would agree with you.


      I know they agree.

      XML is about describing data and the universe of variants in which that data my be presentated.

      E.g. you can describe that two element types, lets call them HEAD and BODY may be used inside of the body of the element HTML.

      In XML you can define that the HEAD tag needs to be in front of the BODY tag.

      In UML you can't describe that.

      That means you describe in XML how the data needs to look that you want to process.

      In UML you describe what abilities the processor needs to have to be able to process the data.

      Hence you can describe in UML how a XML parser needs to be implemetned, but you can not describe the data the parser will parse with UML.

      At least not in general, in some cases you might be able to do it, however.

      angel'o'sphere

      --
      Cost free eBook I read (by iBook/Kobo/Amazon/ObookO/Gutenberg etc.): "The Green Odyssey" by Philip Jose Farmer.
    7. Re:DTDs are broken by Zeinfeld · · Score: 1
      The problem seems to be that neither you nor your "UML people" are all that familiar with UML.

      Since the individual concerned was working for OMG I very much doubt it. I have had ten years experience of UML and its antecedents such as OMT.

      I saw the proposals OMG made, they simply do not understand the data model of XML Schema.

      Even if they did UML has become a grotesque caricature. It is even more of a committee spec than XML Schema. You have a bit of object orientedyness and a bit of entiry relationalness and a hodge podge of finite state theories and then the use cases stuff thrown in on top. Thats hardly suprising since its just the earlier work of Booch, Rumbaugh and co smashed together for the benefit of the company selling the graphical design tool.

      I put together a graphical notation for XML Schema I used in some of the SAML meetings that seemed to help discussions. But that notation was very carefully chose to illustrate a few carefully chosen aspects of the schema.

      The big mistake with graphical languages is attempting to use them as substitutes for code. By the time the notation has enough decorations for that it has become so complext that it is unreadable.

      The involvement of OMG group does not impress me in the least. Those are the same turkeys who gave us CORBA and took more than ten years to realise that maybe it might not be taking on as fast because the idea people would rip out their legacy systems and migrate them all to an ORB was fundamentally clueless.

      --
      Looking for an Information Security student project suggestion?
      Try http://dotcrimeManifesto.com/
    8. Re:DTDs are broken by angel'o'sphere · · Score: 1

      XMI is the Xml based Meta data Interchange format for CASE systems.

      And yes, the OMG defined besides UML, the modeling language, also the meta model for UML. They used UML to define the meta model for storing UML data. And they defined a portable interchange format using DTDs and they defined how the UML meta model "contents"!!! the data :-) should be expressed in XMI.

      However ... that does not mean that you can define XMI or XML with UML :-)

      You try to make a point like: because cars can be used to transport parts of cars to assemble cars they can also be used to describe how cars are to be assembled.

      angel'o'sphere

      --
      Cost free eBook I read (by iBook/Kobo/Amazon/ObookO/Gutenberg etc.): "The Green Odyssey" by Philip Jose Farmer.
    9. Re:DTDs are broken by Anonymous Coward · · Score: 0

      Are you a consultant? you managed to keep your average buzz-acroynms count very high.

    10. Re:DTDs are broken by smittyoneeach · · Score: 1

      , and
      & g t ; & l t ; (sans whitespace) are the keys.
      Last time I looked at it in detail (1.0?), UML had an extension mechanism.
      Surely, Rational will take effective action to protect market share if the Xxx onslaught becomes too fearsome.
      To do otherwise would be...(adjective).

      --
      Get thee glass eyes, and, like a scurvy politician, seem to see things thou dost not.--King Lear
    11. Re:DTDs are broken by Zeinfeld · · Score: 1
      Last time I looked at it in detail (1.0?), UML had an extension mechanism

      Yeah but will there be any point?

      UML is already bodged, further extensions are not going to help much.

      I never saw the value of graphical methods until I became a consultant. Now I understand that the difference between a $500 a day consultant and a $5,000 a day consultant is the ability to use powerpoint and visio to confuse and confound.

      They say a picture is worth a thousand words. If you are the customer, running code, debugged or not is worth a thousand stupid pictures in any graphical programming methodology you chose.

      --
      Looking for an Information Security student project suggestion?
      Try http://dotcrimeManifesto.com/
    12. Re:DTDs are broken by kin_korn_karn · · Score: 0, Offtopic

      To do otherwise would be...(adjective).
      Irrational?

      Sorry, couldn't help it..

    13. Re:DTDs are broken by Anonymous Coward · · Score: 0

      Eve keeps telling me I should look at Relax.

      I don't follow. Who is Eve ?

    14. Re:DTDs are broken by Anonymous Coward · · Score: 0

      Dammit man!

    15. Re:DTDs are broken by smittyoneeach · · Score: 1

      ability to use powerpoint and visio to confuse and confound

      Oh, let's differentiate between the information itself and the tools used to describe it (the heart of my argument).
      There is probably a high-end consultant who uses these digitial crayons to do masterpieces for the corporate refrigerator and seriously earns that loot.
      Your remark certainly applies to a large population of consultants, though. OTOH, I'm a relatively modestly priced consultant, and I've walked in and _demonstrated_ simpler, better (from the theoretical standpoint of orthogonal data, logic, and presentation), more robust code and been told _by the client_ to go back and do hideous things to it. So where is the justice?
      Sure, the money, but, given a finite lifetime, why piss it away on crap?

      UML is already bodged, further extensions are not going to help much.

      Even God gets negative feedback. What will be amusing with XML is when somebody figures out that in a sizeable application, offloading a lot of the textual fluff that makes it so flexible will buy considerable speed, and markets an XML svelte-ifier of some sort.

      --
      Get thee glass eyes, and, like a scurvy politician, seem to see things thou dost not.--King Lear
  7. WTF!!!! by LinuxPunk · · Score: 3, Funny

    dammit, right after I buy a book to finally learn XML in detail, they change the standards. :P

    1. Re:WTF!!!! by sethadam1 · · Score: 1

      Actually, XML Schemas have been around for a while now.

      I learned XML a while back, and we learned Schemas and DTDs. While I can write a DTD in 10 seconds, it takes literally hours for me to write a useful XML Schema that is dynamically populated. But it's been around.

    2. Re:WTF!!!! by rtaylor · · Score: 1

      Thats just about guarenteed to happen. There is an XML or XML related standard change about once a month -- and that doesn't include the specific protocol implementations using XML.

      --
      Rod Taylor
    3. Re:WTF!!!! by pmz · · Score: 1

      dammit, right after I buy a book to finally learn XML in detail, they change the standards. :P

      In many respects the buzz about XML is still just that--buzz but no real substance. There is a lot of good XML stuff out there and it is promising, but XML and the standards that surround it are really still very immature. I was very suprised when I saw that XML as a standard is just a few years old and most of the other standards weren't standards until 2001 or 2002!

      I think XML and some of the surrounding standards really will revolutionize some aspects of the WWW...just not today nor tomorrow (probably in about five years). I'm very happy right now that I'm on an older project that isn't pushing all the XML-this and XML-that hype, because the standards are still evolving (sort of like J2EE before useful tag libraries or people understood container-managed persistence).

  8. All this hype about XML by MimsyBoro · · Score: 4, Insightful

    I am a programmer for a commercial company (yes I like to make money, and I program on WinTel). I year ago we had the XML craze we converted all our internal protocols to XML. I discovered that XML was just a lot of hype about nothing. There is nothing self-describing about it. Or maybe there is, just like the section names in an INI file describe the keys in them...
    On the other hand the one thing that I did find XML useful for is easy parsing. If you use XML to develop a lower level protocol you end up with bloated 10k messages. But for high-level protocols or for configuration files it's great for only one reason: There are lots of ready-made tools. If you want to parse XML in Windows just load the IXMLDocument interface and it works at lightening speed. If you want to parse the messages in a web-browser through together a quick DOM parser or even use the build in DOM one! If you want to parse XML in PERL or C/C++ there are great libs. The only reason XML is good is because all the hype got people developing very neat tools. In one of my latest projects that needs to pass information between two programs written in different languages a used a Home-Made SOAP and designed a base class the persists using XML. I developed it in both langauges in under an hour!
    So although it wastes bandwidth and there really isn't anything neat about it, it is comfortable I'll give it that.

    --
    God made the natural numbers; all else is the work of man - Kronecker
    1. Re:All this hype about XML by sporty · · Score: 5, Insightful
      I year ago we had the XML craze we converted all our internal protocols to XML. I discovered that XML was just a lot of hype about nothing. There is nothing self-describing about it. Or maybe there is, just like the section names in an INI file describe the keys in them...


      Great thing about XML, is if you need to convert your communications, you can write XSLT against it to convert it while you convert your XML source.. easily. For instance, one vendor I worked with decided that the old protocol didn't work well anymore, and a ne one would be better. Forget the reasons for the change, good or bad.

      I plopped an XSLT processor in front of it. Took minutes to implement. In the mean time, I was able to properly rewrite the XML producing code. So I had some flexibility in terms of patching the protocol quickly, while taking the weeks I needed to fix things right.

      As for self describing, what is more self describing than HTML? You see a bold and italics tag around an element, you can easily figure out what style the text would be in. Yes, I know about CSS, but the point is, XML IS descriptive, so long as you use good names. Naming elements a, b and c is just developer fault.

      If you use XML to develop a lower level protocol you end up with bloated 10k messages.


      If in today's age of gigabit ethernet and cheap parts, you really really need to squeeze that extra bit through, compress the line. Seriously. Simplest case, is using ssh. Hell, it auth's AND encrypts. If you are worried about anonymous access, there are other tools.
      --

      -
      ping -f 255.255.255.255 # if only

    2. Re:All this hype about XML by plierhead · · Score: 4, Insightful
      I discovered that XML was just a lot of hype about nothing.

      Amen to that. Sad to say, but certain parts of the IT industry (and in particular, anything to with one computer (or piece of code) magically talking to another one owned by a different organization) are constantly buying into the bogus claims of snakeoil salesman with silver bullet technologies. XML is merely the latest in a long line.

      The only new things about XML, IMHO, are that is has spawned more sub-specifications than any previous pretender to the crown.

      Anyone remember CORBA ? Or any of the other zillions of RPC-type mechanisms that people have jumped on the bandwagon of ?

      I'm not blaiming the people who push these agendas. I too would love to spend my weekends sunning on the beaches of exotic European tourist destinations and chugging beers on my expense account. The price of sitting through a ferw stiflingly boring and pointless standards meetings seems a small price to pay. All large IT companies employ 2 or 3 people whose job it is to front up to these meetings. Typically these people are articulate and highly versed ex-programmers but architecurally challenged and with little understanding of the real nature of building complex IT systems.

      Ultimately, these RPC mechanisms all end up as nothing - or rather, as only perhaps 1% of the eventual solution.

      All that XML is, is an easy-to-parse, text based data transfer mechanism. And as the parent posting says, there are some nice tools around for it. Big deal. Probably you'd be silly to use anything else if designing a data transfer. But is it ever going to change the world ? Or even rock it a little ? No.

      --

      [x] auto-moderate all posts by this user as insightful

    3. Re:All this hype about XML by metlin · · Score: 1, Insightful

      Excellent post. I completely agree. To a great extent, XML is nothing more than hype.

      The worst thing is that, if you have a very large XML doc with deeply nested and complex hierarchies, its a killer on performance.

      And try exporting large amounts of DB data into XML, and watch your server crash.

      XML is all nice and sweet on paper, but all that it can do is handle relatively small amounts of data. And it looks good when you can tell the suits that you can do stuff in XML.

    4. Re:All this hype about XML by ttfkam · · Score: 4, Insightful

      Yup, I remember CORBA. It's still used. In fact, it can be used with XML. CORBA provides the interfaces for programmatic logic. There is nothing really required to know about how the ORBs communicate with one another. If an ORB decides that its transport mechanism is XML, so be it.

      As for SOAP and XML-RPC, what's so hard about compressing it before sending the message? The whole point about XML is that you don't need to write a new parser. You don't need to write a new broadcaster. Your project is about getting a task done, not micromanaging implementation details.

      If (and only if) your higher level API/transport is insufficient for the task do you roll your sleeves up and dig in. Do you write everything in assembly? Why not? It would be faster than whatever language you are using now. The reason you don't is that you have better things to do with your time. The goal is important, not the tool. Everyone has standardized on and is optimizing this one particular tool and it works well. So many people have done work so that you don't have to.

      Will it change the world? Of course not. It's just a markup language. Will any other computing tool change the world? Of course not. The end users have never cared how you got to the solution. They cared only if you got to the solution faster than the other guy.

      --

      - I don't need to go outside, my CRT tan'll do me just fine.
    5. Re:All this hype about XML by ChristopherLord · · Score: 2, Insightful
      Say what you will, but for me, XML delivers on every one of its promises. I think that it is easy to dismiss as 'hype' because it is so deceptively simple. After all, XML is just a special format for writing ASCII documents, right?

      Well, that statement is on par with saying that ASCII is just an OVERHYPED binary format for storing text. Its not, and neither is XML for the same reasons.

      Xml allows me to stamp out robust document schemas in minutes or hours, instead of months or even years if working from scratch. Because of the rich set of tools you mention, I don't have to write a metric ass-load of documentation on my formats, either. XML spec + my extensions == all the client needs. Because XML is a stable standard, things like MathML, ChemML, DocBook, DOM, etc. can exist, and proceed to maturity faster than otherwise.

      Yes, there were some that want to XMLify everything, but that's not an intrinsic fault of XML any more than when some dumb programmer that wants to redesign the Linux kernel to use ASCII-based API calls...

    6. Re:All this hype about XML by Anonymous Coward · · Score: 0

      I have tried both CORBA and XML/SOAP, and much prefer SOAP. After I convinced myself, I stumbled across:

      http://www.xs4all.nl/~irmen/comp/CORBA%20vs%20SO AP .html

      Couldn't have said it better myself ;-)

    7. Re:All this hype about XML by AuMatar · · Score: 1

      Thank you. Someone else who has sanity in this world.

      Another point- XML is not more open. Its only as open as the developer wants it to be. He can use a wierd XML schema made to obfuscate (or use an xml schema, ignore the parser, and have the real fields in the data for the tags. Ooh, that'd be evil. Watch MS do it with Office) and it becomes as bad as binary. Meanwhile if a binary format has its format published, it becomes as open as XML claims to be.

      So where exactly is the gain? I'm mising it. Oh, wait- XML is buzzword compliant. And it has an X, and X is cool, look at all the xtreme sports. Bleh.

      --
      I still have more fans than freaks. WTF is wrong with you people?
    8. Re:All this hype about XML by CaseyB · · Score: 1
      The worst thing is that, if you have a very large XML doc with deeply nested and complex hierarchies, its a killer on performance.

      Wow, that's insightful!

      In other news, implementing a clustered relational database system to store preferences for an email program is killer in terms of expense and complexity.

    9. Re:All this hype about XML by AuMatar · · Score: 0, Troll

      You do know that 90% of internet users are modem based, right?

      Not to mention, there's this slight problem that bandwidth waste is additive. If you have 100 people wasting 10K on a cororate line, it adds up.

      Gah. I hate people who give no care for whats efficient. Its people like you who are the reason I could use a word processor just fine on my Apple 2e, but Word 97 lagged on my P2-350

      --
      I still have more fans than freaks. WTF is wrong with you people?
    10. Re:All this hype about XML by skelf · · Score: 1

      Just because XML is overhyped, that doesn't mean XML is not a simple, beautiful thing, it just means that when you finally learn how simple it is, you may feel a bit let down. I'd say that namespaces are the most valuable feature of XML at this point. XML Schemas, on the other hand, are truly disgusting. After years of happily editing DTD's (and everything else) in Emacs, XML Schema is the first technology that has driven me to use an expensive commercial GUI tool (XMLSpy). What's worse, this (admittedly great) software only runs on Win32, so it is currently the only reason I have not erased XP off my laptop. I think XML Schema 1.1 should just adopt RelaxNG and be done with it. Then I could go back to Emacs... But in the absence of that, who wants to help build an open source XML Schema GUI editor (or plugin for Eclipse, Netbeans, etc.)?

    11. Re:All this hype about XML by xswl0931 · · Score: 1

      Perhaps the problem isn't with XML but with XML Parsers?

    12. Re:All this hype about XML by groomed · · Score: 2, Insightful
      Not to fault CORBA, although it is a rather cumbersome outgrowth on top of a sometimes overbearing paradigm (OO), or to debunk XML, which is a very powerful and complex language to replace that other, even more powerful and complex language, but...

      As for SOAP and XML-RPC, what's so hard about compressing it before sending the message?

      Well, that it is hard. Try forking a few thousand gzip processes and you'll see what I mean.

      Your project is about getting a task done, not micromanaging implementation details.

      Um, you're the one suggesting we should use compression to manage the SOAP and XML-RPC overhead. That shure sounds like micromanagement of implementation detail to me.

      Do you write everything in assembly?

      Well, in fact, for years, I didn't, but I recently picked it up again, and the speed gains are tremendous, in just a few dozens lines of code.

      The end users have never cared how you got to the solution. They cared only if you got to the solution faster than the other guy.

      So then how does that explain why developers all over the world are suffering through hundreds (thousands) of pages of documentation just to send a message across the room? Standards are good and XML is progress, but

    13. Re:All this hype about XML by metlin · · Score: 1


      Oh yeah? Wait until you have been approached by the management to have your data viz. output all jazzed up in XML.

      Dude(ette?), it might be obvious, but I speak from unfortunate first hand experience.

      Almost all the DBs that I've worked to export into XML have ended up having weird schemas. That is a fact. Take a look at most database schemas in real-life projects. Even by themselves, they are a big pain. Is your DB all normalised and all redundancies removed? Have fun!

      Go try exporting any half-decent Natural Language or Gene Data. XML would not even budge. Kiss your data and app goodbye.

      What I meant was that XML does not scale for most real-life data apps, which would almost always tend to have large, nested and complex hierarchies. It defeats its purpose, except for maybe in an academic environment or certain exceptional cases, or perhaps when your need far outweighs the payoff.

    14. Re:All this hype about XML by j3110 · · Score: 2, Insightful

      There really needs to be a standard for compiled XML that uses a DTD to replace tags with binary references.

      We would have a standard binary format of information exchange that is small and much easier to create and parse(from a performance standpoint). You can still edit the xml by hand with a decompiler, which would be a VERY trivial editor. Hell... even verification of the data would be trivial. Someone will make one to improve performance of XML-RPC some day by setting up proxies, and you will be able to achieve DSL results on a modem.

      --
      Karma Clown
    15. Re:All this hype about XML by metlin · · Score: 0, Redundant

      There is only so much that you can optimize.

      There are better and more optimized ways of representing your data.

    16. Re:All this hype about XML by sporty · · Score: 1

      I guess I forgot to mention you can compress XML rather well. It's just plain text. So you get what, 2% growth over a strictly binary format?

      I suggest re-reading my post.

      And don't make judgements on my efficiency. XML is a technology that can be used for great things. If you don't know how to apply it properly, it's no one else's fault other than your own.

      --

      -
      ping -f 255.255.255.255 # if only

    17. Re:All this hype about XML by sporty · · Score: 1
      Anyone remember CORBA ? Or any of the other zillions of RPC-type mechanisms that people have jumped on the bandwagon of ?


      Corba is more than just a data format. It's an architecture. XML is not an architecture, it's just a data format.

      The price of sitting through a ferw stiflingly boring and pointless standards meetings seems a small price to pay. All large IT companies employ 2 or 3 people whose job it is to front up to these meetings. Typically these people are articulate and highly versed ex-programmers but architecurally challenged and with little understanding of the real nature of building complex IT systems.


      You give these people 0 credit. Really. They probably have real jobs doing real things, while for the company's benefit help in creating these standards.

      Ultimately, these RPC mechanisms all end up as nothing - or rather, as only perhaps 1% of the eventual solution.

      All that XML is, is an easy-to-parse, text based data transfer mechanism. And as the parent posting says, there are some nice tools around for it. Big deal. Probably you'd be silly to use anything else if designing a data transfer. But is it ever going to change the world ? Or even rock it a little ? No.

      Disclaimer:Not reviewed for relevance or accuracy - results may vary.
      --

      -
      ping -f 255.255.255.255 # if only

    18. Re:All this hype about XML by sporty · · Score: 1

      Argh, i left parent post inside my message. Cut me off at Ultimately....

      --

      -
      ping -f 255.255.255.255 # if only

    19. Re:All this hype about XML by tzanger · · Score: 1

      Well, that it is hard. Try forking a few thousand gzip processes and you'll see what I mean.

      I compress almost anything these days with gzip -1. The difference between gzip -1 and gzip -9 on text or HTML or practically anything 7-bit ASCII is negligible, and it sure saves on the CPU and cache load.

    20. Re:All this hype about XML by sporty · · Score: 1
      The worst thing is that, if you have a very large XML doc with deeply nested and complex hierarchies, its a killer on performance.


      It sounds like whomever architected your dtd or schema foulded up. Or whomever is generating the data you need is giving youtoo much.


      And try exporting large amounts of DB data into XML, and watch your server crash.


      So you are blaming a buggy server on XML? What if it was... a large CSV file? Or some other format? Hell, photoshop uses binary internal storage for working with their native format. It even uses scratch disk.

      Besides, you are making a large generalization. I've written XSLT over large XML documents that take a while to translate that work quite well. Maybe you have bad ram?


      XML is all nice and sweet on paper, but all that it can do is handle relatively small amounts of data. And it looks good when you can tell the suits that you can do stuff in XML.


      Then you are using the wrong technology. If you are trying to deal with gig-sized files, you should prolly be using a SAX processor, sinec they take up realtively little ram. DOM is great for when you don't have JAXB (java xml binding) available and you want your data in memory, in an OO/structured memory format.
      --

      -
      ping -f 255.255.255.255 # if only

    21. Re:All this hype about XML by AuMatar · · Score: 1

      Except that you'd be lucky to get 50% compression. So its still about 50x growth over binary. Try again.

      --
      I still have more fans than freaks. WTF is wrong with you people?
    22. Re:All this hype about XML by SoupIsGoodFood_42 · · Score: 1
      People seem to be saying that XML is a silly bloated INI/config file replacment. XML can be that, but it can also be used as a 'database'.

      Now. I know a lot of people are going to moan about how slow XML is compared to any DB, and they'd be righ--at the moment. But there is one thing that XML has that DBs don't, and that's fexibility. You can add new elements to XML as you go. You can't do that with a DB (well you can, but any DB admin/desiginer would shoot you for it, and it would be hard), DBs are designed to be strict and uniformed.
      Some data types need fexibility, and this is where XML benifits.

      You said that the tools for XML are great, don't you think that could be because of the way XML was designed?

    23. Re:All this hype about XML by sporty · · Score: 4, Informative

      That's funny, I just looked at the man page for gzip.

      Gzip uses the Lempel-Ziv algorithm used in zip and PKZIP.
      The amount of compression obtained depends on the size of
      the input and the distribution of common substrings. Typ-
      ically, text such as source code or English is reduced by
      60-70%. Compression is generally much better than that
      achieved by LZW (as used in compress), Huffman coding (as
      used in pack), or adaptive Huffman coding (compact).


      Mind you, XML is highly repeditive in it's tag use on long documents. Long as in multiple records, not necessarily byte length.

      Now let's take a larger file, 'cause after all, since modem users can download 5k html really quick. I've taken the soap distribution from apache (or was it sun) and took all the xml files in there and concatonated them together. 22k XML file. Not huge, but big enough for this example.

      Here's my findings:

      [caligraphy:~] spencerp% ls -al o.xml
      -rw-r--r-- 1 spencerp staff 22118 Jan 23 21:21 o.xml
      [caligraphy:~] spencerp% gzip o.xml
      [caligraphy:~] spencerp% ls -al o.xml.gz
      -rw-r--r-- 1 spencerp staff 3021 Jan 23 21:21 o.xml.gz
      [caligraphy:~] spencerp% gzip -l o.xml.gz
      compressed uncompr. ratio uncompressed_name
      3021 22118 86.4% o.xml


      Not bad for taking non repeditive text, with random xml schemas and getting 86.4%. Now imagine a larger one with a consistent schema. Compression goes even higher. Granted, it will be slightly larger than a binary. But even a 100meg file can be moved across a 100megabit network in 5 minutes time. And THAT is a lot of data.

      Btw, there is a falacy with your math. If I get 50% compression of an XML file, which could have been implemented in binary format, it doesn't mean the binary format would be 49 times smaller.

      --

      -
      ping -f 255.255.255.255 # if only

    24. Re:All this hype about XML by Anonymous Coward · · Score: 0
      Sorry, but I have to agree with the other guy. Corba, RPC, DCE/RPC, RAP, COM, RMI, XML RPC, SOAP, ASN.1 ... this is a loooong list. The sad fact of the matter is that most of this stuff is just inventing a problem where there wasn't one. If I didn't need a performance solution and I wasn't worried about security I would just use plain text. Just a bunch of properties or INI file sections. And if you need performance what could be faster than explicit network programming? Seriously. For example:

      struct message {
      char *str;
      int num;
      };

      size_t
      enc_message(struct message *msg, char *dst, size_t dn)
      {
      char *start = dst;
      dst += enc_string(msg->str, dst, dn);
      dst += enc_uint32be(msg->num);
      return dst - start;
      }

      where your enc_uint32be function looks like:

      size_t
      enc_uint32be(uint32_t i, unsigned char *dst)
      {
      dst[0] = (i >> 24) & 0xFF;
      dst[1] = (i >> 16) & 0xFF;
      dst[2] = (i >> 8) & 0xFF;
      dst[3] = i & 0xFF;
      return 4;
      }

      Now you do the reverse using dec_uint32be at the other end on Windows, Sparc, using Java, Perl, Lisp, whatever. This 100% portable and very easy to understand. You can recursively compose aribrarily complex messages this way.

      Is harder than setting up an ORB, creating IDL definitions, and compiling stub files? Is this harder than running the input through an XML processor and manipulating the "elements" using clumsy SAX or DOM interfaces?

      XML is for processing documents. It's good at that and I'll always recommend using it for that. But I hope it doesn't catch on as yet another RPC mechanism. Worse still is using it for configuration files. That will be the death of J2EE.

      I have implemented the descibed encoding and decoding primatives in C here:

      http://www.eskimo.com/~miallen/encdec/
    25. Re:All this hype about XML by c_g12 · · Score: 2, Informative

      Have you ever used Castor? Its Marshalling Framework allows you to easily convert between Java classes and XML documents. This means that you can generate Java source code from an XML Schema (but not DTD, I think). Very useful: simply define your object model using XML Schema, and use Castor's Sourcecode Generator to spit out your Java source.

    26. Re:All this hype about XML by axxackall · · Score: 3, Interesting
      Great thing about XML, is if you need to convert your communications, you can write XSLT against it to convert it while you convert your XML source.. easily.

      Great thing about Lisp, is if you need to convert your communications, you can write Lisp against it to convert it while you convert your Lisp source.. easily.

      I plopped an XSLT processor in front of it. Took minutes to implement. In the mean time, I was able to properly rewrite the XML producing code. So I had some flexibility in terms of patching the protocol quickly, while taking the weeks I needed to fix things right.

      I plopped a Lisp processor in front of it. Took minutes to implement. In the mean time, I was able to properly rewrite the Lisp producing code. So I had some flexibility in terms of patching the protocol quickly, while taking the weeks I needed to fix things right.

      the point is, XML IS descriptive, so long as you use good names.

      the point is, Lisp IS descriptive, so long as you use good names.

      If you use XML to develop a lower level protocol you end up with bloated 10k messages.

      If you use Lisp S-expressions to develop a lower level protocol you don't end up with bloated 10k messages.

      Besides, in Common Lisp you'll really appreciate MOP - Meta-Object Protocol. Much better than SOAP.

      Trust me, I know well, actively use and actually love both Lisp *AND* XML.

      --

      Less is more !
    27. Re:All this hype about XML by Dr.+Photo · · Score: 2, Informative
      The only new things about XML, IMHO, are that is has spawned more sub-specifications than any previous pretender to the crown.

      Sub-specifications?

      You mean like MathML, SMIL, SVG, XHTML, et al.?

      These are all modular lanuages that use XML.

      The XML client application uses one or more DTD or schema to determine how to interpret the various elements in the XML file, and you can intermingle e.g. MathML and XHTML and so forth all in the same XML file.

      Unless I'm grossly misinterpreting your comment (in which case I apologize), I can safely say that you didn't understand the article, since these "sub-specifications" you mentioned are exactly what DTDs/Schema are for, and exactly what makes XML a Good Thing.

      They didn't call it "Extensible" just so they could put a nice pretty "X" in "XML". (Though in all fairness, I must wonder if anyone could take something called "EML" seriously... ;)

    28. Re:All this hype about XML by phanki · · Score: 1

      Even though XML is a nice piece of technology, the bandwidth overhead incurred in transmitting a pure text file across is non-trivial. I helped move an application which was using XML, into using a binary format. I understand this would mean diverting from standards, but given the delay attributed to the data sizes of the xml file, this could not be done. I think as the above comment mentions, when you have heterogenous systems trying to communicate to each other then XML would definitely help, otherwise I dont see a point in using XML, just because it is the in thing.

    29. Re:All this hype about XML by CaseyB · · Score: 1
      What I meant was that XML does not scale for most real-life data apps, which would almost always tend to have large, nested and complex hierarchies.

      In shorter words than my first post: DUH. Who the hell is trying to store large complex databases in XML?

      Your problem isn't that XML doesn't scale, your problem is that you have no clue where it is appropriately used.

    30. Re:All this hype about XML by kin_korn_karn · · Score: 1

      what about the CPU overhead and hardware expense of compressing the line? Just saying "my protocol is fine, make your shit faster" isn't going to endear you to many clients, either.

    31. Re:All this hype about XML by Sayjack · · Score: 2, Insightful

      I discovered that XML was just a lot of hype about nothing. There is nothing self-describing about it.

      That's a matter of opinion. XML on it's own isn't too impressive. It's the other technologies such as XSLT, Schema, XInclude, XPath, SOAP, RelaxNG, XML-RPC, SVGML which accompany XML which really make XML a big deal.

      If


      <PERSON>
      <NAME>
      <FIRST>BOB</FIRST>
      <LAST>MARTIN</LAST>
      </NAME>
      </PERSON>


      isn't descriptive, I don't know what is.

      --

      -- Good judgement comes with experience. -- Experience comes with bad judgement.

    32. Re:All this hype about XML by Sayjack · · Score: 1

      I thought CORBA was like teenage sex...everyone was talking about it but nobody's doing it. And those that are are doing it are doing it wrong.

      But in truth I've done CORBA and XML-RPC. I far prefer the simplicity of XML-RPC over the complexity of the CORBA specification. I found XML-RPC to be more reliable as well, but I'm probably making the mistake of judging the technologies or CORBA and XML-RPC relative to the abilities of the implementations I had on hand.

      --

      -- Good judgement comes with experience. -- Experience comes with bad judgement.

    33. Re:All this hype about XML by dubious9 · · Score: 1

      Almost all the DBs that I've worked to export into XML have ended up having weird schemas.

      I have worked on such a projects. We had very higherarchial data and decided to go with XML as the main data format. We used perl as a native interface. Hey Perl has great XML libraries. We used XSL and FOP for report writing. It gave us hugh gains in extendability and maintainability over our previously human readable format (which is a requirement for our line of business).

      This was not a small project. Several 10K per database, the XML ended up being 1K's of lines long, but in the long run, the calculations we did on the data long far longer than the actuall XML manipulations. Just because you can not fathom a large project being successful which XML, does not mean it can not exist.

      The time spent on an alternate binary solution probably would have taken another man year to implement.

      --
      Why, o why must the sky fall when I've learned to fly?
    34. Re:All this hype about XML by master_p · · Score: 1

      Yeah, XML is propably hyped. And it is not a language, it is a mechanism. Specific dictionaries are different XML languages.

      But it has three main advantages:

      1) since it is text, there is no need to code libraries for reading the files, because there are several out there already.

      2) if I come back one year later, I remember the format of my data much more easily.

      3) it's easier for a new developer to understand what is going on just by looking at the XML file. No chance with binary data!!!

    35. Re:All this hype about XML by alenm · · Score: 1
      I think XSLT downright sucks as a presentation language. No date and number formatting. Sucky ordering. Difficult to implement logic.

      If you have a structured XML file that suits your presentation, then it is great. But that never happens to me. I have given up on XSLT as a presentation language. Tt can be great for simple transformations though.

      It is all about the simple fact: use the right tool for the right job. A fact most programmers don't understand.

    36. Re:All this hype about XML by AShocka · · Score: 1

      It's no Silver Bullet, and I agree it can have all the problems you mentioned (and others as well). This comment says it can be done well.

    37. Re:All this hype about XML by Anonymous Coward · · Score: 0
      > Who the hell is trying to store large complex databases in XML?

      <n00b>We are!!!</n00b> :-p

    38. Re:All this hype about XML by envelope · · Score: 2, Interesting

      XML IS descriptive, so long as you use good names. Naming elements a, b and c is just developer fault.

      It is not just a matter of using good, descriptive names. Whatever code is reading the xml is going to have to know what the names mean. A program reading xml could care less if the name is "a" or "AVeryMeaningfulName"

      --

      appended to the end of comments you post, 120 chars
    39. Re:All this hype about XML by mr3038 · · Score: 1
      [Talking about compressing XML:] Not bad for taking non repeditive text, with random xml schemas and getting 86.4%. Now imagine a larger one with a consistent schema. Compression goes even higher. Granted, it will be slightly larger than a binary. But even a 100meg file can be moved across a 100megabit network in 5 minutes time. And THAT is a lot of data.

      100MB file over 100Mbps network takes 5 minutes? What kind of "100Mbps" network is that exactly? I can easily transfer 100MB of data over 10Mbps line in 5 minutes. With 100Mbps line it should take more like 10-15 seconds. Did you mean that 100MB XML file would compress to something like 20MB file and it would take maximum of 5 seconds to transfer that over 100Mbps line?

      In addition, (compressed) XML file can be sometimes smaller than the same thing expressed in proprietary binary file. This is because XML version probably does have better structure than the binary file. Example: try to save a MS Word document in its default format and its "HTML" format. Notice how that "bloated text based HTML version" is smaller than binary one. YMMV, of course.

      --
      _________________________
      Spelling and grammar mistakes left as an exercise for the reader.
    40. Re:All this hype about XML by Anonymous Coward · · Score: 0

      I started working on a binary format that was semantically equivalent to XML a while back called XBF. I haven't worked on it for a long time, but it would offer big savings over XML when used as a wire format. See http://www.ipso-facto.demon.co.uk/XBF/extensible-b inary-format.html for details.

      Rich.

    41. Re:All this hype about XML by sporty · · Score: 1
      What kind of "100Mbps" network is that exactly?


      It's a congested network ;) I was pulling the number out of my head from a recent machine-machine copy where both machines were busy.

      But hey, we are preaching to each other. :)
      --

      -
      ping -f 255.255.255.255 # if only

    42. Re:All this hype about XML by sporty · · Score: 1

      Point being, is it's user readable. If your system is having a problem, you can easily see if it is the data by inspecting the data.

      If you mean machine readable, you only need to write a function once to read a particular node and all of it's conditions. For each subnode, you write a seperate function. XML is not recursive , since the format doesn't support recurssion.

      --

      -
      ping -f 255.255.255.255 # if only

    43. Re:All this hype about XML by sporty · · Score: 1

      How similar is it to ASN.1?

      --

      -
      ping -f 255.255.255.255 # if only

    44. Re:All this hype about XML by Anonymous Coward · · Score: 0

      In other words what you are saying is: "I'm an ass-monkeying clown-face jack-fool who does a lot of cock-smocking and testicle-fondling. I spend most of your spare time fantasizing about sword-fighting; and I like to pretend like I have computer knowledge so I can feed my ego by flaming people on Slashdot. I act like I am superior to make up for my inadequecies and to deal with the pain of not getting enough cock."

      If you are a female this makes even more sense.

    45. Re:All this hype about XML by qta · · Score: 1

      Seeing that makes me have second thought about XML's signal/noise ratio ...

    46. Re:All this hype about XML by chiph · · Score: 1

      With large XML files, we've seen 80-90% compression, dropping their size significantly.

      For example:
      foobar.xml is 16,286,384 bytes, which compresses to 2,644,897 bytes, a ratio of 84%

      Chip H.

    47. Re:All this hype about XML by styxlord · · Score: 1

      How can you have a standard that maps arbirary tag names into a binary format? At best you could get rid of some < and > and maybe some / characters and the redudnacy of a repeating the name in a close tag. Sure, at the start of the file you could have a table that expressed all of the tags as identifiers with an smaller bit length than the tags themselves but isn't that just compression? Use off the shell compression, and a HTTP header or file extension will tell you how to decompress back to the XML source. Formats which are human readable (like HTTP, SMTP, FTP) kick serious butt over binary formats because, well, they're human readable.

    48. Re:All this hype about XML by pomakis · · Score: 1
      Who the hell is trying to store large complex databases in XML?

      You'd be surprised! Once a manager type gets brainwashed into thinking that XML is the be-all end-all of description languages, he often dictates to his minions to use it for all of the storage and communication requirements of the application or system being developed, even if ends up meaning that the resulting system is an order of magnitude less efficient. Then, when the project is finished, the manager asks "why is it so slow?".

    49. Re:All this hype about XML by sporty · · Score: 1

      I'd be curious though, what was the data to xml ratio. How much of it is actual data and hwo much of it is xml.

      --

      -
      ping -f 255.255.255.255 # if only

    50. Re:All this hype about XML by j3110 · · Score: 1

      You can use the knowledge of the DTD to better understand the document and to compress it. A standard way of converting tags from the DTD into binary codes would be trivial(DTD's would have to be versioned like the spec wants you too). You can also add indexing information(make the file bigger again) if you know that you will be running XPATH on it. Then, run it through GZIP for text in fields (other than boolean/restricted value fields that you can further compress more accurately than GZIP).

      I want to have my cake and eat it too :)

      The resulting standard in binary formated XML would be as human readable as a word document or PDF file. As long as you have a decent editor for it, you could do verification as you go, automatic DTD generation, and tag auto-completion/closure. Sure, IDE's can do that today, but when it is a binary format, computers can deal with it better. The gzip compression would of course have to be optional. Don't want to kill the CPU (de)compressing after trying to save some time in parsing.

      Human readable formats on servers are usually there because the people writting the server had to debug the interface. The actual interface code wouldn't need to be debugged in this situation because there would be a lot of free binary libraries that do the job properly to begin with. All you have to do is the required fields or handle the exceptions you will recieve when your dtd is wrong. You can't send an invalid message in this system because it is verified before transmission. If by some chance you do, it's only because your DTD is incorrect, or DTD's won't let you limit one field based on another. Most errors in these kind of programs are not incorrect data, but incorrectly formatted data(syntax) anyhow.

      --
      Karma Clown
    51. Re:All this hype about XML by sapped · · Score: 1

      Xml allows me to stamp out robust document schemas in minutes or hours, instead of months or even years if working from scratch.

      Um, how has XML helped you to do this better than say using a binary format that you - and the guys you work with - thought up all on your own?

      Now, don't get me wrong. I use XML to store my datafiles because I like storing things in ASCII so that anybody can grab stuff out of my files later and work with them.

      The only advantage that XML has brought to the table compared to the straight ASCII that I was using before is that somebody looking at my file later will more easily be able to figure out where I stored the phone number and where I stored the serial number.

      All of this could be done in ASCII. Hey, with a bit of patience on the second guy's part it can be done in binary as well. XML's contribution is nil or minor.

    52. Re:All this hype about XML by MaoTse · · Score: 1

      You got it right this time, dude.

      The whole point about XML is to enable interoperability. You know, some people like editing sendmail.cf file, but some would rather pack the thing into something that validates ...

      Think about it - it is a change.

    53. Re:All this hype about XML by baldyman · · Score: 1

      your ORB might be a bit lonely with its XML transport mechanism when all the other ORBs are talking iiop.

  9. RelaxNG by ine8181 · · Score: 2, Interesting

    RelaxNG vs. W3C Schema makes a much more interesting discussions. DTD is obsolete in many ways... and most of the XML parsers support schema now.

  10. Schemas are often a bad idea by mesocyclone · · Score: 3, Insightful

    XML is a very powerful tool.

    On very important use is in creating interfaces between heterogeneous systems. Areadable character set and meaningful tags is very handy for developers. The hierarchical structure is extremely powerful. And, of course, the fact that it is a standard with common tools is invaluable.

    However, one useful principle of such interfaces is "if you don't understand it, ignore it." In other words, when you get a message, look for what you want in it and use it. Ignore anything that isn't what you want. XML is ideally suited for this approach - especially if you use path based access rather than DOM tree traversal.

    This approach to interfaces allows systems to interchange messages without exact version consistency, and without requiring a tight congruence of the applications. It allows a system to "tell what it knows" and another system to "read what it needs" without further ado.

    Unfortunately, the use of schemas goes against this idea. It is IMHO a more old fashioned approach of rigidly constraining the messages to an exact specification. This can make interfaces far less robust and flexible, and increase the amount of work.

    Schema processing may also be promoted to "verify" message integrity before processing. However, it only does so in the most primitive ways. Real world messages, especially in the business world, tend to have integrity rules that go far beyond what can be expressed in anything short of a complex computer program or equivalent declarations.

    I am sure there are plenty of places where schemas make sense, but in the areas of commercial message interchange, they take a powerful and flexible construct and hobble it.

    --

    The only good weather is bad weather.

    1. Re:Schemas are often a bad idea by soundofthemoon · · Score: 1

      One useful thing about XML is that there are lots of tools for working with it. At my workplace, we find it's very simple to use XML as a meta-format for many of our file formats. These files then get processed by one web application or another. (Please don't harp on performance issues here, that's another topic!)

      When authoring one of these XML documents, we need to have a DTD or schema to be able to validate the contents of the file. I lobbied to get DTDs for all our doc formats, and we found that lots of our existing files had significant problems - that's what happens when you let a human edit an XML file by hand.

      Back to the main topic... DTD kinda sucks for two reasons. One is it's very limited. The other is documentation for it is nearly impossible to find, unless you go buy an expensive book. What is the point of free, open standards if you have to go spend $45 on a book to be able to use them? I haven't much experience with XMLSchema, but it's got to be better than crappy old DTDs!

    2. Re:Schemas are often a bad idea by Anonymous Coward · · Score: 1, Insightful

      This is insightful? You don't have to pay attention to the Schema if you don't want to -- it just gives you the structure that the XML file is supposed to conform to (of course it might not). DTDs do the same thing, except that they are less flexible than Schemas. And you can ignore DTDs too (which most people do).

    3. Re:Schemas are often a bad idea by mesocyclone · · Score: 1

      You don't have to pay attention to the Schema if you don't want to

      I think you miss the point. When I am designing an interface, an important question is *whether to have a schema* in the first place!

      And frankly, the less structure that is enforced on the XML file, the better! The important information is whether the XML file contains the necessary information, and a schema cannot provide you with that information because it cannot represent the semantic relationships except in the most trivial (CS 101) cases!

      The purpose of an interface is to transmit information, not make people feel good because it conforms to some arbitrary structure!

      --

      The only good weather is bad weather.

  11. Re:Blah, blah, blah by Anonymous Coward · · Score: 2, Funny

    Honestly, I believe that xml is just a nice way to replace INI files and CSV files. Seems to be about it really. The odd business may use xml for b2b.

    And XHTML really bites. You can tell the w3c doesn't listen.

  12. If or When? by Anonymous Coward · · Score: 2, Funny

    When you bend over to take the latest XML Schema, don't forget your SOAP.

  13. You no speak-y English? by Anonymous Coward · · Score: 0

    Any idiot with 1/4 of a brain who speaks this language can decipher what are commonly called "conversational contractions."

    doncha
    gotta
    gonna

    know what those mean, or shall I translate for you?

    schmuck.

  14. Validating with XML Schemas by UpLateDrinkingCoffee · · Score: 3, Interesting
    I'm wondering, who actually validates their XML at runtime using XML schemas? We do, but most of our XML is used for configuration files where the overhead doesn't affect overall app performance too much (read once at the beginning). One issue we run into is the validation chain.. the XML document refers to it's schema (accessible via URL on the LAN hopefully) and those schemas refer to the "master" XSD schema. This is where we have had trouble, because we usually point it to the w3c master... if the internet is down, so is our app!

    It's occurred to me maybe we are being too diligent in actually validating the schema itself, but I'm wondering what others think?

    1. Re:Validating with XML Schemas by thasmudyan · · Score: 1

      It's occurred to me maybe we are being too diligent in actually validating the schema itself, but I'm wondering what others think?

      Maybe. See, at our shop we're a bit lazy and often times our apps don't check validity at all. I think none of our apps really goes beyond the local realm of the validation chain which has its advantages.

      Besides, you should keep a cached copy of the w3c master docs around. They are not changed very often, so you could as well keep them locally forever without having to have internet connection (which also slows everything down).

    2. Re:Validating with XML Schemas by FatHogByTheAss · · Score: 1

      Archetecture 101:

      Validate at system boundries. Once in the system, you no longer need to validate, as it's already been done.

      --

      --
      You sure got a purty mouth...

    3. Re:Validating with XML Schemas by VP · · Score: 4, Informative

      This is a misunderstanding of the way schema validation is supposed to work. Schemas have what is called "location hints" which should be used in case you have never before encountered a particular namespace. The key word, however, is "hints" - i.e. you should never have to remotly obtain a schema if you don't need to.

      In most cases, if you are doing schema validation, you already know whta schema you can expect, so they should be not only locally available, but also cached in memory...

      As for the ..."master" XSD schema... you never ever have to get it remotely - the parser should be implementing it already...

    4. Re:Validating with XML Schemas by Anonymous Coward · · Score: 0

      Archetecture 101:

      Validate at system boundries. Once in the system, you no longer need to validate, as it's already been done.


      Followed by:
      Archetecture [sic] 102:
      Decompose your system in subsystems.

      And enlightment comes:
      Architecture 201:
      Boundaries are everywhere. Validate everywhere.

    5. Re:Validating with XML Schemas by tshak · · Score: 1

      I don't use XML much (a bit overhyped IMHO). However, I do use it in two area's: SOAP (Web Services) and Config files. Most web services stuff is coded by the IDE so I don't deal with that. However, with custom config files (for a web sites menu, a software install program, etc.) I always reference an XSD, however, I generally do not validate at runtime (VS.NET warns me if an XML file in my project does validate against the intended XSD). It seems that the only reason (in my experience) to validate the XSD at runtime is when an XML may be coming from a 3rd party, as opposed to a relatively static document that's part of your project.

      --

      There is no longer anything that can be done with computers that is nontrivial and clearly legal. -- Paul Phillips
    6. Re:Validating with XML Schemas by roundand · · Score: 1

      Nobody's mentioned the implicit validation that you get by using a type-specific de-serializer that's been generated from XML Schema definitions, eg as part of NET or Java support for Web Services. This may actually be faster than using a non-validating browser (not that I've timed it).

      I have been generating a C# client from WSDL generated by a Java Web Service tool, and it just works.

      XML Schemas may be complex and intimidating, but once they've been automated out of the way they're great.

  15. Who needs XML? by SHEENmaster · · Score: 0

    HTML will continue to dominate the web for a long time.

    For PHP I have mysql, cookies, and php to save data into, and for Java I have serialization through Object streams.

    Is there any case in which I, as a Java and PHP devloper, would want XML? Would there be any advantage to using it over my current options.

    --
    You can't judge a book by the way it wears its hair.
    1. Re:Who needs XML? by adlai · · Score: 1

      Although I'm just learning how to utilize XML, I think it has value. Comparing XML and HTML utilization on the web is apples and oranges, only moreso, since they are markup languages for completely different purposes.

      For data exchange between disparate applications, XML is useful. For displaying text in bold, HTML works. For coding, one can rely on whatever programming language one wants; 'course XML _isn't_ a programming language, so it won't work for that.

      my 2c....

    2. Re:Who needs XML? by BurKaZoiD · · Score: 2

      Well, while I'm not particularly thrilled about having to learn another ten thousand things (XPath, XSLT, etc) in order to use XML to it's fullest extent, but it does have a huge advantage: easy to validate a document and it's data. I don't know about you, but I'm sick until my nuts ache having to parse through mile-long flat files produced by a legacy mainframe only to find out after-the-fact they forgot to leave out the damn carriage-return line-feed pairs and the layout is thrown off by one byte! Anyway, I can validate an XML document in like three or four lines of code, regardless of language. Plus, there are XML parsers written for just about every language and platform, even frickin OS390/Natural/ADABAS, which means I don't have to return a flat file to the COBOL folks! I can just have SQL Server 2K chew up the data, spit it out in XML format, and then have a DTS package automatically FTP the XML document back to the mainframe just in time for the JCL schedule to kick up! Dunno about you, but it makes my life easier for dang sure.

    3. Re:Who needs XML? by Anml4ixoye · · Score: 1

      Well great. I am glad your job is as easy as that. Hope it stays that way.

      We are dealing with pulling data from disparate data sources such as HP3000 and HP9000 mainframes, state-mandated databases, Oracle, Informix, SQL, DB2, etc. Often we need to combine information from two or more of these datasources into a common interface so that the people who are making the decisions can see what they need to see.

      XML for us is a great benefit in that we can write programs based on XML information, then have specialists write separate programs to pull the information out of those datasources and parse them into the expected format.

      In addition, sometimes you don't have a choice but to use what is presented for you. For example, over at Everything2 they provide XML tickers that you can create programs for. It allows developers to write interfaces into the site without the site having to give up DB access.

      Generally speaking, if you are pulling your data from one database, and generally have control over the programming environment, XML probably won't make a lot of sense. But for situations outside of that it can be a very useful tool in pulling together information.

  16. XML Schemas are in XML by M.C.+Hampster · · Score: 3, Informative

    One of the greatest things about XML schemas is that they themselves are well-formed XML documents. This makes it a breeze to parse and create XML Schemas. I've just started using XML Schemas in development for the past few months, and they are fantastic. A huge improvement over both DTD and XDR (Microsoft's temporary schema format until XML Schemas came out).

    --
    Forget the whales - save the babies.
    1. Re:XML Schemas are in XML by Anonymous Coward · · Score: 0

      So, to describe your XML-schema, which is XML, you just write a new XML-schema. And to describe your new XML-schema, which is XML, you just write another XML-schema. And to describe this XML-schema, which is XML, you just write...

      Somewhere, you need to stop. Either by using a DTD, or by hardcoding your schema.

    2. Re:XML Schemas are in XML by Axiom_1 · · Score: 1
      The real fun is that the rules for writing an XML Schema are expressed as an XML schema. This means that you can use the schema schema to perform schema validation on the schema you plan to use to validate your documents!

      You can find the rules for making a Schema at the W3C XML Schema Page. The wording of the link is beautiful: "An XML Schema schema document for XML Schema schema documents."

      If you really want a challenge, try reading the schema schema. Packed full of circular definitions and elements defined in terms of themselves, it's sure to make your head spin!

  17. Not really by Codex+The+Sloth · · Score: 4, Insightful

    This approach to interfaces allows systems to interchange messages without exact version consistency, and without requiring a tight congruence of the applications. It allows a system to "tell what it knows" and another system to "read what it needs" without further ado.

    Unfortunately, the use of schemas goes against this idea. It is IMHO a more old fashioned approach of rigidly constraining the messages to an exact specification. This can make interfaces far less robust and flexible, and increase the amount of work.


    If your talking about using XML for data messaging not using schemas is just lazy. XML Schema allows optional elements and attributes and/or default values. So if it isn't required, then just make it optional. If you want multiversion interfaces, you have a different XMLSchema for each version. Then each side knows explicitly what the messaging protocol is.

    While it's probably true that things mostly kinda work if the versions don't match, you shouldn't be relying on this. There's lots of software out there that does this but that doesn't mean it's the ideal.

    If your using XML for markup of documents, schemas are somewhat less useful since the underlying semantics of the tags is usually more important.

    --
    I am not a number! I am a man! And don't you ... oh wait, I'm #93427. Ha ha! In your face #93428!
    1. Re:Not really by mesocyclone · · Score: 2, Insightful

      If your talking about using XML for data messaging not using schemas is just lazy. XML Schema allows optional elements and attributes and/or default values. So if it isn't required, then just make it optional. If you want multiversion interfaces, you have a different XMLSchema for each version. Then each side knows explicitly what the messaging protocol is.


      Lazy in this circumstance is often good. What you just described is a bunch of work, which translates into *money*. The important question to ask is what is the utility of creating this schema, vs what is the cost of doing so. The answer varies from case to case.

      After all, do I really care that much that a message passes a schema validation? It doesn't tell me that it is valid, since most of the validity is determined by far more complex criteria than can be expressed in a schema. IOW, what you assert about underlying semantics of documents is even more true with business transactions. A schema doesn't *document* those details of the "protocol".

      Furthermore, XML messages (with the exception of configuration files where schema may actually be quite useful) are normally generated by computers, not people. The rules to generate those messages are then embedded in code (or tables, which is code by another name). Once it works, it will usually continue to work. So again, the schema has offered no advantage, while adding bureaucracy.

      As an analogy, consider a schema to be like a syntax checker. It can tell you if the niggling details are right, but it can't tell you about the whether the proram will work. Since in many cases of message exchange, the niggling details are not even important, this is often a waste of time!

      --

      The only good weather is bad weather.

    2. Re:Not really by Anonymous Coward · · Score: 0

      you are so stupid. go away.

  18. Re:Who really cares? by Anonymous Coward · · Score: 0

    You really have absolutely no idea what you are talking about do you?

    I don't even know where to begin to explain all of this to you, so I'll just say this: you are a moron.

  19. SDAI by JohnFluxx · · Score: 1

    Rather than directly having DOM and some xml files etc, what do people think of having applications talk via SDAI?

  20. On the other hand -- Schemas are a great idea. by MarkWPiper · · Score: 1
    Schemas enforce rules that are there because they make semantic sense in relation to the data they describe.

    This is useful for everybody involved, and ensures proper software design.

    That said, I do agree that they may only enforce rules in "the most primitive ways", but anything you can't describe in the schema, you can always move higher up in your code.

  21. web masterbase.com, hrm... by autopr0n · · Score: 1

    Some people need to do better jobs thinking up domain names.

    --
    autopr0n is like, down and stuff.
    1. Re:web masterbase.com, hrm... by gregger · · Score: 1

      Yeah, I don't think I can visit that site while I'm at work...

      I wouldn't want to go blind or grow hair on my schema.

  22. The hell I won't by ttfkam · · Score: 5, Insightful

    Trimming bloat like namespaces and comments? Are you nuts?

    How do you embed MathML in another document (like XHTML)? Currently it's with namespaces. How do you propose to do that without namespaces? Just the prefixes? What happens when two different markups use the same prefix? Wups! You're screwed!

    No comments? This is supposed to make a better alternative to XML? It won't help readability, and it certainly isn't a major bottleneck during parsing.

    Don't want the "bloat" of namespaces and comments? Wait for it... Wait for it... Don't use namespaces and comments in your documents! Wow! What a concept!

    Maybe no Unicode in PXML hunh? So much for interoperability for any kind of data. You don't ever want your pet project used in East Asia (or Russia or Greece or most other places in the world) do you? Unicode too bloated? Why not just use ISO-8859-15 (basically ASCII w/ a Euro character -- which incidentally a Euro character isn't available in ASCII)? Oh wait! That's right. You don't want to allow processing instructions, which in XML tell you what encoding is used.

    What happens if you want to change some of the basic syntax of PXML? Because you've nuked processing instructions, you can't specify a markup version like you can in XML.

    Yes, yes. We've all seen your little pet project. I hope it was just a class assignment.

    --

    - I don't need to go outside, my CRT tan'll do me just fine.
    1. Re:The hell I won't by Doomdark · · Score: 1
      Agreed. However, it is true that most people would consider some feature or another of XML unnecessary and bloated. I would consider various entities (everything but character entities) to be such a feature, for example. I'm not missing C-style #includes in Java, and same goes for XML. If inclusions are needed, another XML-extensions should be used (isn't there something like XInclude?).

      Second feature I'd consider removing would be CDATA sections. It is nifty when manually modifying XML, but otherwise it's just a pain (not a huge one for XML-parser, but additional bloat).

      For other people list would look different I'm sure. :-)

      --
      I like paying taxes. With them I buy civilization -- Oliver Wendell Holmes
  23. Trough of Dissolutionment by Anonymous Coward · · Score: 1, Insightful

    Gartner calles this phase the "Trough of Dissolutionment" phase of the Hype-Cycle. After a massive uptake of new technology with great expectations, you realise that it's not the holy grail and swing fast and hard the other way (anti-hype)...then about six months later you enter the actual "productive" stage of the new technology...not hyped, but understood for it's strengths and weaknesses and used accordingly. Most new technology follows this trend (or so gartner says, massive generalization, but they use it as a market prediction model). The good news is, if you know the psychological states, you can avoid them, and think for yourself (rather than getting caught up in crowd behaviour -- which we all do)...and go straight to productive stage :).

    btw, DTD is dead, long live schema

  24. XML Schemas aren't just for validation by Osty · · Score: 4, Interesting

    I can't believe nobody's mentioned this yet. Microsoft has a tool that will do several things:

    • Generate an XML Schema from an XDR or XML file.
    • Generate source code (C#, VB, or JScript) from an XSD file (XML Schema file).
    • Generate XML Schemas for one or more types in a given assembly file.

    This makes writing your XSD almost trivial. The code-generation capabilities are very powerful, as well, as you can generate runtime classes for serialization/deserialization or classes derived from DataSet so you can treat XML files like any other database, etc. It's very useful if you're doing any .NET framework programming.

    I'd be very surprised if there weren't other tools out there doing similar things. I simply mentioned xsd.exe because that's what I'm familiar with.

    1. Re:XML Schemas aren't just for validation by tshak · · Score: 1

      It's also a great for documentation. I use XML for a lot of config files (as opposed to "ini", "conf" or the dreaded registry). Many times I forget all of the attributes or tags for my configs, but with an XSD I can not only look it up, but VS.NET uses intellisense to help me quickly code my XML.

      --

      There is no longer anything that can be done with computers that is nontrivial and clearly legal. -- Paul Phillips
    2. Re:XML Schemas aren't just for validation by Anonymous Coward · · Score: 0

      Look! Another Microsoft shill!

    3. Re:XML Schemas aren't just for validation by Anonymous Coward · · Score: 1, Informative

      Castor and Sun's JAXB do the same thing for Java. You can use a Schema to generate Java classes, or define bindings between existing Java classes and an XML schema to do serialization and deserialization.

  25. one is pathetic, the other ludicrous by hashmap · · Score: 1

    I've been developing with XMl for a half a year now, and I found both validation methods to be really bad

    DTD is easy to learn, simple to write, only that you cannot really do what it is supposed to do, that is validate well formedness, it is pathetic, for example, you have cardinality operators that allow you to specify one or more, none or more and optional elements but to constrain element occurances to say 2 to 5 is just too much, the founding fathers never thought about that level of complexity

    then you have the silly parsed character data as type definintion, sheesh

    Schemas aren't really better either. Most schemas are utterly incomprehensible to humans, it is like the Perl there's more than one way to do it philosphy permeates it, you can do the same schemas in so many different ways that it takes a serious mental effort to understand someone else's schemas

    gimme something better folks b/c both of these just suck

    1. Re:one is pathetic, the other ludicrous by Anonymous Coward · · Score: 1, Informative

      Yes, it's a pain to constrain the number of occurances, but it can be done:

      <!ELEMENT p (c,c,c?,c?,c?)>
      <!ELEMENT c EMPTY>

      would constrain each parent element "p" to 2 to 5 child elements "c". Something like:

      <!ELEMENT p (c{2,5})>
      <!ELEMENT c EMPTY>

      would be much better.

    2. Re:one is pathetic, the other ludicrous by bloo9298 · · Score: 1

      Doesn't that violate the requirement that the regular expressions in an element declaration must be "deterministic"? I haven't found an XML parser that complains about "nondeterminism" though.

      You could replace it with: (c,c,(c,(c,(c)?)?)?)

    3. Re:one is pathetic, the other ludicrous by Anonymous Coward · · Score: 0

      From what I understand of XML 1.0 this is not a required feature, although I will start writing these constructs in the manner you suggested since it might become required in the future.

  26. The XML Language by Anonymous Coward · · Score: 0, Offtopic

    I always thought referring to XML as a language was pretty misleading. People have said the same thing about HTML for years, but at least being able to "program" HTML actually has some worth. Knowing XML by itself has no value, it's how you use it with other languages.

  27. No they don't by autopr0n · · Score: 2, Insightful

    When you're talking about standards you need to have things specified exactly, and schemas give you a standard way to do that. And they also allow you to do things like automatically generate code blocks to represent your data in memory, saving developers of data-processing apps a lot of time. And not only that, they create a simple way to communicate between organizations. What would you have people do, look at the XML themselves and guess it's structure (which would work about 95% of the time, but that 5% will bite you in the ass when you get something unexpected).

    And finally, Schemas don't force any of that on you. If you don't need schema support, then don't turn it on in your parser. You can still grab what you need out of the tree. Although you might not be able to throw just anything into it, that's probably a good thing. The last thing the world needs is thousands of tiny, ill-conceived exotic extensions to various Datatypes. It would make achieving universal compatibility a nightmare.

    If your app doesn't need schemas, don't use 'em. If you don't need to validate, don't check em. If you need to put more data into your tree, maybe you should rethink what your doing or rewrite maybe your schema.

    --
    autopr0n is like, down and stuff.
  28. Object Modling Group? by autopr0n · · Score: 1

    Is that related to Linear Object Language?

    --
    autopr0n is like, down and stuff.
  29. Shouldn't that be "schemata"? by Charles+Dodgeson · · Score: 3, Funny

    When I was in school, the plural of "schema" was "schemata".
    </>

    I've already selected "No Karma Bonus". Beyond that I can't mod myself downward.

    --
    Prime numbers are exactly what Alan Greenspan says they are -S. Minsky
  30. Not the schemas!? by Anonymous Coward · · Score: 0

    Hopefully whatever happens it will not be the evil schemas from La Blue Girl anime flic

  31. Re:Yawn. by MisterFancypants · · Score: 0, Flamebait

    Modded me down again, huh? You little jackass. I'll get you, punk! I'll GET YOU!

  32. XML is Great of Content Syndication and much more by valmont · · Score: 4, Informative
    I notice that this topic is generating many comments from hard-core backend programmers who mainly focus on inter-application messaging and various equivalents of remote procedure calls.

    In my experience, many benefits of XML come when dealing with the presentation layers of many application architectures, with the ability to repurpose syndicated data at wil, here are a few examples:

    • RSS which defines an easy standard for any site to provide "News" in a well-defined XML Format. This allows developers to write software to aggregate news from different sites into one convenient interface, sites to exchange news headlines with eachother.
    • Google Web APIs which allow developers to create their own custom google-powered search site with their own look and feel by simply proxying a user's search query to the google server which returns search results in XML data which can subsequently be transformed in HTML before being sent back to the user via various processes such as an XSLT transformation.
    • Amazon Web API, similar in principle to the above Google API, allows developers to enhance their sites by allowing their users to search for Amazon products without having to go the Amazon site itself. One interesting side-effect of such API is that an Amazon competitor, say Barnes and Noble, could offer a similar API to their own site. Now I could allow my users to use my service to search for books and offer them results and price comparisons from both Amazon and Barnes and Noble

    Effective use of XML and XSLT allows you to easily aggregate informational data from one or multiple sources and "repurpose" for an infinite variety of business and technological goals.

    One of the main benefits of XML is that it offers and effective, textual representation of "scructured data", that can be conveniently accessed and manipulated according to a slew of various surrounding standards such as XPath, DOM, XSLT, namespaces.

  33. Lazy != Good by Codex+The+Sloth · · Score: 1

    Lazy in this circumstance is often good. What you just described is a bunch of work, which translates into *money*. The important question to ask is what is the utility of creating this schema, vs what is the cost of doing so. The answer varies from case to case.

    Work does translate into *money*, not doing work doesn't translate into *saving money* except maybe in the extremely short term.

    Furthermore, XML messages (with the exception of configuration files where schema may actually be quite useful) are normally generated by computers, not people. The rules to generate those messages are then embedded in code (or tables, which is code by another name). Once it works, it will usually continue to work. So again, the schema has offered no advantage, while adding bureaucracy.

    It's true that XMLSchema provides syntactic rather than semantic constraints. But that's *really* useful information. For example XML Schema allows type checking. Sure you can just treat everything as a string and ignore the problem. You can also use it to contrain the valid values for something with regular expressions. This allows you to do assertions at the protocol level. Again, I can get away with not using them but in the long term, that's just stupid.

    And if your schema is generated by computer doesn't that make it more useful, not less? It's like saying that COM/CORBA interfaces are nice but IDL is just pointless niggling...

    As an analogy, consider a schema to be like a syntax checker. It can tell you if the niggling details are right, but it can't tell you about the whether the proram will work. Since in many cases of message exchange, the niggling details are not even important, this is often a waste of time!

    Yes, you could consider an XMLSchema as kind of type checking and syntax checking for your XML. It's been my experience that most real problems are niggling details (unless your doing demoware). Given the broad spectrum of programming tasks out there using XML these days, it would be careless to say that they *all* need Schema (and/or schema validation) which I didn't. But saying that Schemas are always (or for that matter often) a waste of time is IMO a lazy attitude.

    --
    I am not a number! I am a man! And don't you ... oh wait, I'm #93427. Ha ha! In your face #93428!
  34. OT: how do you correctly embed flash by Mustang+Matt · · Score: 0, Offtopic

    This is really offtopic, but I figure there are a lot of w3 savvy people reading this column.

    Is there a correct way to put flash on a page and pass validator.w3c.org for valid HTML 4.01?

    --
    The man who trades freedom for security does not deserve nor will he ever receive either. - Benjamin Franklin
    1. Re:OT: how do you correctly embed flash by ubernostrum · · Score: 2, Informative
      Is there a correct way to put flash on a page and pass validator.w3c.org for valid HTML 4.01?

      Yup. Even in XHTML. Check out this article on A List Apart for a useful method.

  35. Re:Who really cares? by Anonymous Coward · · Score: 0

    if you don't care about validity, your program will not work correctly. in short, it will "suck". please don't write programs that suck, as there are plenty out there already. thank you.

  36. Re:Blah, blah, blah by Anonymous Coward · · Score: 1, Informative

    Oh my, where to begin. Please, can't we get some folks in here that have actually worked on real, professional systems? Only a complete moron would make a statement like the parent post. And when I read it someone marked it Insightful, wow, only a bigger idiot (or maybe a PHB) would do that.

    First off, Xml is not hype. In it's simplest form its a format that has standard parsers on every platform. In it's most robust, it's a terrific data description language that can be used to describe really complex data.

    Here's an example of the power of Xml, in .NET there are XmlSerialization and Deserialization engines. Basically, you can take any object and get an xml representation of it (Deserialize), and by the same token you can make an Xml representation of an object and Serialize it into the object. Using these techiques allow you to pass data between application layers or between servers without getting all talky (i.e., in one call instead of setting individual properties, etc).

    Now, this is basically in the MS world what COM does but the power here is that you're passing complex data types from one application to another in a standard format.

    Here's another example, we wanted to store all error messages for an application in a standard xml file. I created an Xml Schema for the file to make sure that all of our developers entered the error codes in a proper format. At build time, I have a script that validates that the file is correct. Furthermore, to help the developers when they update the Xml file, VS.NET provides IntelliSense to let them know what tags go where (thanks to the schema reference).

    To me, that's pretty powerful stuff, considering that now I know at build time that everything concerning that section of the app is set up correctly.

    Personally, I think those of you out there who don't understand the value of Xml and Xml Schema also don't have a lick of real world programming experience. Hopefully I'll never have to work with you...

  37. I agree with you on entities by ttfkam · · Score: 2, Informative

    but I think you are totally off base with regard to CDATA sections. If anything, they make life easier for the parser, not harder -- at least when I was writing a parser, CDATA made things faster and easier. In cases where you are including a great deal of symbolic data -- for example, when you want to include a source code segment or ASCII art -- it is both easier to read, faster to parse, and *less* bloated.

    '<' takes up less space than '&lt;'. Assuming you have more than three or four of these in your text node, a CDATA section reduces the size of your document. For the parser, after the CDATA section is begun, only the character sequence ']]>' can end it. This means the parser only has to check for ']]>' and not '<', '&', '<?', '<!', etc.

    And yes, there is such a beast called XInclude, but it's currently only a candidate release. It's used like this:

    <foo>
    <xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="bar.xml" parse="xml">
    <xi:fallback>
    <para>This text goes in if bar.xml cannot be found or has an error</para>
    </xi:fallback>
    </xi:include>
    </foo>

    Hopefully most entities can go the way of the dodo.

    --

    - I don't need to go outside, my CRT tan'll do me just fine.
    1. Re:I agree with you on entities by Sayjack · · Score: 1

      I wish they'd advance XInclude along. It fills a really needed function in the XML world. I'd like to see xml editors and such start honoring the XInclude specification in it's current state so that I could edit meta documents which span many files.

      --

      -- Good judgement comes with experience. -- Experience comes with bad judgement.

    2. Re:I agree with you on entities by Doomdark · · Score: 1
      but I think you are totally off base with regard to CDATA sections. If anything, they make life easier for the parser, not harder -- at least when I was writing a parser, CDATA made things faster and easier.

      Well, CDATA is nothing like entities no matter what, and parsing them is not THAT much of a problem. But there are some subtleties, when programmatically accessing CDATA blocks (when manually editing there are no problems; it's just automatic processing that's trickier). In any case, CDATA is an extra feature that's not really "needed"; normal quoting can be used instead... it's a convenience feature.

      However, doing quote/unquote when parsing/outputting is a breeze as well, and outputting CDATA sections automatically and reliably is tricky. At least if you want to do it 100% foolproof (granted, need to include ]]> token anywhere is a small, but still a possibility). You need to check for ]]> and split contents into two. When parsing contents the problem (minor I guess) is that whereas text segments are usually normalized (ie. when reading a new doc without mods, you never get 2 text segments in a row), you can get combination of CDATA blocks and text segments; there's no way for parser to combine them on the fly (well, DOM-parsers do have the normalize method that may do combination? Or perhaps that's not allowed by specs?)

      But just like entities, CDATA is meant for manual quick-quoting of blocks, and makes it easier for humans to quickly understand the contents. For programs it doesn't make big difference.

      ... oh yeah, I probably spent too much time when writing my own streamable XML-parser; when not doing full read in memory things to get more involved. :-)
      (streamability, ie. reading only what is needed currently while still managing some structure unlike SAX, was needed to handle > 100 meg XML export files... implemented both read-only and write-only versions for internal use).

      --
      I like paying taxes. With them I buy civilization -- Oliver Wendell Holmes
    3. Re:I agree with you on entities by 21mhz · · Score: 1

      Hopefully most entities can go the way of the dodo.

      External entities are useful as a kind of "macros", especially in the markups that tend to be human-edited. You can define a library of entities, assign it a Public and/or System ID, and plug it in throughout your documents. It's very handy to use &YourCompany; to insert your company name with all the proper mark-up, and when the name changes, it needs to be edited in but one place.

      --
      My exception safety is -fno-exceptions.
  38. DTDs by FrancisR · · Score: 1

    Flame me if you wish, but I prefer DTDs when working with XML. DTDs are MUCH easier to create than schemas. Plus, there's no annoying namespaces to deal with.

  39. Great article! by ttfkam · · Score: 1

    I still wonder whether or not a transport based on XML (or even ASN.1 representations of XML) would ever be made available to CORBA. All of the advantages of IDL with the serialization and interoperability of XML.

    --

    - I don't need to go outside, my CRT tan'll do me just fine.
  40. Parsing without a DTD by Animats · · Score: 3, Informative
    It's actually possible to parse even SGML without a DTD, most of the time. I do this routinely in the SEC filing parser behind Downside. SEC filings come as a horrible mix of SGML and HTML, with occasional uuencoded PDFs and images. The SEC's validation is very light, and isn't based on a DTD. What comes through is a mess.

    The key to robust parsing is deferring the decision as to whether a tag has a closing tag until you've seen enough input to know. You have to read the whole document in, build a tree, then work on the tree, but for anything serious you want to do that anyway.

    This parser is in Perl. If anyone would like to take it over and put it on CPAN, let me know.

  41. Re:XML is Great of Content Syndication and much mo by AuMatar · · Score: 1

    Ok- what if google, amazon, etc were to do the same thing, but translate in binary data, without tunneling overport 80 (which is bad, evil, and vile. Just ask any sys admin), and provide a library that parses the binary data for you?

    It would be the exact same thing- except it would be faster, use less bandwidth, be more secure, have session level security (which HTTP lacks). But it wouldn't be buzzword compliant.

    --
    I still have more fans than freaks. WTF is wrong with you people?
  42. only partially agree by u19925 · · Score: 2, Interesting
    the thing that i don't like about dtd as well as schema is that they flag documents as invalid if it contains extra stuff. i guess there should be a validation mode which should flag document as valid as long as it contains atleast those stuff that i need it (and ignore additional stuff). e.g. a document may contains book name, author and price. I may be interested only in name and price. why should I consider such a document to be invalid? also, why should I validate whether the author name is in the correct format? can i just apply partial DTD (which contains only name and price) and ask the parser to validate the doc? Not at the moment.

    I don't agree with you that schema validation is useless. In many cases the documents are fully processed for business rules much later, but you want acknowledgement that your document has reached correctly and it passes atleast the most basic validation (e.g. dtd or schema validation). XML Schema do wonderful job at that. In our case, we always keep schema validation on new doc types until the system is stable and bug free and then remove validation for efficiency (for internal docs). We have discovered many subtle bugs in system which would have been extremely hard to track by looking at application error but were easier to find by looking at parser errors.

    1. Re:only partially agree by VP · · Score: 1

      the thing that i don't like about dtd as well as schema is that they flag documents as invalid if it contains extra stuff.

      One of the benefits of schema validation is that it is not a "yes/no" result like DTD validation is. When properly using the PSVI (Post Schema Validation Infoset) you can achieve exactly the results that you want - you will know if the parts of the XML instance that you are interested in are there, constrained by the partial schema that you provide...

  43. Relax-NG is a Draft ISO Standard by Euphonious+Coward · · Score: 2, Interesting
    I gather that Relax-NG is on track to become an ISO Standard. Regardless of what happens with W3C, the ISO's XML schema based on Relax-NG won't go away. Given its natural advantages -- including the enormously greater ease of implementing it -- we might expect to see many more tools built around it.

    It would be somewhat unfortunate if both end up popular, because it will be more work to maintain both sets of tools than either one alone. That's probably what will happen, though, at least in the short term.

    1. Re:Relax-NG is a Draft ISO Standard by roundand · · Score: 1

      It would be somewhat unfortunate if both end up popular, because it will be more work to maintain both sets of tools than either one alone.

      That's only partly true. Relax NG is mainly about structural validation (what elements and attributes are allowed in what elements) but it is designed to permit any implementer-supported simple type (non-structural content: string, dates, numbers, reg-exes etc) validation system using the datatypeLibrary attribute.

      An obvious candidate for this is the conveniently modularised XML Schema Simple Types. This could be fruitful - the XML Simple Types are comprehensive and complex, and have some critics, but they are less controversial than XML Schema Structures.

  44. Schema, and Here's Why by Brad+Wilson · · Score: 1

    DTD is about document validation.

    Schema is not only about document validation, but also about layering a rich and extensible type system into XML. DTD can't touch this.

    SOAP actually went down the path of adding types to Schema until the actual Schema team did it, thereby simplifying the SOAP system quite a bit.

  45. Jim Clark Rocks! by Anonymous Coward · · Score: 0

    Listen to what he has to say.

  46. The Three Schemata of Palmer Eldritch by Anonymous Coward · · Score: 0

    Wasn't that a book by PKD?

    1. Re:The Three Schemata of Palmer Eldritch by Anonymous Coward · · Score: 0

      It's 'Stigmata'.

  47. Re:Blah, blah, blah by Anonymous Coward · · Score: 0

    Schemas, XML, blah, blah, blah. What a load of shit. I use HTML. If it ain't broke, don't fix it.

    Do you even know what XML is for? HTML is pretty much restricted to displaying information. XML goes far beyond that. It is a method of representing information hierarchically using text. Why does that matter? It's powerful because it allows you to express data relationships in a way that CSV data cannot (and that HTML couldn't, and shouldn't, ever hope to).

    For example, are you familiar with how Sun RPC works? One of the things that makes it ugly is that you have to do all sorts of nasty serialization of binary data structures to be able to express them across a wire in an architecture-independent way. The data is human-unreadable, ordering and bytesize is critical, and you generally have significant code changes on both ends if you modify data structures. XML does not suffer from these problems. You can describe data structures very easily, and you can extend them at a later time with little problem. It's architecture-independent, since the data is simply a text character stream in flat text blobs/files, so you can read data cross-platform. And a human can read it.

    I'm currently working on a project which requires that we transmit huge amounts of relational data between different vendor's databases on machines with different processor architectures. XML makes this exceedingly simple. It would be near impossible to do what we're doing without XML.

    Clearly, HTML is useless for this sort of thing. This is not even remotely what it's intended for. Likewise, XML is really not intended as a display language, though it *could* be used that way. In reality, nobody does, though, because HTML works well. (Never mind that XML can pretty much be viewed as a superset of HTML.)

    Hows about educating yourself about things you feel obliged to slam? Maybe you'll look like less of an idiot if you do. Or perhaps less of a troll.

  48. Re:XML is Great of Content Syndication and much mo by sporty · · Score: 3, Informative
    Wow, I'm just runnin into you all over the place, aren't I.

    Ok- what if google, amazon, etc were to do the same thing, but translate in binary data, without tunneling overport 80 (which is bad, evil, and vile. Just ask any sys admin), and provide a library that parses the binary data for you?


    Well, that's why you'd use HTTPS with certificates, no? And nothing is wrong with the port. If you meant HTTP, then yeah, it's plaintext.

    Mind you, I don't have a choice of OS's at work. We use solaris and linux. Now amazon, being a windows shop (i'm guessing), only gives out dll's. Great, now I'm not supported. So fine, we use java. Did you know java class (binaries) are versioned? I'm stuck with 1.3.1 ATM and a 1.4 jdk is in the works. Problem is, some jdk's use one version of the binary while another uses.. another. I always hoped it was a universal format. Sadly let down.


    It would be the exact same thing- except it would be faster, use less bandwidth, be more secure, have session level security (which HTTP lacks). But it wouldn't be buzzword compliant.


    That's why technologies like JAXB and translets are poping up. with JAXB, you can bind particular classes to particular schemas/dtd. It speeds up processing. Translets are just compiled XSLT. Really fast since your xslt can be compiled/interpted once, run anyhwere. Kind of a chain technology. translet->xslt->java->machine language.

    And mind you, nothing is more secure about a binary format. It's just obfuscated. Hell, I hacked rengeade bbs's users database format so i can write a user deletion tool. Were they going for security, prolly not. Point is, binary is just obfuscated.

    As for your sessoin level security, that's not the job of your data format. Your data format and transport layer should be indepenent. It's why you can do SOAP over HTTP, SMTP/mail and possibly anything else that has a function() like response format. request->response. It's probably why ssh is so great. All it is, is a way of authentication, communication and encryption. You can create ssh tunnels for http as a proxy.
    --

    -
    ping -f 255.255.255.255 # if only

  49. I'd be happy... by AndyMouse+GoHard · · Score: 1

    "constraining the structure of XML documents"

    I'd be happy if we could constrain the use cases for XML. It seems to have solved everything! How about limiting its use to the problem set it solves - and I'm not talking about machine to machine communication. What a bloated pile of bits SOAP is. Imagine wrapping a remote method call in layer-upon-layer of XML tags?

    Save the world? Heh.

    Bill

    --
    Upon seeing the box was too small, Schrodinger's Elephant breathed a sigh of relief.
  50. Re:Blah, blah, blah by NineNine · · Score: 0, Flamebait

    I know. I did some XML development when I was a computer guy. I was trying to make a point... what in the hell does the W2C have to do with anything non web-related?

    And, as far as the usefulness of XML, I just found it to add extra overhead. The parsers are cute and all, but it doesn't generally help since you still have to know the strucure of the data. So, between the XML creation, the extra data being transmitted, and the parsing, if I want performance, I'll stick with a binary pipe or a simple comma-delimited stream. XML really isn't a big deal at all. Nothing but hype.

  51. Re:XML is Great of Content Syndication and much mo by Randolpho · · Score: 1

    There's nothing that says it *has* to be on port 80, but providing XML rather than binary data reduces both the initial development *and* the maintenance time required to release the data to the public. Also, session level security is unnecessary in a public publishing environment. Finally, with modern compression techniques, bandwidth isn't wasted.

    --
    "Times have not become more violent. They have just become more televised."
    -Marilyn Manson
  52. no one will read it but... by Anonymous Coward · · Score: 1, Insightful
    One of the major flaws of schema, which the author didn't elaborate is having a complexType which inherets from an external class/complextype which is referred by a URI. When I needed that functionality, it was impossible w/o adding my own extension to existing schema drivers. There are ways around, like including the external reference, but in a complex object structure, that's not desirable or feasible in many cases.

    The schema team is aware of these problems and have acknowledged that it is a deep problem with schema, which isn't easily fixed. The author even mentioned he used DTD because he didn't want the weight of schema. One of the most annoying things about schema that I've seen is people try to export database tables as tables for a OO application to use. that makes absolutely no sense and schema in its current form doesn't discourage that kind of usage. Many people in the Java prefer castor for that reason. Perhaps the author needs to research about DTD, Schema, marshalling, unmarshaling a bit further to see how and when they break horribly.

  53. They already addressed this issue by ebcdic · · Score: 2, Interesting

    The Schema WG decided on "schemas" so as not to add unexpected obscurity to the specification.

    See this message.

    Expected obscurity is of course just fine.

  54. Since when... by ebcdic · · Score: 2, Insightful

    .. was a language only something you can "program"?

    If it was called it a programming language that would be wrong, but it's certainly a language.

  55. Re:XML is Great of Content Syndication and much mo by alannon · · Score: 2, Insightful

    I'm sure their library would give you the data in exactly the format that you need it in, be available for the language that you want it in, the platform that you need it on, and they will continue to update and support every single variety. You would also, therefore, completely trust this closed, 3rd party code that you've now integrated into your product, to not have any bugs or security holes.

    Open data formats are a good thing.

  56. Re:Blah, blah, blah by Anonymous Coward · · Score: 0

    I know. I did some XML development when I was a computer guy. [...] I'll stick with a binary pipe or a simple comma-delimited stream. XML really isn't a big deal at all. Nothing but hype.

    Well, there are "computer guys", and then there are "computer guys". I can see why you're not one any more.

  57. Re:All this hype about XML-Pedantic by Anonymous Coward · · Score: 0

    "Will it change the world? Of course not. It's just a markup language. Will any other computing tool change the world? Of course not. The end users have never cared how you got to the solution. They cared only if you got to the solution faster than the other guy."

    Maybe that's part of the problem. XML isn't a "markup" language. XML is more a toolkit for creating, shaping, and using markup languages. Or another way to put it, is it's a set of rules for building markup languages. But not a "markup" language itself. No wonder people are complaining about it. People who expect HTML to be a "formatting" language are have a similiar problem.

  58. Ironic, no, really... by rodentia · · Score: 3, Interesting

    that the same applications of XML that drive the keening about bloat and hype seen in these comments are precisely those which are driving the specs to the wrong side of the 80/20 for XML/XSL's original goals: bringing the semantic power of SGML and DSSSL to the Web. Goals for which its purist cousins RelaxNG, REST, et. al. remain admirably suited.

    The back-end curmudgeons are right, XML stinks for a universal wire format. But for loosely-coupled, message-based, semantically-rich systems it is hard to beat. And document-oriented systems which don't use XML barely deserve notice any longer.

    I gently refer s-expression trolls to paul and oleg

    --
    illegitimii non ingravare
  59. Re:XML is Great of Content Syndication and much mo by Anonymous Coward · · Score: 0

    Ok- what if google, amazon, etc were to do the same thing, but translate in binary data,

    OK, what if that technology existed for decades, and Google, Amazon, etc never made use of it?

    I can understand people being sceptical about tecnology snakeoil, but you got to remember that Hype gets people thinking about Applications, and Applications uitimately butter most of our breads.

    Your world where we are waiting for a world-wide distributed consumer network running on COBOL and ASN.1 and DCE RPC just never happened.

  60. Use both! by Capsaicin · · Score: 4, Insightful
    This is true, but DTD's are more human readable IMHO.

    Absolutely. All the possible attributes, and kids of any element are there in one (OK, two) place(s) and you can garner the information about any element in a matter of seconds. With XML Schema you have to keep track of the levels of nesting and rifle through a series of name/value pairs to get the same information. It is in its greater expressiveness that the advantage of XSD is seen to lie. And there might be applications where this expressiveness necessitates the use of XSD.

    However, XML Schema, has besides this expressivenss, one other great advantage. It is XML. As such it can be processed with the same XML tools one uses elsewhere with an XML application.

    As an example, in one application, I take a DTD, translate it into XSD, and then run an XSL stylesheet over the XSD file to generate some base code used in my application. In this way I can ensure that my code will automatically be changed to reflect any minor changes made to my Schema.

    So while I continue to write DTDs, I look on XML Schema as a way to translate, and bring my DTD into the XML universe, with all its attendant advantages.

    --
    Better to be despised for too anxious apprehensions, than ruined by too confident a security. --Edmund Burke
  61. XML and Schemas by Zebra_X · · Score: 2, Interesting

    The value of XML is not the structure of the data. The tags, nodes, elements and attributes are just another format for parsing data. The power comes with the ability to VALIDATE the format. No other data exchange format has such an integrated approach to assuring the validity AND structure of data. Also, the hirearchical nature of XML makes it idealy suited to most information sets. It also, takes the organization of relationalal data to another level because node groupings inherently define a relationship between the information that is contained in the document. XML as just XML isn't that special but the ability to nest information and validate the structure make XML a more *reliable* data format. In the world of CSV files, ini files, and excel spread sheets and the like, it is a welcome change. As the tools evolve to take the comlexity out of creating things such as schemas. XML's potential as an interchange format will be fully realized. As for its verbosity, it is needed. The less structure the more the format is left open to interpretation.

  62. Links by SuperKendall · · Score: 1

    I was going to mention RELAX, but since your post is already here I'll just add a few links:

    Official?? site of RELAX (RELAX earthiling! we come in peace!)

    OASIS on Relax-ng (much more dry).

    I'm not sure it would be so bad if both standards came to be popular. A few years ago at an XML conference one of the speakers described the XML world being split into three camps - data modelers (who would be backing XML-Schema), Document-centric folks (who would back RELAX), and one other group (whose leanings I forget but I guess they don't care about typed XML documents!!). Having a data-centric and document-centric approach to XML might not be so bad, each having good uses in different scenarios.

    --
    "There is more worth loving than we have strength to love." - Brian Jay Stanley
  63. Re:Yawn.-Were not in kansas anymore. by Anonymous Coward · · Score: 0

    " Modded me down again, huh? You little jackass. I'll get you, punk! I'll GET YOU!"

    Don't forget his dog too.

  64. GZIP, the processor hog? by SuperKendall · · Score: 1

    You are really reaching. Gzip is not that processor intensive for a 3k gzip file!! Even older 486's should be OK with that.

    --
    "There is more worth loving than we have strength to love." - Brian Jay Stanley
  65. I tend to agree, but don't dig out the ORB yet... by SuperKendall · · Score: 2, Insightful

    I reallly like the approach of the REST guys, a much lighter weight and more intuitive approach to web services than SOAP.

    Basically, they are saying - use HTTP as it was intened to be used, not abusing it in a way it was not meant to be abused.

    --
    "There is more worth loving than we have strength to love." - Brian Jay Stanley
  66. Thanks for that link. by Mustang+Matt · · Score: 1

    That is incredibly helpful and well written.

    You just gained a fan!

    --
    The man who trades freedom for security does not deserve nor will he ever receive either. - Benjamin Franklin
    1. Re:Thanks for that link. by ubernostrum · · Score: 1
      You just gained a fan!

      Not sure that's justified; Drew McLellan came up with it, after all. In general, though, ALA is a great site for Web design info; they dont' update as often as they used to, but the articles are always worth reading.

  67. Uncalled-for XML-RPC flames by deppe · · Score: 2, Insightful

    I see a lot of replies here that flame XML as an RPC protocol. Using XML as a message format for RPC is just one small part of what you can do with it.

    The real strength you get for free when using XML is that you can use standard parsers and transformers to handle different kinds of data in a uniform manner.

    I'll give you an example..

    Today I was working on my wxWindows application, and I needed to translate (i18n) a lot of windows, dialogs and menus to a few languages. The resources are specified in XRC which is an XML format.

    Within XRC files labels for buttons and other widgets are written in the language they were created in, usually english.

    What I did was write an XML catalog file for each language. I then ran an XSLT processor with the XRC files, using the catalogs as plugins with a simple pattern match rule -- and I didn't have to write one single line of customized code to do it.

    Though for RPC I'll stick to CORBA with IIOP any day :-)

  68. Who needs PXML when you got HTML? by tomzyk · · Score: 3, Funny

    HTML is a subset of XML - an alternative to the bloated XMl language.

    believe me, you wont use XML (and those pesky XSLTs) anymore if you once tried HTML

    AND (most importantly) in virtually every single web browser that you can find, support for viewing this format over the internet is available and built into the browser itself!

    --
    Karma: NaN
  69. Check out Relax NG (RNG) by sbwoodside · · Score: 3, Informative

    I recently decided to go with RNG for my schemas after reading up on W3C XML Schema (WXS) and Relax NG (RNG) . RNG is just so much easier to read and understand. The real clincher for me was the inability in WXS 1.0 to describe non-deterministic structures. I mean, give me a break. I can't allow people to put the elements in a different order? That's just lame.

    What's more there's a fantastic tool dtdinst that converts DTDs into Relax NG. There's also tools to convert back and forth between WXS and RNG. So if I ever need to provide someone with a WXS schema I can just run it off automatically.

    Now I'm working on a system using AxKit to parse out the RNG schema, generate HTML forms for completion, roundtrip the data back to the server, assemble an instance document using DOM and display it using XSLT and CSS. But that's another story. People who don't "get" XML should really check out AxKit.

    simon

  70. XML assholes by Anonymous Coward · · Score: 2, Insightful

    I hate snobby XML evangelists who do nothing but propose that companies change the systems that that have been working for them for 50 years, all to XML and the dozens of related technologies.

    People should realize that XML adoption is a matter of degrees and it is perfectly acceptable to adopt just the concept of a simple markup language. Adoption of XML should NOT necessitate the adoption of XSLT, XHTML, SOAP, and every thing else under the sun that is related to it.

    If you have a database system with a protocol for passing messages, then maybe add a new type of XML message with a privately known schema. Don't rip up your system and rewrite it as an XML web service, have it talk only the SQL Server XML services, only use XSLT to transform data, and only XPath for retrieving data.

    I'm so fucking sick to death of overarchitects who never actually seem to get the job done on time. (And I'm no XP fan, either, so that's saying a lot!)

  71. Tools availability? by Advocadus+Diaboli · · Score: 2, Interesting

    I would happily play around with XML Schema if only my Emacs/PSGML mode would accept a schema and treat it in the same way as it treats a DTD.

    And sorry, I have neither the time to write my own Emacs mode nor the money to buy commercial XML tools.

    Well, so I keep watching the tools and if they are Schema ready then so am I. :-)

  72. Where to begin... by ttfkam · · Score: 2, Insightful
    Given this:
    struct message {
    char *str;
    int num;
    };
    ...and the fact that you forgot to pass dst to enc_uint32be...

    What happens when you want to have an Alpha box, a Pentium box, a handheld device, and an UltraSPARC box talk to one another? Simple, right? After all, an int is always 32 bits...err...umm...and everything is big endian...err...ummm...and all architectures use the same data structure padding... Well, at least your program took care of the padding issue...for that one data structure.

    Wups! We've got a core dump waiting to happen. Okay, so we'll just make sure that everyone is using the same sizes and padding all around for any data structure I may need to pass over the network. Of course, this requires a mapping layer so I don't have to do this for every app and data structure that I write. I know: it's for interfaces and defines the general structure. I'll call it Interface Definition Language or IDL for short. Now I'll make sure that all of this information serializes to the network correctly and decodes on the other end without errors. This will be kind of like a stock broker it that I tell it what I want, and it translates it into something usable but more complex than I need to deal with for each app. I think I'll call it a broker too...an object broker...wait...missing something...messages going back and forth...asking for resources...aha! Object Request Broker! Yeah! Oh wait, but people may have different implementations and I want to be able to work with others. Let's agree on this. We'll call it the Common Object Request Broker...ummm...Architecture! Yeah, that's it!

    Hmmm...now I need to make a configuration file for my program. I'll make it plain text. Hmmm...but it needs some kind of structure. I'll make it key/value pairs -- just put in a few equal signs and I'm done. Uh oh. My program is fairly modular, but I want to keep all of the settings in one place. If it's just key/value pairs, everything will get jumbled together. I know! I'll use an INI file. Microsoft used to use those to group items together. Now I can just use those nifty GetPrivateProfileString calls, specify the group and the key, and away I go. But uh oh! I have this subcomponent that requires a group within a group. Let me hack something together... Argh! This data file is getting tougher and tougher to parse. I want to finish writing my program that does something useful, not fiddle away at a dumb configuration file parser. What I need is a standardized, hierarchical format that is still plain text and human readable. Hmmm...what's this "XML" thing? I can have the configuration all in memory or read it in piecemeal? Parsers are already written? If I don't like the parser I'm using, I can just plug in another one? I can read the file from any programming language out there? Sign me up!

    FYI: This binary vs. "plain text" tripe needs to go away. All text files are binary files. What is the letter 'B' but a 0x42 (66 in decimal, 01000010 in binary)? It's a piece of translation software that turns that 0x42 into the character 'B' on our screens. I just so happens that <foo/> is clearer to the human eye -- after the preliminary software translation step -- than a serialized C data structure. Clearer to the human eye means that the human fixing bugs can see the error faster. CPUs are hovering aroung the 3GHz range now, but the human mind seems to be falling further and further behind Moore's Law. Perhaps we should help the human mind out a bit and give a bit more work to the CPU.

    Yes...I know...I'm a dick. I'm comfortable with that.
    --

    - I don't need to go outside, my CRT tan'll do me just fine.
    1. Re:Where to begin... by bobaferret · · Score: 1

      amen brother (or sister)

      we pass so much information around between different systems. And use that data for multiple purposes that XML saves us huge amounts of work/time/money.

      For example: We move court cases around internally at a court on pc, e-filing systems, and document management as well as case management and docketing. At the same time that same document heads out over the net to the public web site where it is displayed on a web site, used to poulate databases, notify the state police...etc etc etc. The average document/court case is viewed at least 15 different ways by 8 different systems in the span of 10 min. Most pf the system are out of our control, with ever changing data requirements. We just edit the XSLT and move on. No need to recompile and redistribute code. It's great! Add in the need to generate reports off the exact same data, and it gets even better. Our standing rule is that if a peice of data or protocal has a good chance of changing or being reused in a different way, we go with XML for it. For quick and dirty one time things, generally not.

      -jj-

    2. Re:Where to begin... by Anonymous Coward · · Score: 0

      sheesh..I was about to reply..but reading your last line made it unnecessary

    3. Re:Where to begin... by Anonymous Coward · · Score: 0

      Maybe he was a bit of a dick about it, but he's also quite correct. It all balances out I think.

  73. Re:Blah, blah, blah by troggan · · Score: 1

    At my firm we use XML to store all our Data. OK, the Data consists of Laws and other Text. But with XSL we can easily convert the Data into HTML-Files (Online/CD-Rom) or in LaTex-Files (Books). 1 Format for everything. So XML/XSL is not only INI/CSV Files...

  74. Power is in the standard, not the technolegy by Anonymous Coward · · Score: 1, Interesting

    The usefulness of XML schemas and the XML language in general comes from the fact that it's a standard.

    Sure, you could do the same things with comma-delimited text files. But are there XSLT processors for comma delimited files? Could you easily transform a comma delimited file into:
    1) an HTML file
    2) an office 2002 file
    3) an open office file
    4) a pdf
    5) etc.
    6) different versions of all of the above that presented the data in a different manner

    You could do it, but it wouldn't be easy. The fact that the entire industry has standardized on XML and XML schemas makes many things much simpler than before. That's it.

    There is nothing magical about the language except for the fact that it is a standard.

  75. Sure, I remember CORBA! by SpinyNorman · · Score: 1

    In fact I use it all the time.

    I work on a distributed Solaris based system (major test platform for a MAJOR telco) that uses CORBA for:

    - Internal inter-process communications, transparently calling other procesess whether on the same host or not

    - Interfacing with underlying test systems running on other platforms (some of which are nice enough to use standards based access via CORBA)

    - Providing access to our system from clients running on a range of systems (incl. Sun, Windows) in both C++ and Java

    CORBA is great if you use it for what it's meant for!

  76. flexible & powerful != difficult and confusing by Bazz · · Score: 0

    Suggest you (and anyone else finding W3C XML Schema confusing and/or difficult) take a look at RELAX-NG.

    RELAX-NG is an alternative schema language that is much more flexible and easy to use than W3C XML Schema. RELAX-NG also defines a non-XML syntax that makes it even easier to work with, since the non-XML syntax can be translated into XML using a tools such as Trang. There are many other tools that make it easy to work with RELAX-NG.

    Eric Van der Vlist is working on a RELAX-NG book that you can read at http://books.xmlschemata.org/relaxng/

    Take a look at RELAX-NG - you might never want to work with XML Schema again...

  77. Isomorphism Schmiessomorphism! by jefu · · Score: 1
    That XML describes trees and so does lisp is a good observation and worth noting.

    We can even describe a subset of lisp sexes that would be more or less isomorphic to XML. Not all lisp sexes work (I believe, but would need to read the XML specification carefully to pontificate) : (1 2 3) would need to be something like :
    <> 1 2 3 </>
    but if all the sexes started with (atom (attribute-list) ... ) the mapping would be pretty complete.

    So, if the notations are isomorphic (that is if there is a deterministic mapping from each to the other where composition gives the identity on both sides) there is no problem. Write a program that does the mapping and then work in whichever syntax you prefer.

    I'd suspect though that such a mapping is tough. I remember watching a debate on an XML mailing list about the fact that it was difficult to produce a canonical form for an XML structure. I don't know if that has been resolved, but I do remember that some of the problems raised were quite subtle and difficult.

    Which, if true, would mean that the structures (XML and Lisp) would be more homomorphic (whatever that means here) than isomorphic. Which (at least for those of us for whom "homomorphism" is not a scary word) raises questions of just what is, and is not, preserved.

    That said, the parallel with lisp is quite interesting and productive. On a couple of occasions I've found that converting XML to lisp and doing some lisp magic the converting back has been productive and far easier than using the XML tools available.

    Even better the analogy with lisp raises some very interesting ideas that I keep wanting to get around to exploring - but don't.

  78. ... One is derided, one is Derrida (???) by jefu · · Score: 1

    When James Clark speaks on the subject of SGML/XML/... I listen. And having looked at RELAX, DTD's and SCHEMA, and having discovered that none of them are easy to do correctly, I tend to favor RELAX. Largely because James Clark does usually know what he's talking about.

  79. New notation by streepje · · Score: 1

    The more I look at XML and the whole circus surrounding it, the more I get the impression that these people are doing nothing more than reinventing the whole of computer science in between tags.

    For example, XML Schema and RELAX NG both look like nothing more than minor extensions on regular expression matching. It looks like so much new notation but no new content.

    What real insights are being gained here, if any?

    1. Re:New notation by Anonymous Coward · · Score: 0

      Actually, they look a lot like ABNF with SGML syntax. Which is sort of the point. RELAX NG and XML Schema are intended to describe the structure of XML documents. This is not a reinvention of ABNF or regular expressions: it's an application of the existing technology to a new field.

      The new notation means that schemas can be parsed by an XML parser. The advantage of this is obvious: your program can ensure the XML file it's reading is valid automatically and without adding too much bloat for a separate parser. Thus, where you might have a bunch of code to do validation of your data format, I will have a RNG spec as part of my documentation (it's human-readable) that can automatically test the validity of my document.

      This is a good thing. It saves me time and effort. It gives me some sense of security. It's not a revolution, but it doesn't need to be. This is simply an admission that all of the work we know and love from the ghost of CS past is still the best we've got. Bringing that work into a new arena isn't reinventing the wheel. In fact, it's the opposite -- they're reusing the wheel, noting that it's conceptually sound.

  80. Hyppety Hop to the XML Shop by jefu · · Score: 1
    "All that XML is, is an easy-to-parse, text based data transfer mechanism."

    Might I also add "storage".

    But that word "ALL" up there. Thats a lot. Think of all the different data transfer/storage mechanisms people have invented. Unix types should go browse /etc for config files - passwd isn't the same as termcap isnt the same as sudoers isn't the same as sshd config isn't the same as ....

    And so on. And on. And on. Think of all the one off formats people have invented. Mail (message format). HTML. HTTP. SMTP. RPM. passwd, printcap, procmail ...

    Try to come up with a general markup mechanism for various kinds of data and you'll see how tough it is.

    Of course, the difficulty is that to make XML powerful enough to handle these varied kinds of data representations, it gets big and pointy. And there are difficult problems not very far beneath the surface - XML does not solve them all by any means, but does provide at least a starting point.

    And there are many more places where XML could at least provide a starting point.

    XML is just a way to markup certain kinds of structured data. Thats a lot, and XML is a non-trivial solution (or set of solutions) to a non-trivial problem.

  81. Hello World in XML by Anonymous Coward · · Score: 1, Insightful

    <?xml version="1.0" encoding="UTF-8" standalone="no"?>
    <text xmlns="urn:iana:xml:ns:cruft-1.0"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema instance"
    xsi:schemaLocation="urn:iana:xml:ns:cruft my_ass.xsd">
    <phrase length="11" language="english" subfamily="us" charset="latin-1">
    <word length="5" capitalized="yes" propernoun="no">
    <letter capital="yes" type="ASCII" bits="8">H</letter>
    <letter capital="no" type="ASCII" bits="8">e</letter>
    <letter capital="no" type="ASCII" bits="8">l</letter>
    <letter capital="no" type="ASCII" bits="8">l</letter>
    <letter capital="no" type="ASCII" bits="8">o</letter>
    </word>
    <space breaking="no" width="normal" type="ASCII" bits="8"></space>
    <word length="5" capitalized="yes" propernoun="no">
    <letter capital="yes" type="ASCII" bits="8">W</letter>
    <letter capital="no" type="ASCII" bits="8">o</letter>
    <letter capital="no" type="ASCII" bits="8">r</letter>
    <letter capital="no" type="ASCII" bits="8">l</letter>
    <letter capital="no" type="ASCII" bits="8">d</letter>
    </word>
    </phrase>
    </text>

  82. XML has no braces, so it sucks by tjstork · · Score: 1
    I for one do not understand why XML developers picked such a verbose representation. Clearly, instead of tags, a single word and an arrow is all that is needed:
    name => bob;

    elements could be nested, using braces

    employee {

    name => bob;
    age => 42;
    };

    elements could be nested

    employee {

    personal {

    name => bob;
    age => 42;
    }

    history {
    promotion { 1/1/1997 }
    terminated { 2/1/1998 }
    resurrected { 2/1/2000 }
    atebrain { 2/2/2000 }
    shotinhead { 2/3/2000 }
    }

    }
    I think that is clearer than XML, by far. In general, markup languages suck. I really think we should just scrap the whole internet and start over. It's an insult to think that we have all this beautiful code on the back end to produce semi-colon lacking rubbish!
    --
    This is my sig.
  83. you're missing the point by sethadam1 · · Score: 1

    you're writing about a substitution for XML, and it's intriguing, but the conversation - DTDs vs. stylesheets - is discussing VALIDATING these data schemes.

    the point of them is to make sure that (dynamically generated?) XML will fit the criteria of your app.

    follow?

    1. Re:you're missing the point by tjstork · · Score: 1
      I started out trying to make a joke to the effect that everything should look like C and we would be ok, but then I had this revelation.

      All of this tag stuff is completely unreadable and agonizing to work with, and the notion of a markup language is good for documents but terrible for general data exchange.

      XML Schema fails because it pretends to be a markup language when it really is a declarator, and XML fails because it pretends to be a description of markup when it really needs to be a class specification.

      to wit, is not this a schema?
      schema employee_history {

      class termination {

      string reason;
      date dateterminated;

      }

      class promotion {

      date datepromoted;
      string newrank;

      }

      class employee {

      last_name: string( maxlength 50, not null ),
      first_name: string( maxlength 20 );

      age: int( min 0, max 150 );

      employee_history:collection of termination, promotion;

      };

      };
      And, would not this be a more readable instantiation of data against that schema?

      using schema employee_history( "http://www.myemployeeservice.com" );

      employee( last => "bandrowsky", first => "todd",
      employee_history(
      promotion( date => "5/1/2002", newrank => "general of the broom" )
      termination( date => "6/1/2002", reason => "showed up at 11:00 every day"
      )
      );

      etc..

      And of course the syntax could be simpler than that as well.

      But, we could do better still.

      For faster and more binaryish transmission, we could do something and in all of UTF32 reserve a set of characters for delimiting data, perhaps in some clever ways and stop the silly parsing problem once and for all. I mean, how long was TAB ok in ASCII 7 for line breaks? Why couldn't we reserve some special characters for meta data separation? Isn't THAT the simplest thing to do.

      XML's flaws are conceptual, as there are better concepts, and therefor, it sucks.

      --
      This is my sig.
    2. Re:you're missing the point by tjstork · · Score: 1

      I got excited and made mistakes. A couple of quick corrections:

      in the comment about "tab and line breaks", I meant to say "field breaks"

      I wrote:

      XML Schema fails because it pretends to be a markup language when it really is a declarator, and XML fails because it pretends to be a description of markup when it really needs to be a class specification.

      I meant to say:

      XML Schema fails because it pretends to be a markup language when it really is a class specification, and XML fails because it pretends to be a description of markup when it really needs to be a declarator.

      --
      This is my sig.
  84. I think we're in acronym hell by Anonymous Coward · · Score: 0
    XML DTD XSL SGML DSSL REST PXML XSD DOM WDDX XSLT XHTML ASN ORB REST SOAP SMIL SVG FOP RSS JAXB IDL WSDL XDR JAXB XMI XRC RNG WXS CSS UML OMG OMT SAML ...

    WTF? What is wrong with you people?

    now here is some random stuff to deal with the "don't use so many caps it's like yelling" lameness filter. wow it sure takes a lot of text to do this. come to think of it, it's a wonder this whole article and all of its comments were not thrown out for too many caps.

    1. Re:I think we're in acronym hell by The+Bungi · · Score: 1

      STFU

  85. collaboration by SHEENmaster · · Score: 1

    So ease of collaboration is the primary benefit?

    --
    You can't judge a book by the way it wears its hair.