Events Ontology
We need to set up an ontology for describing events and have a documented set of event URIs for interpretation and manifestations in the DB.
The ontology should be then proposed to Tracker and Nepomuk so that we can have a unified way of playing with each other.
We need this in as early as possible as it affects the events we have stored - it might change the URLs of interpretations and manifestations.
Blueprint information
- Status:
- Complete
- Approver:
- Mikkel Kamstrup Erlandsen
- Priority:
- Essential
- Drafter:
- Mikkel Kamstrup Erlandsen
- Direction:
- Needs approval
- Assignee:
- Markus Korn
- Definition:
- Approved
- Series goal:
- Accepted for 0.3
- Implementation:
- Implemented
- Milestone target:
- None
- Started by
- Mikkel Kamstrup Erlandsen
- Completed by
- Seif Lotfy
Whiteboard
kamstrup: I'll start drafting this on LGO. See full spec link above.
---
RainCT: Any progress on this? I'd be nice to have wiki pages or something where we can start discussing it.
---
kamstrup: Actually I have been thinking a great deal about this the last few days. I'll update the wiki page later today...
---
kamstrup: Spec updated on LGO
---
thekorn: okidoki, @kamstrup: has there been any (implementation) progress on this yet?
I think this should be one of the things we should work on for a 0.{4,5} release, and I'm wondering how much work we need to put into it in order to have a sane and powerful solution, which works for the python part of zeitgeist as well as for some sort of libzeitgeist.
So I've a few questions for now:
* using this trig format seems to be a reasonable way, is there some kind of "write your own ontology 101"-tutorial somewhere, does a parser module for python (C/Java/etc.) exist for this format? Or do we need to work on this first?
* as far as I understand there are only a few Definitions which are zeitgeist specific, we will inherit most of the stuff (like Images, MediaFiles, etc.) from existing ontologies, correct?
* I think we should split this blueprint up into (at least) two parts,
1.) the ontology
2.) the implementation
we can work on both parts in parallel, as long as we agree how we define our ontology. does this make sense?
----
kamstrup: @thekorn: You can look at http://
About using existing parsers - I think that the current light/no-
About 1) and 2) - I think it makes sense, but let's keep the full picture on http://
[1]: The OSCAF project on SF maintains all the Nepomuk ontologies
----
thekorn: I've linked this blueprint to a branch where I started a definition of our ontology in extras/
@kamstrup: can you please check if I'm on the right path here?
----
kamstrup, @thekorn: It seems that you are mapping the Python structure from our datamodel directly to the ontology, that was not what I had in mind. There is a well hidden comment on http://
We should not model datamodel.py, it should be the other way around really. datamodel.py models the ontology and then adds some handy Python-stuff. The idea is that an interpretation generally map to a nie:Information
zg:Event a rdfs:Class .
zg:EventInterpr
rdfs:subclassof nie:Information
zg:EventManifes
rdfs:subclassof nie:DataObject
zg:hasIntepretation a rdfs:Property
rdfs:domain zg:Event ;
rdfs:range zg:EventInterpr
rdfs:comment "docstring of this symbol" ;
nrl:
...
zg:hasSubject a rdfs:Property
rdfs:domain zg:Event ;
rdfs:range rdfs:Resource
...
We don't need zg:SubjectInter
I may be able to put up my take on the whole thing later tonight...
----
kamstrup: I just pushed my own first shot to lp:~zeitgeist/zeitgeist/ontology_definition, look at extra/zeitgeist