I've been working with Jena and Pellet lately to do ontology stuff.
Lesson:
* If you accidentally put a min cardinality of 1920 onto a class, the result will be that Pellet will die a horrible death as it attempts to infer 1920 objects magically into existence. I runs out of memory and maxes the cpu. Also, I've found some issues with speed and having max cardinality set. So, I'm just going to not include cardinality rules and just add my own properties that indicate cardinality so I can restrict things in the editor without causing pointless inferences in pellet.
* When using Pellet in Jena, I found that everything works much much faster if I use non-Ont versions of things. Instead of using OntModel, I changed all my stuff to use Model. This meant writing some simple methods to replace listRange and listDomain and listSubclasses and createIndividual. But the result is significant speed increases.
* When creating an ontology, I found that things are faster if I first do all the manipulation and creation of stuff in a Jena OWL_MEM model and then only insert it into a pellet model at the end, right before I save it. This is because pellet needs to recalculate inferences after every insert.
XSD types
Reifying RDF
JENA:
* Jena discussion forum
* Jena javadocs
* Jena 2 Inference Support : rule engine
* ARQ javadocs
* Large Quad Stores
SPARQL:
* SPARQL spec
* SPARQL tutorial
* Xpath spec (used in SPARQL filters)
OWL:
* OWL 1.0 spec
* Extending OWL with Maximal Subroperties: An Approach to Define Qualified Cardinality Restrictions and Reflexive Properties
* Simple part-whole relations in OWL Ontologies (best practices)
* string language abbreviations (country codes)
N3:
* Rough Guide to N3
* example
* string escape codes
!!Vocabulary
||upper ontology|very high level ontology that’s shared between many groups/domains. We would probably not use this term in reference to anything me create.
shared ontology|any ontology that’s shared or meant to be shared between groups. Example: “The fimcore shared ontology is required to talk about groups.�
vocabulary|the part of an ontology without the individuals (with the exception of things like enumeration individuals which may be part of the vocabulary)
instances|This is the opposite of “vocabulary�. This is the part of the ontology that contains individuals (not counting things like enumeration individuals which may be part of the vocabulary)
inferred triples|These are the triples that are created as a result of inferences. These are the implicit triples.
base triples|This is the opposite of “inferred triples�. This is the set of triples that is explicitly declared.||
Lesson:
* If you accidentally put a min cardinality of 1920 onto a class, the result will be that Pellet will die a horrible death as it attempts to infer 1920 objects magically into existence. I runs out of memory and maxes the cpu. Also, I've found some issues with speed and having max cardinality set. So, I'm just going to not include cardinality rules and just add my own properties that indicate cardinality so I can restrict things in the editor without causing pointless inferences in pellet.
* When using Pellet in Jena, I found that everything works much much faster if I use non-Ont versions of things. Instead of using OntModel, I changed all my stuff to use Model. This meant writing some simple methods to replace listRange and listDomain and listSubclasses and createIndividual. But the result is significant speed increases.
* When creating an ontology, I found that things are faster if I first do all the manipulation and creation of stuff in a Jena OWL_MEM model and then only insert it into a pellet model at the end, right before I save it. This is because pellet needs to recalculate inferences after every insert.
XSD types
Reifying RDF
JENA:
* Jena discussion forum
* Jena javadocs
* Jena 2 Inference Support : rule engine
* ARQ javadocs
* Large Quad Stores
SPARQL:
* SPARQL spec
* SPARQL tutorial
* Xpath spec (used in SPARQL filters)
OWL:
* OWL 1.0 spec
* Extending OWL with Maximal Subroperties: An Approach to Define Qualified Cardinality Restrictions and Reflexive Properties
* Simple part-whole relations in OWL Ontologies (best practices)
* string language abbreviations (country codes)
N3:
* Rough Guide to N3
* example
* string escape codes
!!Vocabulary
||upper ontology|very high level ontology that’s shared between many groups/domains. We would probably not use this term in reference to anything me create.
shared ontology|any ontology that’s shared or meant to be shared between groups. Example: “The fimcore shared ontology is required to talk about groups.�
vocabulary|the part of an ontology without the individuals (with the exception of things like enumeration individuals which may be part of the vocabulary)
instances|This is the opposite of “vocabulary�. This is the part of the ontology that contains individuals (not counting things like enumeration individuals which may be part of the vocabulary)
inferred triples|These are the triples that are created as a result of inferences. These are the implicit triples.
base triples|This is the opposite of “inferred triples�. This is the set of triples that is explicitly declared.||
Version 4.1 last modified by Geoff Fortytwo on 14/05/2008 at 01:20
Document data
Attachments:
No attachments for this document