[
Lists Home |
Date Index |
Thread Index
]
Jonathan Robie wrote:
> In XQuery, you can remain loosely coupled while improving the figure/noise
> ratio of your code. The following computes the PE Ratio for IBM:
>
> let $stock := document("stocks.xml")/stock[@id="IBM"]
> return $stock/price / ($stock/revenues - $stock/expenses)
>
> I do think this is more elegant than the equivalent SAX or DOM. It is no
> more tightly coupled.
Oh yes it is. This code presupposes 1) a document of a given name; 2) a
specifically-labelled ("IBM") ID on an element in that document; 3)
specifically-labelled 'price' and 'revenue' information items which are 4)
specifically presupposed to be part of that document (as opposed to say,
separately computable or capable of being looked up in some place of greater
local interest, such as the last trade in a particular market) and 5) [most
crucial of all unexamined assumptions here] presupposed to be in a form
against which the computation expressed in the code is directly executable
(though, of course as 'real' XML the only form that they would necessarily be
in is Unicode text). In short, all of the semantics here are in the implicit
and , I'm afraid, largely unexamined assumptions, and certainly not in the
code. It is those assumptions which bind this code as tight as an anaconda to
the documents which it not only expects, but is impotent without.
Respectfully,
Walter Perry
|