OASIS Mailing List ArchivesView the OASIS mailing list archive below
or browse/search using MarkMail.

 


Help: OASIS Mailing Lists Help | MarkMail Help

 


 

   RE: A practical question about attributes

[ Lists Home | Date Index | Thread Index ]
  • From: Andrew Layman <andrewl@microsoft.com>
  • To: 'XML-DEV' <xml-dev@ic.ac.uk>
  • Date: Wed, 13 Jan 1999 10:02:06 -0800

Something else to think about is that most modems contain compression
software, so what looks like a wordy XML file will be sent as far fewer
bytes.

-----Original Message-----
From: Jeffrey E. Sussna [mailto:jes@kuantech.com]
Sent: Tuesday, January 12, 1999 3:08 PM
To: 'Tim Bray'; 'XML-DEV'
Subject: RE: A practical question about attributes


In general I try not to warp my designs to save bytes; in this case,
however, I'm on the edge of being able to justify using XML as opposed to a
hardwired data format, for performance reasons. However, it turns out Tim is
absolutely right. I generated some sample data using elements and then using
attributes. Uncompressed, the file sizes in bytes were 8341 (elements), 5041
(attributes). After being zipped, though, the sizes were 1085 (elements),
989 (attributes). Assuming I can do the zip and unzip within the timing
constraints (I'm pretty sure I can), then I think XML in general and the
elements approach in particular will work.

Thanks Tim!

Jeff

-----Original Message-----
From: Tim Bray [mailto:tbray@textuality.com]
Sent: Tuesday, January 12, 1999 12:24 PM
To: Jeffrey E. Sussna; 'XML-DEV'
Subject: Re: A practical question about attributes


At 11:38 AM 1/12/99 -0800, Jeffrey E. Sussna wrote:
>Folks,
>
>I can gain significant size reductions by representing things as attributes

>rather than sub-elements. Here is an example:

In general, I'd say it's a bad practice to warp your design out of
shape in order to save bytes; LZ compression does a better job anyhow.

><session><id>25</id><type>Q</type><num>15</num></session>
><session id="25" type="Q" num="15"/>

Let's take a closer look, at "<id>25</id>" vs id='25'.  In this case,
you're only saving 4 chars.  Attributes carry 3 characters of overhead: 
equals and two quotation marks, beyond the name.  If the length of the 
name is N, then elements carry N + 5 (end tag, <, >, </, >).  So the 
saving is N+2 chars, where N is the length of the name.  Work it out.

>Here's the question: does anyone know of any gotchas in using attributes 
>instead of elements? Parsing issues, etc.?

Yeah, they can't repeat, they can't have internal structure, they can't
contain external entities, they have no defined order.  But perhaps
these aren't material in your application. -T.


xml-dev: A list for W3C XML Developers. To post, mailto:xml-dev@ic.ac.uk
Archived as: http://www.lists.ic.ac.uk/hypermail/xml-dev/
To (un)subscribe, mailto:majordomo@ic.ac.uk the following message;
(un)subscribe xml-dev
To subscribe to the digests, mailto:majordomo@ic.ac.uk the following
message;
subscribe xml-dev-digest
List coordinator, Henry Rzepa (mailto:rzepa@ic.ac.uk)

xml-dev: A list for W3C XML Developers. To post, mailto:xml-dev@ic.ac.uk
Archived as: http://www.lists.ic.ac.uk/hypermail/xml-dev/
To (un)subscribe, mailto:majordomo@ic.ac.uk the following message;
(un)subscribe xml-dev
To subscribe to the digests, mailto:majordomo@ic.ac.uk the following message;
subscribe xml-dev-digest
List coordinator, Henry Rzepa (mailto:rzepa@ic.ac.uk)





 

News | XML in Industry | Calendar | XML Registry
Marketplace | Resources | MyXML.org | Sponsors | Privacy Statement

Copyright 2001 XML.org. This site is hosted by OASIS