My favorites | Sign in
Logo
             
New issue | Search
for
| Advanced search | Search tips
Issue 219: Ability to maintain multiple graphs
  Back to list
Status:  Fixed
Owner:  carueda
Closed:  Yesterday
Cc:  bermud
Type-Enhancement
Priority-Critical
ont
ooici


Sign in to add a comment
 
Reported by carueda, Nov 10, 2009
What capability do you want added or improved?
Ability to maintain multiple graphs and thus be able to load a specific
registered ontology to a particular graph (via a suitable graohId), and
then also be able to do SPARQL queries against that particular graph.

Where do you want this capability to be accessible?
In the programmatic mechanism to register an ontology, see  issue #214 .
(Having this capability in the regular portal interface may be added later).

What sort of input/command mechanism do you want?
See  issue #214 , already provided. What's missing at this point is that the
Ont service provide the capability. 

What is the desired output (content, format, location)?
This will be reflected in queries against the given graph

Other details of your desired capability?
This feature is particularly for the OOI CI Semantic Prototype.



Please provide any additional information below (particular ontology/ies,
text contents of vocabulary (voc2rdf), operating system, browser/version
(Firefox, Safari, IE, etc.), screenshot, etc.)

Comment 1 by carueda, Nov 25, 2009
 Issue 225  has been merged into this issue.
Comment 2 by carueda, Dec 21, 2009
(No comment was entered for this change.)
Labels: -Priority-High Priority-Critical
Comment 3 by carueda, Dec 22, 2009
Every registered ontology is now associated with a corresponding graph. For example,
the MMI Device Ontology, whose URI is http://mmisw.org/ont/mmi/device, is associated
with the graph identified with the same URI.

A query that exploits this is:

# all properties in a given graph:
PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#>
SELECT ?domain ?prop ?range 
FROM <http://mmisw.org/ont/mmi/device>
WHERE { 
    ?prop rdfs:domain ?domain.
    ?prop rdfs:range ?range.
}

Status: Started
Comment 4 by carueda, Yesterday (20 hours ago)
The RDFG vocabulary (http://www.w3.org/2004/03/trix/rdfg-1) is used to define the
graphs and the subGraphOf relationships. This basic vocabulary does not indicate the
transitivity of subGraphOf, so the following statement is added to the triple store
to enable the corresponding inference:

   rdfg:subGraphOf rdf:type owl:TransitiveProperty
  
The graphId is expected to be any valid URI, but it can also be a simple fragment. In
this case, the fragment is used as a local name in a predefined namespace. For
example, if the fragment is "ooi-ci", then the actual URI of the graph will be
http://mmisw.org/ont/mmiorr-internal/graphs/ooi-ci (in the case of the MMI deployment).
  
Note that all statements of a registered ontology with URI <ouri> are loaded in the
graph with the same URI <ouri> in the triple store (using the context parameter in
the AllegroGraph APIs). When the user specifies a desired <graphUri> for the
ontology, the graph identified by <ouri> is made a subClassOf the graph identified by
<graphUri>:

   <ouri> rdfg:subGraphOf <graphUri>

Example queries:

# subgraphs of a given graph
PREFIX rdfg: <http://www.w3.org/2004/03/trix/rdfg-1/>
SELECT ?subgraph ?supergraph 
WHERE { ?subgraph rdfg:subGraphOf ?supergraph }
limit 10

# statements in all subgraphs of a given graph:
PREFIX rdfg:<http://www.w3.org/2004/03/trix/rdfg-1/>
SELECT ?s ?p ?o 
WHERE { ?g rdfg:subGraphOf <http://mmisw.org/ont/mmiorr-internal/graphs/ooi-ci>
  GRAPH ?g { 
    ?s ?p ?o
  }
}
limit 10

Status: Fixed
Sign in to add a comment

Hosted by Google Code