Slashdot Mirror


Does the World Need Binary XML?

sebFlyte writes "One of XML's founders says 'If I were world dictator, I'd put a kibosh on binary XML' in this interesting look at what can be done to make XML better, faster and stronger."

72 of 481 comments (clear)

  1. For Starters by Nom+du+Keyboard · · Score: 2, Insightful
    what can be done to make XML better, faster and stronger.

    For starters, keep Microsoft out of it.

    --
    "It's the height of ridiculousness to say for those 9 lines you get hundreds of millions."
    1. Re:For Starters by Omega1045 · · Score: 4, Interesting
      Why? Microsoft has done a fairly good job promoting XML and SOAP XML Web Services. As long as they stick to the standards (yes, I know) I see no reason to keep them out.

      IBM has actually tried to introduce some goofy stuff into the XML standards, like line breaks, etc, that should not be in a pure node-based system like XML. Why are not you picking on them in your comment?

      As far as SOAP and XML Web Services (standardized protocols for XML RPC transactions) Microsoft was way ahead of the pack. And I rather enjoy using their rich set of .NET XML classes to talk to our Unix servers. It helps my company interop.

      --

      Great ideas often receive violent opposition from mediocre minds. - Albert Einstein

    2. Re:For Starters by Soko · · Score: 3, Insightful

      Agreed.

      However, let me re-phrase the grandparent:

      "For starters, make sure Microsoft can't extend it to lock out compeditors in some way."

      Better?

      Soko

      --
      "Depression is merely anger without enthusiasm." - Anonymous
    3. Re:For Starters by leerpm · · Score: 2, Insightful

      Good idea. Without Microsoft's support from their tools division, this idea will be dead on arrival..

    4. Re:For Starters by short · · Score: 2, Insightful

      I had to be compatible with .NET SOAP (XML) and I had hard time guessing how to behave to be compatible with the Microsoft SOAP server.

      I was using Perl SOAP::Lite, see its section on Microsoft compatibility issues. Still Microsoft conforms to the specification although only the Microsoft way of using standards is correctly recognized. Clearly anti-competitive behavior while still standards compliant - simply perfect.

  2. Then what by chris_mahan · · Score: 2, Funny

    Then what happens, do you base64 the binary xml and wrap it in an ascii xml document?

    --

    "Piter, too, is dead."

  3. The solution is clear... by LordOfYourPants · · Score: 3, Funny

    Use the Z-modem protocol between Information Superhighway routers to compress the plaintext.

    1. Re:The solution is clear... by DunbarTheInept · · Score: 2, Insightful

      The more compression that is done, the greater the CPU usage. Eventually it reaches a point of diminishing returns where there is no point in trying to compress a network stream any further because you are merely turning it from an I/O bound task to a CPU bound task. Also, to get really good compression, you need to look ahead and see a lot of the bytes of the file to look for similarites. But in a stream application, you don't have the luxury of holding giant buffers for each stream of bytes - so you have to make do with finding what compression you can in the smaller buffered chunks of the data that you pass through a little at a time. Therefore, although compression is used, it's not going to be the really good kind of compression we're used to seeing with something like "gzip -9".

      --

      Don't label something "offtopic" unless you know the topic well enough to tell what's on topic.

  4. Step 1 to getting binary XML by Anonymous Coward · · Score: 2, Insightful

    Binary XML = zip file.xml > file.xml.zip
    Thats all you need. XML compresses great.

    1. Re:Step 1 to getting binary XML by Dasein · · Score: 3, Insightful

      The problem is that many systems that produce XML have a more compact internal storage (rows from a DB or whatever), then they go through an "expansion" to produce XML.

      So, to propose simply compressing it means that there's and expansion (which is expensive) followed by a compression (which is really expensive). That seems pretty silly. However, given an upfront knowledge of which tags are going to be generated, it's pretty easy to implement a binary XML format that's fast and easy to decode.

      This is what I did for a company that I worked for. We did it because performance was a problem. Now, if we don't get something like this through the standards bodies, more companies are going to do what mine did and invent thier own format. That's a problem -- back to the bad old days before we had XML for interoperability.

      Now, if we get something good through the standards body then, even though it won't be human readable, it should be simple to provide converters. To have something fast that is onvertable to human readable and back seems like a really good idea.

      --
      You are not a beautiful or unique snowflake -- but you could be if you got off your ass.
    2. Re:Step 1 to getting binary XML by Tsiangkun · · Score: 2, Interesting

      In my hands, bzip compresses better, but is somewhere between somewhat slower and orders of magnitude slower on my system, depending on the options used to invoke the command and the size of the file being compressed. gzip is fast, works on streams instead of blocks, and is available on nearly every system.

    3. Re:Step 1 to getting binary XML by Waffle+Iron · · Score: 2, Insightful
      XML is mostly about transmission over the wire - an inherently sequential operation.

      Maybe if non-sequential operations were made more efficient, it would open up more applications than just transmission.

      At any rate, if what you claim were totally true, then nobody would be complaining about performance in the first place since transmission is slower than CPUs and gzip is trivial to apply to the stream.

    4. Re:Step 1 to getting binary XML by arkanes · · Score: 2, Insightful
      Why are you using XML? If you're using it for buzzword compliance, then you're wrong. And nobody but your PHBs cares anyway so it doesn't matter. If you're using it for interchange with other companies, then why are you worried about inefficency, and why is compressing it too much of a barrier? There's lots of obstacles in the way of direct communication with other businesses, compressing your XML is pretty trivial. If you're using it internally as an exchange format, maybe you should consider using something else. There's quite a few alternatives to XML, depending on exactly what you're doing.

      Disclaimer: I detest XML with a passion. However, it has some good points:
      1: Widespread adoption. Anyone who can't parse XML is someone you don't want to be doing business with anyway.
      2: Flexible. Highly compressable plain text means it can go over almost any transport with minimal if any extra work.
      3: The ability to validate against a DTD is invaluable for interchange. It's not the magic interopability the trade rags would have you believe, but if you've ever written parsing and validating code for a binary interchange standard then you'll really value a standard format with a standard validation scheme

      Now, XML certainly has it's bad points. And it's made even worse by the hype. But it really does have advantages.

  5. KISS by stratjakt · · Score: 5, Interesting

    On the face of it, compressing XML documents by using a different file format may seem like a reasonable way to address sluggish performance. But the very idea has many people -- including an XML pioneer within Sun -- worried that incompatible versions of XML will result.

    I agree with his point.

    What's wrong with just compressing the XML as it is with an open and easy-to-implement algorithm like gzip or bzip2?

    --
    I don't need no instructions to know how to rock!!!!
    1. Re:KISS by Ewan · · Score: 2, Informative

      gzip uncompression is built into internet explorer, it's used all the time for speeding up the transfer of html to clients.

      There's no reason why it couldn't be used for xml just as it is for html.

      Ewan

    2. Re:KISS by ZakMcCracken · · Score: 2, Interesting

      What's wrong with just compressing the XML as it is with an open and easy-to-implement algorithm like gzip or bzip2? I'll tell you one thing that's wrong: these compression algorithms might run fine on your desktop or server; but on an embedded system with restricted memory and CPU power, that's another matter...

    3. Re:KISS by Ramses0 · · Score: 5, Informative

      On the surface that works, but it only solves a portion of the problem.

      Data => XML.

      XML == large (lots of verbose tags)

      XML == slow (have to parse it all [dom], or
      build big stacks [sax] to get at data)

      Solution:

      XML => .xml.gz

      You've solved (kindof) the large problem, but you still keep the slow problem.

      What they're suggesting is nothing more than:

      XML => .xml.gzxml

      Basically using a specialized compression schemes that understand the ordered structure of XML, tags, etc, and probably has some indexes to say "here's the locations of all the [blah] tags", attributes so you can just fseek() instead of having to do domwalking or stack-building. This is important for XML selectors (XQuery), and for "big iron" junk, it makes a lot of sense and can save a lot of processing power. Consider that Zip/Tar already do something similar by providing a file-list header as part of their specifications (wouldn't it suck to have completely to unzip a zip file when all you wanted was to be able to pull out a list of the filenames / sizes?)

      "Consumer"/Desktop applications already do compress XML (look at star-office as a great example, even JAR is just zipped up stuff which can include XML configs, etc). It's the stream-based data processors that really benefit from a standardized binary-transmission format for XML with some convenient indexes built in.

      That is all.

      --Robert

    4. Re:KISS by e2d2 · · Score: 2, Interesting

      What you said is right on target. I've worked with XML in a few applications (specifically web services) and everytime we saw a performance drop it was not because of a network bandwidth issue but instead it was because the documents were so large that the parser became the bottleneck. And then when you throw in style sheets for manipulation.. well you get the point.

      So if the need is for compression over networks, well thats only half of XML performance problems. And if the end result becomes a binary format, then how is it, and why would it need to be related to XML in the first place? Data compression over networks is not a valid reason for another standard IMO.

  6. Binary XML has been around a while... by PipianJ · · Score: 4, Informative

    Binary XML is nothing new, as I wager that many people here are already using it, albeit unknowingly.

    One of the earliest projects that has tried to make a binary XML (as far as I'm aware) was the EBML (Extensible Binary Meta-Language) which is used in the Matroska media container.

    1. Re:Binary XML has been around a while... by Bert690 · · Score: 2, Insightful
      Exactly... the question shouldn't be "Does the world need Binary XML?" because the answer is "the world already has it, about 1000 different kinds in fact!" It's not like Tim Bray's whining is going to make it go away. ("Waaaahh... someone doesn't like my stuff!")

      The question should instead be "How can we best standardize binary XML?"

      My main fear is the typical "design by committee" style of standards bodies will lead to a super-bloated binary standard containing every pet feature of each participant. This could make it just as slow and painful as working with any textual encoding. I think Mike Conner's "CBXML" is probably the right mix of simplicity, compactness, and efficiency. Sun's Fast Infoset is a horrendous concoction that we can only hope never achieves any prominence. Leave it to the company who made Java the bloated mess it is today to come up with something like that!

      Hey guys, here's a clue...before including an ever so nifty new compression / performance feature into your proposals, how about actually quantifying the expected benefits? This includes both performance of parsing as well as generation. Yes we need a binary XML standard, but keep it simple PLEASE.

  7. gzip ? by JonyEpsilon · · Score: 2, Interesting
    Am I missing something, or would just gzip'ing xml when it goes over the network not solve the problem ? And isn't this sort of solution already widely implemented for web content ?

    Somebody fill me in ...

  8. there are already standards for this... by ophix · · Score: 2, Interesting

    ... its called zipping, most webservers have it as an option to zip the data up as it streams to the client browser

    i fail to see the need to have a "binary xml" file format when there are already facilities in place to compress text streams

    1. Re:there are already standards for this... by rootmonkey · · Score: 5, Insightful

      I'll say it again.. Its not the size of the document its the overhead in parsing.

      --

      Yes but every time I try to see it your way, I get a headache.
    2. Re:there are already standards for this... by interiot · · Score: 2, Insightful
      Okay, look, he's absolutely spot-on.

      Binary formats contain pointers all over the place... pointers that say "this many bytes to the next record", or if the binary format is designed to be very fast to read, will even contain pointers that say "record 22031 is at offset XXX, record 22032 is at offset YYY". It's very quick to get to record 22032 for these formats, you just jump there and don't even have to wait eons for a physical disk to read in every single byte in between.

      Now, compare to XML. EVEN IF every record was a single xml tag, the parser would have to look for "<", followed by "</", and would have to repeat that 22030 more times.

      That may seem like an extreme example, but 1) most XML "records" are much more complex to parse, and 2) this demonstrates THE MOST MAJOR DOWNSIDE that human-writable formats have... they can't have these "jump to byte XXXX" markers in them, because humans don't want to constantly be updating these references every time they add or subtract a byte.

      Machine-writable file formats realize that inserting or deleting bytes in the middle of a file is a big no-no, so they use several tricks to make sure they don't have to do that. All of these tricks annoy the heck of humans (they either require updating a lot of bytes, or require writing/reading the file in "pages" which bug humans because you can't "see" a whole section at the same time, or other tricks).

      Therefore, human-writable formats should NOT be used as the most basic storage/access format. Agreeing to put an extremely minimal storage layer below XML is simply accepting that machines are more optimized to read/write a different kind of format than humans are.

  9. Maybe this is like comparing assembly to C by Stevyn · · Score: 5, Insightful

    Programs written in assembly can run faster than programs written in C, but it's easier for someone to open a .c file and figure out what's going on.

    I'm sure when C came out, the argument was similar that the performance hit doesn't make up for the readability or cross compatibility. But as computers and network connections became faster, C becomes a more viable alternative.

    1. Re:Maybe this is like comparing assembly to C by fizban · · Score: 2, Insightful

      Holy smokes, that's wrong. C code will run exactly the same speed as assembly code if they are both compiled to the same machine code. Computers don't read C or assembly. They read binary computer instructions, whether those instructions were originally written in assembly, C, Java, Perl, Python, etc... If a computer had to read C code every time it wanted to run, it would take so, so, so much longer to do anything. XML is great for humans, but sucks for computers. Not only are you sending gobs of string data that could very easily be represented in a more compact binary format, you are also doing string parsing on both ends. It just screams for optimization.

      What really needs to be done is to separate the presentation of the data from the actual storage. Create translators that can convert to a human readable XML format when required, but otherwise store and communicated the data in a compact binary representation (still standard!), and I don't mean just compressing the string XML, but actually removing all string representation completely.

      --

      +1 Insightful, -1 Troll. What can I say, I'm an Insightful Troll.

  10. You don't need to change XML itself by Nom+du+Keyboard · · Score: 2, Insightful
    XML's verbosity and lack of inherent compression...XML standard calls for information to be stored as text.

    Text compresses quite well, especially redundant text like the tags. So why not just leave XML alone and compress it at the transportation level with protocols like sending it as a zip, let v.92 modems do it automatically, or whatever. No need to touch XML itself at all.

    --
    "It's the height of ridiculousness to say for those 9 lines you get hundreds of millions."
    1. Re:You don't need to change XML itself by TheRaven64 · · Score: 2, Interesting
      Actually, you could compress XML by a significant amount by making one simple change to the language. Picture the following piece of XML:

      <SomeTagName>some character data</SomeTagName>

      According to the XML spec, the closing tag must close the nearest opening tag. So why does it have to include the opening tag's name? This is 100% redundant information, and is included in every XML tag with children or cdata. An obvious compression would be to replace this with:

      <SomeTagName>some character data</>

      I really don't know why this wasn't done from the outset (backwards compatibility with HTML, where tags often overlap - although they're not meant to - I suppose). Either allow tags to overlap (which allows some more interesting data structures to be easily encoded in XML) or make the name optional in the closing tag.

      --
      I am TheRaven on Soylent News
  11. Binary XML is called ASN.1 by Saint+Stephen · · Score: 2, Insightful
    For starters, we already have binary XML, it's called ASN.1. Don't argue, I know it's not exactly the same.

    But secondly, no, you don't need Binary XML, all you need to do is Gzip it on the wire. It gets as small as Binary XML.

    One of the easiest ways to shrink your XML by about 90% is use tags like:
    <a><b><c>
    instead of
    <FirstName><CompanyName><Address>
    You can use a transformation to use the short names or long names on the wire.
  12. Amen To That by American+AC+in+Paris · · Score: 5, Insightful
    XML, as originally designed, is deliciously straightforward. Data is encoded into discrete, easy-to-process chunks that any given XML parser can make sense of.

    XML, as implemented today, is often little more than a thin wrapper for huge gobs of proprietary-format data. Thus, any given XML parser can identify the contents as "a huge gob of proprietary data", but can't do a damned thing with it.

    Too many developers have "embraced" XML by simply dumping their data into a handful of CDATA blocks. Other programmers don't want to reveal their data structure, and abuse CDATA in the same way. Thus, a perfectly good data format has been bastardized by legions of lazy/overprotective coders.

    The slew publications exist for the sole purpose of "clarifying" XML serves as testament to the abuse of XML.

    --

    Obliteracy: Words with explosions

    1. Re:Amen To That by Kingpin · · Score: 4, Insightful

      An XML document is an abstract. The file with tags is a serialization of that document. A binary file would also just be a serialization. Then you deserialize it in your parser - and get the DOM. It's the job of the parser to give you the object represenation, no matter if it were human readable text or binary format.

      The data is interchangable either way - only difference is that binary XML file is not immediatly human readable.

      --
      Unable to read configuration file '/bigassraid/htdig//conf/14229.conf'
      Geocrawler error message.
  13. Re:Binary = Proprietary by Adhemar · · Score: 3, Insightful

    Of course binary doesn't equal proprietary. Those are two completely different concepts.

    PNG is a binary format. It isn't proprietary, though. And although I can't immediately find a text-based proprietary format, such formats are not impossible (although arguably easier to reverse-engineer than binary proprietary formats).

    But if the XML is really such a problem, I suggest the simple solution. Compressing XML with a simple and open algorithm like gzip or bzip2, is the way to go. XML usually compresses very easily.

  14. Compression and huffing around by tod_miller · · Score: 2, Insightful

    A huff transform will give you entropy +1 compression. Not suitable for larger data sets (dictionary based compression is even better for this). 7z compression (or is it z7?) will give you a neat storage format.

    Lets talk about where this verbose talk of verbosity is stemming from:


    apple
    orange
    pineapple


    this is a data set. Noone knows what it is.
    Here it is again with some pseudo xml style tags
    I am listing vegetables here

    this is a list of vegetables
    vegetables are listed on thier own without any children pr parent tags, there can be one or more of them, this is version 1 of the document
    here now follows a vegetable
    tomato
    that was a vegetable
    here now follows a vegetable
    leek
    that was a vegetable
    here now follows a vegetable
    potato
    that was a vegetable
    here now follows a vegetable
    haddock
    that was a vegetable

    as you can see, this is (albeit slightly weird looking) list of items called 'vegetables'.

    The beauty of XML is two fold, the description of the document format (DTD and schemas) and the abilty to verify a document is valid, for any specified format.

    XML is a human readable file specification language, and file format, all in one, written in itself!

    A binary format of XML would be nice, you can make it yourself though.

    veg:http://slashdot.org/veg.xml
    v:tomato
    v:fru itcake
    v:lemongrass
    v:cat

    this is a minimal way to represent the same xml like structure, in a less verbose way.

    This is undeniable complexity, a binary format is just like a way of saying introduce a standard loosless compression format for XML, without changing what XML is.

    I say anything that gets the W3C stamp of 'this is official' gets my vote. After all, 1 bad standard is better than 11 good proprietary solutions in a world of millions of interconnected systems.

    --
    #hostfile 0.0.0.0 primidi.com 0.0.0.0 www.primidi.com 0.0.0.0 radio.weblogs.com
  15. Sounds like CORBA or any other RPC. by Anonymous Coward · · Score: 2, Insightful

    The XML guys are funny. First make a text version of binary protocols to make it easy to sell XML them to the mass of "31137 HTML PRogrammers" who feel comfortable "programming" in dreamweaver; and then make a binary version to make it work.

  16. Then we wrap it again, that's what! by Tackhead · · Score: 4, Funny
    > Then what happens, do you base64 the binary xml and wrap it in an ascii xml document?

    Of course not! That's not XML!

    <file=xmlbinary> <baseencoding=64> <byte bits=8> <bit1>0 </bit><bit2>1 </bit><bit3>1 </bit><bit4>0 </bit><bit5>1 </bit><bit6>0 </bit><bit7>0 </bit><bit8>1 </bit> </byte>
    <boredcomment>(Umm, I'm gonna skip a bit if y'all don't mind)</boredcomment>
    </baseencoding> </file>

    Now it's XML!

    1. Re:Then we wrap it again, that's what! by TheTomcat · · Score: 2, Funny

      Since others feel the need to correct you, I'll join in:

      <file type="xmlbinary">
      <baseencoding base="64">
      <byte bits="8">
      <bit seq="0">0</bit>
      <bit seq="1">1</bit>
      <bit seq="2">1</bit>
      <bit seq="3">0</bit>
      <bit seq="4">1</bit>
      <bit seq="5">0</bit>
      <bit seq="6">0</bit>
      <bit seq="7">1</bit>
      </byte>
      <!--
      (Umm, I'm gonna skip a bit if y'all don't mind)
      -->
      </baseencoding>
      </file>

      <!-- </retentive> -->

      S

  17. Re:Goals by WarPresident · · Score: 2, Insightful

    FTFA "The goal of the Fast Infoset project is to generate interest among developers and eventually create a standardized binary format." I'm not sure why they think that one has to come before the other.

    Because standards written in a vacuum tend to suck. Why wouldn't you want input from developers with different backgrounds and needs, then cherry pick the best ideas (many of which you didn't think of), toss out universally reviled ones, and implement a broad, useable standard?

    --
    Here come da fudge!
  18. Re:Binary = Proprietary by Austerity+Empowers · · Score: 2, Insightful

    That's the dumbest statement I've ever heard.

    As long as it's standardized, the standard is freely available to anyone who wants it, it does not depend on an external library, and it is unencumbered by any sort of patent, it isn't proprietary.

    I hate XML right now because of all the string processing and parsing. Text is a sloppy way of defining something, and it begets lots of big processing libraries. It's OK for big PC memory hog apps, but I can't build a small enough one that is still robust enough to want to integrate it into the work I do (small, compact stuff). I find myself doing other, backwards things, or worse, fracturing XML into useable subsets. It somewhat defeats its utility.

    Binary XML sounds like a great idea to me, as long as we're clear on a few things. One, it has to be totally documented in a standard (see above for my definition). Two, the standard must define a tool that can read an XML file and say "Yes this is XML" or "No, this is some [microsoft] non-compliant crap". Three, keep it simple: no compression, no outside library dependencies, no cruft.

    If those things cannot be achieved then it will not reach maximum utility and something proprietary will swoop down and take over (*cough* microsoft *cough*).

  19. But ASCII is binary after all... by MarkWPiper · · Score: 2, Interesting
    The fact is, ASCII is a binary format. It just happens to be a format that has become universally accepted. As the article says, there are certainly benefits to having ASCII-based XML: "The fact that XML is ordinary plain text that you can pull into Notepad... has turned out to be a boon, in practice," he said. "Any time you depart from that straight-and-narrow path, you risk loss of interoperability."

    However, if anything, XML has shown us the power of well-structured information. XML has given the possibility of universal interoperability. Developments in XML-based technologies have led us to the point where we know enough now to create a standard for structured information that will last for several decades.

    It's time that we had a new ASCII. That standard should be binary XML.

    When I think of the time that has been wasted by every developer in the history of Computer Science, writing and rewriting basic parsing code, I shudder. Binary XML would produce a standard such that an efficient, universal data structure language would allow significant advances in what is technically possible with our data. For example: why is what we put on disk any different from what's in memory? Binary XML could erase this distinction.

    A binary XML standard needs to become ubiquitous, so that just as Notepad can open any ASCII file today, SuperNotepad could open any file in existance, or look at any portion of your computer's memory, in an informative, structured manner. What's more, we have the technology to do this now.

    1. Re:But ASCII is binary after all... by MarkWPiper · · Score: 2, Insightful
      The true problem is that, right now, we're stuck in a transition where there is not yet an accepted binary standard. So yes, right now there is a problem in debugging. But give it a few years, and (hopefully!) there won't be.

      However (as I tried to emphasize), ASCII is binary too. It's not that binary is inherently more difficult to debug. It's that we need a binary standard as universal as ASCII has become.

      Imagine debugging before in the 1960's, when ASCII wasn't standardized. We forget about those times now, because ASCII has been there for nearly 50 years. But go ahead, take a look.

      Believe it or not, there were over 60 binary text standards in use before ASCII. I think we should be thanking Bob Bemer (the father of ASCII) a whole lot more often.

    2. Re:But ASCII is binary after all... by MattRog · · Score: 2, Interesting

      Jesus Christ, no. The solution is simple:
      (1) Have every PC OS contain a DBMS (this is not as difficult as you would think)
      (2) Always keep your data in a DBMS
      (3) Have said DBMS transfer the data via whatever method it would like. Chances are this would be some sort of compact, efficient binary method.

      --

      Thanks,
      --
      Matt
    3. Re:But ASCII is binary after all... by FangVT · · Score: 2, Interesting
      The fact is, ASCII is a binary format. It just happens to be a format that has become universally accepted. As the article says, there are certainly benefits to having ASCII-based XML: "The fact that XML is ordinary plain text that you can pull into Notepad... has turned out to be a boon, in practice," he said. "Any time you depart from that straight-and-narrow path, you risk loss of interoperability."
      Not that anybody will care but...

      XML is not ASCII. XML is Unicode. That's why Tim Bray said "plain text" not ASCII.

      Because it was such a long hard road for ASCII to become the universal data format that it is for English text the creators of Unicode wisely made sure that there was backwards compatibility such that any valid ASCII texts (ones that do not include OS-specific, proprietary extensions in the range above 0x7F) are also valid Unicode texts when the encoding is UTF-8.

  20. Re:a kabosh? by SnapShot · · Score: 2, Funny
    Considering that for most purposes XML contains a lot of redundant formatting it seems like you could get nearly 10:1 compression simply by using (as has already been mentioned) zip or some other compression algorithm.

    However, you wanted to go to a binary encoding you could try for something relatively straight forward like:

    original:
    <tag name="value"/>
    patented XML encoding algorithm (hexideximal):
    3c746167 206e616d 653d2276 616c7565 222f3e00
    --
    Waltz, nymph, for quick jigs vex Bud.
  21. This is really about making it proprietary. by khasim · · Score: 2, Insightful
    Zip functionality is so easy to implement in servers and clients that there really isn't any argument about "binary XML".

    This is all about different companies trying to get THEIR binary format to be the "standard" with XML.

    From the article
    Manufacturers of consumer devices such as Canon, as well as mobile-phone companies such as Nokia, have argued for a binary XML format. Without it, large files such as images will take too long to download to devices such as mobile phones, they argue.
    Images are already binary data. They really don't compress much more (if you've chosen the right format). That means that they will take the same amount of time to download, binary XML format or not.
  22. XML images !? by morane · · Score: 2, Funny
    Without it, large files such as images will take too long to download !

    Yeah, right ! XML binary images... So needed...

    <image>
    <pixel x="0" y="1">
    <r value="255" />
    <g value="255" />
    <b value="255" />
    <pixel/>
    ...
    <image/>
  23. Overwhelming feeling... by GOD_ALMIGHTY · · Score: 4, Insightful

    of "I told you so!" coming over. Between all the people who jumped on the web services bandwagon without any clue how to handle distributed systems efficiently and the "OMG! It's human readable!" crowd, the architecture de jour has become a bloated PITA. Why this wasn't built into the spec in the first place alludes me. If we can use tools like ethereal to read those binary IP datagrams, why wouldn't the same concept be used for this standard? A standardized, compressed, data format with a standardized API for outputting plaintext (XML), would have allowed this system to be much more efficient.

    Didn't anyone remember that text processing was bulky and expensive? Sometimes the tech community seems to share the same uncritical mind as people who order get-rich-quick schemes off late night infomercials. I doubt XML would have gotten out of the gate as is, had the community demanded these kinds of features from the get-go.

    --
    Arrogance is Confidence which lacks integrity. -- me
  24. Why not re-examine http? by digitalgimpus · · Score: 2, Interesting

    I think that's where the true problem lies. HTTP.

    We need to look towards http 2.0. What I would want:

    - pipelining that works, so that it could be enabled for use on any server that supports http 2.0
    - gzip and 7zip support.
    - All data is compressed by default (a few excludes such as .gz files, .zip files etc. since that would be pointless).
    - Option to initiate persistant connection (remove the stateless protocol concept), via a http header on connect. This would allow for a whole new level for web applications via SOAP/XML.

    There are tons of other things that could be enhanced for today's uses.

    HTTP is the problem. Not XML

    1. Re:Why not re-examine http? by MikeBabcock · · Score: 2, Insightful

      As others have pointed out, most of those features are here today.

      Please remember that not all XML data is transmitted by HTTP however (thank god).

      --
      - Michael T. Babcock (Yes, I blog)
  25. Re:Several points. by michaelggreer · · Score: 2, Informative

    The problem is that XML is being used for web services which are unlike HTML: the requesting machine will not like waiting 2-3 seconds for the response to the method call. These are interoperating applications, not people downloading text to read, so the response time is much more critical.

    I agree that gzip compression is a simple solution to the network problem. It does not address the parsing time problem, and in fact exacerbates it, but in my opinion the network issue is the big one. Time works in favor of faster parsing (faster processors), but works against network issues (more congestion). I would go with compression, test the results, and only then look into a binary solution.

  26. Ask Erik Naggum! by notany · · Score: 2, Interesting
    Erik Naggum (SGML/XML-guru) who first proposed empty elements

    <foo/>

    form Re: Lisp syntax, what about resynchronization?

    ... so it had to come up, and one of the least
    productive solutions, XML, won the day. I was there, at the conference
    table where the first thoughts that became XML surfaced. a few months
    earlier, I had proposed the need for a special marker for empty elements
    -- and then retracted that proposal because it led to new problems -- but
    guess what survived in XML!...

    Attributes in XML are inherited from SGML and they were thingking markup for textual documents. When you want to represent data it being attribute or not is completely irrelevant.

    Whether something is an attribute or element is _completely_ arbitrary.
    It is based on some arbitrary choices in the design process that reveal
    absolutely no inherent qualities. For purely pragmatic reasons, SGML
    folks will use attributes for some things and elements for others because
    their tools can deal with some things in attributes and some things in
    elements. The faulty idea that attributes say something "about" the
    element and sub-elements somehow constitute be their contents is the same
    premature structuring that premature optimization of code suffers from.
    The whole language is incredibly misdesigned in making that distinction.

    Deep explanation: From:The horror that is XML

    ... XML, being the single suckiest syntactic invention in the history of
    mankind, offers you several layers at which you can do exactly the same
    thing very differently, in fact so differently that it takes effort to
    see that they are even related.

    <foo type="bar">zot</foo> actually defines three different views on the
    same thing: Whather what you are really after is foo, bar, or zot,
    depends on your application. XML is only a overly complex and otherwise
    meaningless exercise in syntactic noise around the message you want to
    send. Its notion of "structure" must be regarded as the same kind of
    useless baggage that come with language that have been designed by people
    who have completely failed to understand what syntax is all about. It is
    therefore a mistake to try to shoe-horn things into the "structure" that
    XML allows you to define.

    In the abaove example, foo can be the application-level element, or it
    can be the syntax-level element and bar the application-level element.
    It is important to realize that SGML and XML offer a means to control
    only the generic identifier (foo) and their nesting, but that it is often
    important to use another attribute for the application. This was part of
    the reason for #FIXED in the attribute default specification and the
    purpose of omitting attributes from the actual tags. In my view, this is
    probably the only actually useful role that attributes can play, but
    there are other, much more elegant, ways to accomplish the same goal, but
    not within the SGML framework. Now, whether you use one of the parts of
    the markup, or use the contents of an element for your application is
    another design choice. The markup may only be useful for validation
    purposes, anyway.

    Let me illustrate:

    <if><condition>...</condition>
    <then>...</then>
    <else>...</else>
    </if>

    The XML now contains all the syntax information of the "host" language.
    Many people think this is the _only_ granularity at which XML should be
    used, and they try to enforce as much structure as possible, which

    --
    Dyslexics have more fnu.
  27. Vast omissions! by kahei · · Score: 4, Funny


    Aside from the mistakes pointed out by others, you also forgot to reference the xmlbinary namespace, the xmlbyte namespace, and the xmlboredcommentinparentheses namespace, and to qualify all attributes accordingly. You also didn't include anything in or any magic words like CDATA, and you didn't define any entities. You also failed to supply a DTD and an XSL schema.

    This is therefore still not _true_ XML. It simply doesn't have enough inefficiency. Please add crap to it :)

    --
    Whence? Hence. Whither? Thither.
    1. Re:Vast omissions! by Tribbin · · Score: 2, Funny

      Tsss, like your message is pure XML. It's not even proper XHTML!

      "<BR>Aside from the mistakes pointed out by o"

      Empty elements must either have an end tag or the start tag must end with />

      --
      If you mod this up, your slashdot background will turn into a beautiful sunset!
  28. Binary not needed - better table format neeeded. by DunbarTheInept · · Score: 2, Insightful

    The real problem with XML is that it adds the extra verbosity of the metadata text tag for EACH INSTANCE of a pice of data even in cases where that metadata is identical for row after row of data. In the case of table data, that is really stupid. There should be some sort of XML means to handle a table of values better. A way to say "Column 1 has the following XML properties: name, etc", then "Column 2 has the following XML properties: name, etc".... and then after that section, a way to syntactically list just the values up until the end of the loop.

    This is what made us balk at using XML for storing NMR spectroscopy data, even though it is already in a textual form to begin with. The current textual form is whitespace-separated, little short numbers less than 5 digits long, for hundreds of thousands of rows. That isn't really that big in ascii form. But turn it into XML, and a 1 meg ascii file turns into a 150 meg XML file because of the extra repetative tag stuff.

    In another bit of irony, we can't find an in-memory representation of the data as a table which is more compact than the ascii file is. The original ascii file is even more compact than a 2-D array in RAM. (because it takes 4 bytes to store an int even when that int is typically just one digit and is only larger on rare occasions.)

    --

    Don't label something "offtopic" unless you know the topic well enough to tell what's on topic.

  29. XML performance by BillAtHRST · · Score: 2, Informative

    The problem is that not everything in a typical XML message is text, so there can be a lot of translation going on between XML text and the binary format that an application needs (e.g., double). In our tests we've found XML to be 100x - 250x SLOWER than other approaches (e.g., JMS MapMessage). (FWIW, the 100x is using the MS parser, the 250x is with Xerces/Xalan). For high-volume, high-performance apps that's simply intolerable. Note that this has nothing to do with size on the wire, which is another consideration entirely.

  30. The article doesn't go far enough... by Da+VinMan · · Score: 5, Insightful

    It doesn't tell us what the specific performance problems are with XML. Does it take too long to transmit? Does it take too long to validate? Does it take too long to parse? Does it take too long to format? What's the real problem here?

    From experience, I can state that using XML in any high performance situation is easy to screw up. But once you get past the basic mistakes at that level, what other inherent problems are there?

    Oh, and just stating "well, the format is obviously wasteful" just because it's human readable (one of its primary, most useful, features) is NOT an answer.

    I get the feeling that this perception of XML is being perpetuated by vendors who do not really want to open up their data formats. Allowing them to successfully propagate this impression would be a very real step backwards for all IT professionals.

    --
    Please mod this post only if you think others should/n't read this. I have enough ego^H^H^Hkarma. Thanks!
  31. WHO NEEDS FREAKING READABILITY ?! by apankrat · · Score: 2, Insightful

    Dude! Wake up! How often do you open an XML-RPC packet trace with your morning coffee and think 'Gosh, how cool it's in a readble bloated text format and I don't need to parse it with Ethereal !'

    Seriously, the only time readability is needed is when you edit an XML web page with a notepad. Otherwise it's a brain-dead technology that first got popular among scripting developers, which are notoriously afraid of anything binary, and then it got pushed into the areas where it didn't belong.

    Unfortunately, the majority of XML zealots are plain ignorant. Should they took time to learn what the byte ordering and TLV encoding mean, we would've not probably have this XML craze now :-/

    Don't get me wrong, XML has its place. But it is next to HTML, and not next to RPC or databases!

    --
    3.243F6A8885A308D313
    1. Re:WHO NEEDS FREAKING READABILITY ?! by rikkus-x · · Score: 2, Informative

      What should we use instead of XML to encapsulate RPC calls? Something at least semi-human-readable, please. I don't need to be able to read a graphic image, but I'd like to see the name of the method I'm calling, and at least string and text parameters.

      And when someone sends me a bunch of data they want importing into a database, in what format should they send it? I'd like to be able to ensure that their data is correct before giving it to my import routine, and when my validator says there's an error, I'd like to be able to see what's wrong by eye.

      Suggestions?

    2. Re:WHO NEEDS FREAKING READABILITY ?! by dbacher · · Score: 3, Insightful

      I agree with your point, however there's one additional case where it is nice.

      The best use for XML is at system or domain boundaries, where you cannot control the software on both sides.

      For example, a support system might use file exchange to open support tickets in a vendors system for hardware failures. In this case, the vendor probably needs to deal with multiple different customers, and each of their customers might be dealing with several vendors.

      Being able to encapsulate to XML, in this case, is valuable so that all partners can understand the data.

      You could do this with a binary format, etc. but there is no binary format with the universal library support, and C doesn't guarauntee byte orders and structure layout between platforms, so in that case XML is useful.

      That's the only time it's useful.

      I strongly dislike using it for comms protocols, because the extensibility and transformation capabilities are lost, and it cripples throughput in the best of situations.

      --
      If your code is acting bloated, and is running rather slow, it's likely and predicted that some loops you will unroll.
  32. XML doesn't need to be non-ascii to be small by iabervon · · Score: 3, Informative

    Three ideas, in order of increasing significance and increasing difficulty:

    Stop using bad DTDs. There seems to be a DTD style in which you avoid using attributes and instead add a whole lot of tags containing text. Any element with a content type of CDATA should be an attribute on its parent, which improves the readability of documents and lets you use ID/IDREF to automatically check stuff. Once you get rid of the complete cruft, it's not nearly so bad.

    Now that everything other than HTML is generally valid XML, it's possible to get rid of a lot of the verbosity of XML, too. A new XML could make all close tags "</", since the name of the element you're closing is predetermined and there's nothing permitted after a slash other than a >. The > could be dropped from empty tags, too. If you know that your DTD will be available and not change during the life of the document, you could use numeric references in open tags to refer to the indexed child element type of the type of the element you're in, and numeric references for the indexed attribute of the element it's on. If you then drop the spaces after close quotes, you've basically removed all of the superfluous size of XML without using a binary format, as well as making string comparisons unnecessary in the parser.

    Of course, you could document it as if it were binary. An open tag is indicated with an 0x3C, followed by the index of the element type plus 0x30 (for indices under 0xA). A close tag is (big-endian) 0x3C2F. A non-close tag is an open tag if it ends with an 0x3E and an empty tag if it ends with an 0x2F. Attribute indices are followed with an 0x3D. And so forth.

    1. Re:XML doesn't need to be non-ascii to be small by edp927 · · Score: 2, Insightful

      Stop using bad DTDs. There seems to be a DTD style in which you avoid using attributes and instead add a whole lot of tags containing text. Any element with a content type of CDATA should be an attribute on its parent, which improves the readability of documents and lets you use ID/IDREF to automatically check stuff. Once you get rid of the complete cruft, it's not nearly so bad.

      Not to nitpick, but attributes != elements. (hint: one of them is ordered, and repeatable). As far as ID/IDREF goes, key/keyref in XMLSchema replicates this for arbitrary markup. Use of attributes, in some instances is rather crufty precisely because they need to be handleed anampohically to elements.

      A new XML could make all close tags ". The > could be dropped from empty tags, too.

      You're design decision, not mine. Some might think that if you're going to have a verbose format like xml, you might as well throw in a few sanity checks as well, since they're almost free by comparison.

      Look, I've said it before, and I'll say it again. Like Hello Kitty, XML has one thing going for it -- ubiquity. If, like me, you're a proponent, you need to understand this, embrace it. Once you've repeated the words enough, you will come to a blissful realization. It doesn't matter how "bad" xml performance is, the only thing that matters is that it be useful for everyone. This means that it should be useful for config files for simple programs/scripts. It should be useful for people who want to build (by hand) a little web-service to serve up their mp3 collection, or to multi-billion dollar companies that want to run online acutions. If XML can be this broad-based, then so can the tooling that is used to manipulate it. That's good news for big companies who want to save money, and script hackers who just want to save time, good for us all. Anything that fractures xml's ubiquity undermines the technology itself, and should be avoided. Binary XML falls into this category.

      Now as for performance, my personal opinion is that its way to early to start running around creating binary standards. XML itself has been around a while, but the higher-level standards are still evoloving (web services, xml schema, etc). Most of the current tooling around xml is currently written to demonstrate standards compliance. When we really start to see performance-oriented solutions, and they still suck, then everyone can start rioting.

  33. Re:Binary = Proprietary ... I disagree by I_Love_Pocky! · · Score: 2, Insightful

    If you ask me, the transparency of a text stream far outways any cost in performance.

    It far outweighs it huh? I guess you have never heard of a large segment of the computing world refered to as embeded systems.

    If you can develop a good parser (not that hard), the cost difference is negligable, if any.

    This is simply untrue, development of a good parser is easy, but it's added bloat that isn't negligable for many computing devices outside of the PC/Server realm. Not to mention the added network traffic that uncompressed text yeilds (embeded devices don't always have the fastest I/O). Some say that the solution to reducing the network overhead of XML is compression. Compression takes CPU power, another thing lacking in may embeded devices.

    My point is that there are actually a lot of applications where XML is just not well suited.

  34. Anecdotal example by plopez · · Score: 2, Interesting

    Had data to be delivered to client, dumped from a database. As flat files they were ~20mb in size as flat files. That bloated ~120mb after conversion to XML.

    Client attempted to open in a DOM based application which I suspect used recursion to parse the data (easy to code, recursion). Needless to say it brought their server to its knees.

    We switched to flat files shortly there after.

    In my problem domain, where 20MB is a small data set, XML is useless. XML seems does not scale well at all (though using a SAX parser helps at times).

    YMMV.

    --
    putting the 'B' in LGBTQ+
  35. Wrong Problem by slyckshoes · · Score: 2, Insightful

    It seems to me that the problem isn't with XML, it's with what people are using it for. I read some complaints here from people saying "I tried to use XML for BLAH and it was too slow." However, if they'd thought about it, BLAH would have been better served by some binary format in the first place. The article also discusses the fact that mobile devices need something less cumbersome for transferring pictures/media. Why are they using XML for that at all? One of the benefits of XML is that it's human readable, but in those applications you don't need that benefit, so don't use XML. Instead of coming up with a binary XML standard, come up with a generic binary standard that does exactly what you want. Too many people have been given the hammer of XML and now everything looks like a nail.

    1. Re:Wrong Problem by johnjaydk · · Score: 2, Insightful
      Dead on.

      Use XML in places where it makes sense: Interfaces between different companies/business partners/departments etc, interfaces between mutually hostile vendors, really long time data storage.

      Using xml as data format between two tightly coupled Java programs, standing next to each other and who's exchanging massive amounts of data is insane.

      This is of course a simplified example BUT the point is ALWAYS beware of the trade-offs you do when you make a technology choice. Same things go for algorithms ... think !!!

      --
      TCAP-Abort
  36. The fake grass is always greener... by Just+Some+Guy · · Score: 2, Insightful
    And I rather enjoy using their rich set of .NET XML classes to talk to our Unix servers. It helps my company interop.

    You had me until then; no self-respecting engineer would ever use those terms.

    --
    Dewey, what part of this looks like authorities should be involved?
  37. XML not useful for xferring copious binary data by smcdow · · Score: 2, Insightful
    Our applications (real-time geographically distributed RF DSP) involve shipping around lots and lots and lots and lots of digitized RF data. We have our share of wonks who think we should be using XML for this kind of thing. We all agree that XML would solve many problems for us. Except there's no convenient way to represent the actual data payloads, which consist of scads of binary data.

    A good binary XML specification could be an extremely good fit for us.

    And, don't suggest that we just compress XML and send that. Here's why: first we have to expand all that digitized data into some sort ASCII encoding, which is then compressed. End result: no gain and a possible loss of precision in the data.

    A real, live, useful binary XML spec could help us immensely. I say BRING IT ON!!!!

    BTW, wasn't DIME supposed to address these problems? What happened to DIME, anyway?

    --
    In the course of every project, it will become necessary to shoot the scientists and begin production.
  38. Microsoft XML by Spy+der+Mann · · Score: 2, Interesting

    take an example on microsoft XML formats. Word, or the MSN messages format... they're _NOT_ xml. They're proprietary formats DISGUISED as XML.

    If Microsoft doesn't respect text-only XML, what do you think will happen when^H^H^H^Hif binary XML is out?

  39. Human readability makes it much easier by Baki · · Score: 2, Informative

    to make inaccurate interpretations of the data and not using proper and accurate specifications.

    Many people claim that XML is so great because you can "just read and understand it" without having to use cumbersome and hard to understand specifications. This exactly is what makes XML, indeed, nice for typesetting purposes like HTML, maybe as an alternative for simple configuration files etc, but indeed NOT for RPC and databases as you write. I couldn't agree more.

    I have seen so much time and money lost due to intuitive but false interpretations of XML schema's. People think that because its human readable with "meaningful" tagnames that they don't need a proper spec no more. Well I guess it fits in nicely with todays "cut and paste" programmers who don't really know what they're doing :(.

  40. Re:Binary = Proprietary ... I disagree by Austerity+Empowers · · Score: 2, Insightful

    What is text? It's a binary code that a computer translates into graphical glyphs. Is it proprietary? Not any more. Your computer is what turns that binary code into something that means something to you. It doesn't even mean something to everyone (in fact iirc the first line in an xml file identifies a code page for using the intended symbols). So firstly, opaqueness even on "text" is not quite black and white. Second, what is transparent to YOU may be completely opaque to software, I'll elaborate on this later.

    So what could binary XML be? It's a binary code that translates into XML syntax. Except it's easier to deal with for software, there's no processing. Let me present this example, which I will endeavor to use over and over. . I could write this in binary as 0001010203, obviously to do that i'd have to store the strings "mytag", "is", "simple" in a string table elsewhere, but this is just a simple example. I made "0x00" mean "a tag", the first "0x01" mean 1 attribute, and the rest are string references. Reading this tag would be very simple, fread(buffer,10,1,file) (i picked the two middle numbers out of the air since we have not really defined this format).

    Saying that binary is proprietary makes absolutely no sense. Proprietary means property of an owner (usually a business). A file can't be proprietary. It's contents, the format of it's contents, certainly. But a binary file is atomic, it's like the sky. It just is what it is. Binary XML COULD become proprietary, but it will not NECESSARILY happen. Nothing is inherently proprietary about a binary file. If the binary XML format satisfies the constraints of a standard in my first post, it will absolutely not be proprietary by construction, or so I think. I don't work in standards groups, people more experienced with their goings on may point out additional refinements.

    Your next point, recovering data. What do you use to read XML files? A text editor usually. What does that do? It reads a binary file (uh a text file!), applies some understanding of what the ASCII code (as an example) means, and displays it to you. Most of it is usually character data, but not always, there's a bunch of special characters that text editors often respond to for formatting or other things. Unix and PCs can't agree even on how to terminate a line. The point being even right now you can't totally say plain text XML is transparent, magic happens for you to just see it. Nothing about its presentation is defined (nor should be, imho). So what could binary XML be viewed with? Only slightly more overhead. You could "textify" as a preprocessing step to be viewed in a text editor. bin2txt myfile.bin.xml > myfile.txt.xml as an example. Or you could write your xml in plain text, and do the opposite. It's one to one, no loss. XML is just a syntax.

    Now as for processing, I'll admit to waving my hands and skipping a few pieces. The XML syntax is defined clearly, there's no ambiguity (that i know of). However the step of choosing text-like strings to declare the syntax elements is where it gets hairy. Your first step in writing a parser is to grab the syntax elements out of their native text string. This is disgusting as compiler writers, language developers, etc. understand. You have to make lexx/yac scripts or workalikes to generate code, or worse, write your own (no one should do this but that's purely my opinion and not defendable). Theres a complicated state machine, some funny thing called LRM, and some other gotchas. All this just to take and break it into it's constituent elements. Usually then you have a tree structure or some hierarchy that a computer can understand.

    Take a look at some common XML libraries: xerces, libxml, a few others I can't remember. They're pretty damn big. Mostly, I argue, due to the text nature of their data. A lot of work goes into making text files useable by a program. A lot (but not all) of cruft can be cut by adopting a format that is simpler for softare to understand.

    Sure, people who write MS Word (i.e.

  41. DNS is binary; does that make it proprietary? by Skapare · · Score: 2, Interesting

    DNS is binary; does that make it proprietary? Not at all. It is a published open standard in RFC 883 and later documents. Other examples include ASN.1/BER as used in SNMP. It's not whether it is binary or text that matters; it's whether it is openly documented and unencumbered by intellectual property claims (a separate issue some of XML has).

    The decision of binary vs. text for a format should be the result of specific needs. XML is verbose. XML can be compressed for transmission purposes, but it still has to be uncompressed to its verbose form for parsing. If speed in parsing is necessary (it might be as I have noticed quite many XML based progams are rather slow), a binary format can have things like length prefixes and continuation tags, instead of having to detect and verify collection of characters whose position is unknown. A parser that does not recognize a given tag, or does not need to process it, in a binary format can simply skip it by jumping the specified number of bytes. Binary format is very optimal for machine processing.

    The usual argument for a text format spans the range of permitting humans to create the content for most things directly in an editor like vi or emacs (no wars here, I listed my favorite last), or reading that content directly, such as to diagnose the real cause of misunderstood errors. XML is too utterly complex for human creation or interpretation to be effective on a direct basis. There may be some argument that it can still be effective for diagnostic purposes (I have in fact needed to do so many times). Given that it is the powerful tools of XML that are used as the basis for the benefit of XML and promoting it, then what does it really matter what format is underneath as long as it is open and unencumbered?.

    A binary format for XML will absolutely not kill XML. DNS is obviously not dead (and you'll love it even more when IPv6 rolls into your network). What a binary format might do is weed out some of the weaker programmers who are sticking their fingers a bit too deep into the inner workings of some applications and tools.

    --
    now we need to go OSS in diesel cars
  42. Re:Isn't this what ASN.1 was for? by PengoNet · · Score: 2, Informative

    The "Fast Infoset Project" for creating Binary XML as mentioned in the article is using ASN.1. See this blog entry by Rick Jelliffe for details.

    Fast Infoset is to ASN.1 what XML is to SGML. At least if it becomes the standard anyway.

  43. Possibly I'm a cynic by smittyoneeach · · Score: 2, Funny

    ...but I thought that the strategic goal of XML is to sell more hardware.
    We should rejoice, buy more CPUs, and move the problem from XML, to languages with poor concurrency support.

    --
    Get thee glass eyes, and, like a scurvy politician, seem to see things thou dost not.--King Lear