RepresentingVCardinRDFOWL

From W3C Wiki
Revision as of 02:48, 28 March 2013 by Riannell (Talk | contribs)

Jump to: navigation, search

Overview

This page is for discussion and development of an OWL Ontology for vCard.

Currently, the W3C Member Submission on Representing vCard Object in RDF covers vCard 3.0 (aka RFC2426).

The latest vCard V.4 is documented in RFC6350

The new specification will be published as a W3C Semantic Web Interest Group (SWIG) Note.

Discussion is undertaken on the SWIG email list.

The current editors are Renato Iannella and James McKinney

Mapping

In order to create the OWL ontology mapping from RFC6350, some changes are made to reflect the support of RDF/OWL features, linked data principles, ontology reuse, and future scenarios. No semantics are changed in the mapping.

All the data types defined in the RFC are fully supported, as XML Schema dataypes.

Design Issues:

  • Mention the n-ary and direct relation mechanism.

vCard supports prefered attributes....can rdf:Seq be used to represent this?

Property Parameters

These properties can apply to most (but not all) vCard properties. NOTE: we should list them

RFC Property Note OWL Class Parent Relation Direct
LANGUAGE the human language used in the related property dp:language xsd:anyURI
VALUE Not Required as this is implicit on the ontology
PREF A number (1-100) to show the preference level of the property. Can we use an ref:Seq ? dp:preference xsd:integer
ALTID Perhaps use owl:sameAs ?
PID Not required
TYPE See the Context Codes. (Type is too generic, so renamed to context) dp:context xsd:anyURI
MEDIATYPE Do we need this?
CALSCALE Assume the default Gregorian system for date times
SORT-AS Do we need this?
GEO The geography related to the property value (geo URI) dp:geo xsd:anyURI
TZ The timezone related to the property value dp:timezone xsd:string

General Properties

RFC Property Note OWL Class Parent Relation Direct
BEGIN Not Required
END Not Required
SOURCE Do we need this?
KIND vCard defines "Kinds" to represent the types of objects to be represented by vCard class:Kind owl:Thing
individual To represent people class:Individual class:Kind
org To represent organisations class:Organization class:Kind
group To represent groups of vCard objects class:Group class:Kind
location To represent location objects class:Location class:Kind
XML  ?

Identification Properties

RFC Property Note OWL Class Parent Relation Direct
FN The full name of the object (as a single string). This is the only mandatory property. class:FormattedName class:Identification op:hasFormattedName dp:formattedName xsd:string
N The name of the object represented in structured parts. class:Name class:Identification op:hasName dp:givenName xsd:string

dp:familyName xsd:string dp:additionalName xsd:string dp:honorificPrefix xsd:string dp:honorificSuffix xsd:string

NICKNAME A nickname for the object class:Nickname class:Identification op:hasNickname dp:nickname xsd:string
PHOTO class:Photo class:Identification op:hasPhoto dp:photo xsd:anyURI
BDAY Should only apply to Individual (unless we use it to mean date of founding in the case of an Organization?) dp:birthday xsd:dateTime
ANNIVERSARY Should only apply to Individual dp:anniversary xsd:dateTime
GENDER Should only apply to Individual. See Gender Codes dp:gender xsd:anyURI

Delivery Addressing Properties

RFC Property Note OWL Class Parent Relation Direct
ADR The address of the object represented in structured parts class:Address class:Addressing op:hasAddress dp:streetAddress xsd:string

dp:locality xsd:string dp:region xsd:string dp:country xsd:string dp:postalCode xsd:string

Communications Properties

RFC Property Note OWL Class Parent Relation Direct
TEL The telephone number as a tel URI. Use TEL TYPE to indicate the type of telephone class:Telephone class:Communication op:hasTelephone dp:telephone xsd:anyURI
TEL TYPE Specify the type of telephone. See the Telephone Type Code set. dp:telephoneType xsd:anyURI
EMAIL The email address as a mailto URI class:Email class:Communication op:hasEmail dp:email xsd:anyURI
IMPP The IMPP instant messaging contact info class:InstantMessage class:Communication op:hasInstantMessage dp:instantMessage xsd:anyURI
LANG The language of the object. Need to find an ontology of ISO 2/3 chars lang codes class:Language class:Communication op:hasLanguage dp:language xsd:anyURI


Geographical Properties

RFC Property Note OWL Class Parent Relation Direct
TZ The timezone of the object class:TimeZone class:Geographical op:hasTimeZone dp:timezone xsd:string
GEO The geographical coordinates of the object (geo URI) class:Geo class:Geographical op:hasGeo dp:geo xsd:anyURI

Organizational Properties

RFC Property Note OWL Class Parent Relation Direct
TITLE The title of the object class:Title class:Organizational op:hasTitle dp:title xsd:string
ROLE The role of the object (Should we make this a URI?) class:Role class:Organizational op:hasRole op:role xsd:anyURI
LOGO The logo of the object (data URI) class:Logo class:Organizational op:hasLogo dp:logo xsd:anyURI
ORG The organisation RELATED to the object (NOTE: This gets confused with the Organisation Kind) class:Organization class:Organizational op:hasOrganization dp:org xsd:string
ORGUNIT The organisational unit related to the object class:OrganizationalUnit class:Organization op:hasOrganizationalUnit dp:orgUnit xsd:string
MEMBER Can only be used for Group Kind objects. Must point to other Individual or Organization objects op:hasMember
RELATED Link to related objects. Use Related Type to specify the type of relationship class:Related class:Organizational op:hasRelated dp:related xsd:anyURI
RELATED TYPE Specify the type of relationship linked in Related. See the Related Code set. dp:relatedType xsd:anyURI

Explanatory Properties

RFC Property Note OWL Class Parent Relation Direct
CATEGORIES The categories of the object class:Category class:Explanatory op:hasCategory dp:category xsd:string
NOTE Notes about the object class:Note class:Explanatory op:hasNote dp:note xsd:string
PRODID Not required?
REV Not required?
SOUND Audio related to the object (data URI) class:Sound class:Explanatory op:hasSound dp:sound xsd:anyURI
UID A unique identifier for the object dp:uid xsd:anyURI
CLIENTPIDMAP Not required?
URL Any URL related to the object. Is this the best name for it? class:URL class:Explanatory op:hasURL dp:url xsd:anyURI
VERSION Not required?


Security Properties

RFC Property Note OWL Class Parent Relation Direct
KEY The security key of the object class:Key class:Security op:hasKey dp:key xsd:anyURI


Calendar Properties

RFC Property Note OWL Class Parent Relation Direct
FBURL Calendar Busy Time of the object class:CalendarBusy class:Calendar op:hasCalendarBusy dp:calendarBusy xsd:anyURI
CALADURI Calendar Request of the object class:CalendarRequest class:Calendar op:hasCalendarRequest dp:calendarRequest xsd:anyURI
CALURI Calendar Link of the object class:CalendarLink class:Calendar op:hasCalendarLink dp:calendarLink xsd:anyURI


Code Sets

Context

Home
Work
 

Gender

Female
Male
None
Other
Unknown

Telephone Type

Cell (mobile)
Fax
Pager
Text (sms)
TextPhone
Video
Voice

Related Type

Acquaintance
Agent
Child
Colleague
Contact
Coresident
Coworker
Crush
Date
Emergency
Friend
Kin
Me
Met
Muse
Neighbor
Parent
Sibling
Spouse
Sweetheart

Examples

Ontology

OWL File

http://www.w3.org/wiki/images/2/2b/Vcard.rdf

Documentation

http://www.essepuntato.it/lode/owlapi/http://www.w3.org/wiki/images/2/2b/Vcard.rdf


Four vCard KINDS

Individual
Organization
Group
Location