- From: Stephane Fellah <fellah@pcigeomatics.com>
- Date: Tue, 22 Jun 2004 12:52:25 -0400
- To: "Chris Bizer" <chris@bizer.de>, <www-rdf-interest@w3.org>
- Cc: "Richard Cyganiak" <richard@cyganiak.de>, <wilkinson@hpl.hp.com>, <kers@hpl.hp.com>, "Seaborne, Andy" <Andy_Seaborne@hplb.hpl.hp.com>, <dwood@tucanatech.com>, "Krishnamurthy, Venkat" <Venkat.Krishnamurthy@gs.com>, "Leo Sauermann" <leo@gnowsis.com>, "Sunil Goyal" <sgoyal@salzburgresearch.at>, <nbi_wn@lists.spline.inf.fu-berlin.de>, "Uwe Suhl" <suhl@wiwiss.fu-berlin.de>
- Message-ID: <8ED21571324EB145933ACCD22B86AC3662726F@bach.ncr.pcigeomatics.com>
Chris and al,
Good job ! I was looking forward seeing such tool. I have developed my
own branch of mapping tool based on the former D2RM in order to map a
complex database. During my development, I have came out with the need
to add a precondition to perform a mapping to a property. For example, a
property P1 (column) which does not have the information, it may use a
conventional null value (for example 0).
In this case, the mapping of the property is preconditioned by the fact
that P1!=0. You may more complex precondition based on Boolean
expression using comparator and Boolean operator AND/OR/NOT. Using SQL
syntax for this adequate.
The following example show how an ellipsoid mapping can be described.
An ellipsoid can be described in 3 ways:
1) (Semi-major axis, semi-minor axis)
The Precondition of mapping to use this case is:
@@SEMI_MINOR_AXIS@@!=0 AND @@ELLIPSOID_SHAPE@@=true
The mapping is the following
<rdf:Property
rdf:about="http://www.isotc211.org/iso19111#semiMinorAxis">
<d2r:propertyBridge>
<d2r:ObjectPropertyBridge
rdf:about="http://www.pcigeomatics.com/d2r/epsgMapping/ellipsoidSemiMino
rPB">
<d2r:preCondition>@@SEMI_MINOR_AXIS@@!=0 AND
@@ELLIPSOID_SHAPE@@=true</d2r:preCondition>
<d2r:belongsToClassMap
rdf:resource="http://www.pcigeomatics.com/d2r/epsgMapping/secondDefining
ParameterCM"/>
<d2r:refersToClassMap
rdf:resource="http://www.pcigeomatics.com/d2r/epsgMapping/semiMinorLengt
hMap"/>
</d2r:ObjectPropertyBridge>
</d2r:propertyBridge>
</rdf:Property>
2) (semi-major axis, inverse flattening)
The Precondition of mapping to use this case is:
@@INV_FLATTENING@@!=0 AND @@SEMI_MINOR_AXIS@@=0 AND
@@ELLIPSOID_SHAPE@@=true
<rdf:Property
rdf:about="http://www.isotc211.org/iso19111#inverseFlattening">
<d2r:propertyBridge>
<d2r:ObjectPropertyBridge
rdf:about="http://www.pcigeomatics.com/d2r/epsgMapping/invFlatteningOPB"
>
<d2r:belongsToClassMap
rdf:resource="http://www.pcigeomatics.com/d2r/epsgMapping/secondDefining
ParameterCM"/>
<d2r:preCondition>@@INV_FLATTENING@@!=0 AND
@@SEMI_MINOR_AXIS@@=0 AND @@ELLIPSOID_SHAPE@@=true</d2r:preCondition>
<d2r:refersToClassMap
rdf:resource="http://www.pcigeomatics.com/d2r/epsgMapping/invFlatteningC
M"/>
</d2r:ObjectPropertyBridge>
</d2r:propertyBridge>
</rdf:Property>
3) (semi-major axis, isSphere). (case of a sphere)
The Precondition of mapping to use this case is:
@@ELLIPSOID_SHAPE@@=false
The mapping is defined as:
<rdf:Property rdf:about="http://www.isotc211.org/iso19111#isSphere">
<d2r:propertyBridge>
<d2r:DatatypePropertyBridge
rdf:about="http://www.pcigeomatics.com/d2r/epsgMapping/isSpherePB">
<d2r:belongsToClassMap
rdf:resource="http://www.pcigeomatics.com/d2r/epsgMapping/secondDefining
ParameterCM"/>
<d2r:preCondition>@@ELLIPSOID_SHAPE@@=false</d2r:preCondition>
<d2r:column>ellipsoid.ELLIPSOID_SHAPE</d2r:column>
</d2r:DatatypePropertyBridge>
</d2r:propertyBridge>
</rdf:Property>
I think it would be very useful to get this capability in D2RQ. I would
like to align my internal implementation to this implementation provided
I get this important capability in the framework.
Your comments are welcome.
Best regards
Stephane Fellah
Web Chief Architect
PCI Geomatics
490, Boulevard St Joseph
Hull, Quebec
Canada J8Y 3Y7
Tel: 1 819 770 0022 Ext. 223
Fax 1 819 770 0098
Visit our web site: www.pcigeomatics.com
-----Original Message-----
From: Chris Bizer [mailto:chris@bizer.de]
Sent: Tuesday, June 22, 2004 7:18 AM
To: www-rdf-interest@w3.org
Cc: Richard Cyganiak; wilkinson@hpl.hp.com; kers@hpl.hp.com; Seaborne,
Andy; dwood@tucanatech.com; Krishnamurthy, Venkat; Leo Sauermann; Sunil
Goyal; nbi_wn@lists.spline.inf.fu-berlin.de; Uwe Suhl
Subject: ANN: D2RQ Jena plug-in released for treating non-RDF databases
as virtual RDF graphs
Hi all,
we released the initial version of the D2RQ Jena plug-in under General
Public License today.
D2RQ is a declarative mapping language for treating non-RDF databases as
virtual RDF graphs within the Jena toolkit.
Using D2RQ you can:
1. access information in a non-RDF database using the Jena model API.
2. query a non-RDF database using RDQL or find(spo).
3. do RDFS and OWL inferencing over the content of a non-RDF database
using
the Jena ontology API.
4. publish the content of a non-RDF database on the Semantic Web using
the
Joseki RDF server.
The goal of D2RQ is to expose the content of huge, live, non-RDF
databases
to the Semantic Web without having to replicate the database into RDF.
D2RQ is implemented as a Jena graph, the basic information
representation
object within the Jena framework. A D2RQ graph wraps one or more local
relational databases into a virtual, read-only RDF graph. It rewrites
Jena
API calls, find() and RDQL queries to application-data-model specific
SQL
queries. The result sets of these SQL queries are transformed into RDF
triples which are passed up to the higher layers of the Jena framework.
For more information about D2RQ see
1. the D2RQ User Manual and Language Specification:
http://www.wiwiss.fu-berlin.de/suhl/bizer/d2rq/spec/index.htm
2. the D2RQ Website:
http://www.wiwiss.fu-berlin.de/suhl/bizer/d2rq/index.htm
The D2RQ Jena plug-in can be downloaded from:
http://sourceforge.net/projects/d2rq-map/
Lots of thanks to
1. Andy Seaborne (HP Labs, Bristol), Chris Dollin (HP Labs, Bristol) and
Kevin Wilkinson (HP Labs, Palo Alto) for their feedback on the D2RQ
language
specification.
2. Richard Cyganiak (FU Berlin) for helping to implement D2RQ and for
developing a performance test suite for D2RQ (results will be released
soon).
Cheers,
Chris Bizer
Received on Tuesday, 22 June 2004 12:52:57 UTC