Version 6 (modified by sauermann, 19 years ago) (diff) |
---|
PimoStorage
The PimoStorage stores the user's Personal Information Model. Basically, thats all ontologies, tags and wiki pages, and the relations to resources.
more about: PimOntology
Java Interface: PimoStorage.java
Usage example:
// I write a triple to the pimo Repository r = Gnowsis.getPimoStorage().getRepository(); Transation t = r.startTransaction(); // add something t.add(new StatementImpl(s, p, o)); t.commit(); // do fulltext search on pimo, using lucene query language Iterator<Tag> tagI = Gnowsis.getPimoStorage().search("Hello*"); while (tagI.hasNext()) { Tag t = tagI.next(); System.out.println("found thing: "+t.getUri()+ " with name "+t.getName()); }
Features:
- text indexing (using the lucene SAIL, configured to what is indexed).
- Reification is used to say when a triple was inserted when its a user triple like pimo:occurrence.
- Storage is NativeSail + luceneSail
Using Context in the PIMO
The fourth part of a triple - context - can be used differently in the pimo, we haven't decided yet how. Possibilities for context are:
- use context to seperate between domain ontologies. Context = uri of the InformationModel (not namespace, btw).
- use context for each triple: each triple has a context, context is a random uri. Uri is annotated saying who created it when in which domain ontology. This helps updates (seing "what has changed since yesterday").
Domain Ontologies
The user might decide to write a domain ontology or download one from the web. If that happens, the domain ontology (example: beer ontology) will be glued into the user's pimo.
So we have to support:
- creation of domain ontologies
- deletion of domain ontologies / removing of instances that were created in my Pimo using domain ontology
- editing of domain ontology.
- updating of domain ontology from a changed remote version.