 |
 |
 |
>> If he's going to claim that XPath is procedural when the rest of the world
>> claims it is declarative, then at least he ought to explain why he holds
>> this view
For a number of years, Mike worked on the NCR Teradata product. It's a DBMS
targeted at the large data warehouse market. So he comes at the declarative vs.
navigational issue from the perspective of working on a platform where there was
an SQL engine and query optimizer. Declarative (non-procedural) is the
alternative to navigational or positional logic.
To someone building SQL platforms, the distinction is something like Chris
Date's book title "What Not How". The goal of SQL was to provide a language that
enabled a user to specify what query results were desired, without specifying
how to navigate to the target data. It's the job of the SQL optimizer to
determine the best path for accessing the data, not the user who writes the
query.
The analogy I've used to explain this is contrasting how people use a taxi. The
passenger who says "Take me to the airport" and leaves it to the taxi driver to
determine the best route is like the SQL user who leaves it to the optimizer to
determine the best access plan.
A different passenger might tell the taxi driver, "Take Interstate 15 to Highway
78 and turn west. Then take Interstate 5 South to the San Diego Airport exit".
That's navigational, not declarative.
So the question of whether a query engine supports declarative or navigational
queries is essentially whether the user needs to know the physical structure of
the data and how to navigate to it.
|
 | 

|  |
These Archives are provided for informational purposes only and have been generated directly from the Altova mailing list archive system and are comprised of the lists set forth on www.altova.com/list/index.html. Therefore, Altova does not warrant or guarantee the accuracy, reliability, completeness, usefulness, non-infringement of intellectual property rights, or quality of any content on the Altova Mailing List Archive(s), regardless of who originates that content. You expressly understand and agree that you bear all risks associated with using or relying on that content. Altova will not be liable or responsible in any way for any content posted including, but not limited to, any errors or omissions in content, or for any losses or damage of any kind incurred as a result of the use of or reliance on any content. This disclaimer and limitation on liability is in addition to the disclaimers and limitations contained in the Website Terms of Use and elsewhere on the site.
|  |
| |
 |
 |
 |