Abstract

The
document describes a mapping of the vCard specification (RFC6350) to
RDF/OWL. The goal is to promote the use of vCard for the description of
people and organisations utilising semantic web techniques and allowing
compatibility with traditional vCard implementations.

Status of This Document

This section describes the status of this document at the time of its publication. Other
documents may supersede this document. A list of current W3C publications and the latest revision
of this technical report can be found in the W3C technical reports
index at http://www.w3.org/TR/.

This document updates the W3C Member Submission on vCard RDF [VCARD-MEMBER] to align with the new semantics of IETF RFC6350 [RFC6350] as developed by the IETF vCard Working Group. Note that RFC6350 obsoletes the
previous RFC2426 [RF2426] that the W3 Member Submission was based on.

Publication as an Interest Group Note does not imply endorsement by the W3C Membership. 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.

The disclosure obligations of the Participants of this group are described in the
charter.

1. Overview

vCard is a specification developed by the IETF for the description
of people and organisations. Recently, vCard has been significantly
updated to Version 4 as documented in [RFC6350]. Typically, vCard objects are encoded in
its own defined text-based syntax or XML renderings.

The objective of this document is to provide an equivalent
representation of vCard utilizing the Semantic Web representations of
RDF/OWL. The goal is to allow compatible representations between
RFC6350 and this vCard Ontololgy.

Previous vCard ontologies, such as the W3C Member Submission on Representing vCard Objects in RDF [VCARD-MEMBER] covered vCard version 3.0 as defined in RFC2426 [RFC2426].
RFC2426 has been obsoleted by RFC6350 and it is recommeded that this
vCard Ontology be used for any vCard semantic representations.
RFC6350 has introduced many additional changes such as new structures
and properties (for example, Kind, Gender, Language, Anniversary,
Calendaring attributes), additional parameters, and removed features
(for example, some Address types, inline vCards, Label). See Appendix A
of [RFC6350] for complete details.

Namespace URI

The current vCard Ontology (See Section 4) has continued to use the
http://www.w3.org/2006/vcard/ns# namespace URI that was used by the previous W3C Member Submission
on Representing vCard Objects in RDF [VCARD-MEMBER].
This will support backwards compatibility. Please note some of the
equivalent/deprecated terms from the previous ontology in Section 2.12.

In addition, this namespace URI will also serve the JSON-LD context.

The vCard specifications have a long history and were first proposed in
1995 and then standardized by the IETF in 1998. Since then, new
vocabularies, such as the FOAF Vocabulary Specification (2005), and
the The Organisation Ontology
(2013) have appeared. The vCard Ontology has also focused on
describing people and organisations, including location information and
groups of such entities. The FOAF ontology focuses more on the
relationships between people, agents, things and social web entities,
and the ORG ontology focuses on organizational structures, roles, and
activities. There are some overlaps between the three ontologies, but
they can provide useful vocabularies individually, and also can
provided enhanced information when used collaboratively.

2. Mapping

In order to create the OWL ontology mapping from RFC6350, some
changes and enhancements are required to reflect and support RDF/OWL
features, linked data principles, and support ontology reuse. No
semantics are changed in the mapping from RFC6350 to the vCard
Ontology. All the data types defined in RFC6350 are fully supported as
XML Schema dataypes.

The model informing the mapping from RFC6350 to OWL has been to
create OWL object properties for all things that would typically be
resources (e.g. identified with a URI) and OWL data properties for all
things
that would typically be literals (e.g. strings and dates). The model
includes naming all the object properties with a "hasX" name pattern,
and the data properties with just the "x" name pattern. However, in
some circumstances (see examples in Property Relation Mechanisms) the
data property may use its equivalent object property to support
vCard's property parameters.

Property Relation Mechanisms

All versions of vCard supported additional property parameters that
could be used with any of the descriptive properties. For example the sort-string and geography
property parameters could be associated with any of the vCard
properties to provide further meta-information. To support vCard's
property parameters, a new object property (hasValue) and data property
(value) have been defined that relates both the property and parameter
to the vCard kind.

Consider the following simple example that only includes direct property relationships:

If we wanted to add a sort-as property parameter to the
nickname (data) property and a type property parameter (to indicate a
home email address) to the hasEmail (object) property, then we need to
use the hasNickname object property with the value data property and the hasValue object property with
the hasEmail object property to capture these n-ary relationships, as
shown below:

In general, the direct mechanism provides simpler vCard resources, but
the n-ary mechanism can be used for more detailed vCard resources
requiring property parameters.

Use of rdf:value

In previous vCard/RDF specifications, the use of rdf:value was recommended to support vCard property
parameters. The use of rdf:value is now deprecated in favour of the above mechanism. Additionally, this
enables the current vCard Ontology to support OWL-DL.

The following sections outlines the mapping from RFC6350 to the
vCard Ontology showing both the n-ary Relation and Direct properties.

2.1 Property Parameters

These properties can apply to most vCard properties.

RFC Property

Note

Ontology Property

LANGUAGE

The human language used in the related property (from RFC5646)

language

VALUE

Not required as this is implicit in the ontology datatypes

PREF

Recommended to use rdf:Seq to support ordered preferences

ALTID

Recommended to use rdf:Alt to support alternative values

PID

Recommended to use rdf:ID to support identified properties

TYPE

Recommended to use rdf:type to indicate type. See Section 2.11 for list of vCard Type
values.

MEDIATYPE

Not required

CALSCALE

Assume the default Gregorian system for datetimes

SORT-AS

The string used for sorting the property

sort-string

GEO

The geographic location related to the property value (expressed as a geo URI)

hasGeo

TZ

The timezone related to the property value

tz

2.2 General Properties

RFC Property

Note

Ontology Class

Ontology Property

BEGIN

Not required

END

Not required

SOURCE

The orginal source of the vCard information

hasSource

KIND

vCard defines "Kinds" to represent the types of objects to be represented by vCard:

Kind

Individual - To represent people

Individual

Organization - To represent organisations

Organization

Group - To represent groups of vCard objects

Group

Location - To represent location objects

Location

XML

Not required

2.3 Identification Properties

RFC Property

Note

Ontology Property

N-Ary Property

FN

The full name of the object (as a single string). This is the only mandatory property.

An object representing an organization. An organization is a single entity, and might represent a business or government, a department or division within a business or government, a club, an association, or the like.