Importing OWL Models into SADL

Last revised 08/30/2011

An existing OWL model may be imported directly into a SADL model just as one would import another SADL model. Imports of OWL model do so by its public URI, e.g.:

import "http://research.ge.com/Acuity/aulo.owl" as aulo.

Once an OWL model has been imported, concepts in the model may be referenced using the specified alias:

Genius is a type of aulo:Person.

In order for the OWL model to be found and loaded, its actual location must be specified in the "ont-policy.rdf" file in the OwlModels folder of the project. Note that the OwlModels folder is created by Eclipse as soon as a valid SADL model file is saved. The "ont-policy.rdf" file is created to contain all of the mapping information necessary for deploying the SADL models of the project. An OntologySpec entry must be added for the OWL model being referenced. This will look something like:

<OntologySpec>
    <publicURI rdf:resource="http://research.ge.com/Acuity/aulo.owl#"/>
    <language rdf:resource="http://www.w3.org/2002/07/owl"/>
    <altURL rdf:resource="file:///G:/sadl/eclipse/workspace/TestSadlXtext/OtherOwlModels/aulo.owl"/>
</OntologySpec>

Note that the "altURL" may be a "file:///..." URL referencing a file system resource or it may be an "http://..." URL referencing the ontology from an HTTP server.

When a SADL project is moved to another computing environment, as when a collaborator checks a project out of a version control repository such as CVS, an OntologySpec mapping for an OWL file may need to be updated to point to the OWL model file at another location.

Note that a global alias can be specified in the OntologySpec section for an OWL file. This is of the form:

 <OntologySpec>
    <publicURI rdf:resource="http://research.ge.com/Acuity/aulo.owl#"/>
    <language rdf:resource="http://www.w3.org/2002/07/owl"/>
    <altURL rdf:resource="file:///G:/sadl/eclipse/workspace/TestSadlXtext/OtherOwlModels/aulo.owl"/>
    <prefix rdf:datatype="http://www.w3.org/2001/XMLSchema#string">aulo</prefix>
</OntologySpec>

If a global alias is provided, the import statement does not need to include "as aulo". See Model Names, Namespaces, and Aliases in SADL.