Personal Information Model (PIMO)
Task-Force Ontologies 02.09.2008
- Latest Version:
- http://www.semanticdesktop.org/ontologies/pimo
- This Version:
- This file refers to the Revision 1.0 of PIMO. Minor changes may be implemented in future revisions. With each new revision, the documentation and all serializations of the ontology will be updated. The URI identifying this version (but not the namespace) is
http://www.semanticdesktop.org/ontologies/2007/11/01/pimo/v1.0/
- Authors:
- Leo Sauermann, DFKI, leo.sauermann@dfki.de
- Ludger van Elst, DFKI, Ludger.van_Elst@dfki.de
- Knud Möller, DERI, knud.moeller@deri.org
- Editor:
- Leo Sauermann, DFKI, leo.sauermann@dfki.de
- Contributors:
- Michael Sintek, DFKI, michael.sintek@dfki.de
- Ontology:
- XML/RDFS Serialization: PIMO
(Data Graph Only)
- XML/RDFS Serialization:PIMO
(Metadata Graph Only)
- TriG Serialization: PIMO
(Graph Set)
Copyright © 2008 OSCAF®
The ontologies are made available under the terms of OSCAF software license
Abstract
The PIMO Ontology can be used to express Personal Information Models of individuals. It is based on RDF and NRL, the NEPOMUK Representational Language and other Semantic Web ontologies. This document describes the principle elements of the language and how to use them.
Status of this document
This section describes the status of this document at the time of its publication. The form used for this status message and document is inspired by the W3C process.
This document is a NEPOMUK recommendation, published by the task force ontologies of the NEPOMUK consortium.
This document is accompanied by a RDFS/NRL ontology, which should be read in parallel to learn more about PIMO.
This document and the PIMO ontology as such is a continuation and improvement of existing work. Other documents may supersede this document.
Parts of this document will be published in other documents, such as scientific publications. This document is based on various other publications by the authors, and is a continuation of existing work. Some formulations from the RDFS primer and SKOS primer documents were reused.
Additional to this document, a PIMO FAQ is maintained in the public NEPOMUK wiki.
The current status is that the NEPOMUK consortium reviews.
This is a draft document and may be updated, replaced or obsoleted by other documents at any time. It is inappropriate to cite this document as other than work in progress.
Recommendation in PDF
The rest of the recommendation is published as PDF file: pimo_v1.0.pdf
Ontology Classes Description
Agent
pimo:ClassOrThing, pimo:ClassOrThingOrPropertyOrAssociation, rdfs:Resource, pimo:Thing |
pimo:Organization, pimo:Person, pimo:PersonGroup |
pimo:createdPimo, pimo:isOrganizationMemberOf |
pimo:creator, pimo:hasOrganizationMember |
Description | An agent (eg. person, group, software or physical artifact). The Agent class is the class of agents; things that do stuff. A well known sub-class is Person, representing people. Other kinds of agents include Organization and Group.
(inspired by FOAF).
Agent is not a subclass of NAO:Party. |
Association
pimo:ClassOrThingOrPropertyOrAssociation, rdfs:Resource |
tmo:AbilityCarrierInvolvement, tmo:AssociationDependency, tmo:Attachment, pimo:Attendee, tmo:Interdependence, pimo:OrganizationMember, tmo:PersonInvolvement, pimo:PersonRole, tmo:PredecessorDependency, tmo:PredecessorSuccessorDependency, tmo:SimilarityDependence, tmo:SuccessorDependency, tmo:SuperSubTaskDependency, tmo:TaskDependency, tmo:UndirectedDependency |
pimo:associationEffectual, pimo:associationMember |
-- |
Description | An association between two or more pimo-things. This is used to model n-ary relations and metadata about relations. For example, the asociation of a person being organizational member is only effectual within a period of time (after the person joined the organization and before the person left the organization). There can be multiple periods of time when associations are valid. |
Attendee
BlogPost
Building
City
ClassOrThing
pimo:ClassOrThingOrPropertyOrAssociation, rdfs:Resource |
pimo:Agent, pimo:BlogPost, pimo:Building, pimo:City, pimo:Collection, pimo:Contract, pimo:Country, pimo:Document, pimo:Event, pimo:Locatable, pimo:Location, pimo:LogicalMediaType, pimo:Meeting, pimo:Note, pimo:Organization, pimo:Person, pimo:PersonGroup, pimo:ProcessConcept, pimo:Project, pimo:Room, pimo:SocialEvent, pimo:State, pimo:Task, tmo:Task, tmo:TaskContainer, pimo:Thing, pimo:Topic |
pimo:hasFolder, pimo:wikiText |
-- |
Description | Superclass of class and thing. To add properties to both class and thing. |
tmo:TMO\_Instance\_..., tmo:TMO\_Instance\_..., tmo:TMO\_Instance\_TaskContainer\_inbox, tmo:TMO\_Instance\_..., tmo:TMO\_Instance\_... |
ClassOrThingOrPropertyOrAssociation
rdfs:Resource |
tmo:AbilityCarrierInvolvement, pimo:Agent, pimo:Association, tmo:AssociationDependency, tmo:Attachment, pimo:Attendee, pimo:BlogPost, pimo:Building, pimo:City, pimo:ClassOrThing, pimo:Collection, pimo:Contract, pimo:Country, pimo:Document, pimo:Event, tmo:Interdependence, pimo:Locatable, pimo:Location, pimo:LogicalMediaType, pimo:Meeting, pimo:Note, pimo:Organization, pimo:OrganizationMember, pimo:Person, pimo:PersonGroup, tmo:PersonInvolvement, pimo:PersonRole, tmo:PredecessorDependency, tmo:PredecessorSuccessorDependency, pimo:ProcessConcept, pimo:Project, pimo:Room, tmo:SimilarityDependence, pimo:SocialEvent, pimo:State, tmo:SuccessorDependency, tmo:SuperSubTaskDependency, pimo:Task, tmo:Task, tmo:TaskContainer, tmo:TaskDependency, pimo:Thing, pimo:Topic, tmo:UndirectedDependency |
pimo:isDefinedBy |
-- |
Description | Superclass of resources that can be generated by the user. |
tmo:TMO\_Instance\_..., tmo:TMO\_Instance\_..., tmo:TMO\_Instance\_TaskContainer\_inbox, tmo:TMO\_Instance\_..., tmo:TMO\_Instance\_... |
ClassRole
rdfs:Resource |
-- |
-- |
pimo:classRole |
Description | Roles of classes in PIMO: concrete instances are Abstract and Concrete. |
pimo:AbstractClass, pimo:ConcreteClass |
Collection
pimo:ClassOrThing, pimo:ClassOrThingOrPropertyOrAssociation, rdfs:Resource, pimo:Thing |
pimo:PersonGroup, tmo:TaskContainer |
-- |
-- |
Description | A collection of Things, independent of their class. The items in the collection share a common property. Which property may be modelled explicitly or mentioned in the description of the Collection. The requirement of explicit modelling the semantic meaning of the collection is not mandatory, as collections can be created ad-hoc. Implizit modelling can be applied by the system by learning the properties. For example, a Collection of "Coworkers" could be defined as that all elements must be of class "Person" and have an attribute "work for the same Organization as the user". Further standards can be used to model these attributes. |
tmo:TMO\_Instance\_..., tmo:TMO\_Instance\_..., tmo:TMO\_Instance\_TaskContainer\_inbox, tmo:TMO\_Instance\_..., tmo:TMO\_Instance\_... |
Contract
Country
Document
pimo:ClassOrThing, pimo:ClassOrThingOrPropertyOrAssociation, pimo:LogicalMediaType, rdfs:Resource, pimo:Thing |
pimo:BlogPost, pimo:Contract, pimo:Note |
-- |
-- |
Description | A generic document. This is a placeholder class for document-management domain ontologies to subclass. Create more and specified subclasses of pimo:Document for the document types in your domain. Documents are typically instances of both NFO:Document (modeling the information element used to store the document) and a LogicalMediaType subclass. Two examples are given for what to model here: a contract for a business domain, a BlogPost for an informal domain. |
Event
Locatable
Location
pimo:ClassOrThing, pimo:ClassOrThingOrPropertyOrAssociation, rdfs:Resource, geo:SpatialThing, pimo:Thing |
pimo:Building, pimo:City, pimo:Country, pimo:Room, pimo:State |
pimo:containsLocation, pimo:isLocationOf, pimo:locatedWithin |
pimo:containsLocation, pimo:hasLocation, pimo:locatedWithin |
Description | A physical location. Subclasses are modeled for the most common locations humans work in: Building, City, Country, Room, State. This selection is intended to be applicable cross-cultural and cross-domain. City is a prototype that can be further refined for villages, etc. Subclass of a WGS84:SpatialThing, can have geo-coordinates. |
LogicalMediaType
pimo:ClassOrThing, pimo:ClassOrThingOrPropertyOrAssociation, rdfs:Resource, pimo:Thing |
pimo:BlogPost, pimo:Contract, pimo:Document, pimo:Note |
-- |
-- |
Description | Logical media types represent the content aspect of information elements e.g. a flyer, a contract, a promotional video, a todo list. The user can create new logical media types dependend on their domain: a salesman will need MarketingFlyer, Offer, Invoice while a student might create Report, Thesis and Homework. This is independent from the information element and data object (NIE/NFO) in which the media type will be stored. The same contract can be stored in a PDF file, a text file, or an HTML website.
The groundingOccurrence of a LogicalMediaType is the Document that stores the content. |
Meeting
Note
Organization
OrganizationMember
Person
pimo:Agent, pimo:ClassOrThing, pimo:ClassOrThingOrPropertyOrAssociation, pimo:Locatable, rdfs:Resource, pimo:Thing |
-- |
pimo:attends, pimo:jabberId |
pimo:attendee, tmo:involvedPerson, pimo:roleHolder, tmo:transmissionFrom, tmo:transmissionTo |
Description | Represents a person. Either living, dead, real or imaginary. (Definition from foaf:Person) |
PersonGroup
PersonRole
PersonalInformationModel
nrl:Data, nrl:Graph, nrl:InstanceBase, nrl:KnowledgeBase, nrl:Ontology, rdfs:Resource, nrl:Schema |
-- |
pimo:creator |
pimo:createdPimo, pimo:isDefinedBy |
Description | A Personal Information Model (PIMO) of a user. Represents the sum of all information from the personal knowledge workspace (in literature also referred to as Personal Space of Information (PSI)) which a user needs for Personal Information Management (PIM). |
ProcessConcept
pimo:ClassOrThing, pimo:ClassOrThingOrPropertyOrAssociation, rdfs:Resource, pimo:Thing |
pimo:Event, pimo:Meeting, pimo:Project, pimo:SocialEvent, pimo:Task, tmo:Task |
pimo:dtend, pimo:dtstart |
-- |
Description | Concepts that relate to a series of actions or operations conducing to an end. Abstract class. Defines optional start and endtime properties, names taken from NCAL. |
Project
Room
pimo:ClassOrThing, pimo:ClassOrThingOrPropertyOrAssociation, pimo:Location, rdfs:Resource, geo:SpatialThing, pimo:Thing |
-- |
-- |
-- |
Description | A properPart of a Building which is separated from the exterior of the Building and/or other Rooms of the Building by walls. Some Rooms may have a specific purpose, e.g. sleeping, bathing, cooking, entertainment, etc. (Definition from SUMO). |
SocialEvent
State
Task
Thing
pimo:ClassOrThing, pimo:ClassOrThingOrPropertyOrAssociation, rdfs:Resource |
pimo:Agent, pimo:BlogPost, pimo:Building, pimo:City, pimo:Collection, pimo:Contract, pimo:Country, pimo:Document, pimo:Event, pimo:Locatable, pimo:Location, pimo:LogicalMediaType, pimo:Meeting, pimo:Note, pimo:Organization, pimo:Person, pimo:PersonGroup, pimo:ProcessConcept, pimo:Project, pimo:Room, pimo:SocialEvent, pimo:State, pimo:Task, tmo:Task, tmo:TaskContainer, pimo:Topic |
pimo:datatypeProperty, pimo:groundingOccurrence, pimo:hasDeprecatedRepresentation, pimo:hasOtherRepresentation, pimo:hasPart, pimo:hasTopic, pimo:isRelated, pimo:isTopicOf, pimo:objectProperty, pimo:occurrence, pimo:partOf, pimo:referencingOccurrence |
pimo:associationMember, pimo:hasPart, pimo:hasTopic, pimo:isLocationOf, pimo:isRelated, pimo:isTopicOf, pimo:objectProperty, pimo:partOf, pimo:roleContext |
Description | Entities that are in the direct attention of the user when doing knowledge work. |
tmo:TMO\_Instance\_..., tmo:TMO\_Instance\_..., tmo:TMO\_Instance\_TaskContainer\_inbox, tmo:TMO\_Instance\_..., tmo:TMO\_Instance\_... |
Topic
Ontology Properties Description
associationEffectual
rdf:Property, rdfs:Resource |
pimo:Association |
rdfs:Resource |
-- |
-- |
Description | During which time is this association effective? If omitted, the association is always effective. Start time and end-time may be left open, an open start time indicates that the fact is unknown, an open end-time indicates that the end-date is either unknown or the association has not ended.
There can be multiple effectual periods. |
associationMember
rdf:Property, rdfs:Resource |
pimo:Association |
pimo:Thing |
-- |
tmo:abilityCarrier, tmo:abilityCarrierTask, tmo:attachmentReference, tmo:attachmentTask, pimo:attendingMeeting, tmo:dependencyMemberA, tmo:dependencyMemberB, tmo:involvedPerson, tmo:involvedPersonTask, pimo:organization, pimo:roleContext, pimo:roleHolder |
Description | An super-property of all roles that an entity can have in an association. Member is the generic role of a thing in an association. Association subclasses should define sub-properties of this property. Associations can have Things as |
attendee
attendingMeeting
attends
broader
rdf:Property, rdfs:Resource, nrl:TransitiveProperty |
-- |
-- |
-- |
-- |
Description | |
classRole
rdf:Property, rdfs:Resource |
-- |
pimo:ClassRole |
1 |
-- |
-- |
Description | Annotating abstract and concrete classes. Implementations may offer the feature to hide abstract classes. By default, classes are concrete. Classes can be declared abstract by setting their classRole to abstract. Instances should not have an abstract class as type (if not inferred). |
containsLocation
createdPimo
creator
rdf:Property, rdfs:Resource |
pimo:PersonalInformationModel |
pimo:Agent |
pimo:createdPimo |
1 |
1 |
nao:annotation, x:creator, nao:creator |
-- |
Description | The creator of the Personal Information Model. A subproperty of NAO:creator. The human being whose mental models are represented in the PIMO. Range is an Agent. |
datatypeProperty
rdf:Property, rdfs:Resource |
pimo:Thing |
-- |
-- |
geo:alt, pimo:dtend, pimo:dtstart, tmo:dueDate, pimo:duration, geo:lat, geo:long, pimo:taskDueTime |
Description | The object of statements is a literal, resource, or datatype value describing the subject thing. Users should be able to edit statements defined with this property. Abstract super-property. |
dtend
dtstart
duration
groundingForDeletedThing
rdf:Property, rdfs:Resource |
-- |
rdfs:Resource |
-- |
-- |
Description | This NIE Information Element was used as a grounding occurrence for the object Thing. The Thing was then deleted by the user manually, indicating that this Information Element should not cause an automatic creation of another Thing in the future. The object resource has no range to indicate that it was completely removed from the user's PIMO, including the rdf:type statement. Relevant for data alignment and enrichment algorithms. |
groundingOccurrence
nrl:InverseFunctionalProperty, rdf:Property, rdfs:Resource |
pimo:Thing |
nie:InformationElement |
pimo:occurrence |
-- |
Description | The subject Thing represents the entity that is described in the object InformationElement. The subject Thing is the canonical, unique representation in the personal information model for the entity described in the object. Multiple InformationElements can be the grounding occurrence of the same Thing, one InformationElement can be the groundingOccurrence of only one Thing. |
hasDeprecatedRepresentation
rdf:Property, rdfs:Resource |
pimo:Thing |
rdfs:Resource |
-- |
-- |
Description | The subject Thing was represented previously using the object resource. This indicates that the object resource was a duplicate representation of the subject and merged with the subject. Implementations can use this property to resolve dangling links in distributed system. When encountering resources that are deprecated representations of a Thing, they should be replaced with the Thing. The range is not declared as we assume all knowledge about the object is gone, including its rdf:type. |
hasFolder
rdf:Property, rdfs:Resource |
pimo:ClassOrThing |
nfo:Folder |
-- |
-- |
Description | Folders can be used to store information elements related to a Thing or Class. This property can be used to connect a Class or Thing to existing Folders. Implementations can suggest annotations for documents stored inside these folders or suggest the folder for new documents related to the Thing or Class. |
hasLocation
hasOrganizationMember
hasOtherConceptualization
rdf:Property, rdfs:Resource, nrl:TransitiveProperty |
rdfs:Class |
rdfs:Class |
pimo:occurrence, rdfs:subClassOf |
-- |
Description | Short: hasOtherRepresentation points from a Class in your PIMO to a class in a domain ontology that represents the same class. Longer: hasOtherConceptualization means that a class of real world objects O represented by a concept C1 in the ontology has additional conceptualizations (as classes C2-Cn in different domain ontologies).
This means: IF (O\_i is conceptialized by C\_j in Ontology\_k) AND (O\_l is conceptialized by C\_m in Ontology\_n) THEN (O\_i and O\_l is the same set of objects).
hasOtherConceptualization is an transitive relation, but not equivalent (not symmetric nor reflexive). |
hasOtherRepresentation
rdf:Property, rdfs:Resource, nrl:TransitiveProperty |
pimo:Thing |
rdfs:Resource |
pimo:occurrence |
-- |
Description | hasOtherRepresentation points from a Thing in your PIMO to a thing in an ontology that represents the same real world thing.
This means that the real world object O represented by an instance I1 has additional representations (as instances I2-In of different conceptualizations).
This means: IF (I\_i represents O\_j in Ontology\_k) AND (I\_m represents O\_n in Ontology\_o) THEN (O\_n and O\_j are the same object).
hasOtherRepresentation is a transitive relation, but not equivalent (not symmetric nor reflexive).
For example, the URI of a foaf:Person representation published on the web is a hasOtherRepresentation for the person. This property is inverse functional, two Things from two information models having the same hasOtherRepresentation are considered to be representations of the same entity from the real world.
TODO: rename this to subjectIndicatorRef to resemble topic maps ideas? |
hasOtherSlot
rdf:Property, rdfs:Resource, nrl:TransitiveProperty |
rdf:Property |
rdf:Property, rdfs:Resource |
rdfs:subPropertyOf |
-- |
Description | hasOtherSlot points from a clot in your PIMO to a slot in a domain ontology that represents the same connection idea. |
hasPart
hasTopic
rdf:Property, rdfs:Resource |
pimo:Thing |
pimo:Thing |
pimo:isTopicOf |
nao:annotation, nao:hasTopic, nao:isRelated, pimo:objectProperty |
-- |
Description | The subject's contents describes the object. Or the subject can be seen as belonging to the topic described by the object. Similar semantics as skos:subject. |
isDefinedBy
isLocationOf
isOrganizationMemberOf
isRelated
isTopicOf
isWriteable
rdf:Property, rdfs:Resource |
-- |
rdfs:Literal |
-- |
-- |
Description | Defines if this information model can be modified by the user of the system. This is usually false for imported ontologies and true for the user's own PersonalInformationModel. |
jabberId
rdf:Property, rdfs:Resource |
pimo:Person |
rdfs:Literal |
1 |
-- |
-- |
Description | Jabber-ID of the user. Used to communicate amongst peers in the social scenario of the semantic desktop. Use the xmpp node identifier as specified by RFC3920, see http://www.xmpp.org/specs/rfc3920.html#addressing-node. The format is the same as e-mail addresses: username@hostname. |
locatedWithin
narrower
rdf:Property, rdfs:Resource, nrl:TransitiveProperty |
-- |
-- |
-- |
-- |
Description | |
objectProperty
rdf:Property, rdfs:Resource |
pimo:Thing |
pimo:Thing |
-- |
pimo:attendee, pimo:attends, pimo:containsLocation, tmo:containsTask, pimo:hasLocation, pimo:hasOrganizationMember, pimo:hasPart, pimo:hasTopic, pimo:isLocationOf, pimo:isOrganizationMemberOf, pimo:isRelated, pimo:isTopicOf, pimo:locatedWithin, pimo:partOf, tmo:subTask, pimo:subTopic, tmo:superTask, pimo:superTopic |
Description | The object of statements is another Thing. Users should be able to edit statements defined with this property. Abstract super-property. |
occurrence
rdf:Property, rdfs:Resource |
pimo:Thing |
rdfs:Resource |
-- |
pimo:groundingOccurrence, pimo:hasOtherConceptualization, pimo:hasOtherRepresentation |
Description | The subject Thing is represented also in the object resource. All facts added to the object resource are valid for the subject thing. The subject is the canonical represtation of the object. In particual, this implies when (?object ?p ?v) -> (?subject ?p ?v) and (?s ?p ?object) -> (?s ?p ?subject). The class of the object is not defined, but should be compatible with the class of the subject. Occurrence relations can be inferred through same identifiers or referencingOccurrence relations. |
organization
partOf
referencingOccurrence
rdf:Property, rdfs:Resource |
pimo:Thing |
nie:InformationElement |
-- |
-- |
Description | The subject thing is described in the object document. Ideally, the document is public and its primary topic is the thing. Although this property is not inverse-functional (because the Occurrences are not canonical elements of a formal ontology) this property allows to use public documents, such as wikipedia pages, as indicators identity. The more formal hasOtherRepresentation property can be used when an ontology about the subject exists. |
roleContext
roleHolder
subTopic
superTopic
taskDueTime
wikiText
rdf:Property, rdfs:Resource |
pimo:ClassOrThing |
rdfs:Literal |
1 |
-- |
-- |
Description | A wiki-like free-text description of a Thing or a Class. The text can be formatted using a limited set of HTML elements and can contain links to other Things. The format is described in detail in the WIF specification (http://semanticweb.org/wiki/Wiki\_Interchange\_Format). |