Follow Slashdot stories on Twitter

 



Forgot your password?
typodupeerror
×
Programming The Internet Technology

W3C launches Binary XML Packaging 239

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."
This discussion has been archived. No new comments can be posted.

W3C launches Binary XML Packaging

Comments Filter:
  • by seanadams.com ( 463190 ) * on Thursday January 27, 2005 @11:59PM (#11500268) Homepage
    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?
  • by Anonymous Coward on Friday January 28, 2005 @12:09AM (#11500322)
    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.
  • by malfunct ( 120790 ) on Friday January 28, 2005 @12:31AM (#11500444) Homepage
    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.
  • Re:Noscript (Score:3, Interesting)

    by tomhudson ( 43916 ) <barbara,hudson&barbara-hudson,com> on Friday January 28, 2005 @12:40AM (#11500482) Journal
    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 :-)

  • by Camel Pilot ( 78781 ) on Friday January 28, 2005 @01:27AM (#11500685) Homepage Journal
    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.
  • by PaulBu ( 473180 ) on Friday January 28, 2005 @02:38AM (#11500934) Homepage
    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.
  • Re:a bit confused (Score:3, Interesting)

    by MassacrE ( 763 ) on Friday January 28, 2005 @03:03AM (#11501021)
    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.
  • SXML (Score:1, Interesting)

    by Anonymous Coward on Friday January 28, 2005 @07:50AM (#11501996)
    Ever heard of SXML [pobox.com]? It's XML represented as Lisp-family S-Expressions [wikipedia.org]. This makes it a native data structure to e.g. the Scheme programming language [wikipedia.org]. 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")
    ))
  • by passionplay ( 607862 ) on Friday January 28, 2005 @10:56AM (#11503299)
    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.

And it should be the law: If you use the word `paradigm' without knowing what the dictionary says it means, you go to jail. No exceptions. -- David Jones

Working...