Nepomuk Contacts Ontology (NCO)

All about contacts. Rough equivalent of the VCARD standard.

@prefix nco: <http://tracker.api.gnome.org/ontology/v3/nco#>

The following classes are defined:

Affiliation, AuthorizationStatus, BbsNumber, CarPhoneNumber, CellPhoneNumber, Contact, ContactGroup, ContactList, ContactListDataObject, ContactMedium, DomesticDeliveryAddress, EmailAddress, FaxNumber, Gender, IMAccount, IMAddress, IMCapability, InternationalDeliveryAddress, IsdnNumber, MessagingNumber, ModemNumber, OrganizationContact, PagerNumber, ParcelDeliveryAddress, PcsNumber, PersonContact, PhoneNumber, PostalAddress, PresenceStatus, Role, VideoTelephoneNumber, VoicePhoneNumber

Overview

Introduction

This is the ontology modelling contacts and postal addresses. It also extends the original nepomuk adding the Instant Messaging account details, because an ‘identity’ in an IM account can be consider also a contact.

Classes

Affiliation

Aggregates three properties defined in RFC2426. Originally all three were attached directly to a person. One person could have only one title and one role within one organization. This class is intended to lift this limitation.

Class hierarchy

RDF Diagram

Properties

Name Type Notes Description
department string Department. The organizational unit within the organization.
org OrganizationContact Name of an organization or a unit within an organization the object represented by a Contact is associated with. An equivalent of the ‘ORG’ property defined in RFC 2426 Sec. 3.5.5
role string
title string

AuthorizationStatus

Predefined instances to indicate the auth status: yes, no, requested

Class hierarchy

RDF Diagram

Predefined instances

nco:AuthorizationStatus has the following predefined instances:

  • nco:predefined-auth-status-no
  • nco:predefined-auth-status-requested
  • nco:predefined-auth-status-yes

BbsNumber

A Bulletin Board System (BBS) phone number. Inspired by the (TYPE=bbsl) parameter of the TEL property as defined in RFC 2426 sec 3.3.1.

Class hierarchy

CarPhoneNumber

A car phone number. Inspired by the (TYPE=car) parameter of the TEL property as defined in RFC 2426 sec 3.3.1.

Class hierarchy

CellPhoneNumber

A cellular phone number. Inspired by the (TYPE=cell) parameter of the TEL property as defined in RFC 2426 sec 3.3.1. Usually a cellular phone can accept voice calls as well as textual messages (SMS), therefore this class has two superclasses.

Class hierarchy

Contact

A Contact. A piece of data that can provide means to identify or communicate with an entity.

Class hierarchy

RDF Diagram

Properties

Name Type Notes Description
belongsToGroup ContactGroup Links a Contact with a ContactGroup it belongs to.
birthDate dateTime Birth date of the object represented by this Contact. An equivalent of the ‘BDAY’ property as defined in RFC 2426 Sec. 3.1.5.
contactLocalUID string Unique ID for the contact in the local storage
contactUID string A value that represents a globally unique identifier corresponding to the individual or resource associated with the Contact. An equivalent of the ‘UID’ property defined in RFC 2426 Sec. 3.6.7
fullname string To specify the formatted text corresponding to the name of the object the Contact represents. An equivalent of the FN property as defined in RFC 2426 Sec. 3.1.1.
hasLocation Resource Geographical location of the contact. Inspired by the ‘GEO’ property specified in RFC 2426 Sec. 3.4.2
key DataObject An encryption key attached to a contact. Inspired by the KEY property defined in RFC 2426 sec. 3.7.2
nickname string A nickname of the Object represented by this Contact. This is an equivalen of the ‘NICKNAME’ property as defined in RFC 2426 Sec. 3.1.3.
note string A note about the object represented by this Contact. An equivalent for the ‘NOTE’ property defined in RFC 2426 Sec. 3.6.2
photo InformationElement Photograph attached to a Contact. The DataObject refered to by this property is usually interpreted as an nfo:Image. Inspired by the PHOTO property defined in RFC 2426 sec. 3.1.4
representative Contact An object that represent an object represented by this Contact. Usually this property is used to link a Contact to an organization, to a contact to the representative of this organization the user directly interacts with. An equivalent for the ‘AGENT’ property defined in RFC 2426 Sec. 3.5.4
sound InformationElement Sound clip attached to a Contact. The DataObject refered to by this property is usually interpreted as an nfo:Audio. Inspired by the SOUND property defined in RFC 2425 sec. 3.6.6.

Predefined instances

nco:Contact has the following predefined instances:

  • nco:default-contact-me

ContactGroup

A group of Contacts. Could be used to express a group in an addressbook or on a contact list of an IM application. One contact can belong to many groups.

Note: This class emits notifications about changes, and can be monitored using TrackerNotifier.

Class hierarchy

RDF Diagram

Properties

Name Type Notes Description
contactGroupName string The name of the contact group. This property was NOT defined in the VCARD standard. See documentation of the ‘ContactGroup’ class for details

ContactList

A contact list, this class represents an addressbook or a contact list of an IM application. Contacts inside a contact list can belong to contact groups.

Note: This class emits notifications about changes, and can be monitored using TrackerNotifier.

Class hierarchy

RDF Diagram

Properties

Name Type Notes Description
containsContact ContactListDataObject A property used to group contacts into contact groups. This property was NOT defined in the VCARD standard. See documentation for the ‘ContactList’ class for details

ContactListDataObject

An entity occuring on a contact list (usually interpreted as an nco:Contact)

Class hierarchy

RDF Diagram

ContactMedium

A superclass for all contact media - ways to contact an entity represented by a Contact instance. Some of the subclasses of this class (the various kinds of telephone numbers and postal addresses) have been inspired by the values of the TYPE parameter of ADR and TEL properties defined in RFC 2426 sec. 3.2.1. and 3.3.1 respectively. Each value is represented by an appropriate subclass with two major exceptions TYPE=home and TYPE=work. They are to be expressed by the roles these contact media are attached to i.e. contact media with TYPE=home parameter are to be attached to the default role (nco:Contact or nco:PersonContact), whereas media with TYPE=work parameter should be attached to nco:Affiliation or nco:OrganizationContact.

Class hierarchy

RDF Diagram

Properties

Name Type Notes Description
contactMediumComment string A comment about the contact medium.

DomesticDeliveryAddress

Domestic Delivery Addresse. Class inspired by TYPE=dom parameter of the ADR property defined in RFC 2426 sec. 3.2.1

Class hierarchy

EmailAddress

An email address. The recommended best practice is to use mailto: uris for instances of this class.

Class hierarchy

RDF Diagram

Properties

Name Type Notes Description
emailAddress string Email address

FaxNumber

A fax number. Inspired by the (TYPE=fax) parameter of the TEL property as defined in RFC 2426 sec 3.3.1.

Class hierarchy

Gender

Gender. Instances of this class may include male and female.

Class hierarchy

RDF Diagram

Predefined instances

nco:Gender has the following predefined instances:

  • nco:gender-female
  • nco:gender-male
  • nco:gender-other

IMAccount

An account in an Instant Messaging system. This refers to IM accounts of the user ‘me’.

Note: This class emits notifications about changes, and can be monitored using TrackerNotifier.

Class hierarchy

RDF Diagram

Properties

Name Type Notes Description
hasIMContact IMAddress Indicates that this Instant Messaging account has the specified Instant Messaging address in the contact list.
imAccountAddress IMAddress Instant Messaging address of this IM account. The user ‘me’ can send and receive messages from this IM address.
imAccountType string Type of the IM account. This may be the name of the service that provides the IM functionality. Examples might include Jabber, ICQ, MSN etc
imDisplayName string The user-visible name of this account. This SHOULD be chosen by the user at account creation time. The account creation user interface is responsible for setting a reasonable default value in the user’s locale; something like ‘Jabber (bob@example.com)’ would be sensible.
imEnabled boolean

IMAddress

An instant messaging address such as xmpp:foo@bar.com.

Note: This class emits notifications about changes, and can be monitored using TrackerNotifier.

Class hierarchy

RDF Diagram

Properties

Name Type Notes Description
imAddressAuthStatusFrom AuthorizationStatus Has the other end authorize to receive information about his changes
imAddressAuthStatusTo AuthorizationStatus Do i authorize this im Account to receive my information
imAvatar DataObject A picture attached to a particular IM address.
imCapability IMCapability Capabilities of an IM Contact, what can we interact with him
imID string Identifier of the IM account. Examples of such identifier might include ICQ UINs, Jabber IDs, Skype names etc.
imNickname string A nickname attached to a particular IM address.
imPresence PresenceStatus
imProtocol string Protocol of the account (‘skype’, ‘gtalk’, ‘icq’, …)
imStatusMessage string A feature common in most IM systems. A message left by the user for all his/her contacts to see.
presenceLastModified dateTime Timestamp of the last change in the presence status

IMCapability

Features of a certain IM connection (depends on the IMAccount implementation used by the Contact)

Class hierarchy

RDF Diagram

Predefined instances

nco:IMCapability has the following predefined instances:

  • nco:im-capability-audio-calls
  • nco:im-capability-dbus-tubes
  • nco:im-capability-file-transfers
  • nco:im-capability-media-calls
  • nco:im-capability-stream-tubes
  • nco:im-capability-text-chat
  • nco:im-capability-upgrading-calls
  • nco:im-capability-video-calls

InternationalDeliveryAddress

International Delivery Addresse. Class inspired by TYPE=intl parameter of the ADR property defined in RFC 2426 sec. 3.2.1

Class hierarchy

IsdnNumber

An ISDN phone number. Inspired by the (TYPE=isdn) parameter of the TEL property as defined in RFC 2426 sec 3.3.1.

Class hierarchy

MessagingNumber

A number that can accept textual messages.

Class hierarchy

ModemNumber

A modem phone number. Inspired by the (TYPE=modem) parameter of the TEL property as defined in RFC 2426 sec 3.3.1.

Class hierarchy

OrganizationContact

A Contact that denotes on Organization.

Class hierarchy

RDF Diagram

Properties

Name Type Notes Description
logo DataObject Logo of a company. Inspired by the LOGO property defined in RFC 2426 sec. 3.5.3

PagerNumber

A pager phone number. Inspired by the (TYPE=pager) parameter of the TEL property as defined in RFC 2426 sec 3.3.1.

Class hierarchy

ParcelDeliveryAddress

Parcel Delivery Addresse. Class inspired by TYPE=parcel parameter of the ADR property defined in RFC 2426 sec. 3.2.1

Class hierarchy

PcsNumber

Personal Communication Services Number. A class inspired by the TYPE=pcs parameter of the TEL property defined in RFC 2426 sec. 3.3.1

Class hierarchy

PersonContact

A Contact that denotes a Person. A person can have multiple Affiliations.

Note: This class emits notifications about changes, and can be monitored using TrackerNotifier.

Class hierarchy

RDF Diagram

Properties

Name Type Notes Description
gender Gender Gender of the given contact.
hasAffiliation Affiliation Links a PersonContact with an Affiliation.
hobby string A hobby associated with a PersonContact. This property can be used to express hobbies and interests.
nameAdditional string Additional given name of an object represented by this contact. See documentation for ‘nameFamily’ property for details.
nameFamily string The family name of an Object represented by this Contact. These applies to people that have more than one given name. The ‘first’ one is considered ‘the’ given name (see nameGiven) property. All additional ones are considered ‘additional’ names. The name inherited from parents is the ‘family name’. e.g. For Dr. John Phil Paul Stevenson Jr. M.D. A.C.P. we have contact with: honorificPrefix: ‘Dr.’, nameGiven: ‘John’, nameAdditional: ‘Phil’, nameAdditional: ‘Paul’, nameFamily: ‘Stevenson’, honorificSuffix: ‘Jr.’, honorificSuffix: ‘M.D.’, honorificSuffix: ‘A.C.P.’. These properties form an equivalent of the compound ‘N’ property as defined in RFC 2426 Sec. 3.1.2
nameGiven string The given name for the object represented by this Contact. See documentation for ‘nameFamily’ property for details.
nameHonorificPrefix string A prefix for the name of the object represented by this Contact. See documentation for the ‘nameFamily’ property for details.
nameHonorificSuffix string A suffix for the name of the Object represented by the given object. See documentation for the ‘nameFamily’ for details.

Predefined instances

nco:PersonContact has the following predefined instances:

  • nco:default-contact-me

PhoneNumber

A telephone number.

Class hierarchy

RDF Diagram

Properties

Name Type Notes Description
phoneNumber string

PostalAddress

A postal address. A class aggregating the various parts of a value for the ‘ADR’ property as defined in RFC 2426 Sec. 3.2.1.

Class hierarchy

RDF Diagram

Properties

Name Type Notes Description
addressLocation Resource The geographical location of a postal address.
country string A part of an address specifying the country. Inspired by the seventh part of the value of the ‘ADR’ property as defined in RFC 2426, sec. 3.2.1
county string Regional division between state and city. Not in RFC 2426 sec 3.2.1. Added for API compatibility
district string Local division inside a city. Not in RFC 2426 sec 3.2.1. Added for API compatibility
extendedAddress string An extended part of an address. This field might be used to express parts of an address that aren’t include in the name of the Contact but also aren’t part of the actual location. Usually the streed address and following fields are enough for a postal letter to arrive. Examples may include (‘University of California Campus building 45’, ‘Sears Tower 34th floor’ etc.) Inspired by the second part of the value of the ‘ADR’ property as defined in RFC 2426, sec. 3.2.1
locality string Locality or City. Inspired by the fourth part of the value of the ‘ADR’ property as defined in RFC 2426, sec. 3.2.1
pobox string Post office box. This is the first part of the value of the ‘ADR’ property as defined in RFC 2426, sec. 3.2.1
postalcode string Postal Code. Inspired by the sixth part of the value of the ‘ADR’ property as defined in RFC 2426, sec. 3.2.1
region string Region. Inspired by the fifth part of the value of the ‘ADR’ property as defined in RFC 2426, sec. 3.2.1
streetAddress string The streed address. Inspired by the third part of the value of the ‘ADR’ property as defined in RFC 2426, sec. 3.2.1

PresenceStatus

Predefined set of status level instances

Class hierarchy

RDF Diagram

Predefined instances

nco:PresenceStatus has the following predefined instances:

  • nco:presence-status-available
  • nco:presence-status-away
  • nco:presence-status-busy
  • nco:presence-status-error
  • nco:presence-status-extended-away
  • nco:presence-status-hidden
  • nco:presence-status-offline
  • nco:presence-status-unknown
  • nco:presence-status-unset

Role

A role played by a contact. Contacts that denote people, can have many roles (e.g. see the hasAffiliation property and Affiliation class). Contacts that denote Organizations or other Agents usually have one role. Each role can introduce additional contact media.

Class hierarchy

RDF Diagram

Properties

Name Type Notes Description
blogUrl Resource A Blog url.
foafUrl Resource The URL of the FOAF file.
hasContactMedium ContactMedium A superProperty for all properties linking a Contact to an instance of a contact medium.
hasEmailAddress EmailAddress An address for electronic mail communication with the object specified by this contact. An equivalent of the ‘EMAIL’ property as defined in RFC 2426 Sec. 3.3.1.
hasIMAddress IMAddress An address for communication using instant messages with the object specified by this contact.
hasPhoneNumber PhoneNumber A number for telephony communication with the object represented by this Contact. An equivalent of the ‘TEL’ property defined in RFC 2426 Sec. 3.3.1
hasPostalAddress PostalAddress The default Address for a Contact. An equivalent of the ‘ADR’ property as defined in RFC 2426 Sec. 3.2.1.
url Resource A uniform resource locator associated with the given role of a Contact. Inspired by the ‘URL’ property defined in RFC 2426 Sec. 3.6.8.
video InformationElement Video avatar of a contact. Note that is an icon/avatar, not a generic ‘present in video’ property
websiteUrl Resource A url of a website.

Predefined instances

nco:Role has the following predefined instances:

  • nco:default-contact-me

VideoTelephoneNumber

A Video telephone number. A class inspired by the TYPE=video parameter of the TEL property defined in RFC 2426 sec. 3.3.1

Class hierarchy

VoicePhoneNumber

A telephone number with voice communication capabilities. Class inspired by the TYPE=voice parameter of the TEL property defined in RFC 2426 sec. 3.3.1

Class hierarchy

Properties

Name Type Notes Description
voiceMail boolean Indicates if the given number accepts voice mail. (e.g. there is an answering machine). Inspired by TYPE=msg parameter of the TEL property defined in RFC 2426 sec. 3.3.1

Additional properties for nie:InformationElement

Properties this ontology defines which can describe nie:InformationElement resources.

Name Type Notes Description
contributor Contact An entity responsible for making contributions to the content of the InformationElement.
creator Contact Creator of a data object, an entity primarily responsible for the creation of the content of the data object.
publisher Contact An entity responsible for making the InformationElement available.

Credits and Copyright

Authors:

  • Antoni Mylka, DFKI, <antoni.mylka@dfki.de>
  • Leo Sauermann, DFKI, <leo.sauermann@dfki.de>
  • Ludger van Elst, DFKI, <elst@dfki.uni-kl.de>
  • Michael Sintek, DFKI, <michael.sintek@dfki.de>
  • Tracker Developers

Editors:

  • Antoni Mylka, DFKI, <antoni.mylka@dfki.de>
  • Tracker developers (translation into turtle)

Contributors:

  • Christiaan Fluit, Aduna, <christiaan.fluit@aduna-software.com>
  • Evgeny ‘phreedom’ Egorochkin, KDE Strigi Developer, <stexx@mail.ru>

Upstream: Upstream version

ChangeLog: Tracker changes

Copyright: © 2007 DFKI © 2009 Nokia. The ontologies are made available under the terms of NEPOMUK software license (FIXME verify)