net.sourceforge.fluxion.api
Interface FluxionService

All Known Implementing Classes:
BeanFactoryFluxionService, DelegatingFluxionService, QueryTransformingFluxionService, SOAPFluxionService

public interface FluxionService

A service that exposes data to the Fluxion stack.

The service is responsible for returning results for queries. The way that it evaluates the query is captured by and . The captures both the result and the details of the context within which the query was evaluated, allowing clients to potentially reason over caches of results.

Version:
0.3
Author:
Matthew Pocock, Tony Burdett, Rob Davey, Tom Oinn

Method Summary
 java.util.Set<java.net.URI> getDataSources()
          All data sources that this service publishes.
 java.net.URI getId()
          A human-readable URI-based service ID
 java.net.URI getReasonerLevel(java.net.URI dataSource)
          The minimum reasoning capabilities that the service will use when matching queries against the data source.
 org.semanticweb.owl.model.OWLOntology getSchema(java.net.URI dataSource)
          A schema that acts as an upper-bounds on the entities that could possibly be retreived from this service.
 org.semanticweb.owl.model.OWLOntology query(java.net.URI dataSource, java.net.URI queryClass, org.semanticweb.owl.model.OWLOntology queryOntology)
          Execute a query.
 

Method Detail

getId

java.net.URI getId()
A human-readable URI-based service ID

Returns:
a identifying this service.

getDataSources

java.util.Set<java.net.URI> getDataSources()
                                           throws DataSourceException
All data sources that this service publishes.

Returns:
a of s giving each known data source
Throws:
DataSourceException

getReasonerLevel

java.net.URI getReasonerLevel(java.net.URI dataSource)
                              throws DataSourceException
The minimum reasoning capabilities that the service will use when matching queries against the data source.

For example, this URI may resolve to an entity representing OWL-DL, in which case the service is indicating that the full OWL-DL semantics will be used to infer that instances are members of a class. Some services may chose to implement less poweful logics, such as OWL-LITE. Clients are then responsible for formulating the query in such a way as to ensure that all of the data that they are interested in is retreived using just the service reasoning level. It is legal, although not very polite for a service to publish any reasoner level that is equivalent to or more simple than the one that it actually employes.

Parameters:
dataSource - the being operated upon
Returns:
a giving the reasoner semantics in effect
Throws:
DataSourceException - if the data source is not known by this service or if there was an error connecting to the data source

getSchema

org.semanticweb.owl.model.OWLOntology getSchema(java.net.URI dataSource)
                                                throws DataSourceException
A schema that acts as an upper-bounds on the entities that could possibly be retreived from this service.

All instances returned by a query will be instances of concepts defined in the schema. Thus, executing a query is equivalent to first intersecting the query with the schema and executing that.

Parameters:
dataSource - the being operated upon
Returns:
an describing the range of concepts this service may publish
Throws:
DataSourceException - if the data source is not known by this service or if there was an error connecting to the data source

query

org.semanticweb.owl.model.OWLOntology query(java.net.URI dataSource,
                                            java.net.URI queryClass,
                                            org.semanticweb.owl.model.OWLOntology queryOntology)
                                            throws DataSourceException
Execute a query.

The result of a query will include the URI of the data source actually queried, the query that the service actually executed, the reasoner level in effect at the time and an containing every instance of the query class provided by this service.

The results may include any amount of extra information. It must be complete in that there will be no instances provided by the service that match the query which are not returned. It must also contain enough information to validate that a given individual is or is not a member of the query class. It may contain any number of extra individuals that do not match the query, as well as any number of axioms which are not neccesary to prove that an instance is a member of the query class. It is legal, although not polite, for a service to return all data for every query.

Parameters:
dataSource - the being operated upon
queryClass - the qualified name of the class from the specified ontology for which instances should be found
queryOntology - the ontology containing the specified query class
Returns:
the result of the query as an OWLOntology
Throws:
DataSourceException - if the data source is not known by this service or if there was an error connecting to the data source


Copyright © 2010. All Rights Reserved.