Abstract

The annotation ontology provides vocabulary that enables users to attach custom descriptions, identifiers, tags and ratings to resources on their desktop. Via other properties, the user is also able to make generic relationships between related resources explicit. Some relationships between resources are too general to be included at the domain ontology level. Instead, these properties are also defined in the annotation ontology. Given the high-level status of this ontology, these propreties can be used to link any related resources on the user's desktop, as well as provide custom human-readable textual annotations.

Status of this document

This document arose from the work of the Task-Force ontologies within the [NEPOMUK Project]. It presents the specifications for the first version of the NAO vocabulary. The ontology is still being tested, which means that the ontology and this specification document are prone to change. The document itself is pending a review by the general NEPOMUK consortium, upon which it might be promoted from a draft to an official form. Subsequent versions of NAO might mean that the specification documents of the later versions render this document obsolete, with respect to the version of NAO in use, but not with respect to this version.

Ontology Visualisation

Change Log

Contents


NAO Vocabulary Specification

This document presents the specifications for the NEPOMUK Annotation Ontology, a vocabulary for resource annotation that is based on the NEPOMUK Representational Language [NRL SPECIFICATION]. The ontology is available for general and individual use and is independent of the domain for which it was initially designed for, namely the [NEPOMUK Social Semantic Desktop] initiative. The NEPOMUK in the ontology name (NAO) has been retained only for historic purposes. 

The document is structured as follows. Section 1 provides an insight of what we consider to be annotation within the context of NRL and the social semantic desktop. Section 2 introduces vocabulary for generic annotation, i.e. general annotation of resources, with a particular emphasis on how conventional tagging can also be represented using this ontology. Section 3 introduces vocabulary that supports annotation for graphs, or graph metadata. Given the important role that named graphs have in NRL, annotation for graphs is also consideted part of this ontology. Finallya summary of all the NAO vocabulary elements is given in [ Appendix A].

1. Introduction

The meaning of the term annotation is highly contextual. Depending on the context, anything or nothing can be considered as annotation within a data set (or named graph).  On the social semantic desktop, the average user is frequently seen creating representations of objects on their desktop, while the more experienced user is also frequently creating representations of concepts and their relationships. Sharing and creating relationships between all these resources across multiple desktops is what makes a user's desktop social and semantic. Within this context, we consider annotation to be anything that goes further than creating resources and defining their elementary relationships. A user can create an instance of a 'Person', and provide values for all the elementary properties that an instance of 'Person' can have. The user can then go one step ahead and annotate the resources with more information, of a textual (e.g. custom human-readable descriptions) or non-textual (e.g. links to related resources) nature. In a typical scenario there may be a number of domain-centric properties for the classes 'Person' (e.g. name, address, knows etc.) and 'Document' (e.g. author, title etc.). Via vocabulary in the annotation ontology the user can provide personalized, user-friendly labels and descriptions for a resource, as well as other things like tags and ratings. Generic relationships may exist between resources across multiple domains, and making these relationships explicit would be of great benefit for the user. For example, a user wants to state that a 'Document' is about some instance of 'Person'. This relationship is too general to be applied at the domain ontology level, since such a relationship may exist between other concepts in other domains e.g. between 'Conference' and 'Technology'. Vocabulary that is able to express these generic relationships are therefore provided by the annotation ontology. Although this information is optional and does not reflect the elementary nature of a 'Document', it contributes to improved data unification and eases user search. 

We model annotation via properties, rather than classes, since we believe that annotation is a relationship and not a concept. This was also the idea for the rdfs:label and rdfs:comment properties in the RDFS vocabulary, which we consider as textual annotation. These properties are in fact included in our specifications, especially since in the context of this ontology and that of the social semantic desktop they have a slightly different meaning. Generic annotation is represented at its highest level with the abstract nao:annotation property. Although it is not meant to be used, it is the superproperty of many other annotation properties in this ontology. Vocabulary for generic annotation is introduced in Section 2.

Graph Metadata is also a form of annotation, where instead of annotating general resources, one annotates Named Graphs. Therefore graph metadata properties can be modelled under the general annotation property nao:annotation, where the resource being annotated is a graph role (instance of nrl:Data) and the annotations are provided via the graph metadata properties. The major difference is that while generic annotation can be stored within any graph the user is working with (e.g. the graph where the annotated resource is defined), metadata about a graph should always be stored outside that graph, in a separate special named graph that is aptly represented in NRL by [nrl:GraphMetadata]. Graph Metadat Vocabulary is introduced in Section 3.

2. Generic Annotation Vocabulary

In this section we introduce vocabulary that serves generic annotation, i.e., vocabulary that models general, common relationships between things. Section 2.1 presents the basic annotation vocabulary. All other vocabulary in the annotation ontology will require or derive from these basic terms. Section 2.2 introduces richer annotation relationships that derive from the basic annotation properties presented in Section 2.1.  In Section 2.3 we discuss how we also model tagging as a form of annotation and finally in Section 2.4 we present a concise example of how the vocabulary presented in this section can be employed.

2.1. Basic Annotation

The most basic annotation property is nao:annotation, which simply defines a descriptive property for a resource. Given that an annotation's nature can be textual or non-textual (i.e. semantic annotation pointing to a resource), the range of this abstract high-level property is left undefined. Specific subproperties can have richer semantics (e.g. symmetric properties), but in order to abstract over all annotation properties, no such semantics are defined for nao:annotation

rdfs:label and rdfs:comment are also (indirectly) considered as part of our annotation ontology, as they provide textual annotations for a resource. Although we do not define them as being subproperties of nao:annotation, we also include them in these specifications, in order to define their meaning in the context of the social semantic desktop. 

These and other annotation properties and required classes are specified below. The annotation properties defined in this section are also illustrated in Fig.1.

basic
Figure1. Basic annotation properties

2.1.1. nao:annotation

An abstract property representing a general annotation for a resource. Given its abstract nature and its undefined range, this property is not meant to be used directly.

2.1.2. rdfs:label

We consider this RDFS property as part of our annotation ontology, since it provides a textual annotation which relates a resource to a literal. In the context of the social semantic desktop this property provides technical labels for a resource, i.e, a non-user customizable label that is not meant to be seen by the user. User-customizable labels are possible via the use of our own sub-properties nao:prefLabel and nao:altLabel.

2.1.3. rdfs:comment

This RDFS property is also considered as part of our annotation ontology, since it provides a textual annotation which relates a resource to a literal. In the context of the social semantic desktop, this property provides technical descriptions for a resource. Non-technical, custom user descriptions can be provided  by our own subproperty, nao:description.

2.1.4. nao:hasSymbol

A resource can be annotated with an instance of nao:Symbol via subproperties of this abstract property, nao:prefSymbol and nao:altSymbol.

2.1.5. nao:rating

Users can rate a resource via subproperties of this property, which is not meant to be used directly. Specific subproperties can extend it and be used to rate resources, e.g. an audio file. The range of this property is undefined. Numeric ratings can be assigned via nao:numericRating (maximum cardinality 1). If other kinds of ratings are needed, this property can arbitrarily and easily extend be extended (e.g. with a property that has as range a class for which a number of instances can be enumerated).

2.1.6. nao:identifier

This property enables further types of identifiers for a resource, apart from its standard URI. The property itself is not meant to be directly used since it is an abstract property and does not have a defined range.  The annotation ontology provides a  subproperty for this property,  nao:personalIdentifier.  Although this property is not applied any form of restriction, all its subproperties, including nao:personalIdentifier, are meant to be inverse functional.

2.1.7. nao:Symbol

This class represents a symbol, which can be an icon or an image for example, that is used to annotate a resource. Resources can be annotated with a standard graphical symbol via the subproperties of nao:hasSymbolnao:prefSymbol and nao:altSymbol. Any such graphical symbol that is in this way used to annotate a resource automatically becomes an instance of this class.

2.1.8. nao:Tag

This class is useful for modelling conventional tagging practices. The user can tag resources in conventional ways, automatically creating an instance of this tag, which is then related to the annotated resource via the nao:hasTag property. For more on tagging as annotation see Section 2.3.

2.1.9. nao:Party

Annotations are provided by an individual or a group of individuals. Some annotations are contained in a separate named graph whose role is to provide annotations about another named graph (e.g. graph metadata for a graph, See Graph Metadata Vocabulary). In such cases it is useful to state the contributor(s) for the set of annotations. This class is provided to represent a party who created such a set of annotations, where a party can be either one individual or a group of individuals (e.g. an organization). Once a user or an group provides these annotations, they automatically become an instance of this class. 

2.2. More Specific Annotation

The Annotation Ontology provides more specific vocabulary that extends the description power of the basic annotation vocabulary presented in the previous section.  Vocabulary in this category consists solely of properties which extend properties given in Section 2.1. An overview of these properties is illustrated in Fig.2. The specifications for this vocabulary are given below. 

lower level properties
Figure 2. More specific annotation properties

2.2.1. nao:isRelated

This property defines a symmetric relation between any two resources. A subproperty of nao:annotation, one can use this property to annotate a resource with pointers to related resources. For example, a blog entry for an event may be linked to an image of the same event via this property. In order for this property to be used legally, the relationship must be symmetric. 

2.2.2. nao:hasTopic

A subproperty of nao:isRelated, this property does not inherit its symmetric nature. It further defines the relationship given by its superproperty, stating that a resource is about some concept. Instead, this vocabulary provides an inverse property for this property, nao:isTopicOf.

2.2.3. nao:isTopicOf

This property is also a subproperty of nao:isRelated and is the inverse property of nao:hasTopic. It is used to create a relationship between two resources, where the subject resource is said to be the topic of the object. It is not a symmetric property.

2.2.4. nao:hasTag

Used to model conventional tagging practices, this property annotates a resource with a tag, represented by an instance of nao:Tag. For more on tagging as annotation see Section 2.3.

2.2.5. nao:isTagFor

This property is the inverse of nao:hasTag. It links an instance of nao:Tag to resources that are tagged with it. For more on tagging as annotation see Section 2.3.

2.2.6. nao:prefLabel

This property is one of two provided by this ontology to handle custom user labels. Alternative labels can be provided via nao:altLabel. Both properties are subproperties of rdfs:label and expect a literal as value. Given that the domain of this property is rdfs:Resource, it is not applied any cardinality restrictions. Where required, such properties can be defined by extending this property via appropriate subproperties. However, it is intended that at most one value per (natural) language is defined via this property and that at most one literal without any defined language exists. Other usages, although legal, are considered invalid NAO data and are strongly discouraged as they may generate errors.

2.2.7. nao:altLabel

Via this property a user can provide further custom labels for resources on their desktop, alongside the required, unique value given by nao:prefLabel. Both properties are subproperties of rdfs:label and expect a literal as value.

2.2.8. nao:pluralPrefLabel

This property supplements nao:prefLabel to provide plural forms for custom user resource labels. In particular it is useful to refer to multiple instances of a calss. It is also a subproperty of rdfs:label and expects a literal as value. No cardinality restrictions are imposed.

2.2.9. nao:prefSymbol

A subproperty of nao:hasSymbol, this property specifies a preferred symbol for resource annotation, given by an instance of nao:Symbol. Resources can be annotated with alternative symbols via nao:altSymbol.

2.2.10. nao:altSymbol

This property is used to annotate a resource with alternative symbols, given by instances of nao:Symbol, alongside the preferred symbol that is linked via nao:prefSymbol. It is a subproperty of nao:hasSymbol.

2.2.11. nao:description

A subproperty of rdfs:comment, the purpose of this property is similar to nao:prefLabel and nao:altLabel. However this property is also a subproperty of nao:annotation. Whereas in the context of the social semantic desktop the textual annotation provided via rdfs:comment is meant for technical users, the textual annotation here is aimed at average users and is meant to be used to define custom descriptions of resources on their desktop. The maximum cardinality is 1, and the property expects a literal value.

2.2.12. nao:personalIdentifier

This property should be used to provide alternative values that identify a resource alongside the default URI. A subproperty of the abstract nao:identifier, the range of this property is a literal. The property is inverse functional, which effectively means that personal identifiers for resources should be unique, and two resources cannot have the same personal identifier.

2.2.13. nao:numericRating

This property extends nao:rating, to restrict the range to an XSD float datatype. Values must be between '1' and '10' whereas a value of '0' is interpreted as not set. Furthermore, resources can only be given at most one numeric rating, thus the maximum cardinality is 1. 

2.2.14. nao:creator

Via this property the creator/s of a resource can be specified graph. The creator can be a an individual or a group as represented by an instance of the nao:Party class. 

2.2.15. nao:contributor

This property refers to additional contributors for a resource and is otherwise similar to nao:creator.

2.2.16. nao:modified

Represents the modification date/time  [xsd:dateTime] for a resource. More of an abstract class, its subproperties nao:created and nao:lastModified prove to be more useful.

2.2.17. nao:created

Via this property the creation date/time for a resource can be defined. A subproperty of nao:modified, the expected value is of type [xsd:dateTime] and a typical value is of the form "2007-08-15T23:59:55.329Z". The maximum cardinality for this property is set to 1.

2.2.18. nao:lastModified

This property defines the date/time when a resource was most recently modified. It is a subproperty of nao:modified. The maximum cardinality for this property is also set to 1.

2.2.19. nao:score

This property refers to an authorative score for an item (resource), valued between [0, 1]. A score is a weight of a resource compared to all other resources, and it is computed via a mathematical combination of score parameters e.g. nao:numericRating,  nao:lastModified as well external parameters. For this purpose, parameters that go into the score need to be marked as being sub-properties of nao:scoreParameter. Allowed values for this property are of the [xsd:float] datatype.

2.2.20. nao:scoreParameter

Multiple score parameters (e.g. nao:numericRating,  nao:lastModified) can be input to a mathematical algorithm that computes an overall nao:score for a resource. The score parameters in question need to be defined as a subproperty of this property - thus effectively nao:scoreParamter is a marker property. Ranking algorithms will compute the values of multiple subproperties of scoreParameter and then compute the nao:score based on a mathematical combination of score parameters. The allowed range is a float number. The exact algorithm is open to implementations. Allowed values for this property are of the [xsd:float] datatype.

2.2.21. nao:FreeDesktopIcon

This class represents a desktop icon as defined in the FreeDesktop Icon Naming standard and it is a subclass of nao:Symbol. nao:iconName is a required property referring to the name of the icon.

2.2.22. nao:iconName

Values of this property contain the FreeDesktop standard icon name (literal) as defined in the FreeDesktop Naming Specification. The use of the property is required for every instance of nao:FreeDesktopIcon since its minimum cardinality is set to 1.

2.2.23. nao:hasSubResource

This property defines a super-sub relationship between two instances of rdfs:Resource - whereby one resource can be treated as dependent on another. Thus if a resource is deleted or removed from a system, all its subresources can also be automatically removed, unless they have other superresources still existant on the system. This property is the inverse property of nao:hasSuperResource. This property is transitive in nature.

2.2.24. nao:hasSuperResource

This property is the inverse of nao:hasSubResource. It defines a dependency relationship between two resources such that, when the superresource is removed from a system, the defined subresources should also be removed unless they are also subresources of other remaining superresources. This property is transitive in nature.

2.3. Tagging as Annotation

Given tagging is a popular Web 2.0 concept which we want to adopt and retain in our semantic approach to data modelling, in this section we provide an example of how semantic tagging can be performed using our annotation ontology. Fig.3 shows how nao:Tag can be used as a special case of the nao:annotation relation given in Fig.2. The unique default name given by the user when creating a tag is defined by nao:prefLabel. Other custom names for the tag can be defined using nao:altLabel while a custom user description can be provided via nao:description. A custom default icon or image can be attached to the tag via nao:prefSymbol, making the icon in question an instance of nao:Symbol. This icon, like any other resource, can also be annotated. The newly created tag is then linked to the resource being tagged (or annotated) via nao:hasTag. An automatic inverse relationship is created to link the new tag with the resource via nao:isTagFor.

tag class
Figure 3. Modelling conventional tagging

2.4. Generic Annotation Example

A person wants to annotate a file of type image/photo on their personal desktop. The photo depicts a friend, Claudia, drinking coffee in the SAP offices. The user states that the photo 'is related' (via nao:isRelated - a symmetric property) to the following resources:

  • [1] a resource representing Claudia on the user's desktop (ex:Claudia) 
  • [2] a resource representing the organisation SAP on the user's desktop (ex:SAP)
Furthermore, the user states that the photo 'is about' (via nao:hasTopic) the following resources:
  • [3] a concept from a Work ontology defining a colleague at work (work:Colleague)
  • [4] a concept from a Work ontology defining a working office (work:Office)
[5] The user defines a custom personal identifier for the photo, 'ClaudiaOffice20070815'.
[6] Finally, the user also tags the photo with an instance of nao:Tag they create:
  • [7],[8] The user labels the new tag 'Work', with the alternative labels 'SAP' and 'WorkPlace'.
  • [9],[10] The user also selects an icon for the new tag that they find on their desktop, and creates a custom description for the new tag.

The resulting statements are generated and stored within a named graph 'ex:i1'. Apart from the obvious statements, note the following automatically generated statements 

  • [11] Since nao:hasTag has the inverse property nao:isTagFor, the newly generated tag is also related to the tagged resource via this inverse property.
  • [12] The icon used as a symbol for the tag (ex:WorkIcon) is now also an instance of nao:Symbol.
  • Since nao:isRelated is symmetric the resources related to the photo via this property (ex:SAP and ex:Claudia) are themselves defined as related to the photo.


     ex:i1 {
[1]  ex:DSCF001 nao:isRelated ex:Claudia ,
[2]                           ex:SAP ;
[3]                nao:hasTopic work:Colleague ,
[4]                             work:Office ;
[5]                nao:personalIdentifier "ClaudiaOffice20070815" ;
[6]                nao:hasTag ex:Work .

     ex:Work a nao:Tag ;
[7]          nao:prefLabel "Work" ;
[8]          nao:altLabel "WorkPlace" ,
                          "SAP" ;
[9]          
nao:hasSymbol ex:WorkIcon ; 
[10]         nao:description "Represents all about my work, workplace, workmates etc" ;
[11]         nao:isTagFor ex:DSCF001 .
           
[12] ex:WorkIcon a nao:Symbol .
   
[13] ex:SAP nao:isRelated ex:DSCF001 .

[14] ex:Claudia nao:isRelated ex:DSCF001 . }

3. Graph Metadata Vocabulary

In this section we provide the description and specifications for the subpart of the annotation ontology dealing with Graph Metadata. Graph metadata is a form of annotation where the subject of the annotations are named graphs, as specified in [NRL SPECIFICATION]. Given the important and central role that named graphs have in the NRL concept, this graph metadata, or graph annotation, vocabulary is considered to be part of the annotation ontology, and the properties are subproperties of nao:annotation. 

NRL already provides vocabulary that is used to define essential graph metadata [See Graph Roles Vocabulary], including graph role speficiation and whether the graph is a document graph (see Fig.4.), whether a graph is updatable or otherwise (via nrl:updatable) and specification of the declarative semantics for a graph (via nrl:hasSemantics).

Generic annotation vocabulary given in this ontology is also applicable to named graphs (which are in fact special cases of a resource). In particular, nao:creator, nao:contributor, nao:created and nao:lastModified are of special relevance when it comes to providing metadata for a named graph. The vocabulary provided in this section enables additional graph annotations to those provided by NRL and by the NAO generic annotation vocabulary. An example that makes full use of all the relevant vocabulary is given in Section 3.3.

In contrast to vocabularies like the Ontology Metadata Vocabulary [OMV REPORT], which was a major source of inspiration for this vocabulary, our vocabulary is applicable to all Graph Roles as defined in NRL (Fig.4.), and not just ontologies. The majority of graph metadata properties thus have nrl:Data as their domain. Other properties apply specifically to nrl:DocumentGraph (documents that encode named graphs).

roles
Figure 4. Graph Roles Hierarchy

While generic annotation for a resource is usually stored within the graph where the resource is defined, metadata about a graph is stored outside that graph, in a separate but associated metadata graph. These special graphs are marked using the [nrl:GraphMetadata] role, also shown in Fig.4. and linked to their respective graphs via [nrl:graphMetadataFor]. The unique metadata graph that defines the non-subjective attributes (graph role, semantics, namespace,  etc) for a graph is instead linked to that graph via [nrl:coreGraphMetadataFor].

3.1 General Graph Metadata

The following vocabulary applies to all NRL Graph Roles. Although some of them  appear to be ontology-specific, properties which apply to e.g. both nrl:InstanceBase and nrl:Ontology are listed here, since their common superclass is nrl:Data. Given that graph metadata is considered to be a special case of annotation, most of the vocabulary consists of subproperties of nao:annotation. These properties are depicted in Fig.5. and described individually in the following subsections. Although the use of none of these properties is compulsory, their use is recommended as a best practice.


Data Properties

Figure 5. General Graph Metadata properties

3.1.4. nao:hasDefaultNamespace

This property explicitally defines the default namespace for a named graph. The value for this property should therefore be a valid URI ending with the '#' sign.

3.1.5. nao:hasDefaultNamespaceAbbreviation

A default namespace abbreviation for a named graph can be defined via the use of this property. This prevents a scenario where different random abbreviations are generated from different applications for the same graph.

3.1.6. nao:engineeringTool

Graphs that are generated via a specific graph engineering tool can make use of this property. The value is a string stating the name of the editing tool.

3.1.7. nao:version

This property specifies version information for the graph role and is particularly useful for tracking, comparing and merging data. Legal values for this property are of the [xsd:float] datatype. A graph can have at most one version, hence the maximum cardinality is 1.

3.1.8. nao:status

Tracking information for the contents of a graph can be specified via this property. Typical values, of type string, include "Stable", "Unstable" and "Testing". 

3.2. Document Graph Metadata

A special class in the NRL specifications,  [nrl:DocumentGraph], is defined to mark graphs that are completely represented within a document which can be accessed via a URL, which effectively also becomes the name of the graph. The following property, also shown in Fig.6., applies only to instances of such graphs.

Document Graph
Figure 6. Graph Metadata for Graphs encoded in documents

3.3.1. nao:serializationLanguage

This property states the graph serialization language for the document, e.g. XML/RDFS, RDFS/N3, TriG etc.

3.3. Graph Metadata Example

The following example demonstrates the use and best practice for the Graph Metadata Vocabulary given in this section.

[1] In this example we assume that a named graph with the role of an ontology exists and is given by ex:o1.
[2] Graph metadata for this ontology is provided by the metadata graph ex:o1_metadata. This graph consists of annotations for the ontology stored in graph ex:o1. These annotations are defined using the graph metadata vocabulary specified in this document.
[3],[4] The metadata graph includes first and foremost a description about itself, stating that it is indeed a named graph with a nrl:GraphMetadata role. It is further stated that this is the core graph metadata that defines the core properties for the graph ex:o1, via nrl:coreGraphMetadataFor.
[5] Metadata for the actual graph being described is then provided. This metadata includes the following:
  • [6] The creator of the ontology is defined to be ex:SAP, with two separate contributors being ex:Dirk and ex:Claudia. This automatically generates the statement (usually not within this graph) that ex:SAP, ex:Dirk and ex:Claudia are annotators and therefore instances of nao:Party.
  • [7] The ontology is defined to be 'Stable' at version 1.2. The last modified time is also represented.
  • [8]  A static, standard namespace and namespace abbreviation are defined.
  • [9] The graph is said to be non-updatable, meaning that if the ontology needs to be changed, a new version needs to be generated while leaving the original unchanged. See nrl:updatable.
[1] ex:o1 {
         # Work Ontology provided in this named graph
         }

[2] ex:o1/metadata {
[3]   ex:o1/metadata a nrl:GraphMetadata ;
[4]                    nrl:coreGraphMetadataFor ex:o1 .
 }  

[5]   
ex:o1 a nrl:Ontology ;
[6]         nao:creator ex:SAP ;
            nao:contributor ex:Dirk ,
                            ex:Claudia ;
[7]         nao:version "1.2" ;
            nao:lastModified "2007-08-15T23:59:55.329Z" .
            nao:status "Stable" ;
[8]         nao:hasNamespace "http://www.example.org/ontologies/work#" ;
            nao:hasNamespaceAbbreviation "work" ;
[9]         nrl:updatable "0" . }

References

[NRL SPECIFICATIONS]
NEPOMUK Representation Language (NRL) Vocabulary Specification.
NEPOMUK.,  Task-Force Ontologies.
http://www.semanticdesktop.org/ontologies/nrl.
[OMV Report]
Ontology Metadata Vocabulary for the Semantic. Web. Jens Hartmann (University of Karlsruhe), Raul Palma (Universidad Politecnica de Madrid) and Elena Paslaru Bontas (Free University of Berlin).
http://ontoware.org/projects/omv/.

Appendix A. NAO Vocabulary Summary

A1: Ontology Classes Description

Agent

Superclasses rdfs:Resource
Subclasses nfo:Application, nfo:OperatingSystem, nfo:Software
In domain of: --
In range of: nuao:initiatingAgent, nao:maintainedBy
Description An agent is the artificial counterpart to nao:Party. It can be a software component or some service.

FreeDesktopIcon

Superclasses rdfs:Resource, nao:Symbol
Subclasses --
In domain of: nao:iconName
In range of: --
Description Represents a desktop icon as defined in the FreeDesktop Icon Naming Standard (http://standards.freedesktop.org/icon-naming-spec/icon-naming-spec-latest.html).

Party

Superclasses rdfs:Resource
Subclasses nco:Contact, nco:OrganizationContact, pimo:Person, nco:PersonContact
In domain of: --
In range of: nao:contributor, nao:creator, nao:endorsedBy, nao:favouritedBy
Description Represents a single or a group of individuals

Symbol

Superclasses rdfs:Resource
Subclasses nao:FreeDesktopIcon
In domain of: --
In range of: nao:altSymbol, nao:hasSymbol, nao:prefSymbol
Description Represents a symbol, a visual representation of a resource. Typically a local or remote file would be double-typed to be used as a symbol. An alternative is nao:FreeDesktopIcon.

Tag

Superclasses rdfs:Resource
Subclasses pimo:Tag, pimo:Topic
In domain of: nao:isTagFor
In range of: nao:hasTag
Description Represents a generic tag

A2: Ontology Properties Description

altLabel

Type rdf:Property, rdfs:Resource
Domain --
Range rdfs:Literal
Superproperties rdfs:label
Subproperties --
Description An alternative label alongside the preferred label for a resource

altSymbol

Type rdf:Property, rdfs:Resource
Domain rdfs:Resource
Range nao:Symbol
Superproperties nao:hasSymbol
Subproperties --
Description An alternative symbol representation for a resource

annotation

Type rdf:Property, rdfs:Resource
Domain rdfs:Resource
Range --
Superproperties --
Subproperties nmm:actor, nexif:artist, nmm:assistantDirector, pimo:attendee, pimo:attends, nmm:audienceRating, nid3:backgroundArtist, nmm:cinematographer, nid3:composer, nmm:composer, nid3:conductor, nie:contentCreated, nie:contentLastModified, nao:contributor, nco:contributor, nao:created, ncal:created, nie:created, pimo:creator, nao:creator, nco:creator, nid3:date, nexif:dateTime, dlpo:definingResource, tmo:dependencyDescription, ncal:description, nao:description, nie:description, nao:directTrust, nmm:director, nid3:encodedBy, nao:engineeringTool, nfo:fileCreated, nfo:fileLastModified, nfo:foundry, nao:hasDefaultNamespace, nao:hasDefaultNamespaceAbbreviation, pimo:hasInterest, pimo:hasLocation, nao:hasSubResource, nao:hasSuperResource, nao:hasTag, pimo:hasTag, nao:hasTopic, nid3:interpretedBy, dlpo:isComposedOf, pimo:isInterestOf, pimo:isLocationOf, nao:isRelated, pimo:isRelated, pimo:isTagFor, nao:isTagFor, nao:isTopicOf, nao:lastModified, nie:lastModified, nmm:lyricist, nao:maintainedBy, nao:modified, nao:networkTrust, nco:note, nao:numericRating, nid3:originalArtist, nid3:originalTextWriter, nmm:performer, nao:privacyLevel, nmm:producer, nao:rating, dlpo:relatedResource, nao:score, nao:scoreParameter, nmo:sentDate, nao:status, nmm:synopsis, tmo:taskDescription, nid3:textWriter, duho:timestamp, nao:trustLevel, nao:version, nmm:writer
Description Generic annotation for a resource

contributor

Type rdf:Property, rdfs:Resource
Domain rdfs:Resource
Range nao:Party
Superproperties nao:annotation, dc:contributor
Subproperties nmm:actor, nexif:artist, nmm:assistantDirector, nid3:backgroundArtist, nmm:cinematographer, nid3:composer, nmm:composer, nid3:conductor, nco:contributor, nco:creator, nmm:director, nid3:encodedBy, nfo:foundry, nid3:interpretedBy, nmm:lyricist, nid3:originalArtist, nid3:originalTextWriter, nmm:performer, nmm:producer, nid3:textWriter, nmm:writer
Description Refers to a single or a group of individuals that contributed to a resource

created

Type rdf:Property, rdfs:Resource
Domain rdfs:Resource
Range xsd:dateTime
Maximal cardinality 1
Superproperties nao:annotation, nao:modified, dcterms:modified
Subproperties nie:contentCreated, nie:created, ncal:created, nid3:date, nfo:fileCreated, nmo:sentDate, duho:timestamp
Description States the creation, or first modification time for a resource

creator

Type rdf:Property, rdfs:Resource
Domain rdfs:Resource
Range nao:Party
Maximal cardinality 1
Superproperties nao:annotation, dc:creator
Subproperties nexif:artist, nid3:composer, pimo:creator, nco:creator, nfo:foundry, nid3:originalArtist
Description Refers to the single or group of individuals that created the resource

deprecated

Type rdf:Property, rdfs:Resource
Domain rdfs:Resource
Range rdfs:Resource
Maximal cardinality 1
Superproperties --
Subproperties --
Description If this property is assigned, the subject class, property, or resource, is deprecated and should not be used in production systems any longer. It may be removed without further notice.

description

Type rdf:Property, rdfs:Resource
Domain --
Range rdfs:Literal
Superproperties nao:annotation, rdfs:comment
Subproperties tmo:dependencyDescription, nie:description, ncal:description, nco:note, nmm:synopsis, tmo:taskDescription
Description A non-technical textual annotation for a resource

directTrust

Type rdf:Property, rdfs:Resource
Domain pimo:Agent
Range xsd:double
Superproperties nao:annotation, nao:trustLevel
Subproperties --
Description A direct trust value assigned to an agent, either manually by a user or semi-/automatically by a system. Allowed values range from 0 (no trust) to 1 (very high trust).

endorsedBy

Type rdf:Property, rdfs:Resource
Domain rdfs:Resource
Range nao:Party
Superproperties --
Subproperties nao:favouritedBy
Description Signifies social endorsment of a resource by a specific agent. Endorsement includes social actions like favouriting, liking, voting for, starring a resource.

engineeringTool

Type rdf:Property, rdfs:Resource
Domain nrl:Data
Range rdfs:Literal
Superproperties nao:annotation
Subproperties --
Description Specifies the engineering tool used to generate the graph

externalIdentifier

Type rdf:Property, rdfs:Resource
Domain rdfs:Resource
Range rdfs:Literal
Superproperties nao:identifier
Subproperties --
Description An external identifier for a resource that has been retreived from an external source.

favouritedBy

Type rdf:Property, rdfs:Resource
Domain rdfs:Resource
Range nao:Party
Superproperties nao:endorsedBy
Subproperties --
Description Signifies social endorsment by an agent, by way of marking the resource as a favourite.

hasDataGraph

Type rdf:Property, rdfs:Resource
Domain rdfs:Resource
Range nrl:InstanceBase
Inverse property nao:isDataGraphFor
Superproperties --
Subproperties duho:hasPastDataGraph, pimo:isDefinedBy
Description Links a resource to the graph which contains its metadata. Its typical usage would be to link the file resource to the graph containing its extracted file metadata. This allows for easy maintenance later on. Inverse property of nao:isDataGraphFor.

hasDefaultNamespace

Type rdf:Property, rdfs:Resource
Domain nrl:Data
Range rdfs:Literal
Maximal cardinality 1
Superproperties nao:annotation
Subproperties --
Description Defines the default static namespace for a graph

hasDefaultNamespaceAbbreviation

Type rdf:Property, rdfs:Resource
Domain nrl:Data
Range rdfs:Literal
Maximal cardinality 1
Superproperties nao:annotation
Subproperties --
Description Defines the default static namespace abbreviation for a graph

hasPastDataGraph

Type rdf:Property, rdfs:Resource
Domain --
Range --
Superproperties --
Subproperties --
Description

hasSubResource

Type rdf:Property, rdfs:Resource
Domain --
Range rdfs:Resource
Inverse property nao:hasSuperResource
Superproperties nao:annotation, nao:isRelated
Subproperties dlpo:isComposedOf
Description Defines a relationship between a resource and one or more sub resources. Descriptions of sub-resources are only interpretable when the super-resource exists. Deleting a super-resource should then also delete all sub-resources, and transferring a super-resource (for example, sending it to another user) must also include the sub-resource.

hasSuperResource

Type rdf:Property, rdfs:Resource
Domain --
Range rdfs:Resource
Inverse property nao:hasSubResource
Superproperties nao:annotation, nao:isRelated
Subproperties dlpo:definingResource
Description Defines a relationship between a resource and one or more super resources

hasSymbol

Type rdf:Property, rdfs:Resource
Domain rdfs:Resource
Range nao:Symbol
Superproperties --
Subproperties nao:altSymbol, nao:prefSymbol
Description Annotation for a resource in the form of a visual representation. Typically the symbol is a double-typed image file or a nao:FreeDesktopIcon.

hasTag

Type rdf:Property, rdfs:Resource
Domain rdfs:Resource
Range nao:Tag
Inverse property nao:isTagFor
Superproperties nao:annotation
Subproperties pimo:hasInterest, pimo:hasTag
Description Defines an existing tag for a resource

hasTopic

Type rdf:Property, rdfs:Resource
Domain --
Range rdfs:Resource
Inverse property nao:isTopicOf
Superproperties nao:annotation, nao:isRelated
Subproperties --
Description Defines a relationship between two resources, where the object is a topic of the subject

iconName

Type rdf:Property, rdfs:Resource
Domain nao:FreeDesktopIcon
Range rdfs:Literal
Minimal cardinality 1
Superproperties nao:identifier
Subproperties --
Description Defines a name for a FreeDesktop Icon as defined in the FreeDesktop Icon Naming Standard

identifier

Type rdf:Property, rdfs:Resource
Domain rdfs:Resource
Range --
Superproperties --
Subproperties nco:contactUID, ddo:deviceIdentifier, ddo:deviceName, nao:externalIdentifier, nao:iconName, nie:identifier, nco:imID, nexif:imageUniqueID, nmm:internationalStandardRecordingCode, nmo:messageId, nmm:musicBrainzAlbumID, nmm:musicBrainzTrackID, nmm:musicCDIdentifier, nao:personalIdentifier, pimo:tagLabel, ncal:uid, nid3:uniqueFileIdentifier, nfo:uuid
Description Defines a generic identifier for a resource

isDataGraphFor

Type rdf:Property, rdfs:Resource
Domain nrl:InstanceBase
Range rdfs:Resource
Inverse property nao:hasDataGraph
Superproperties --
Subproperties duho:isPastDataGraphFor
Description Links a named graph to the resource for which it contains metadata. Its typical usage would be to link the graph containing extracted file metadata to the file resource. This allows for easy maintenance later on. Inverse property of nao:hasDataGraph.

isPastDataGraphFor

Type rdf:Property, rdfs:Resource
Domain --
Range --
Superproperties --
Subproperties --
Description

isRelated

Type rdf:Property, rdfs:Resource, nrl:SymmetricProperty
Domain --
Range rdfs:Resource
Superproperties nao:annotation
Subproperties pimo:attendee, pimo:attends, dlpo:definingResource, pimo:hasLocation, nao:hasSubResource, nao:hasSuperResource, nao:hasTopic, dlpo:isComposedOf, pimo:isLocationOf, pimo:isRelated, nao:isTopicOf, dlpo:relatedResource
Description Defines an annotation for a resource in the form of a relationship between the subject resource and another resource

isTagFor

Type rdf:Property, rdfs:Resource
Domain nao:Tag
Range rdfs:Resource
Inverse property nao:hasTag
Superproperties nao:annotation
Subproperties pimo:isInterestOf, pimo:isTagFor
Description States which resources a tag is associated with

isTopicOf

Type rdf:Property, rdfs:Resource
Domain --
Range rdfs:Resource
Inverse property nao:hasTopic
Superproperties nao:annotation, nao:isRelated
Subproperties --
Description Defines a relationship between two resources, where the subject is a topic of the object

lastModified

Type rdf:Property, rdfs:Resource
Domain rdfs:Resource
Range xsd:dateTime
Maximal cardinality 1
Superproperties nao:annotation, nao:modified, dcterms:modified
Subproperties nie:contentLastModified, nexif:dateTime, nfo:fileLastModified, nie:lastModified
Description States the last modification time for a resource

maintainedBy

Type rdf:Property, rdfs:Resource
Domain rdfs:Resource
Range nao:Agent
Superproperties nao:annotation
Subproperties --
Description The agent that maintains this resource, ie. created it and knows what to do with it.

modified

Type rdf:Property, rdfs:Resource
Domain rdfs:Resource
Range xsd:dateTime
Superproperties nao:annotation, dcterms:modified
Subproperties nie:contentCreated, nie:contentLastModified, nao:created, ncal:created, nie:created, nid3:date, nexif:dateTime, nfo:fileCreated, nfo:fileLastModified, nie:lastModified, nao:lastModified, nmo:sentDate, duho:timestamp
Description States the modification time for a resource

networkTrust

Type rdf:Property, rdfs:Resource
Domain pimo:Agent
Range xsd:double
Superproperties nao:annotation, nao:trustLevel
Subproperties --
Description A network-derived trust value assigned to an agent, based on the shared direct trust values for the same agent, as set by participating agents in a network. Allowed values range from 0 (no trust) to 1 (very high trust).

numericRating

Type rdf:Property, rdfs:Resource
Domain rdfs:Resource
Range xsd:integer
Maximal cardinality 1
Superproperties nao:annotation, nao:rating, nao:scoreParameter
Subproperties --
Description Annotation for a resource in the form of a numeric rating (float value), allowed values are between 1 and 10 whereas 0 is interpreted as not set

personalIdentifier

Type nrl:InverseFunctionalProperty, rdf:Property, rdfs:Resource
Domain --
Range rdfs:Literal
Superproperties nao:identifier
Subproperties ddo:deviceName, pimo:tagLabel
Description Defines a personal string identifier for a resource

pluralPrefLabel

Type rdf:Property, rdfs:Resource
Domain --
Range rdfs:Literal
Maximal cardinality 1
Superproperties rdfs:label
Subproperties --
Description The plural form of the preferred label for a resource

prefLabel

Type rdf:Property, rdfs:Resource
Domain --
Range rdfs:Literal
Maximal cardinality 1
Superproperties rdfs:label
Subproperties nfo:fileName, nco:fullname, nexif:imageDescription, pimo:tagLabel, tmo:taskName, nie:title, nid3:title
Description A preferred label for a resource

prefSymbol

Type rdf:Property, rdfs:Resource
Domain rdfs:Resource
Range nao:Symbol
Maximal cardinality 1
Superproperties nao:hasSymbol
Subproperties --
Description A unique preferred symbol representation for a resource

privacyLevel

Type rdf:Property, rdfs:Resource
Domain rdfs:Resource
Range xsd:double
Superproperties nao:annotation
Subproperties --
Description A privacy level as defined for a resource. Allowed values range from 0 (private) to 1 (public).

rating

Type rdf:Property, rdfs:Resource
Domain rdfs:Resource
Range --
Superproperties nao:annotation
Subproperties nmm:audienceRating, nao:numericRating
Description Annotation for a resource in the form of an unrestricted rating

score

Type rdf:Property, rdfs:Resource
Domain rdfs:Resource
Range xsd:float
Maximal cardinality 1
Superproperties nao:annotation
Subproperties --
Description An authoritative score for an item valued between 0 and 1

scoreParameter

Type rdf:Property, rdfs:Resource
Domain rdfs:Resource
Range xsd:float
Superproperties nao:annotation
Subproperties nao:numericRating
Description A marker property to mark selected properties which are input to a mathematical algorithm to generate scores for resources. Properties are marked by being defined as subproperties of this property

serializationLanguage

Type rdf:Property, rdfs:Resource
Domain nrl:DocumentGraph
Range rdfs:Literal
Maximal cardinality 1
Superproperties --
Subproperties --
Description States the serialization language for a named graph that is represented within a document

status

Type rdf:Property, rdfs:Resource
Domain nrl:Data
Range rdfs:Literal
Maximal cardinality 1
Superproperties nao:annotation
Subproperties --
Description Specifies the status of a graph, stable, unstable or testing

trustLevel

Type rdf:Property, rdfs:Resource
Domain pimo:Agent
Range xsd:double
Superproperties nao:annotation
Subproperties nao:directTrust, nao:networkTrust
Description A generalised trust level assigned to an agent, based on a combination of direct and network trust values it possesses. Allowed values range from 0 (no trust) to 1 (very high trust).

userVisible

Type rdf:Property, rdfs:Resource
Domain rdfs:Resource
Range xsd:boolean
Maximal cardinality 1
Superproperties --
Subproperties --
Description Mark a property, class, or even resource as user visible or not. Non-user-visible entities should never be presented to the user. By default everything is user-visible.

version

Type rdf:Property, rdfs:Resource
Domain nrl:Data
Range xsd:float
Maximal cardinality 1
Superproperties nao:annotation
Subproperties --
Description Specifies the version of a graph, in numeric format