RE: [xsl] One-based indexes in XPath

Subject: RE: [xsl] One-based indexes in XPath
From: "Michael Kay" <mike@xxxxxxxxxxxx>
Date: Tue, 20 May 2008 19:20:32 +0100
> But I think 0 based indexes in low level languages (I 
> consider Java or C to be low level than XPath. Even I am 
> talking about assembly
> languages.) have relation to hardware addressing.

I don't think hardware addressing is the only benefit of 0-based addressing.
It also makes computations easier. If you number the rows and columns on a
chessboard from 0-7, and the squares from 0-63, then the square number is
row*8+column, whereas with 1-based addressing it is (row-1)*8+column.

And we do sometimes use 0-based logic in real life too. In many countries
the "first floor" is the one above where you enter the building; and in many
societies a child is "1 year old" between 12 months and 24 months after
their birth.

But on balance I do think 1-based logic was the right choice for XPath and
XSLT.

Michael Kay
http://www.saxonica.com/

Current Thread