[prev in list] [next in list] [prev in thread] [next in thread] 

List:       xml-dev
Subject:    Re: [xml-dev] Do long element names impact performance?
From:       Shaun McCance <shaunm () gnome ! org>
Date:       2015-10-15 14:33:29
Message-ID: 1444919609.2239.247.camel () recto
[Download RAW message or body]

On Thu, 2015-10-15 at 13:43 +0000, Costello, Roger L. wrote:
> Hi Folks,
> 
> Is the following true or false? 
> 
> 	XML developers who fail to grasp the distinction between reading and evaluating 
> 	an XML instance document may have a good model of the structure of XML, 
> 	but they usually have a terrible model of the efficiency of processing XML. One 
> 	XML developer used only one-letter element names, because he felt that it would 
> 	be faster for the computer to look up one-letter elements than a multi-letter name. 
> 	While it may be true that shorter names can save a microsecond at read time, this 
> 	makes no difference at all at evaluation time. Every element, regardless of its name, 
> 	is just a memory location, and the time to access the location does not depend on the 
> 	name of the element.
> 
> /Roger

Depends entirely on what you're doing and how it's implemented.
Comparing two strings for equality is linear time on the length of the
strings. If you select "//filename", a very naive XPath implementation
will look at every element and compare its name to "filename". This, in
principle, takes longer than comparing every name to "f".

In practice, XML frameworks use things like name pools, which allow
element names to be compared with constant time integer equality.

If cryptic one-letter element names actually make a measurable impact on
performance in your application, you need to rethink why you're using
XML in the first place.

--
Shaun



_______________________________________________________________________

XML-DEV is a publicly archived, unmoderated list hosted by OASIS
to support XML implementation and development. To minimize
spam in the archives, you must subscribe before posting.

[Un]Subscribe/change address: http://www.oasis-open.org/mlmanage/
Or unsubscribe: xml-dev-unsubscribe@lists.xml.org
subscribe: xml-dev-subscribe@lists.xml.org
List archive: http://lists.xml.org/archives/xml-dev/
List Guidelines: http://www.oasis-open.org/maillists/guidelines.php

[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic