[Date Prev]
| [Thread Prev]
| [Thread Next]
| [Date Next]
--
[Date Index]
| [Thread Index]
Re: [xml-dev] functional databases noodling ...
- From: Michael Kay <mike@saxonica.com>
- To: xml-dev@lists.xml.org
- Date: Tue, 14 Feb 2012 17:31:27 +0000
On 14/02/2012 08:57, James Fuller wrote:
> every year at XML Prague, Michael Kay either via his talks or
> questions makes a single comment that spawns a few hundred hours of
> research on my part ... this year was his minor mention of 'functional
> databases' ... which sent me scrambling.
The functional database system that impressed me the most was IRIS:
http://www.hpl.hp.com/techreports/90/HPL-90-108.pdf
The data model for IRIS consists of objects, functions, and types. What
you think of as attributes and relationships in other models are
represented as functions (a function [=method] of an object that yields
either an atomic value or another object). "Stored" and "derived" data
are modelled symmetrically as functions (extensional functions or
intensional functions). Types are objects, and relationships among types
as well as relationships between types and instances are modelled in the
same way as other relationships, i.e. as functions. A particularly nice
feature is that objects can have multiple types and can change their
type - so an employee can become a pensioner with no change of identity.
Functional composition gives you effects similar to relational views,
but in a much cleaner way. A query can be considered an inverse
function: if there's a function from person to name, then it has an
inverse which is a function from name to person, which gives you the
basis of a query.
>
> a few thoughts immediately came to mind:
>
> * how valid is it to say 'xquery is a functional
> programming/query language' ? I think 3.0 makes this statement true
Yes, I think in 3.0 we have all the ingredients of a functional
programming language.
>
> * is it possible that we could rename xml databases (who have
> xquery) into 'functional database' especially if they employ XQuery
> 3.0
If you look at the IRIS paper quoted, then no; because a key theme of
functional databases was to take relational normalization a step further
(creating something very like RDF triple stores) and reduce all
information to a single canonical form by analyzing functional
dependencies. An XML database will never achieve that because XML offers
so many different ways of saying the same thing.
>
> * does anyone on the list has experience with pure functional
> databases in existence
>
>
They'll need to have grey hair, because the fashions moved on. But I saw
some great work done in the 1980s with functional database in areas like
criminal intelligence gathering - the kind of areas where people are now
trying to use RDF, for exactly the same reasons.
Michael Kay
Saxonica
[Date Prev]
| [Thread Prev]
| [Thread Next]
| [Date Next]
--
[Date Index]
| [Thread Index]