Names

Both in RDF and Topic Maps it is possible to associate a resource and a topic to a name. In RDF a name is represented as the value of a property, in Topic Maps name types are used. Given this, properties map to name types and vice versa. However, in past Topic Maps specifications there were also untyped names. In order to be compliant to the current specification, Topic Maps document authors has to substitute untyped names with the iso:topic-name.

The property rdfs:label deserves particular attention. It may be used in RDF in order to provide a human-readable version of a resource's name. However, rdfs:label has something special if we deal with migration of RDF to OWL ontologies, and in particular if we want our ontology to be OWL DL compliant. In fact, rdfs:label is predefined as an instance of owl:AnnotationProperty. Hence, it cannot be used in property axioms. The only information in axioms for them is annotations. For more details the reader can refer to [OWL-ref] and [OWL-sem].

The classes and properties involved in the guidance for names are the followings:

Given this, the rules for name translation are the followings:

RDFTM

  • Properties map to name types, which are subtypes of rdftm:NamingProperty.

TMRDF

  • Name types map to properties, which are instances of rdftm:NamingProperty.
  • If the topic has an untyped name, then the corresponding RDF resource becomes the subject of a iso:topic-name property, the value of which is the untyped name. This allows to be compliant with Topic Maps specification. The iso:topic-name is then declared to be an instance of rdftm:NamingProperty.

Variants

Topic Maps has the concept of variant names, which are always associated to a scope. Both variant and scope are Topic Maps concepts that do not have a direct matching in RDF. Tha approach is to use a single property for the name (as described above), to create a statement for the assertion and to reify the statement in order to attach the variants.

The rules for translating variant names are the followings:

TM2RDF

  • Name types map to properties, which are instances of rdftm:NamingProperty.
  • The resource, property and name value of the assertion became the subject, the predicate, and the object of a rdf:Statement, respectively.
  • Variant names map to rdftm:variant properties.
  • The scopes of the variant names map to rdftm:scope properties.

RDF2TM

  • Properties map to name types, which are subtypes of rdftm:NamingProperty.
  • Each block composed of a rdf:Statement, the predicate of which is a naming property (i.e., instance of rdftm:NamingProperty), refied by rdftm:variant properties with scope properties is translated to a name type assertion with those variants and scopes.

Discussion backup

Valentina: old proposal

The classes and properties involved in the guidance for Names are the followings:

  • rdftm:NamingProperty (a property class useful to type properties having the semantic of giving a name to a resource).
  • rdftm:name, the type of which is rdftm:NamingProperty

Two possible situations can be faced with names: (i) typed names, and (ii) untyped names (only in TM).

The rules are the followings

RDFTM how to obtain roundtripping for untyped names?

RDFTM

  • (i) Properties map to name types.
  • (ii) RDF does not have untyped names. If a resource is the subject of a rdftm:name property, then the value of the property becomes the untyped name of the topic which corresponds to that resource.

TMRDF

  • (i) Name types map to properties.
  • (ii) If the topic has an untyped name, then the corresponding RDF resource becomes the subject of a rdftm:name property the value of which is the untyped name.

Valentina: I think there should be a third point. We want to guide the translation about names in a more complex way. I mean:
  • in RDF for example I want to be able to say "translate each dc:title, foaf:name to an untyped name and save this information for roundtripping"
  • in TM I want be able to say "transalte each untyped name in a dc:title property for topics with a certain type, in a foaf:name property for topic with a certain type, an so on.."

Comments and reviews

LarsMarius

I don't think the "default name" approach works. I think we need something closer to Steve's original proposal, but without rdfs:label as the default name type. I think we need to introduce our own property for this, and perhaps also a type of property, and that we should use this where the original proposal had rdfs:label.

This is also the approach I take in the Q paper.

LarsMarius

(Notes from ConCall20050926)

rdfs:label cannot be used as the superproperty of all name properties because this is not compatible with OWL DL. There's a general view in the RDF community that some way to identify a property as being a naming property would be useful. This cannot be a superproperty of rdfs:label (because that won't be compatible with OWL DL, either), but it can be a property class, like owl:SymmetricProperty. I think RDFTM should define such a class and use it in the guidance.

Like Fabio said, most RDF models won't have rdfs:label as an instance of this class, but this information can be included in the "default guidance" that comes with a conversion tool.

Revision: r1.14 - 27 Oct 2005 - 21:21 - LarsMarius
Copyright © 1999-2017 by the contributing authors. All material on this collaboration platform is the property of the contributing authors.
Ideas, requests, problems regarding Fabio's Wiki? Send feedback