Slashdot Mirror


W3C launches Binary XML Packaging

Spy der Mann writes "Remember the recent discussion on Binary XML? Well, there's news. The W3C just released the specs for XML-binary optimized packaging (XOP). In summary, they take binary data out of the XML, and put it in a separate section using MIME-Multipart. You can read the press release and the testimonials from MS, IBM and BEA."

239 comments

  1. Binary... XML... Nah! by Roguelazer · · Score: 0, Offtopic

    The way I see it, XML's only benefit over something like SQL is that it -is- plain text and easily user modifiable. Binary XML seems to me more like a step backwards than a step fowards. Of course, I've never understood the buzzwordiness of XML anyway. Things like SOAP make it seem like a protocol when it's a format. I think that the W3C should be spending their time on XML implimentations like SVG, MathML and XHTML, not on things like this.

    1. Re:Binary... XML... Nah! by metalhed77 · · Score: 3, Insightful

      except SQL isn't very useful when it comes to technologies like RSS say......

      if you're using an XML file in a place where you need a high performance SQL database then you're doing something wrong. If you're using XML as datastorage for some small webapp who cares so long as it's fast enough for that particular application.

      --
      Photos.
    2. Re:Binary... XML... Nah! by FrankHaynes · · Score: 2, Insightful
      if you're using an XML file in a place where you need a high performance SQL database then you're doing something wrong. If you're using XML as datastorage for some small webapp who cares so long as it's fast enough for that particular application.


      As you point out, it is the wrong tool for the job, much like using tables to layout HTML pages (as the CSS religionists like to point out).

      My 64 million dollar question is why they put an acronym inside another acronym: XOP stands for XMLOP? WTF??!!

      They REALLY have too much time on their hands!

      --
      slashdot: A failed experiment.
    3. Re:Binary... XML... Nah! by System.out.println() · · Score: 1

      AIM = AOL IM
      GNU = GNU's Not Unix (and many other recursive acronyms)

      To name a few :)

    4. Re:Binary... XML... Nah! by ingo23 · · Score: 1
      The benefit of XML over SQL is that XML is a format while SQL is a language. It's like comparing a verb to a noun.

      Things like SOAP do not make it seem like a protocol, they just use the format.

      Adding binary objects to XML specs is going to be quite useful. And the point is not that you could not do that before. The point is to make it a standard.

    5. Re:Binary... XML... Nah! by tepples · · Score: 1

      it is the wrong tool for the job, much like using tables to layout HTML pages (as the CSS religionists like to point out)

      CSS religionists like to deny the existence of the 90% browser, whose CSS implementation has too many bugs and deficiencies to make it a complete replacement for some forms of table based layout. Personally, I prefer using a hybrid of tables and CSS on sites that I develop.

      My 64 million dollar question is why they put an acronym inside another acronym

      It gets worse: RISC = Reduced Instruction Set Complexity; POWER = Performance Optimization With Enhanced RISC; PPC = POWER for Personal Computers

    6. Re:Binary... XML... Nah! by a_karbon_devel_005 · · Score: 1, Insightful

      Really? You can't see the benefit?

      You mention SVG, but then you fail to see the benefit of reducing the size of, say, a large SVG file in a standards compliant way so that it can be transferred and take up less bandwidth. A good binary standard will DEFINITELY be smaller than the verbosity that is XML. Sure you can compress it, but when you compress a whole bunch of unneeded crap, you still have a whole bunch of unneeded crap... just compressed. If this standard reduces the amount of space it takes to write:
      <someLongTagWithANameLikeThis>1</someLongTagWithAN ameLikeThis>

      ... that will help a lot. People have been clamoring for a STANDARDIZED recommendation for XML for a LONG time.

    7. Re:Binary... XML... Nah! by tha_mink · · Score: 1

      it is the wrong tool for the job, much like using tables to layout HTML pages (as the CSS religionists like to point out) CSS religionists like to deny the existence of the 90% browser, whose CSS implementation has too many bugs and deficiencies to make it a complete replacement for some forms of table based layout. Personally, I prefer using a hybrid of tables and CSS on sites that I develop.

      Be fair...(and I am a Firefox guy) NO [ right...NO] browser fully conforms to CSS standards. I am a CSS religionist and have found it impossible to test my work since NO [right...NO] browser fully conforms to CSS standards...(Yes folks...that means CSS1 AND CSS2) BTW...I thought XML was on its way out...

      --
      You'll have that sometimes...
    8. Re:Binary... XML... Nah! by Anonymous Coward · · Score: 0

      It gets worse: RISC = Reduced Instruction Set Complexity; POWER = Performance Optimization With Enhanced RISC; PPC = POWER for Personal Computers

      From GNU's Hurd page:

      According to Thomas Bushnell, BSG, the primary architect of the Hurd:
      "HURD" stands for "HIRD of Unix-Replacing Daemons". And, then, "HIRD" stands for "HURD of Interfaces Representing Depth". We have here, to my knowledge, the first software to be named by a pair of mutually recursive acronyms.


      :-)

    9. Re:Binary... XML... Nah! by Anonymous Coward · · Score: 0

      > It gets worse: RISC = Reduced Instruction Set Complexity; POWER = Performance Optimization With Enhanced RISC; PPC = POWER for Personal Computers

      Sorry I just have to write that one out completely (mod me redundant if you want)

      PPC = Performance Optimization With Enhanced Reduced Instruction Set Computer for Personal Computers

      Yes, RISC = Reduced Instruction Set Computer btw.

      So PPC is a computer for personal computers...

    10. Re:Binary... XML... Nah! by Leo+McGarry · · Score: 1

      While I'm sure there are some people out there who think the idea of an acronym that means itself is just the funniest thing ever, the gnu (the "g" is silent; it's pronounced "nu") is one of two species of African antelopes. They have big heads, long tails and horns. They smell fairly terrible, but they're really very beautiful ...as long as they're downwind.

      Like I say, I'm sure there are some people who think the old "it's an acronym" joke is a real knee-slapper. But it's kind of a shame that the people who chose to name their organization after a beautiful animal turned around and dissed that animal by trying to define its name.

    11. Re:Binary... XML... Nah! by Leo+McGarry · · Score: 1

      NO [ right...NO] browser fully conforms to CSS standards

      Which kinda makes one question whether having such so-called "standards" is really worth all the trouble.

      Amazingly, HTML compatibility was easier before it was "standards" this and "standards" that. There were certain constructs that only worked in certain browsers, sure, but we didn't have the god-awful mess of supposed-tos and should-nots that we have today.

      It seems to me, from a distant perspective, that the problem with Web standards isn't that nobody adheres to them. It's that they're really shitty standards.

    12. Re:Binary... XML... Nah! by dubious9 · · Score: 1

      My favorite: VHDL: VHSIC Hardware Description Language.

      --
      Why, o why must the sky fall when I've learned to fly?
    13. Re:Binary... XML... Nah! by Anonymous Coward · · Score: 0

      They didn't try to define the name of the animal. They defined their orginization's name. They are not trying to say the animal should also be pronounced with a hard 'g', just the opposite! It makes an easy distinction of whether your are talking about the animal or the orginization.

    14. Re:Binary... XML... Nah! by metalhed77 · · Score: 1

      Well, prepare to get angry cuz they made these techs a long time ago:

      XPath
      XSL
      XLink
      XHTML
      XForms
      XPointer

      It makes sense to put the X in front of tech that uses XML. CSS doesn't need an X because it works on SGML too for instance

      --
      Photos.
    15. Re:Binary... XML... Nah! by Anomalous+Cowturd · · Score: 1


      Hey-

      Check out this great site that is giving away totally FREE Mini Macs!

      I've joined and I think you should as well.

      It's a completely legitimate offer, and this company has already given away $4 million in FREE stuff!

      All you have to do is join, complete an online offer, and refer friends to do the same. That's it!

      Here is my referral link. To help me get my Mini Mac, click this exact link to join, or copy and paste it into a browser:
      http://www.FreeMiniMacs.com/?r=********


      My god. It's the first Slashdot spam. Note that the original comment is all in bold with a live link.

      I think this referral-Amway thing has gotten out of hand. Are we going to start seeing these things in every story now?

      --

      Java: the bastard demon spawn of C++ and Ada

    16. Re:Binary... XML... Nah! by DrSkwid · · Score: 3, Insightful

      Amazingly, HTML compatibility was easier before it was "standards" this and "standards" that.

      Are you *sure* about that ?

      <blink >
      <marquee >
      <object >
      <bgsound >

      No-one forces you to validate your html (unless you work for me =). Why I come from it's comformance first, compatibility second.

      So, You're Against Innovation?

      A common misconception is that folks who advocate HTML validation are retro-thinking, "backwater unix geeks" who stubbornly oppose innovation. It's true that many advocates of HTML validation are indeed seasoned computer professionals, who have learned the hard way that portability and compatibility are key elements to ensuring the longevity of any software product (including Web pages).

      --
      There are places where the networks are not touching,and there are places where they are-Boeing's Lori Gunter
    17. Re:Binary... XML... Nah! by DrSkwid · · Score: 1

      /. spam has been around for a long time

      Surely you must remember the Free iPods guy, that one wasn't so long ago.

      I can't remember any other specific ones because they fade into insignificance.

      --
      There are places where the networks are not touching,and there are places where they are-Boeing's Lori Gunter
    18. Re:Binary... XML... Nah! by Leo+McGarry · · Score: 1

      Haven't the foggiest idea what your post was intended to mean, or what it had to do with mine. Got any clarity, brother? Spare a spot of illumination?

    19. Re:Binary... XML... Nah! by DrSkwid · · Score: 1

      I'll summarize then :

      Yes, it is worth the trouble.

      --
      There are places where the networks are not touching,and there are places where they are-Boeing's Lori Gunter
    20. Re:Binary... XML... Nah! by Anomalous+Cowturd · · Score: 1

      I don't remember a specific iPod guy, just all the sig links - I guess I was lucky there. This is the first out-and-out spam I've seen, that looks like it could have been in my email. I fully expect to see Costa Rican land scams and Vioxx ads any day.

      Just remember what Usenet used to be like. This could get a lot worse.

      --

      Java: the bastard demon spawn of C++ and Ada

    21. Re:Binary... XML... Nah! by brushybill · · Score: 1

      Except that SQL is nothing at ALL like XML... XML is a markup language, vs. SQL, which is a concrete expression language. I actually can barely understand your implied relationship between the two... SQL is a relatively static, industry defined syntax for performing database operations, while XML is a completely open-ended, schema based facility for defining basically ANY piece of knowledge. In fact, I really can't comprehend why you'd even compare it to SQL...

    22. Re:Binary... XML... Nah! by TeknoHog · · Score: 1
      My 64 million dollar question is why they put an acronym inside another acronym: XOP stands for XMLOP? WTF??!!

      Never mind the question why people say "acronym" when they mean "abbreviation"...

      --
      Escher was the first MC and Giger invented the HR department.
    23. Re:Binary... XML... Nah! by zootm · · Score: 1

      Another point is that SQL is more limited in expressive power than XML - foreign keys can redress some of the difference, but not even nearly all. XML is Turing-complete, and SQL can only query on first-order predicates, if I remember correctly.

      This is why XML query optimisation is so difficult, and why there's so much work still going into it.

    24. Re:Binary... XML... Nah! by Anonymous Coward · · Score: 0

      Probably because they mean acronym.

    25. Re:Binary... XML... Nah! by say · · Score: 1

      Amazingly, HTML compatibility was easier before it was "standards" this and "standards" that.

      If you're referring to the days of Netscape 3 and IE 1, you must have a very bad memory or never been engaged in making a webpage these days. The XHTML standard, for instance, is really easy to understand, and as long as you use simple CSS, you'll get the same result in a lot of browsers. Yes, IE has misunderstood some of the CSS specification, and the CSS2 layers model is far too advanced for today's browsers. But the differences are extremely small now compared to that of 1996.

      --
      Roses are #FF0000, violets are #0000FF, all my base are belong to you
    26. Re:Binary... XML... Nah! by NoMercy · · Score: 1

      This is a way to put binaries into XML, eg a jpeg image without incuring a huge size penalty to encode the data in viweable characters only.

      I doubt a binary version of the XML format would see any popular use, but a decent compression system for XML would be a nice bonus, just something to put alongside the other compression standards commonly seen in HTTP 1.1's Accept-Encoding header.

    27. Re:Binary... XML... Nah! by passionplay · · Score: 3, Interesting

      I think everyone that's posted to this thread to this point has missed the point here. This XOP optimization has nothing to do with making XML more compact or anything. It has to do with delaying latency for large payload transfers and allowing the client application to decide if it wants the large binary payload.

      Seriously, you guys need to re-read the article again.

      The problem with XML binary payloads now is that you find out that you have a large chunk of payload too late in the game and can't avoid it if you don't need it.

      This method allows you to know everything there is to know about the payload before you get to the payload.

      In theory, you should be able to skip all the payload data until such time as you really need it, thereby speeding up large transfers of XML data when only the metadata about the payload is required.

      Make sense? I think so too.

      P.S. Binary XML is entirely different animal.

    28. Re:Binary... XML... Nah! by Anonymous Coward · · Score: 0

      I'm not sure it's meant to be funny, just recursive.

    29. Re:Binary... XML... Nah! by Leo+McGarry · · Score: 1

      as long as you use simple CSS, you'll get the same result in a lot of browsers

      So much for the "standard," huh?

      Look, I guess I was unclear or something. We have these massive and baffling standards, standards that overlap, standards that contradict, standards that no mere mortal could possibly understand. Nobody conforms to them. Your solution? "Just use very simple CSS." Um. Bad solution. Bad! Go lay down!

      Better solution: Take a moment to wonder if, maybe, it's the standards themselves that suck. If nobody but nobody complies with them, maybe it's not a compliance problem as much as it is a problem at the head end. Ya know?

      And no, the differences most certainly are not "extremely small" compared to the old days. In the old days, it was a matter of whole features that either worked or didn't. And guess what? The HTML format was designed to fail gracefully. So if you went to a Web page that used some feature your browser didn't support, you just didn't see that part of the page. Everything else worked.

      But now we're fucking with the box model. Now we're fucking with the way things are actually drawn on the page. Not which parts are drawn and which are ignored, but rather how things are drawn. When you give a browser a basic instruction, like "make this box 300 pixels wide," and the browser responds by making the box 302 pixels wide because somebody misinterpreted the baffling, bewildering spec, that's not a "very small problem." That's a massive fuck-up.

    30. Re:Binary... XML... Nah! by TeknoHog · · Score: 1
      Most of the explanations in your link refer to "words". That means they have to be pronounceable, like RADAR or NATO.

      Simply taking initials of words is an abbreviation. RADAR and NATO are abbreviations too. Acronyms are a subset of abbreviations, the kind that can be pronounced like words.

      There is a reason for two different words, abbreviation and acronym, because they mean different things. If you think they mean the same thing, then let's just ditch one of them to avoid any redundant redundancy.

      --
      Escher was the first MC and Giger invented the HR department.
  2. Testimonial: Dancin Santa by Dancin_Santa · · Score: 5, Funny

    I was drownding in debt. There was no where to turn. My wife left me, my friends all left me. Even my dog, he left me too. I had to do something.

    That's when I found Binary XML. They were able to help with the debt. They got the creditors off my back and got me back on my feet.

    Thanks Binary XML!

    (I thought this was going to be about a standardization of compressing XML files that got rid of the excess bloat in the markup.)

    1. Re:Testimonial: Dancin Santa by goodzilla · · Score: 0

      hahahah i dont get it only nice use i seen of SQL is RSS anyways so i dont see the use :)

    2. Re:Testimonial: Dancin Santa by Anonymous Coward · · Score: 1, Funny

      I was drowning in "maybe" or "perhaps" slashdot articles again. There was no real news in sight. My pickled horse left me. My limelight perl sherbet left me. My estranged bungee left me. Even my albatross cadaver, he left me, too. I had to do something.

      That's when I saw Binary XML. They were able to give me a real, solid story. They got the Dancin' Santas on my back and a hedgehog on my porch.

      Thanks Bob the Builder!

      (I thought this was going to destroy my epsom salt epstein-barr files to get rid of the excess methcathinone lumberjacks.)

    3. Re:Testimonial: Dancin Santa by seanadams.com · · Score: 1

      My wife left me, my friends all left me. Even my dog, he left me too. I had to do something.

      Your life is a country song. For better results, try playing it backwards.

      I got my wife back, my car back, my house back, and a full bottle of whiskey at the end!

    4. Re:Testimonial: Dancin Santa by __aaclcg7560 · · Score: 1

      I got my wife back, my car back, my house back, and a full bottle of whiskey at the end!

      Lucky you. I played my record backwards and the Devil from Georgia shows up. Took a while to get rid of that son of a gun. :)

    5. Re:Testimonial: Dancin Santa by Anomalous+Cowturd · · Score: 1

      Hmm. I played that one backwards, and I wound up going down to Hell and challenging the devil to a fiddle contest. Didn't win.

      --

      Java: the bastard demon spawn of C++ and Ada

    6. Re:Testimonial: Dancin Santa by Anonymous Coward · · Score: 0

      Hmm. I played that one backwards, and I wound up going down to Hell and challenging the devil to a fiddle contest. Didn't win.

      I played one backwards and heard variations of a old stupid joke that I'd first heard when I was five.

  3. nothing else to work on? by seanadams.com · · Score: 3, Interesting

    The tech industry seems really starved for ideas lately.

    Binary file formats are hard.
    Let's use XML because it's easier.
    No wait... let's represent that XML in a more efficeint binary format.
    Ah yeah that's the ticket - the best of both worlds!

    Now let me just fire up my code-morphing processor which, through emulation ahieves x86 compatibility with "low" power consumption. Never mind it's slower overall and has worse MIPS/mW than an underclocked x86 - look Ma, we *inveted* something!!!!

    There are some real technical problems out there... why are people chasing non-problems like XML?

    1. Re:nothing else to work on? by tomhudson · · Score: 4, Insightful
      There are some real technical problems out there... why are people chasing non-problems like XML?
      Because they're hacks more into buzzword bingo and "selling the next big thing"?

      Whatever happened to the virtues of simplicity, like a file containing a header record detailing the field names, and rows containing the data in either fixed-length or delimited form? Damn fast to implement, debug, read from and write to. Parsing? What parsing? Read the first line, split it to get your headers, and read 1 line per record.

      Ideal for data exchange. Easy to manipulate via javascript on the client. Simple to display and manipulate via the DOM (Document Object Model). Not resource-hungry. Handles both text and binary data. Dirt easy on the server.

      I ran a test to compare, and I'm able to select, format, and serve 1000 records this way in less time than 100 records in simple HTML, never mind xml. By doing this, the client can page through, say, 25 records at a time without having to hit the server every few seconds to see the next/prev pages.

    2. Re:nothing else to work on? by Anonymous Coward · · Score: 0

      Has anyone else written file based upload code for HTTP. It is hideous! This is the same crapola. MIME is soooo slow, and such a pain in the arse. No length fields, why? I have to say it is actually nastier than ASN.1 and that is really hard to beat!

      Oh lord. How can they be touting this... I can understand MS getting behind this crap, but what is wrong with IBM and BEA. Short their stocks now!

    3. Re:nothing else to work on? by lupin_sansei · · Score: 2, Informative

      What you are talking about is CSV. CSV is great, but it's only any good for table structured data. You can't implement a tree or any arbitrary nested structure like you can in XML.

    4. Re:nothing else to work on? by Anonymous Coward · · Score: 1, Insightful

      id, parentid, tag, text
      1, -, root, yes you can
      2, 1, child, it's simple
      3, 1, child, do it like you would in actual code
      4, 3, grandchild, you don't really think memory has magical trees in it do you?
      5, 4, answer, it doesn't
      6, 1, child, you can create trees in CSV

      ==

      <root>yes you can
      <child>it's simple</child>
      <child>do it like you would in actual code
      <grandchild>you don't really think memory has magical trees in it do you?
      <answer>it doesn't</answer>
      </grandchild>
      </child>
      <child>you can create trees in CSV</child>
      </root>

      Which one is *really* easier to parse? (Not necessarily read.)

    5. Re:nothing else to work on? by SunFan · · Score: 1

      I'm waiting for the fantastic MIPS/MW of the Pentium VIIV!

      --
      -- Microsoft is the most expensive commodity operating system and office suite vendor in the marketplace.
    6. Re:nothing else to work on? by firewrought · · Score: 0, Redundant

      Chip fabrication is hard.
      Let's make general purpose CPU's that can be programmed. It's easier!
      No wait... let's use PICs so that our {small electronics project} doesn't need an ATX case.
      Ah yeah that's the ticket - the best of both worlds!
      </sarcasm>


      Binary XML *does* give you the best of both worlds, for the most part. Remember that binary formats, in general, are bad because a human cannot infer much about the information they represent or how to change that information w/o violating the format. Remember that XML gives a programmer many advantages over other text-based formats, including the ability to create new languages without having to write a parser; the ability to mix vocabularies from multiple languages; and the ability to use a wide array of pre-existing tools (XSLT, xpath, text editors, schema validators, etc.) on newly minted data models.

      Binary XML is a logical compromise: there's a greater risk of conflicting implementations and it will be more difficult to repair a corrupted file, but--in general--programmers will still be able to see the underlying data model by reading the binary glob through DOM or by dumping it to text. And it will be much more efficent.

      Note also that this spec is rather rote: no real "chasing" done here.

      --
      -1, Too Many Layers Of Abstraction
    7. Re:nothing else to work on? by SunFan · · Score: 1

      I generally agree with you except:

      1) Endianness will probably cause problems when you least want them.

      2) Parsing wide-character string data can be a pain.

      I mostly think XML is 95% overrated and 5% genuine usefulness, but, in a world of people who have never heard of a big-endian computer regardless of a degree CS/CE/EE, it's a tough call.

      You know, I think colleges should start offering 4-year degrees in XML. That way we would be assured of having a few people in the world who actually know how to use it properly.

      --
      -- Microsoft is the most expensive commodity operating system and office suite vendor in the marketplace.
    8. Re:nothing else to work on? by lupin_sansei · · Score: 1

      XML is easier to parse, since I can use the XML parser that comes with the browser's DOM implementation, or my languages API.

    9. Re:nothing else to work on? by tomhudson · · Score: 1
      What you are talking about is CSV. CSV is great, but it's only any good for table structured data. You can't implement a tree or any arbitrary nested structure like you can in XML.
      Well, I was actually talking about fixed-length records as well (even quicker to manipulate - no complicated parsing involved, random access for r/w, etc). Need some data?
      fseek(HEADER_LENGTH + RECORD_SIZE * (desired_record_no - 1));
      if (bytes_read = fread(FH_IN, ibuff, RECORD_SIZE) == RECORD_SIZE) {
      // do processing
      } else {
      // error_handling code
      }
      As for implementing a tree or nested structure using tables ... look at the display options for the site you're posting on. It allows you to view the data as threaded, nested, or flat, but the original postings are stored as table data.

      Data presentation to the end user != data storage method. The two are, and always should be, independent.

    10. Re:nothing else to work on? by renehollan · · Score: 1
      Well, yeah, but that's cheating, using a parser you get for "free". The table format for structured data is a hack. I've seen it used to store tree-structured data in databases. With very bushy trees, XML is a more compact representation. With deep sparse trees, it's the opposite.

      The big advantage to XML is its ability to represent tree-based structures. The anount of fiddling needed to represent self-referential structures is on a par with table-based encoding of tree structures, so that extention is easy.

      Of course, there are lots of ways to represent structured data -- XML is but one and the grandparent's post illustrates another. Perhaps the right approach is to separate the structure of the data from the means used to encode it, with a few standard methods. (Anyone beside me remember XDR/RPC?)

      I happen to love using XML for a config-file text-based representation of small amounts of tree-structured data. The hodge-podge of formats in the typical /etc directory is absurd. However, parsers that insist on parsing an entire XML document at once are useless for arbitrarily complex documents of which only part is of interest. XML is bloated and slow -- no argument. But then, so is interpreting source code. An XML to binary-XML compiler would be welcome.

      --
      You could've hired me.
    11. Re:nothing else to work on? by thogard · · Score: 1

      yes you can
      . it's simple
      . do it like you would in actual code
      . . you don't really think memory has magical trees in it do you?
      . . . it doesn't
      . you can create trees in CSV

      dots optional...
      I've been using computers which seem to have linear runs of memory for a long time and I don't have any problem telling them to keep stuff in all kinds of complex structures that don't fit how stuff is in memory. Why should a file be any different?
      The above format is how my todo list program has been keeping things for over a decade.

    12. Re:nothing else to work on? by starm_ · · Score: 1

      " but, in a world of people who have never heard of a big-endian computer regardless of a degree CS/CE/EE, it's a tough call.
      "

      The solution to that is: Standardize on an endianness for binary serialisation and let the computer that doesn't follow the standard do the conversion.

      See? that wasn't hard, No need for XML.

    13. Re:nothing else to work on? by asb · · Score: 2, Informative

      You, and whoever modded you up as "interesting", are an idiot.

      This standard is not about representing XML in binary format.

      This standard is about representing binary content in an XML document in binary format.

      See, previously, if one wanted to include binary data in an XML file one had to Base64 encode it. This takes space and processor time.

      This standard moves the bloated Base64 content into a pure binary MIME object.

      Maybe you should have RTFA first, eh?

      --
      Antti S. Brax - Old school - http://www.iki.fi/asb/
    14. Re:nothing else to work on? by Nailer · · Score: 0

      Whatever happened to the virtues of simplicity, like a file containing a header record detailing the field names, and rows containing the data in either fixed-length or delimited form?

      It didn't properly seperate content from presentation. So your script broke when you added a field.

      'Text processing' is a hack to get around file formats that lack proper markup.

    15. Re:nothing else to work on? by Jugalator · · Score: 1

      See? that wasn't hard

      Hehe, look at the standardization processes between companies and you'll see that it's more than hard. ;-) After all these years, we're still living with disagreements on how the return character should look like.

      --
      Beware: In C++, your friends can see your privates!
    16. Re:nothing else to work on? by Anonymous Coward · · Score: 0

      Well, yeah, but that's cheating,

      Cheating? Well, it's the concept of reusable code.

    17. Re:nothing else to work on? by Keeper · · Score: 1

      No wait... let's represent that XML in a more efficeint binary format.

      Except that's not what they're doing at all. They're encoding binary data IN an XML document. They're using a principle similar to how one would go about attaching a file to an email.

    18. Re:nothing else to work on? by DrSkwid · · Score: 1

      do you even know what binary xml is ?

      RTFA

      --
      There are places where the networks are not touching,and there are places where they are-Boeing's Lori Gunter
    19. Re:nothing else to work on? by mshurpik · · Score: 1

      You mean LF vs CR/LF? Well, CR/LF has a higher resolution than LF, and was introduced later (Windows), so I would have to say that Unix needs to catch up and standardize to CR/LF.

      It's true, though, that an ASCII character standard would be far more useful than XML ;)

    20. Re:nothing else to work on? by EvilIdler · · Score: 1

      The only good thing to come out of Electronic Arts was their IFF EA 85 data format standard. It is more or less to binary what XML is to text.

    21. Re:nothing else to work on? by master_p · · Score: 1

      You are absolutely correct. What the industry needed was a standard format for data exchange, not the bloat XML is.

    22. Re:nothing else to work on? by Anonymous Coward · · Score: 0

      WTF? CSV is ascii (or unicode, which contains a marker to show byte order) text. And if you really wanted to transfer binary data then look up "Network byte order".

    23. Re:nothing else to work on? by Chris_Jefferson · · Score: 3, Informative
      Whatever happened to the virtues of simplicity, like a file containing a header record detailing the field names, and rows containing the data in either fixed-length or delimited form? Damn fast to implement, debug, read from and write to. Parsing? What parsing? Read the first line, split it to get your headers, and read 1 line per record.

      Then of course you have the problem that your data wants to be variable length. Then you want to have the deliminator actually in the data, so you have to invent escape codes. Then in some lines you want to allow multiple occurances of some of the parameters so you put in some basic markup. Then you want to be sure that any data users enter is of the correct format, so you write a verifier. Then you are basically back at XML again.

      XML isn't that great. However take at face value, it saves time and programming errors, the same way I wouldn't expect to have to wite my own doubly-linked-list, or hash table. Neither are complicated, but my language should come with one pre-written which is safer and faster than one I could knock together.

      --
      Combination - fun iPhone puzzling
    24. Re:nothing else to work on? by flink · · Score: 1

      Whatever happened to the virtues of simplicity, like a file containing a header record detailing the field names, and rows containing the data in either fixed-length or delimited form?

      Because things don't stay that simple. Have you ever looked at, say, an X12 spec? Looping, conditional sub elements, destination-specific mandated fields... After writing 3 or 4 validating X12 parsers, you really start to pine for XML: Here's the data, here's the DTD, give me the parse tree.

    25. Re:nothing else to work on? by Anonymous Coward · · Score: 0

      CR/LF . . . was introduced later (Windows), so I would have to say that Unix needs to catch up and standardize to CR/LF.

      On the contrary - CR/LF was the original system, dating back to when they were control characters sent to line printers with different effects (CR moved the print head back to the beginning of the line, LF rolled the paper up a line).

      It was a Unix innovation to save space and memory by using only LF to stand for both.

    26. Re:nothing else to work on? by tomhudson · · Score: 1
      It didn't properly seperate content from presentation. So your script broke when you added a field.
      No, the script won't break when adding or removing a field:

      1. read header
      2. create arrays for field name, field type, field length by split()
      3. for each line in rest of file
        1. grab field_length[field_number] number of bytes
        2. display as appropriate to that field type
      Heck, you can even use a style sheet to determine how it's displayed by having a style for each field type. Don't like how it's displayed - change the style sheet.
    27. Re:nothing else to work on? by tomhudson · · Score: 2, Insightful
      All the problems you mention were solved decades ago.
      1. data wants to be variable length
        Not a big deal. You don't necessarily need embedded escape codes (though they work well) - you can also use overflow buckets like databases have used for, say, 30 years
      2. Then you want to have the deliminator actually in the data, so you have to invent escape codes.
        regexes make this easy to implement.
      3. Then in some lines you want to allow multiple occurances of some of the parameters so you put in some basic markup
        Not necessarily. Master/detail records handle this problem nicely.
      4. Then you want to be sure that any data users enter is of the correct format, so you write a verifier. Then you are basically back at XML again.
        No - it's a lot easier to write a function to verify that a postal code is formatted correctly when passed a string, than it is to interface wit a general-purpose verifier. Besides, you still have to verify it independently on the server before saving it (I don't want to run an xml parser every time someone clicks submit).
    28. Re:nothing else to work on? by letdinosaursdie · · Score: 1

      Definitely not very useful for data with any kind of structure. Why not s-expressions though?

    29. Re:nothing else to work on? by Nailer · · Score: 0, Flamebait

      Yes it will.

      You'll have to change the array in your script when your output changes. The length of your field is measured in a fixed amount of bytes. And, in case it isn't obvious (I'm being rude to you because you said 'No' rather than being civil to me), THE FACT YOU'RE REFERRING TO LINE NUMBERS MEANS YOU'RE BASING YOUR PARSING OF THE PRESENTATION OF THE INFORMATION YOU DOLT.

    30. Re:nothing else to work on? by Anonymous Coward · · Score: 0

      You completely missed the point here. Are there smaller representations of data than XML?Absolutely. I don't think reducing package size is a primary goal of XML. Transaformation and self-representation is.

      Notice that in your example any program that wanted to parse out data from your message would have to know the format of your message! If that format changed...all existing code would break and would have to be changed.

      This is the benefit of XML. You can transform it from one format to the other...without changing code. This allows one chunk of code to be written and format changes to be handled by XSLT.

      -Satan Oscillate My Metallic Sonatas

    31. Re:nothing else to work on? by renehollan · · Score: 1
      It is not a fair comparison. If you had an existing library to make loading CSV data easy, would you still come to the same conclusion?

      If the issue is one of "Which external data format is better?", I don't think it's fair to answer it on the basis of which one is supported better by existing tools. While that is certainly a factor when implementation expediency is concerned, it is not the only characteristic worthy of optimizing.

      The big issues with XML encoding are encoded-object size, and incremental parsing.

      --
      You could've hired me.
    32. Re:nothing else to work on? by starm_ · · Score: 1

      no that is not what endianness is. Look it up on google.

    33. Re:nothing else to work on? by tomhudson · · Score: 1
      Definitely not very useful for data with any kind of structure
      Sure it is ... most xml "data" is artificially over-structured to "conform" to xml. Real data (the stuff that lives in relational and/or hierarchal databases, and that generates real revenue) is certainly structured, yet works quite well with this. Stuffing it into xml is a waste of time and resources.
    34. Re:nothing else to work on? by tomhudson · · Score: 1
      The length of the field is NOT measxured in a fixed amount of bytes:
      var fields = "Lastname:Char:20;Firstname:Char:20;Notes:Char:50" .split(';');
      ... can be changed to ...
      var fields = "Lastname:Char:20;Firstname:Char:10;Notes:Char:500 0".split(';');
      ... with o problem, or even to this ...
      var fields = "Id:Number:10;Me:Char:100;School:100;Notes:500;Bir thdate:Date:8;Spouse:20;Work:20;".split(';');
      ... and it will still work. The end result is an array filled with strings containing field names, data types, and the actual data, which can all be split in a for loop.

      The actual data does NOT have to be kept in lines - it can all be one string of size h+x*n length, where x=record size, h=reader size, n = number of records.

      If you had tried it, you would know it works, and that it's not something new - its been done like this in other languages for decades.

      So, stop with the all-caps shouting ... xbinary xml is an oxymoron.

    35. Re:nothing else to work on? by tomhudson · · Score: 1
      Notice that in your example any program that wanted to parse out data from your message would have to know the format of your message! If that format changed...all existing code would break and would have to be changed.
      Not really. You can add, remove, change, fields, field types, etc., without changing how the code that interacts with it behaves. You can easily add code to take in cases where the header only contains partial information, supplying defaults for the rest, and you also can add a meta-header, which would include information about the header seperator character sequence, field spec separator char sequence, and the header length. That would cover a LOT of modifications w/o crapping out the code.

      It could even be made to recognize different headers embedded in the data, for other differently-formatted data, w/o getting bloaty or hard to code/debug.

      Transforms/exchanges could also be handled by a simple script. Efficiency = programmer efficiency + code efficiency.

      As for the rest, the presentation to the end user would be handled by css.

    36. Re:nothing else to work on? by Nailer · · Score: 1

      The length of the field is NOT measxured in a fixed amount of bytes:

      var fields = "Lastname:Char:20;Firstname:Char:20;Notes:Char:50" .split(';'); ... can be changed to ...

      var fields = "Lastname:Char:20;Firstname:Char:10;Notes:Char:500 0".split(';');

      Yes, I know. You don't understand what I'm saying. For one final time: you shouldn't need to change anything. The language should deal with it. Oddly enough ,like XML does.

      You also fail to understand that I'm not arguing for or against binaries encoded within XML, I'm reponding to a parent post that's against XML per se.

    37. Re:nothing else to work on? by tomhudson · · Score: 1
      The whole point is to get away from xml's flaws (lack of seekability, high resource usage). Binary XML isn't the way to do this ... not when much simpler solutions are possible.

      Trying to be all things to all people, or fill all niches, means being neither fish nor fowl. Shoehorning XML into everything is short-sighted.

      Besides, the term "binary xml" is a good candidate for oxymoron-of-the-month, IMO :-)

    38. Re:nothing else to work on? by Anonymous Coward · · Score: 0

      The X-windows protocol addressed this over a decade ago. Have the machines do a handshake to determine which endianess they want to speak. If both are the same, no byte-swapping occurs. If they're different, the server dictates the endianess.

    39. Re:nothing else to work on? by Anonymous Coward · · Score: 0

      I wasn't talking about endianness, I was replying to the kid who was talking about standardization.

      As it happens, I am one of those CS/EE people you mentioned in your original post. I grew up with PC's, and my understanding of endian compatibility is limited to reading the X Windows specification some years back.

      -mjs

  4. I'll Take One by Anonymous Coward · · Score: 0

    I'll take a binary extra medium large to go please.

  5. I for one... by Vombatus · · Score: 1
    welcome our XML wrapped binary overlords

    or is that our XML-binary Optimised Packaged overlords?

    --
    This sig is intentionally blank
  6. Binary XML Lite by noidentity · · Score: 4, Funny

    Here's my binary XML-like file format which gives the best of both text and binary file formats. It's human readable and efficient at the same time! Finally, an end to the text-versus-binary wars. Here's an example file:

    The following data is in binary.
    UH)(&T^( @#t79nui**&tb x9#@ $Y*_@$ji[P{O@JIOHXIOU$HIIU#$hiuoHOP$UJ [etc.]

    1. Re:Binary XML Lite by Anonymous Coward · · Score: 0

      Binary XML will enable superior buzz word compatibility to existing technologies. Here's your syntax for Word 2006 format:

      Now everyone can use Microsoft formats! It's open, it's flexible, it's human parsable and compatible with all XML-enabled solutions *.

      *) Some assembly needed (pun intended).

    2. Re:Binary XML Lite by Anonymous Coward · · Score: 0

      > The following data is in binary.
      > UH)(&T^( @#t79nui**&tb x9#@ $Y*_@$ji[P{O@JIOHXIOU$HIIU#$hiuoHOP$UJ [etc.]

      Looks like Perl to me.

    3. Re:Binary XML Lite by g0at · · Score: 1

      Something else I hate about this whole thing is the perpetuating of "binary" to mean "non-plaintext". I mean Christ, are we to infer that plaintext data is represented in ternary while everything else can only be expressed in binary? Yep, no hexadecimal for non-text, no sirree...

      -b

  7. twO THUMbs Up!! by goodzilla · · Score: 0

    these testimonials are so much like the TWO THUMBS UP !! type things you see for movies like this one

  8. Seems like a great way to package media... by bryanrieger · · Score: 2, Insightful

    This seems like it would be an ideal fit for services such as Flickr as it would allow for image (or other binary media files) to be sent with xml data - in a compressed binary format.

    1. Re:Seems like a great way to package media... by psyclone · · Score: 1

      Exactly. It seems like a way to have a "text" file that is easily parsed (all the XML info -- in this case possibly a description, comments, image meta-data, etc.), yet binary info (a jpeg compressed image) fits along-side for when you want it. One file with all the goodies.

      How this is different than simply base64 encoding the image inside a tag is yet to be seen. Perhaps because it's a standard?

    2. Re:Seems like a great way to package media... by malfunct · · Score: 2, Interesting

      I would assume because base64 coding of binary data bloats its size (I think up to 40% additional size over the uncoded binary) and takes time to encode/decode. If you were to be able to put a marker in an element that says "binary blob 100 goes here" and include binary blob 100 in some other area that is pure binary then you would have the binary data without encoding overhead.

      --

      "You can now flame me, I am full of love,"

  9. As a software developer by Anonymous Coward · · Score: 4, Interesting

    As a software developer I find this particularly good.

    While I myself would prefer to write a binary protocol and send the data through a TCP socket I can no longer do that.

    When we land big contracts at work that deal in government and health the key thing they need now is interoperability with others. What does this mean? XML. Whether or not you like it, XML is here to stay. Its what everyone is pushing.

    Therefore we had to adapt and start using it. Not just for B2B, our rich desktop clients now communicate with the server using XML web services.

    The problem we've encountered is sending binary data. Right now we have to encode the data in base64 XML which uses lots of resources. I will give more look at this but it looks particularly good.

    1. Re:As a software developer by andalay · · Score: 1

      So Binary XML solves the problem that XML creates?

      Something to think about.

    2. Re:As a software developer by SunFan · · Score: 1

      B2B ... rich desktop clients ... XML web services

      Baarrrffff!

      --
      -- Microsoft is the most expensive commodity operating system and office suite vendor in the marketplace.
    3. Re:As a software developer by caseih · · Score: 2, Insightful

      Yes, but this is what ASN1 encoding is for. It's a structured, self-describing encoding scheme that works very well for structured data. What advantages does this binary XML have over ASN1? Both require external descriptions to attach meaning to the data.

      In your case, ASN1 is what you should be using, not XML in the first place.

    4. Re:As a software developer by Anonymous Coward · · Score: 0

      When we land big contracts at work that deal in government and health the key thing they need now is interoperability with others. What does this mean? XML. Whether or not you like it, XML is here to stay. Its what everyone is pushing.

      As a software developer, I've come to the conclusion that XML is a piece of junk, and offers *nothing* -- except "the other guy is using it".

      I think it's all a myth. Remember the James Bond movie where the bad guy parked a stealth boat between the American and Chinese navies and started firing missiles in both directions?

      I bet when you're using XML because you "know" the other guy is, he's using it for exactly the same reason.

      OK, everyone is pushing it. Imagine if everybody pushed back. Call out the emperor for being buck-ass naked in front of everybody.

      You might be surprised how many people on the other end of the wire feel exactly the same way.

    5. Re:As a software developer by Keeper · · Score: 1

      All this does is create a standardized process for what it is you're doing. You won't see any improvements with this, because you have to encode the binary data in MIME form.

  10. Now I can embed my evil virus without the... by Anonymous Coward · · Score: 1, Funny

    .. virus scanner picking it up!

    evil virus/xml?

    1. Re:Now I can embed my evil virus without the... by Anonymous Coward · · Score: 0

      you had the idea before me - crap

  11. Uhhh... by Phexro · · Score: 5, Informative

    Unless I'm horribly misreading the specification, it appears to be a way to package up XML documents and binary data that they reference into a neat package with MIME - not a way to convert a (text) XML document into a binary one.

    1. Re:Uhhh... by Anonymous Coward · · Score: 1, Informative

      You'd be entirely correct.

      Of course, this is Slashdot.

    2. Re:Uhhh... by Albinofrenchy · · Score: 1

      Yeah, you are most definatly right on that. Looks like CowboyNeal needs to RTFA.

      --
      "A man is but the product of his thoughts what he thinks, he becomes." -Mahatma Gandhi
    3. Re:Uhhh... by Phexro · · Score: 1

      I read the article... I'm already a bad slashdotter.

    4. Re:Uhhh... by Anonymous Coward · · Score: 1, Informative

      XOP doesn't define a packaging format, MTOM does define that the packaging used for SOAP is MIME.
      With XOP you can define that your packaging format is zip or tar or jar or whatever suits your application.

  12. Sounds like a good idea... by Anonymous Coward · · Score: 0

    Personally, I think it sounds like a good idea.

    Large amounts of information stored in XML format can be costly on storage and network transmission and without some kind of compression. Basically, it's a waste of space.

    Just because it's compressed, doesn't mean it can't be human readable... your favourite XML reader/editor will just have to implement the new standard to de/compress it, and it'll be back to it's human readable state.

    We all know how much space you can save if you zip a large text file or bmp, so whats wrong with compressing a bit of XML.

  13. Here it comes by ICECommander · · Score: 1

    This sounds like the era of small/efficient XML is gonna end: here comes the bloat! (Remember Netscape)

    --
    All your Sybase are belong to us.
    1. Re:Here it comes by hanshotfirst · · Score: 1

      I thought it already had.

      --
      Why, oh why, didn't I take the Blue Pill?
  14. More bloat! by Hobart · · Score: 4, Insightful
    I thought this was going to be about a standardization of compressing XML files that got rid of the excess bloat in the markup.
    So did I. Then I looked at that example and my heart sank. What the hell! 12 lines of bloated crap text turned into 46+ lines of worse bloated crap!

    And they're going to do what, say "gzip it" ? The amount of bandwidth and CPU time this wastes is abysmal.

    Someone needs to stop these people.
    --
    o/~ Join us now and share the software ...
    1. Re:More bloat! by Anonymous Coward · · Score: 0

      I agree. You should sign my petition to get rid of the stupid W3C and RFC systems:

      psp:\0somewhere!out-there***:screw^the.w3c

      psp is, of course, my custom petition-signing-protocol (you can snag the specs from sdp:\0somewhere!out-there**#:specs^psp.pl1&wombats . sdp, is, of course, the spec download protocol, which is named sdp.ada in the same specifier but requires an access level of "tiger.")

    2. Re:More bloat! by rohanl · · Score: 1
      Then I looked at that example and my heart sank. What the hell! 12 lines of bloated crap text turned into 46+ lines of worse bloated crap!

      You do realise that the original just includes file names, and the XOP version actually includes the serialised data, don't you!

    3. Re:More bloat! by Anonymous Coward · · Score: 5, Insightful

      So did I. Then I looked at that example [w3.org] and my heart sank. What the hell! 12 lines of bloated crap text turned into 46+ lines of worse bloated crap!

      The examples given in the article haven't included the binary data for berevity. The problem that exists now is that binary data has to be encoded into a form compatible with the charset of the document, which usually means base64. This increases the size of binary documents enourmously (think twice), and also requires CPU cycles to encode it.

      Being able to send the binary data in a seperate MIME payload means it doesn't need to be encoded in this manner which is a big help for any reasonable sized binary resources. It also means they become first class MIME objects and can have associated headers which provides additional benefits.

    4. Re:More bloat! by Laxitive · · Score: 1


      What the hell is wrong with just gzipping it?
      It's just another encoding that happens to be source-language agnostic and provide redundancy elimination.

      You have no problem with the overhead of parsing binary XML, but dictionary lookups and tree rotations involved in decoding a compressed file.. that's out of the question?

      Not to mention the added benefit that a standard compression layer shrinks not just the tags, but the content as well.

      Look, stop thinking of gzip (or bzip, or whatever), as a "compression" scheme. Just think of it as a input-language agnostic encoding mechanism which has the added bonus of eliminating redundancy.

      -Laxitive

    5. Re:More bloat! by Ignominious+Cow+Herd · · Score: 1

      Just think of it as a input-language agnostic encoding mechanism which has the added bonus of eliminating redundancy.

      Yeah, leave the redundancy to Slashdot^H^H^H^H^H^H^H^Hthe professionals!

      --
      Lump lingered last in line for brains, and the ones she got were sorta rotten and insane.
    6. Re:More bloat! by starm_ · · Score: 1

      "You have no problem with the overhead of parsing binary XML, but dictionary lookups and tree rotations involved in decoding a compressed file.. that's out of the question?"

      huh... last time I checked binary was the language the computer natively understood and it didn't need to be parsed or processed in anyway by software.

      Also, it seems to me that he did have a problem with the parsing of the XML part.

    7. Re:More bloat! by Laxitive · · Score: 2, Insightful

      Uhm, you still need to parse the XML structure.

      Technically, ASCII is binary, too. 'A' is 65, which is 01000001. Binary XML will not do away with parsing. The tags will still be there, the content will still be there. Only the restriction that the tags must be an alphanumeric string will be lifted.

      Making things "binary" doesn't magically remove the burden of parsing. You know the binary executables you run? The system loader loads it.. and parses it, and arranges it in memory the way it needs to be arranged, and tells the cpu "ok, start executing the code located here". Anything with structure needs to be parsed if you want to manipulate and query that structure in any meaningful way.. and XML is all about structure.

      -Laxitive

    8. Re:More bloat! by starm_ · · Score: 1, Funny

      Yes but usually when one refers to binary, one refers to the prefered language of the computer. Not some transliteration or translation of it that adds yet another conversion step to the data.

      And as I suggested above he did not like the XML tags either calling them:"12 lines of bloated crap" and all.

      I feel like Im talking to a two year old. I don't know what else to say. If you can't comprehend that binary is much faster to parse than XML theres nothing I can do. Oh I give up you're right. I propose to change the CPU and memory of the computer to work in XML.

      A3D2

      D22A ...

    9. Re:More bloat! by starm_ · · Score: 1

      What I meant to add was:

      <ASM instruction="JMP"><PARAMETER type="32bitAdress">A3D2</ASM>
      <ASM instruction="NOP"></ASM>
      <ASM instruction="ADDA"><PARAMETER type="32bit Integer">D22A</ASM></ASM> ...

    10. Re:More bloat! by interiot · · Score: 2, Insightful
      You're talking about two different kinds of parsing. Breaking out opcodes is hugely different from counting '<' and '>' characters 30,000 times in a row, just to find one little bit of information burried in the middle of text, but you just don't know where.

      Why are databases fast? Indexes. What do all XML databases do? Store XML internally in a way that machines read much faster, but makes it a pain for humans to update. Indexes. So if you have all these computer programs passing around data, each with their own different deserialized structure, why don't we just standard that side of things too? Indexes. Computers MUST have them to work efficiently, but no human updates them by hand. Ergo, one form easy for humans (plaintext XML) and one form quick for computers (indexes), with an easy way to convert back and forth.

    11. Re:More bloat! by Unordained · · Score: 2, Insightful

      Databases (typically relational) aren't just fast because of indices; they can also assume more about the structure of the data. A table (relation) is a set of tuples, each one with the same attributes, each one with a single value (however complex it might happen to be, in spite of what OODBMS people think.) When you've got that, you only need to store the meta-structure of the relation once, in the relation header. Then you can assume all sorts of stuff about what's to follow, and you can optimize the hell out of the data (CSV is so much more efficient than XML for transmitting relational data, it's amazing. And it's not even good.)

      On the other hand, when you've got a document in which structure fluctuates wildly from item to item, and you have to look at the item to know what it might be (let alone
      whether or not it's what you're looking for, what you can do with it, etc.) ... things take a little longer. XML just doesn't have shortcuts for "and now some relational data" that can speed that up.

      Then again, when you're sending data, it seems redundant to send indices -- that's the sort of thing each receiving party should recreate as desired. But nobody said XML was about efficiency in reading/writing/searching/manipulating. It was about a standard, do-almost-anything, here's-a-prewritten-library-for-you, read-file-until-you-grok-it format. Efficiency's not in the list.

    12. Re:More bloat! by bit01 · · Score: 3, Insightful

      If you can't comprehend that binary is much faster to parse than XML theres nothing I can do.

      Where is your numerical proof that binary is much faster to parse than text? It is amateurish to just assume this is true. Good parsers are damn fast and can operate in O(n) time.

      Of course binary may be faster. I doubt that it will be much faster when compared to a decent parser and when you realise that the binary format should be platform agnostic for word size, endianness and forward and backward compatibility.

      For instance, gzip'ed text files can sometimes be much faster to access than uncompressed binary files because it reduces the amount of file IO. e.g. 64 bits of binary to encode the number 1 rather than 8 bits of text.

      While compression increases the CPU usage because the disk is so much slower and because the CPU might otherwise be idle waiting for the disk it can lead to an overall win. The same may apply to a slow network link. Unless you measure it is difficult to know. I've lost count of the number of binary formats I've seen that in hex dump had vast numbers of zero bytes and were thus highly inefficient. The people who work at a "high level" designing such file formats without checking such simple things are poor programmers. Even when using indexes the saving of a single extra random disk/network access can sometimes justify a huge amount of CPU usage.

      ---

      Don't be a programmer-bureaucrat; someone who substitutes marketing buzzwords and software bloat for verifiable improvements.

    13. Re:More bloat! by DrSkwid · · Score: 1

      I use a trinary computer, you insensitive clod !

      --
      There are places where the networks are not touching,and there are places where they are-Boeing's Lori Gunter
    14. Re:More bloat! by PostItNote · · Score: 1

      Just CPU actually, and we have that to spare - and you don't even need to explicitly gzip it now that mod_gzip is widespread on both the client and server end.

    15. Re:More bloat! by ikkonoishi · · Score: 1

      The point I believe is so you can serialize actual data in an xml format without having to uuencode it into a CDATA struct.

    16. Re:More bloat! by master_p · · Score: 1

      Why XML isn't like the following? it certainly has much less characters, plus it is similar to the most popular programming languages:

      envelope(soap="http://www.w3.org/2003/05/soap-enve lope", xmlmime="http://www.w3.org/2004/11/xmlmime") {
      body {
      data(m="http://example.org/stuff") {
      photo(contentType="image/png") {
      /aWKKapGGyQ=
      }
      }
      sig(contentType="application/pkcs7-signature") {
      Faa7vROi2VQ=
      }
      }
      }

      It's easy to parse, and editing tools need small modifications to handle it.

      As for namespaces, they could do something like 'using namespaces' or 'import', in order to avoid repetition of the same namespace tags over and over.

    17. Re:More bloat! by ray-auch · · Score: 1

      NOT in that example it doesn't - just a one line comment saying they didn't include the data.

      The extra lines are the additional Mime and XOP packaging.

    18. Re:More bloat! by ray-auch · · Score: 1

      There is no binary XML here. The XML is not compressed (go ahead and gzip it as well if that is what you want).

      This is about packaging other binary data _within_ XML. RTFA

    19. Re:More bloat! by mabinogi · · Score: 1

      Base64 is not twice - it's 3 bytes into 4 characters - with a little overhead, as technically you're supposed to put a newline after every 78 characters - but I suspect that's only really relevant in the context of email.

      But it's still significant enough difference to easily make the XOP overhead irrelevant in all but the smallest cases.

      --
      Advanced users are users too!
    20. Re:More bloat! by Anonymous Coward · · Score: 0

      This joke still makes me laugh sometimes. Thanks for the chuckle.

    21. Re:More bloat! by Anonymous Coward · · Score: 1, Informative
      Good parsers are damn fast and can operate in O(n) time.

      And n is smaller for binary data; in a best-case situation (XML document consists largely of tags rather than text, tags are 10-20 characters but can be reduced to single bytes in a binary encoding), that would mean that switching to binary data would give you O(n/10) parsing, i.e. an order of magnitude faster.

      Ergo, binary XML could theoretically give you a considerable performance enhancement.

      I've lost count of the number of binary formats I've seen that in hex dump had vast numbers of zero bytes and were thus highly inefficient. The people who work at a "high level" designing such file formats without checking such simple things are poor programmers.

      You demonstrate your ignorance once more.
      • Those vast numbers of zero bytes will be being used to pad records to equal lengths. This can make lookups O(1).
      • Those vast numbers of zero bytes (a) compress better than ASCII text in any decent compression program (so gzip would do much better on those formats than text-based XML) and (b) take up NO SPACE AT ALL on any modern file system that can handle sparse files.
    22. Re:More bloat! by pomakis · · Score: 2, Insightful
      Good parsers are damn fast and can operate in O(n) time.

      Even a horrendously slow XML parser operates in O(n) time.

    23. Re:More bloat! by Anonymous Coward · · Score: 0

      You mean I can now move viruses through webpage transmission? Kuell! 7|-|@7 R0X0Rz!

    24. Re:More bloat! by bit01 · · Score: 1

      Even a horrendously slow XML parser operates in O(n) time.

      True. I just wanted to make the point that a well written/generated parser is not only fast but scales well.

      ---

      Patents by definition restrict distribution and are incompatible with standards which by definition are supposed to promote distribution. Say no to patents in standards!

    25. Re:More bloat! by bit01 · · Score: 1

      What is it about binary versus text formats that brings out the religion in people? Almost as bad as vi versus emacs.

      I am happy to use binary formats when they have clear, measurable advantages but, like programming languages, readable data formats have advantages for debugging and understanding that need to balanced against. YABFF (Yet Another Bloody File Format) syndrome also needs to be considered here. To the extent that XML is a general purpose file format I am happy to consider yet another binary file format but the onus is on the proponents to show it has measurable advantages compared to text compressed with an existing, general purpose compressor like gzip. Binary formats can be considered to be domain specific compression and if there's one thing the compression literature has taught us it is that it is usually hard to beat the general purpose compressors with special purpose compressors on real data by more than a few percent.

      Good parsers are damn fast and can operate in O(n) time.

      And n is smaller for binary data;

      It can be. Not necessarily because numbers in text form are variable length (1/2 bytes) and typically will be shorter when compared to 64 bit integers.

      in a best-case situation (XML document consists largely of tags rather than text, tags are 10-20 characters but can be reduced to single bytes in a binary encoding), that would mean that switching to binary data would give you O(n/10) parsing, i.e. an order of magnitude faster.

      Not compared to text compressed with an existing general purpose compressor rather than YABFF. With a good parser that takes only a few microseconds per byte. Parsing time, for a good parser/compressor, will almost always be dominated by the IO time.

      Ergo, binary XML could theoretically give you a considerable performance enhancement.

      Probably some enhancement, yes. But enough to outweigh the support overhead of YABFF? The necessity of supporting convertors, documentation, education, opaque data formats, potential inconsistency, binary corruption/recovery, debuggers etc. etc.? That is the question here.

      I've lost count of the number of binary formats I've seen that in hex dump had vast numbers of zero bytes and were thus highly inefficient. The people who work at a "high level" designing such file formats without checking such simple things are poor programmers.

      You demonstrate your ignorance once more.

      Not really. I'm well aware of the tradeoffs. It is you that appears unable to grasp that YABFF requires a significant and measureable advantage to outweigh support costs.

      • Those vast numbers of zero bytes will be being used to pad records to equal lengths. This can make lookups O(1).

      Pointless if a random access will take milliseconds. Usually faster to just slurp the whole thing in and interpret it there. Depends on the file system, the block size of the file system, the seek times of the disk, the read times of the disk, the size of the disk caches and the size and fragmentation of the file amongst many other factors.

      • Those vast numbers of zero bytes (a) compress better than ASCII text in any decent compression program (so gzip would do much better on those formats than text-based XML)

      This assumption is incorrect. My experience has been that gzip does a better job on text based file formats; not surprising given the extra redudancy. Depends on the file, file size and statistics of the file of course.

      • and (b) take up NO SPACE AT ALL on any modern file system that can handle sparse files.

      In a file system that supports sparse files only if the zero's are not written. I'm also not just referring to zero's but to constant values and patterns. On a compressing file system a text file will be compressed as well as a binary file. Compressing file systems may require extra disk accesses making their advantage minimal.

      ---

      Don't be a programmer-bureaucrat; someone who substitutes marketing buzzwords and software bloat for verifiable improvements.

  15. a bit confused by newsdee · · Score: 1
    I'm a bit confused... reading the document, it seems that the difference between XML and SOP is just where the data is:

    XML:
    <mylabel>(text)</mylabel>
    <mydata>(stuff in binary)</mydata>
    XOP:
    <mylabel>(text)</mylabel>
    <mydata>"hey, there's stuff in binary here, id 1!"</mydata>
    ---- MIME ---
    Binary ID 1: (stuff in binary)
    Is this right? So the benefit is just standardizing the binary representation using MIME? But that doesn't make the tags less verbose... so how is this faster than XML?

    1. Re:a bit confused by Anonymous Coward · · Score: 0

      XML documents are null terminated. The binary data is not guaranteed to not contain a zero.

      Also, binary data may contain other XML data which may accidentally close a tag or introduce a tag that totally messes up the formatting.

    2. Re:a bit confused by Svartalf · · Score: 1

      Um, I believe that the data was encoded in the same manner as the "optimized" format, it's just that now you have to put it at the end in a MIME encapsulated formatting. Zero doesn't factor into this in the first place. Now, concerns of accidentally closing a tag might play into things, but the likelihood of this actually happening is slim to none as the coincidence of "" in a base 64 stream is going to be an astronomical feat. However, I buy into that as a reason (can't have accidental data loss that way...) but to call it "optimized" is really, really counter-intuitive as it's NOT optimal.

      --
      I am not merely a "consumer" or a "taxpayer". I am a Citizen of the State of Texas
    3. Re:a bit confused by MassacrE · · Score: 3, Interesting

      Incorrect.

      XML, being a text format, required proper text encoding. In particular, XML does not allow most of the codepoints (speaking in unicode terms) between 0 and 31 (tab and newline excluded). If you use UTF-8, you cannot use byte values beyond 126 as those are used for forming higher-value unicode characters. In addition, the five main XML markup characters (< > and &) can only be used in some places.

      So, to make a long story short, you base64 everything. For every three bytes you have, you output 4, giving you a 33% increase in space.

      outside of the XML document you do not have to require text. data can be considered 8-bit clean and sent in a big binary block.

      So for example, an additional requirement of 200 bytes for specifying all the MIME information would be made up for within the first 600 bytes worth of binary data. Even without this space benefit, you get the benefits of a standard way of including binaries, and the ability to potentially access the binary data directly if the transport was indeed 8-bit clean.

    4. Re:a bit confused by brunogirin · · Score: 1
      You're right. The point is to standardise the binary representation, not to make it faster. But it doesn't mean this hasn't got very useful applications in the real world. Here is a situation where this technology will be useful:

      You design a web application. It all looks good, you can access all functions through a web browser. One of those functions involves uploading binary files (let's say images) so that they can be retrieved online later on. Fine, HTTP allows you to upload binary data using MIME.

      Now, your PHB comes in and tells you your biggest customer would like to be able to integrate directly with their own system over the internet and they can do it through web services. So you need to add web service support to you application. This means using XML as data exchange format. No problem for all textual data but what do you do for your upload function that happens to be an essential part of the application? If you use a proprietary mechanism to encode that binary data in the XML stream, chances are you and your customer won't be compatible and someone will have to do extra development. Using XOP, you know both sides are compatible out of the box and you can re-use the same routines available in your HTML channel to decode the MIME encoded data.

      All in all, using XOP would probably save you weeks of development and enables you to re-use existing MIME code to have a leaner and simpler system. It's not rocket science but it's that sort of simple but sensible standards that make our day to day work easier.

  16. This is NOT binary XML by IHateSlashDot · · Score: 5, Insightful
    I can't believe all of the replies making fun of this because they think it's a binary representation of XML. Didn't anyone read the RFC that was referenced in the summary?

    This is simply a way to reference binary data from within an XML document and to have that binary data included in the same payload (using MIME).

    Passing binary data in XML is a big problem. Everybody just invents their own method of doing it (although most are just variations on the theme presented here).

    There is a need for this specicification but it is not ground breaking or even particularly /. newsworth.

    1. Re:This is NOT binary XML by seanadams.com · · Score: 1

      This is simply a way to reference binary data from within an XML document and to have that binary data included in the same payload (using MIME).

      And you find this less absurd?!?

    2. Re:This is NOT binary XML by lupin_sansei · · Score: 1

      What was wrong with CDATA? I thought you could embed binary into XML that way.

    3. Re:This is NOT binary XML by Anonymous Coward · · Score: 0

      > Didn't anyone read the RFC that was referenced in the summary?
      You're new here right?

    4. Re:This is NOT binary XML by Anonymous Coward · · Score: 0
      Didn't anyone read the RFC that was referenced in the summary?
      New here you must be.

      In Soviet Russia, you tell the newbie to RTFA.

    5. Re:This is NOT binary XML by Leo+McGarry · · Score: 1

      The "c" in "CDATA" stands for "character." It's technically supposed to include character data encoded in the document's character set.

      Can you put arbitrary bytes into a "CDATA" section? Sure, prolly. But there are people out there who get paid by the hour to cook up new standards for stuff we'd already figured out. You don't want them to have to go out and get real jobs, do you?

  17. Thank you! by gammoth · · Score: 3, Informative

    I thought I was losing my mind.

    1. Re:Thank you! by Anonymous Coward · · Score: 0

      Are you sure your not, I know I am.

    2. Re:Thank you! by Anonymous Coward · · Score: 0

      No you're not. Yes I am. No. Yes. No. Yes...

  18. What's the deal? by j.bellone · · Score: 1

    I really don't understand. XML is great for information that might need to be easily parsed, readed, or changed by a number of applications. In fact; it's probably something that we've needed a lot longer than we've had it. But that's where it ends.

    Usually (at least, from my limited experience) a serialized object from a program is normally only needed to be loaded up by that program (which usually results in their own .dat files). Still when I have been toying around with my own serializer; I haven't found a need to actually need to hand change any of this information.

    Why reinvent the wheel though? It seems this would only be useful in web application for a database of sorts. The only usefulness (actual useful ness) would be for a document format (Word, Excel, Access, etc). This is the type of format that you would want to be portable; easily changeable (if need be) by hand; and thrown across several different platforms where it can be read.

    I guess that would make there to be a use for it then; but do we really need a standard for the such? Anyone who plans on using this idea will create their own standard anyway (look what Apple has done with their new format for Pages).

    --
    I'm f#$king magic!
  19. Noscript by tepples · · Score: 1

    [CSV is] Easy to manipulate via javascript on the client. Simple to display and manipulate via the DOM (Document Object Model).

    Problem: A lot of users will try to browse your site with DOM scripting turned off to avoid the more annoying advertisements and malware installers. What will you put in the <noscript> element?

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

      Problem: A lot of users will try to browse your site with DOM scripting turned off to avoid the more annoying advertisements and malware installers. What will you put in the element?

      This page is designed to be viewed with scripting enabled. Enable scripting and click here to refresh, or click here [goatse/tubgirl].

    2. Re:Noscript by tomhudson · · Score: 2, Interesting
      I'd tell them to switch to firefox :-)

      It's time to stop thinking of "web sites" and start thinking along the lines of "web apps" - not the old-style form-based "web app", but more along the lines of gmail - heavily client-side-scripted, nice presentation and data manipulation.

      What I see is very few pages (or even just 1 page) as the UI, data exchanged between server and client w/o page refreshes (can be done just w. javascript by sticking the data in iframes with a width and height of 0px, and reading/writing to the iframe. no need for a separate "data window" hidden from view - happy coincidence - I wrote code to do this last night).

      These work without a hassle even with popup blockers, etc. It's not necessary to turn off *all* scripting capabilities. Just get a competent browser :-)

    3. Re:Noscript by DrSkwid · · Score: 1

      Where can I download Firefox for symbian ?

      Where can I download Firefox for PocketPC [or whatever it's called this week] ?

      --
      There are places where the networks are not touching,and there are places where they are-Boeing's Lori Gunter
    4. Re:Noscript by Anonymous Coward · · Score: 0

      I'm sorry that you don't have access to Google where you live. But since you seem search-challanged, here you go: http://www.mozilla.org/projects/minimo/

    5. Re:Noscript by DrSkwid · · Score: 1

      do you even know what Symbian is ?

      it certainly isn't anything like "the primary focus of Minimo to date has been system with ~32-64 MB of RAM, running Linux"

      I said where can I download Symbian not where can I look at a project that doesn't even have Symbian on the roadmap.

      --
      There are places where the networks are not touching,and there are places where they are-Boeing's Lori Gunter
  20. Could have been simpler by Anonymous Coward · · Score: 1, Informative

    .. if they just mimic'd the CDATA section with an equivalent BDATA section. Would be so easy to just jump to the end of the binary data given the BDATA offset and continue on.

    I know it's easy, because that's exactly what I did, hacked the gnome libxml library and it worked nicely, was easy to code (yank/paste from CDATA) and best of all it was *fast* without consuming resources like base64 does (tried that too originally).

    1. Re:Could have been simpler by Anonymous Coward · · Score: 0

      what if your binary data contains ]]> ?

  21. Critiques by Effugas · · Score: 4, Informative

    Ummm...it's "OK". This is probably the least ambitious Binary XML spec imaginable. That may actually be good, but I don't know. Lets see what's up here...

    First of all, it's completely impossible to stream this format. All the binary chunks have to be read at some point in the future when the actual XML non-opaque content is complete. In a stream, that never happens. (Of course, XML isn't the most stream friendly protocol...you can't validate a stream.)

    Secondly, this isn't wonderful for large files either; you're constantly seeking for binary data that can be many megabytes away. We solve this in web pages by having the images be completely separate (binary) files.

    Thirdly, its telling that they used a PNG as a data type. Besides being yet another file format that needs its own custom binary parser (heh, I like PNG, I'm just complaining about it in the XML whinespace), it's big and simple and there's just one there. One of the things I really liked about the various Binary XML formats was the degree to which they expressly typed things like arrays of floating point values or little-endian integers. Converting values between binary and string format is an enormously painful process, one that frankly I'm astonished hasn't received CPU acceleration at this point. Every other Binary XML format has seriously thought about how to efficiently but correctly manage large arrays of such values. XOP just says...heh...you wanna dump alot of data efficiently? Check your typing at the door. Feel free to bring a buffer-overflow ridden parser in with you if you like, though.

    Don't get me wrong, there's a fundamental simplicity to XOP that I can certainly understand how it's appealing. But it seems to go so massively against what XML represents that I'm not entirely sure XOP encoded content deserves to be compliant with the very regulations that forced XML adoption in the first place: Opaque formats are too expensive to maintain for any amount of time, therefore either self-describe or don't get deployed. A self-decribing document that says "All performance-critical content is opaque" seems rather counter to this spirit.

    1. Re:Critiques by thpr · · Score: 1
      I agree with your post - and really wonder what people are doing with binary data in their XML files anyway. But I digress from what I wanted to ask about:

      Converting values between binary and string format is an enormously painful process, one that frankly I'm astonished hasn't received CPU acceleration at this point.

      This initially strikes me as a brilliant idea, but as I got to reply, I'm wondering how useful it would really be. Many if not all of things we accelerate today (e.g. FPU and matrix operations) have have significant uses in loops which do not require significant access to memory - which is the bottleneck in a typical PC.

      Under the assumption that XML is being used for I/O of some sort, I would guess that the network, disk or memory is already the bottleneck. I can't envision a small loop that could swamp the CPU with conversion (like a scientific simulation could swamp a CPU without an FPU because the calculations don't necessarily drive heavy memory access)

      I'm thinking out loud here, but can you think of a conversion case (XML or not) where the conversion speedup wouldn't just cause a greater bottleneck on the memory bus?

    2. Re:Critiques by Effugas · · Score: 1
      Hmm. Threw together some code to play with this.
      #include <stdio.h>

      int main(int argc, char **argv)
      {
      char *mixed = "0.123124 12345";
      double foo;
      int bar;

      int i;

      for(i=0; i<1000000; i++){
      sscanf(mixed, "%f %i", &foo, &bar);
      }
      }
      Results:
      $ time ./bench.exe

      real 0m2.541s
      user 0m2.393s
      sys 0m0.010s
      So we're looking at maybe 787K symbols per second on my machine, at 100% CPU. How does this translate to XML parsers? You're right, this is something I should look into.
    3. Re:Critiques by OldMiner · · Score: 1

      This looks like a false benchmark. You're keeping mixed in cache the whole time. In parsing actual XML, you'd be loading new strings in and out of the cache the whole time. As stated by grandparent, I doubt you'd be CPU bound.

      --
      You like splinters in your crotch? -Jon Caldara
    4. Re:Critiques by Anonymous Coward · · Score: 0

      XOP/MTOM are not the silver bullet of binary encoding of XML, it's just a attempt at solving an issue faced by people wanting to send a document with binary chunks in it.
      A moving document doesn't have the same properties as a static one. When you send a document, what matters is that you have the same in-memory representation on both side, not the actual serialized format. When you store a document the story is a completely different one.

      So it is addressing one particular use case, in a simple but well-defined way.

  22. not totally pointless by Anonymous Coward · · Score: 0

    atleast this spec is some what useful. What is more useless is XML signature, which feels like a total waste. talk about a solution looking for a problem.

  23. Headline should read... by WasterDave · · Score: 4, Funny

    "Remember the recent discussion on Binary XML? Well, this has nothing to do with it, but we are proud to present a standard for larding out XML even more before attaching it to an email."

    I, for one, welcome our new bandwidth eating plaintext overlords.

    Dave

    --
    I write a blog now, you should be afraid.
  24. Re:Binary XML Lite / repost by Anonymous Coward · · Score: 0

    Binary XML will enable superior buzz word compatibility to existing technologies. Here's your syntax for Word 2006 format:

    <xml><bin src="oldWordCrap.doc"/></xml>

    Now everyone can use Microsoft formats! It's open, it's flexible, it's human parsable and compatible with all XML-enabled solutions *.

    *) Some assembly needed (pun intended).

  25. Why??? by Anonymous Coward · · Score: 0

    Binary XML? Why not just gzip it?
    Now I don't know much about XML, but I think you should check the link below.
    Official news link

    1. Re:Why??? by danielrose · · Score: 1

      Agreed on both counts!
      Whats wrong with getting the regular xml and zipping/compressing it with your tool of choice? Does it really need a whole new spec?
      In other news, I'm putting that link in my sig.

      --
      i hate pansy republicans
  26. This business will get out of control. by wizard_of_wor · · Score: 1

    It will get out of control and we'll be lucky to live through it.

    Seriously, this is strongly reminiscent of designing C++ APIs, called only in-process by C++ code, that use XML blobs for every single parameter type. I came across one of these and asked the "architect" why he chose to use XML for every parameted (at significant cost).

    "Well, you know, it's XML," he said.

    "And?" I asked.

    "Well, it's... I mean, c'mon, it's extensible," he explained.

    When all you have is a hammer, everything starts to look like a nail. And there are too many developers who are a few parts short of a toolbox.

    --
    If you mod me down, I shall become more powerful than you can possibly imagine.
    1. Re:This business will get out of control. by Anonymous Coward · · Score: 0

      Oh my fucking god I would kill that person to death

    2. Re:This business will get out of control. by renehollan · · Score: 1
      The scary thing is that there is a damn fine justification for this... but the "architect" in question likely doesn't know it.

      Using an XML representation for method parametrization provides a common interchange format when linking bitween different implementation languages, and, obviously, across network boundaries. Furthermore, the natural XML specification of method signatures makes possible the compilation of said method signatures by different compilers.

      Of course, the right thing to do is to compile to a more appropriate native format if the linked/networked methods are known before execution time -- not doing so if they are (i.e. for a monolanguage in process lingage) would be quite silly. One would resort to XML all the way to execution time only if the target of a call was implemented in an unknwown manner (which is why XML works well in public networked applications -- it's inefficient, but a reasonable lingua franca for structured data).

      Then again the reverse is true: any modern compiler worth its salt should be able to produce XML representations of method signatures.

      The real extensibility question here is whether the method call semantics in your application lend themselves naturally to in-process as well as networked process implementations: what is naturally a synchronous method call in process might be better as an asynchronous method call in a networked environment -- it can sometimes help permit the use of single-threaded multi-instance clients instead of multi-threaded synchronous clients.

      --
      You could've hired me.
  27. Accessibility? by tepples · · Score: 1

    This page is designed to be viewed with scripting enabled. Enable scripting and click here to refresh, or click here [goatse/tubgirl]

    Which text-based web UA supports DOM scripting? Or would you deliberately shut out users with vision disabilities and run the risk of losing your U.S. government contracts under Section 508 and having to defend a lawsuit under the Americans with Disabilities Act or foreign counterparts?

    1. Re:Accessibility? by ytpete · · Score: 1

      IE, as much as we all hate it, supports screenreaders pretty well. Look up a program called "JAWS" for example. Javascript and screenreaders *can* coexist in a non-text browser.

  28. RTFA - Re:Binary... XML... Nah! by Ignominious+Cow+Herd · · Score: 3, Informative

    It is not binary XML. It is a method to extract binary data that is embeded in XML (e.g. CDATA) and store it outside the XML, but in the same document. It is NOT a method to reduce the text encoding (overhead) of XML to a binary format.

    --
    Lump lingered last in line for brains, and the ones she got were sorta rotten and insane.
  29. Screen readers by tepples · · Score: 1

    I'd tell them to switch to firefox :-)

    How well do the major Gecko-based web UAs work with screen readers, compared to say Lynx/Links/w3m?

    1. Re:Screen readers by ytpete · · Score: 1

      Check out the Sharkware project. I think this was actually mentioned on Slashdot recently.

  30. Maybe I forgot to mention... by Spy+der+Mann · · Score: 1

    For those who didn't RTFA:

    The main application of this XML-referencing-to-binary-attachments is SOAP, and that means web services.

    In other words, you can simplify your God-help-me-XML-handling-and-parsing-code into something maybe 10% simpler. This means leaving the binary stuff OUT OF THE XML PARSER, putting it into the upper levels or processing. Cleaner, faster.

    Also, it helps adaptive compression (gzip) by tightening up the textual data - remember web services are about information transfer, not storage.

  31. WTF acrynoym by Anonymous Coward · · Score: 0

    Can anyone please explain what the heck all these buzzwords mean: like SOAP, XAML, etc. I understand XML (s-expressions but with neat angled brackets!) but the rest could use concise descriptions.

  32. Script Data Structures in place of XML by Camel+Pilot · · Score: 3, Interesting
    I am currently writing a xul client/server application. I am using the xmlhttprequest function. however instead of processing xml data which is very slow, especially when you need to parse a data set several times a second, I started sending data stuctures in javascript code instead. This I believe is what Google Suggest does also.

    In addition the server code is written in perl so for storing status and configuration information, I used serialized perl data strucures processing requirements fell dramatically. With serialized scipt you still have the clear text editing and inspection capabilities without the speed and space issues. for example instead of
    <container>
    <title name="title">
    <item><name>Name1</name>
    <item><name>Name2</name>
    <description>Bla bla</description>
    </container>

    You have:

    {
    title=>"title",
    item=>[ { name=>"Name1" }, { name=>"Name2" } ],
    description=>"Bla bla"
    }
    It seems like serialized script code, in either perl, python, java provides the benefits of xml without the headaches.
    1. Re:Script Data Structures in place of XML by Anonymous Coward · · Score: 0

      If you think Perl is readable :P

    2. Re:Script Data Structures in place of XML by oliverthered · · Score: 1

      I'm currently writing some C code and I'm using char* pointers and C structures instead of XML,
      you should see how fast my app runs.

      I believe this is the way the linux kernel does things.

      XML is good for data interchange between anonymous sources any other use is more or less an abuse.

      --
      thank God the internet isn't a human right.
    3. Re:Script Data Structures in place of XML by zallus · · Score: 1
      {
      title=>"title",
      item=>[ { name=>"Name1" }, { name=>"Name2" } ],
      description=>"Bla bla"
      }
      Hmm... I think that can be a little more standard-compliant, without increasing length any:
      title: title
      item:
      - name: Name1
      - name: Name2
      description: Bla bla
      Mmm... YAML.
      --
      I mod down pathetic posts.
    4. Re:Script Data Structures in place of XML by lux55 · · Score: 1

      Returning a JavaScript data structure is sufficiently compliant (ie. it's part of the language itself), and has the benefit of skipping the deserialization step entirely.

      Plus, on the server-side, you should be able to write a JavaScript serializer in 30 lines or less. For example, the one used in our project (sitellite.org) is exactly 30 lines of PHP code, and properly handles strings, numbers, booleans, arrays, and objects.

    5. Re:Script Data Structures in place of XML by Erwin-42 · · Score: 1

      This idea was on Slashdot just a few days ago -- look up JSON.

    6. Re:Script Data Structures in place of XML by spongman · · Score: 1
      you've thrown away information:
      • the name of the 'container' element.
      • the fact that it's the 'name' attribute of the 'title' element whose value is "title"
      • what would it look like if the 'foo' attribute of the second item's name element was "bar"?
      • it's not obvious how you'd support namespaces or processing instructions...
  33. We have a Winner! by Ignominious+Cow+Herd · · Score: 1

    Only 120 posts before someone said something more intelligent than, 'Binary XML, blecchho!'

    Only wish I had a prize for you. :)

    --
    Lump lingered last in line for brains, and the ones she got were sorta rotten and insane.
  34. Don't need an iframe by michaelggreer · · Score: 1

    Grab the data directly into javascript with xmlhttprequest. However, the web has many Ui conventions now which people don't want broken, even if its better. I still keep hitting the back button in Gmail, and I think it should work that way.

    1. Re:Don't need an iframe by tomhudson · · Score: 1

      Thanks, but why would I want to parse out xml when I can grab my records really quickly with 12 lines of javascript, and don't have to bother xml-izing (is that even a word) my data on the server, either?

    2. Re:Don't need an iframe by michaelggreer · · Score: 1

      Because it is just called "xml"httprequest: it can return anything. So don't be afraid. Iframe feels like a hack to me.

    3. Re:Don't need an iframe by tomhudson · · Score: 1

      It is a hack (but I *like* hacks), but it's better than using an image object, converting it to raw data, and reading the individual bytes - or is it (maybe its time to play around with some more code this weekend :-)

  35. Re:Could have been simpler: Data:URL by Anonymous Coward · · Score: 0

    Data:URL! Implement Data:URL!

    Encodes the frickin MIME type and base64 encoding inline!

    Hey, where's the frickin binary tokenization dictionary of the XML elements for compact XML, with encoding schemes?

    This is just an advertisement for all 835 MIME RFCs.

  36. Oh so we store it using binary by dynamo · · Score: 1

    Find me an XML file that is not already represented as binary data. Oh, not looking so revolutionary now, is it?

    Wait, you say this allows xml to reference binary data? I say "href" attribute, bi-atch, look it up.

    You say, but no, it allows you to send the binary data along in the same stream / document? Check out multipart/mime. It's been around a long time.

    Here's a wild thought. Have the XML file reference it's binary resources by relative filenames. Tar the XML file together with the resources. Now pay me $100,000 in consulting fees.

    1. Re:Oh so we store it using binary by gibson042 · · Score: 0
      You say, but no, it allows you to send the binary data along in the same stream / document? Check out multipart/mime. It's been around a long time.

      They did. That's what TFA (or TFRFC, if you prefer) is about.
  37. My Response by Anonymous Coward · · Score: 0

    Gay!

  38. torrents inside RSS feed? by Anonymous Coward · · Score: 0

    So does this mean a 20k torrent can be actually inside an XML list now instead of just a link to it?

    If so, I think distribution just got a whole lot easier.

    Then again the poor servers sending 10k files have a hard enough time with people checking every 10 minutes, imagine if the file was 200k, crikey!

  39. Full Circle by roman_mir · · Score: 1, Insightful

    The circle is complete. We started with binary format, moved to XML for readability purposes and then switched XML back to binary for speed.

    Obviously someone needs a knock on the head - when you design your application, don't you think about such things as a balance between performance and maintainability first and then implement what is suited better for your specific case? Obviously not! Just a little while ago everyone and their grandmother switched to XML for whatever reason but then they realized: -OMFG, XML processing is processor intensive! I probably shouldn't have handled every single internal type as an XML string that needs parsing and typecasting for every operation. I probably should have used more suitable memory structures for those data structures that are used within the same application on the same computer and not used a gigantic XML just because I can! What to do what to do? OH, I KNOW! Let's change this char based XML into a binary XML, that will make it faster! (It won't make it more human readable, that's for sure.)

    So what's next? A char based XML that wraps around a binary XML for readability? A binary wrapper for a char based XML wrapper to a binary wrapper around a char based XML wrapper for recursive processing?

  40. This is awesome by HenryKoren · · Score: 1

    I was just involved in writing a routine that involved Base64-encoding something to be included in XML, then GZipping the whole XML file to recover the space the encoding tacks on. Now I can just do a XOP file, Awesome!

    1. Re:This is awesome by thogard · · Score: 1

      The cool bit about that is all the junk at the start of the file will make sure that the most common base 64 encoded tokens aren't the smallest bit patterns so your end up with a larger file than if you had just gziped the binary in the 1st place.

  41. MOD UP by Anonymous Coward · · Score: 0

    Amen brother. XM bloat bullsh-t needs to die the death it so richly deserves.

  42. Why not XBop? by lux55 · · Score: 1

    Wouldn't it make more sense to include the B for Binary, which is the essential purpose of the new "standard"? Plus, XBop sounds more natural when spoken than XOP does, and it's way more fun too! :)

  43. I'd have to agree with you on this... ;-( by PaulBu · · Score: 3, Interesting

    I've been thinking about the shortcomings of HTML (and everything else that followed it!) from the position of a computer scientist for YEARS... Those standards ARE shitty, big time.

    Conmtrast this to IEEE standards -- they get developed when a bunch of companies are ready to invest several mega$$ for a chip spin -- and they just want to choose the best course, arguing with each other about technical merit of this or that approach. And in the whole HT|X/ML world there can be (almost) no competition on technical merits, just a bunch of guys arguing if it should be or BAR .

    I wish I'd have the time on my hands and their budgets to actually try something revolutionary. Leke the original WWW, which was NOT designed by a committee...

    Paul B.

    1. Re:I'd have to agree with you on this... ;-( by PaulBu · · Score: 1

      Of course, the filter filtered mine &lt and &gt and totally screwed up the meaning of "if it should be or BAR" ;-)

      Paul B.

  44. Maybe I forgot to mention...S-Expressions. by Anonymous Coward · · Score: 0

    Pfft. Everyone's still reinventing the wheel. Lispers have been throwing S-expressions back and forth long before XML started down the same path.

  45. You sir, are a SnapperHead by SirSnapperHead · · Score: 1

    There's something fishy about developers who use XML for Rich Web Client Desktop-Like Application Applets.
    You should be using a string and two cans instead.
    Technology stinks when SnapperHeads get their hands on it.

    --
    It's the year of Linux! To celebrate I have x free hotmail accounts to give away
  46. Script Data Structures in place of XML-Curl. by Anonymous Coward · · Score: 0

    Oh goodie. You're reinventing Curl. Itself a basterized version of Lisp.

  47. I like it: XMLs strength abstract, not concrete by nightcrawler77 · · Score: 2, Insightful

    XML has become at least two things since its evolution:

    1. an abstract structure consisting of (possibly-nested) elements and their corresponding attributes.
    2. a human-readable representation of that structure

    The interesting part of the story is that #2 came first. Since then, the W3C has recommended the Infoset abstract concept.

    For the developers out there, think of how often you parse the "angle brackets" yourself. Most everyone these days (yes, I know there are exceptions) uses an API which presents elements and attributes in a wire-format-agnostic way.

    As a developer, I would love to have the option to flip a switch in my code to permit Binary XML. If I can read and use the Infoset in exactly the same way, why would I object to the wire format being binary instead of text? My API is the same, but the transport is more compact and efficient.

    Human-readable wire formats are great for debugging during development, but provide no real advantage in production systems (provided there are utilities available to produce human-readable XML from the binary wire format.)

    --

    "Power corrupts, and absolute power corrupts absolutely." -- Lord Acton

    1. Re:I like it: XMLs strength abstract, not concrete by sgt101 · · Score: 1

      Remember maintenance! You are 100% correct for fire and forget projects, but introducting an opaque layer into the stack could mean trouble later on. People will start injecting data directly into the wire - for example from network devices or information appliances - and subtle issues and bugs could creep in. I thought this was one of the reasons we ditched CORBA?

      --
      --------------------------------------------- "In the end, we're all just water and old stars."
  48. XML: Worst idea by Anonymous Coward · · Score: 0

    The idea of a plain text file to intercommunicate computers could easily be the worst idea in computer history that has succeeded.

  49. The buzzword importance by phunqe · · Score: 3, Funny

    Reminds me of a meeting I had a couple of years ago with some representatives for one of the largest market making houses in the US.
    Bascially we were promoting an automated trading system and the first question I get is...

    "Does it use XML?"

    There you have it.

    1. Re:The buzzword importance by sgt101 · · Score: 1

      Well - I understand your frustration, but perhaps he wasn't being as dumb as it seems on first blush.

      CIOs are challenged by the need to find people who understand poorly documented proprietary data formats, and by finding techies who are techie enough to write parsers for them. XML, with standard ways to use the open source parsing libraries such as the Apache ones, support from every vendor you can think about and a course in every CS department, is very attractive to people in the position of dealing with systems ten years down the road!

      --
      --------------------------------------------- "In the end, we're all just water and old stars."
  50. Very exciting but ... by Anonymous Coward · · Score: 2, Funny

    It's too early yet. I'm waiting until MSBinary_XML comes out

    I hear it's going to introduce 263 special MS tags and nodes and extra layers into the standard that only works on MSWord in Windows XP. It won't validate as XML anymore but who cares. You will use a special version of Front Page to do this.

    The files will be a little bigger too, so with MSBinaryXML will add approx 257k thanks to the special proprietary MS extensions but will have superior functionality compared to other types.

    It will be particularly good at carrying ,pif,.src,.bat and .exe files within the context of an XML binary and what's more MS will be writting low level OS support into future XP updates and Longhorn and a special API to execute the contents of said MSBinaryXML files. It will also communicate with hooks in IE and Active X Controls and MS's excellent Java.

    this is gonna be sweet. I can't wait

  51. Attachments, Not Binary XML by Kopretinka · · Score: 2, Informative

    These specs (XOP and MTOM) were created becase Web Services people wanted to be able to add binary attachments to XML messages (in SOAP). Initially the attachment technologies (like SOAP with Attachments) worked by just slapping the binary data alongside the XML message, without a clearly defined processing model for the receiver. Now with XOP attachments are logically in the XML document, but physically transported outside without the bloat of base64 or other XML-safe encodings. It's important to notice that XOP is just an optimization of the situation where binary data is put inside an XML document.

    --
    Yesterday was the time to do it right. Are we having a REVOLUTION yet?
  52. Well, doh... by Kjella · · Score: 1

    ..if you're going to transfer a small fixed header, XML is not for you. If you actually have no binary data of signifiance, XOP is not for you. Let's say you want to include a 300kB picture in your XML. Your choices are:

    1. External link (unpractical)
    2. XML/Base64 encoding (~450kB)
    3. XOP/binary encoding (~300kB)

    In that case, your 30+ lines of extra code are completely irrelevant. That being said, I was under the impression that you could do this already by sending your binary data in a "document fragment" element, where the only valid characters to end it would be ]]> or so (been a while since I looked at it). A simple remap of that one combo using e.g. a yEnc variety ahould let you pass binary data with minimal overhead. It'd be a hack though, the "document fragment" is intended to let you place XML fragments there, hence it ignores normal XML tags.

    Kjella

    --
    Live today, because you never know what tomorrow brings
  53. base64? by bsiggers · · Score: 1

    Why not just base64 encode what you need to? Jeez, talk about a solution looking for a problem. Who in the world is encoding huge binary stuff in their XML anyway?

    1. Re:base64? by vidarh · · Score: 3, Informative
      Duh. Read the spec. Most people who include binary in XML DO base64 encode it. But base64 wastes a lot of space. If you want to include larger amounts of binary data, this standard lets you save space by using a MIME wrapper and referencing a MIME part containing the raw binary data from the document instead of inlining it directly.

      And you're right, most people don't want to include huge binary stuff in their XML. But sometimes you DO need to combine XML with huge amounts of binary data. So far, the alternatives have been non-standard wrappers (including people doing more or less what this standard does, by using MIME multipart documents) or base64 or some other space wasting encoding inside the XML document, or wrapping everything in an archival format (like OpenOffice does, for instance).

      All this does is define a standard way of letting you keep a document and associated raw binary data together, while allowing you to treat it as if it is inlined in the XML if you so choose.

      The principles are exactly the same as for sending an HTML e-mail containing images (or other data) as attachments and referring to them with url's of the format "cid:foo" (they refer to the MIME element with the matching "Content-ID: foo" header.

  54. umm... maybe I'm just dense by Anonymous Coward · · Score: 0

    but isn't "binary XML" just "zipped XML"

    What's the point of trying to compress an internal XML binary element if you have an external compressor? In fact, at that point, why even have even a CDATA binary internal elemement?

    Private binary formats are dead, guys.

  55. I am enlightened by kahei · · Score: 0, Offtopic


    Reading the newest raft of W3C standards, complete with examples showing the increases in message size and total complexity at each step, I feel as if I have FINALLY understood how UK-style socialism works. And why the US is in Iraq. And why the tax code is 250,000 pages long, and why New Coke was created, and why there are people who will genuinely refuse to read a document if contains a diagram that is not in the most recent version of UML.

    It's all a product of the same kind of thinking.

    --
    Whence? Hence. Whither? Thither.
    1. Re:I am enlightened by vidarh · · Score: 1
      You do realise that the examples where not intended to demonstrate the benefits, don't you? (as in, the fact that they're only showing it used for tiny binary sequences doesn't mean that will be the normal usage) The complexity increase is minimal, as there are tons of libraries available to handle MIME, and "cid:..." style URL's have been in use for e-mail for ages, and it'll be fairly trivial to scan a document for nodes in the right namespace and expand the include tags.

      The main reason it is defined the way it is, is exactly so that the "complexity" of it can be easily hidden in the parsers if you prefer not to deal with it yourself - base64 is well established as the preferred way of inlining binary in XML. With this spec you now have a way of saving space by using a MIME document to wrap it and move any large binary sections out, while allowing software using parsers with support for this standard to treat it just as if the binary data is still inlined base64 if you don't want to change your app.

  56. Mod Parent Up by ray-auch · · Score: 1

    Mod parent up (since I can't and I'm fed up of making the same point)

  57. Obligatory ... by quarkscat · · Score: 1

    yes, but is it available in PDF format?

  58. Why oh why? by hummassa · · Score: 1

    Why would an external link be unpractical?

    --
    It's better to be the foot on the boot than the face on the pavement. ~~ tkx Kadin2048
  59. Congratulations! by hummassa · · Score: 1

    You just (re-?)invented TeX.

    --
    It's better to be the foot on the boot than the face on the pavement. ~~ tkx Kadin2048
  60. what about matroska ? by dangil · · Score: 1

    what about matroska ?

    isn't it supposed to be binary XML ?

  61. SXML by Anonymous Coward · · Score: 1, Interesting
    Ever heard of SXML? It's XML represented as Lisp-family S-Expressions. This makes it a native data structure to e.g. the Scheme programming language. It's also lighter than XML, since it is less redundant and verbose. Your XML (which is not well-formed XML, you left out a bunch of closing tags) example would become:
    (*TOP*
    (container
    (title (@ (name "title")))
    (item (name "Name1"))
    (item (name "Name2"))
    (description "Bla bla")
    ))
  62. Everyone's missing the point AGAIN by Anonymous Coward · · Score: 0

    It is wearisome to see the same old misconceptions and plain old wrongness of most of the posts.

    1) XML is defined as "machine-readable", not "human-readable". With an XML file and a schema, no more knowledge is needed to parse, transform or generally munge XML data using generic algorithms. That cannot be said for binary data formats. That is why XML exists - to avoid all your wrong-headed spaghetti coding and homebrew formats from preventing systems from speaking to each other!

    2) XOP applies the same disciplines of XML to binary data representation, packaging and referencing. And I don't need to pay you $1,000 a day to tell me how to re-hack your already-hacked workaround binary packaging methods.

    3) Plaintext data is no worse than binary data when sending over TCP/IP. Guess what? IP routers are optimised to compress plaintext pre-transmission. If you send binary, you slow down the internal compression engines in the router. Ergo, TCP/IP don't care about how your bits are arranged - it's information density that counts. A 100K text document containing nothing but the same character is faster to transmit than a 10K JPG. Try it - it's true!

    Rant over, and out.

  63. Can you spell ASN1? by Anonymous Coward · · Score: 0
    I didn't think so.

    idiots.

    -- ac at work

  64. Re: V,i0xx by Anonymous Coward · · Score: 0

    Buy binary vioxx! It'll flip your bit!

  65. Excess bloat by Anonymous Coward · · Score: 0

    Ironic that CowboyNeal posts this article then...

  66. HA! by Anonymous Coward · · Score: 0

    It looks like we've come full circle.

    Remember how XML used to be lauded as the solution to binary-only data files? Har dee har har. This is not to bash the utility of this sort of format -- XML is pretty much unwritable by hand unless you have the right kind of editor, and binary XML is still far more a regular format than, say, microsoft word's.

    Personally, I still like gzip compressed XML better. At least it's easily decodable and most every application has access to the decompression routines if the used XML parser doesn't support it right off the bat.

  67. XML For Buzzword Based Engineers by Jagasian · · Score: 1

    There are two types of engineers. Those who can get the job done, and those who will try to use the buzzwords of the day to get the job done. The former tends to be a better engineer, while the latter tends to look better at the beginning of the development process.

    XML will come full circle when true binary XML is a w3c standard. People will be using high-level GUIs to generate text-based XML files, which will be converted into binary XML. On the other end, somebody will receive binary XML, convert it to text-based XML, open it in their application that presents the data in a high-level graphical format.

    Only then and only maybe, will everyone begin to realize what a farce XML really is. Its selling point was that it was easily human readable, as well as machine processable unlike other more simple formats. Everyone will realize that XML was never very readable (unless you were blind to angled brackets) nor was it easy to efficiently parse compared to existing formats. Everyone will realize how inefficient XML is, and with the roundabout nature of using GUIs to generate XML and then another tool to convert it to binary and then another for binary to text again and then a final GUI... ...it is like running in circles. The buzzword engineers need to put in their place. Let the real guys lead again, please.

  68. goodbye to quirks mode by Zirtix · · Score: 1

    Hear hear. As soon as XMLHttpRequest is a proper standard I'm jumping on it like a shot. Like Gmail, it's time to raise the bar on which browsers we web developers are going to support. CSS2, DOM 2, and XHTML please. IE6 just about makes the cut ;)

  69. XML 'is' useful, just not this binary XML spec by Drog · · Score: 3, Insightful
    There's a lot of XML-bashing going on here from people talking about how XML is just a buzzword and how XML is not necessary. Sure it's a buzzword, and sure it's unnecessary in some situations. But that doesn't make it useless.

    I create data-driven web apps for a living (i.e. data-driven graphics, UI and text via SVG and HTML), and I firmly believe that XML is the way to go for such creations. It offers a hierarchical structure that is excellent for temporarily storing data pulled from a database, which can then be converted to HTML or SVG or some UI markup (XUL, XForms, or your own thing) via XSLT.

    I don't really care that XML is human-readable--I like the fact that because it is extremely well structured, it is therefore easy to create with authoring applications as well as being easy to manipulate real-time by with script (i.e. manipulating its DOM).

    I have long wished for a true binary XML spec to make the transmission and parsing/decoding quicker, and this spec isn't it. But I think one day we'll have it, and that won't mean that we've "come full circle" and therefore XML is useless. It just means that we'll have the best of both worlds--speed plus standardized, hierarchical data structures.

    --

    Looking for political forums? Check out "The World Forum".

  70. the yin, the yang by SparafucileMan · · Score: 1

    And we have come full circle.

    computers: 1
    language designers: 0

  71. MS sez..... by heybo · · Score: 1
    Microsoft is committed to MTOM as the definitive solution for including opaque data in XML and SOAP messages, and we plan to implement support for MTOM across our XML-aware product line. -- Don Box, Architect, Microsoft Corporation

    Yea right.... It will be MSMTOM and won't work with anything BUT IE and M$ products. Look at what they did with their version of XML.

  72. WBXML (this is really binary XML) by rewound98 · · Score: 1

    Read this if you want to know about binary XML (http://www.w3.org/TR/wbxml/).

    The XOP proposal is a mechanism to represent and refer to binary data in an XML document.

    XOP is not a proposal to compress XML documents.


    You might say, oh, I can use CDATA, right.

    Unfortunately, no. CDATA cannot be reliably used because the character range for CDATA is loosely 0x9, 0xA, 0xD, and anything above 0x20. (http://www.w3.org/TR/REC-xml/#NT-Char)

    Currently, you have to resort to your own scheme to reliably include binary data in an XML document.
    --
    -- Rob
  73. This in not binary XML by tungwaiyip · · Score: 1

    The poster has mixed up. This is what W3C are doing with binary XML

    http://www.w3.org/XML/Binary/

    I don't find them publish anything yet.

    What the poster link to is a spec to include binary data in XML message, mostly for use in SOAP.

  74. FYI by Anonymous Coward · · Score: 0

    "XOP" and "XMLOP" are acronyms. "XOP" is pronounced "zahp". "XMLOP" is pronounced "ZIHM-lahp". Any abbreviation can be an acronym. For example, "WTF" is pronounced "whihtf", and "GWB" is pronounced "gwuhb".

  75. brought to you by the makers of SOAP by Anonymous Coward · · Score: 0

    who remind you that a 8 byte set of parameters returning a 2 byte answer is enhanced by its protective wrapping of 60KB.