Hi Richard,
The followings are the main reasons for modifying D2RQ: As you may be aware, OGSA-DAI enables exposing and querying resources stored in relational databases through workflow-based clients, where the clients do not need to have any knowledge of the database type or connection details. OGSA-DAI also allows the tables from multiple distributed relational databases to be queried, using SQL, as if there were multiple tables in a single database through a mechanism called Distributed Query Processing(DQP). The GeoTOD server acts as a client to an OGSA-DAI server to dynamically serve up relational data according to the linked-data principles. This involves executing a workflow that chains three OGSA-DAI activities: the first is for generating the SQL statements for a SPARQL query, the second for executing the SQL aganist one or more databases (possibly through DQP) and the third and final activity for generating RDF triples or other representation (e.g. HTML, GML, KML etc.) based on the SQL ResultSets. Therefore, in short, it was necessary for GeoTOD to use only the SQL and Triple generation capabilities of D2RQ without actually connecting to the database(s) in question. In other words, it would not have helped even if D2RQ was able to accept a pre-established JDBC database Connection object, as the actual JDBC connection is never exposed to the client, i.e. the GeoTOD server. The D2RQ classes changed are: 1. GraphD2RQ (added a flag for turning off/on database validation before SQL generation -- for GeoTOD, database validation is always turned off so that the mapping file used does not need to have any connection details) 2. ConnectedDB (added three different modes as mentioned in my previous email) 3. QueryExecutionIterator (handles query processing based on the mode selected) New class: OgsadaiD2RQModel (uk.ac.stfc.geotod.d2rq;) a modified version of ModelD2RQ class that enables running the modified D2RQ engine with the added options You can browse the code at: http://geotod.svn.sourceforge.net/viewvc/geotod/geotod-ogsadai-d2rq/ Finally, it was a research project, so there are bound to be errors/inefficiencies in the code. Hope this answers your questions. Best regards Arif ________________________________________ From: Richard Cyganiak [[email protected]] Sent: 06 January 2011 20:08 To: Shaon, Arif (STFC,RAL,ESC) Cc: [email protected] Subject: Re: [d2rq-dev] GeoTOD-II Hi Arif, This is interesting and I would like to know more about these changes. In particular, 1. Why were these changes necessary to fit D2RQ into OGSA-DAI? My guess is that the framework insists on personally executing all database queries, so you can only give it a SQL query and it will returns a ResultSet -- is this correct? Could you have solved the issue if D2RQ was able to accept a pre-established JDBC database Connection object? 2. Do you have a patch or can you name all the files that have been changed? Best, Richard On 23 Dec 2010, at 17:40, <[email protected]> <[email protected]> wrote: > Hi Everyone, > > I would like to draw your attention to a small project recently conducted by > the Science and Technology Facilities Council (STFC) and funded by the OMII > UK. The project, entitled "Geospatial Transformation using OGSA-DAI" > (GeoTOD-II), has developed a "Linked-Data" server that exposes spatial data > residing in relational databases as linked data, fully complying with the > guidelines provided by the UK Cabinet Office > (http://location.defra.gov.uk/wp-content/uploads/2010/04/Designing_URI_Sets_for_Location-Ver0.5.pdf). > > Of relevance to the D2RQ community is that the GeoTOD server uses a modified > version of the D2RQ model encapsulated in OGSA-DAI acitivities to serve up > linked data from relational databases. OGSA-DAI is an open source web > application (developed by the OMII UK) that allows data to be collected, > transformed, combined and exposed in different formats. > > Of particular mention here is the modified version of D2RQ used for GeoTOD; > it can be run in the following three different modes: > > * > > normal run (as per the original D2RQ implementation - default), > > * > > sqlOnly run (for generating the corresponding SQL statements for a SPARQL > query) and > > * > > triplesOnly run (for generating RDF triples using pre-generated Database > ResultSets for the corresponding SQL statements) > > These modifications of D2RQ were necessary to encapsulate an instance D2RQ > model within OGSA-DAI activities to generate different representations of a > dataset, e.g. RDF, HTML, GML, KML etc. > > GeoTOD and the modified version of D2RQ are available on SourceForge at: > https://sourceforge.net/projects/geotod/ > (For D2RQ source, look under the "Files" tab) > > Thanks for your time. > > Happy holidays. > > Best regards > Arif > > ---------------------------------------------------------------------- > Dr. Arif Shaon > > Software Research Scientist, > Scientific Applications Group, > E-Science Centre, Science and Technology Facilities Council, > Rutherford Appleton Laboratory Chilton, Didcot, OXON, OX11 0QX, UK > tel: +44 1235 448178 > [email protected]<mailto:[email protected]> > > -- > Scanned by iCritical. > > ------------------------------------------------------------------------------ > Learn how Oracle Real Application Clusters (RAC) One Node allows customers > to consolidate database storage, standardize their database environment, and, > should the need arise, upgrade to a full multi-node Oracle RAC database > without downtime or disruption > http://p.sf.net/sfu/oracle-sfdevnl > _______________________________________________ > d2rq-map-devel mailing list > [email protected] > https://lists.sourceforge.net/lists/listinfo/d2rq-map-devel -- Scanned by iCritical. ------------------------------------------------------------------------------ Learn how Oracle Real Application Clusters (RAC) One Node allows customers to consolidate database storage, standardize their database environment, and, should the need arise, upgrade to a full multi-node Oracle RAC database without downtime or disruption http://p.sf.net/sfu/oracle-sfdevnl _______________________________________________ d2rq-map-devel mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/d2rq-map-devel
