2

I would like to use external ontologies https://www.w3.org/ns/locn, https://www.w3.org/2006/time, and https://www.w3.org/2003/01/geo/ into my ontologies. As far as I understand, if I use "import" to access these ontologies, I can obtain the ontologies and corresponding ontologies. But If I use by adding the following prefixes and use their classes into my ontology, i I dont know the level of accessibility and how these external ontologies get loaded into databases:

@prefix time: <http://www.w3.org/2006/time#> .
@prefix location: <https://www.w3.org/ns/locn#> .
@prefix geo: <https://www.w3.org/2003/01/geo#> .

I will pose a few questions to be more specific and understand the workflow.

  1. Do I need to have Internet connection to access these external ontologies? maybe the most common ontologies/frameworks such as rdfs, rdf, owl are prepopulated in existing databases/software (e.g., Graphdb, Jena)? If so, what about the uncommon ontologies? Do the uncommon ontologies have to be manually populated or its just a different namespace?
  2. Assuming the Internet connection, am I still able to infer things using the properties defined in the external ontologies? For example, If I create an instance nodea location:location nodeb ., will it infer that nodeb is a dc:location? What type of features get lost or things (reasoning due to chain properties, relationships, subclasses, domain/range) I can not access or not applicable?
Mav
  • 123
  • 1
  • 8
  • 2
    1. it depends on the location that you defined in the import declaration, but usually for something like FOAF etc. yes. That is the whole idea of the Semantic Web and Linked Data. And yes, some tools already contain the triples form the standard vocabularies. Clearly, for triple stores, you would have to load the external vocabularies manually if they do not support OWL import resolution during loading. Otherwise, during querying those triples wouldn't taken into account - which perfectly makes sense because you would have to load it from the web each time a query is executed. – UninformedUser Feb 01 '18 at 07:02
  • 1
    2. it depends on the specific tool, but usually not. Most framework/tools/triple store apply their algorithms on their internal datastructures, thus, the data should be initially loaded. Anything else would be quite slow, doing lookups in the web each time. Imagine a reasoner, which would have to lookup data during reasoning, that wouldn't be efficient. – UninformedUser Feb 01 '18 at 07:03
  • From my point of view, simply load the extenal data into your application as well. Otherwise, you should first define which tools you plan to use, and how. – UninformedUser Feb 01 '18 at 07:06
  • Thanks @AKSW. To avoid the Internet dependency, it is better to download other ontologies and their dependencies, and package them as part of the product. I am assuming that all the dependencies have to be manually downloaded as well by looking at the namespaces used in these ontologies; is that right? would the local ontologies supersede remote ontologies in case of conflicts? – Mav Feb 01 '18 at 16:55

0 Answers0