Last modified 11 years ago Last modified on 03/19/08 10:32:24

Meeting minutes from 03/04/2008


  • Jim Brinkley, Dan Cook, Onard Mejino, Todd Detwiler, Marianne Shaw, Jiun-Hung Chen, Gary Yngve


Marianne's report: sample ds-config.ttl file

Support has been added for a Data Source Configuration RDF file, ds-config.ttl. This file can be used to associated a URL (that can be used in queries) with a Jena AssemberModel?.

Without this configuration file, Data Sources that were stored in a DB had to be specified programmatically; they could not simply be specified in a query. This restricted our ability to specify Data Sources in subqueries and recursive queries.

Using this config file, we can now execute recursive queries over the FMA stored in postgres DB.

An example query that returns the transitive closure of the Liver over the part relation is:

PREFIX dl: <> CONSTRUCT { ?x ?y ?z .} FROM NAMED <liver> [

CONSTRUCT {dl:Liver dl:part ?obj} FROM <> WHERE {dl:Liver dl:part ?obj .}


CONSTRUCT {?a ?b ?c . ?c dl:part ?d} FROM NAMED <liver> FROM NAMED <> WHERE {

GRAPH <liver> { ?a ?b ?c . } . GRAPH <> { ?c dl:part ?d . } .


] WHERE { GRAPH <liver> {?x ?y ?z .} }

Support for Skolem Functions has been added for CONSTRUCT queries; SELECT queries require a little more work. Skolem Functions can take variables or expressions (not aggregates) as arguments.

The format for specifying a Skolem Function is:

<URL>(param1, ...)?.

The result of processing a SkolemFunction? is a URL with parameters. For example,

<http://localhost/ontologies/f>("bob") ?

would result in a URL


A simple Skolem Function query looks like:

PREFIX xsd: <> PREFIX dc: <> PREFIX ac: <> PREFIX bobo: <http://localhost/bobo/> PREFIX : <.>

CONSTRUCT { [[bobo:f(?y)]] ac:booktitle [[bobo:g(?z, 5+2)]] } FROM <skolem.ttl> WHERE {

?x ?y ?z .