Skip to main content

Notice: this Wiki will be going read only early in 2024 and edits will no longer be possible. Please see: https://gitlab.eclipse.org/eclipsefdn/helpdesk/-/wikis/Wiki-shutdown-plan for the plan.

Jump to: navigation, search

Difference between revisions of "VCard vocabulary usage"

(Classes and Attributes Used)
(Attributes Not Used)
 
(45 intermediate revisions by the same user not shown)
Line 1: Line 1:
{{#eclipseproject:technology.higgins|eclipse_custom_style.css}} [[Image:Higgins logo 76Wx100H.jpg|right]]
+
{{#eclipseproject:technology.higgins|eclipse_custom_style.css}}  
  
The [[Persona vocabulary]] imports [http://www.w3.org/TR/vcard-rdf/ vCard] (http://www.w3.org/2006/vcard/ns) and uses most of it as is, but with a few tweaks described below.  
+
The [[Persona vocabulary]] imports [http://www.w3.org/TR/vcard-rdf/ vCard] (http://www.w3.org/2006/vcard/ns) and uses some, but not all of its attributes and classes.  
  
 
== UML Overview ==
 
== UML Overview ==
  
We show below the aspect of the Persona vocabulary that builds on the vCard vocabulary. Attribute names and class names imported from other, non-vcard vocabularies are shown in italics. Classes from other vocabularies are shown in grey.
+
We show below the aspect of the Persona vocabulary that builds on the vCard vocabulary. Classes from other vocabularies are shown in grey.
  
[[Image:Vcard 2.0.114b.png|center]]
+
[[Image:Vcard02.0.119.png|center]]
  
 
== Classes and Attributes Used ==
 
== Classes and Attributes Used ==
Line 13: Line 13:
 
Note: Additional attributes from persona.owl or higgins.owl are shown in bold below.  
 
Note: Additional attributes from persona.owl or higgins.owl are shown in bold below.  
  
=== persona:Person ===
+
The following attributes are used on p:Person objects:
The following attributes are used on person:Person objects:
+
* 0..1 bday
+
 
* 0..1 title
 
* 0..1 title
 +
* 0..1 tel
 +
* 0..1 n
 +
* 0..1 adr
 +
* 0..1 org
  
 
=== Address ===
 
=== Address ===
  
* 0..N '''p:addressNote'''
 
 
* 0..1 address  
 
* 0..1 address  
 
* 0..1 extended-address   
 
* 0..1 extended-address   
 
* 0..1 post-office-box  
 
* 0..1 post-office-box  
 
* 0..1 locality  
 
* 0..1 locality  
* 0..1 region
+
* 0..1 postal-code
* 0..1 postal-code  
+
 
* 0..1 country-name
+
=== Email ===
 +
 
 +
Has no attributes.
  
 
=== Name ===
 
=== Name ===
  
* 0..1 honorific-prefix 
 
 
* 0..1 given-name  
 
* 0..1 given-name  
 
* 0..N additional-name  
 
* 0..N additional-name  
 
* 0..1 family-name  
 
* 0..1 family-name  
* 0..1 honorific-suffix  
+
* 0..1 honorific-suffix
  
 
=== Organization ===
 
=== Organization ===
Line 42: Line 44:
 
* 0..1 organization-unit
 
* 0..1 organization-unit
  
=== Other attributes ===
+
=== Tel (and subclasses) ===
  
* 0..1 logo
+
In PDM (like FOAF) the rdf:value of a Tel instance is a tel URI, whereas in the usual RDF mapping of VCard it is an unstructured string. Here is an example of a VCard:Tel instance:
* 0..1 tel
+
  
=== Home ===
+
  v:tel
 +
  [ a v:Work, v:Cell, v:Pref ;
 +
    rdf:value tel:+1-212-555-0101
 +
  ]
  
* subClassOf: Address
+
See http://www.ietf.org/rfc/rfc3966.txt for details on the tel URI scheme.
* 0..1 '''p:owner'''
+
* 0..1 '''p:renter'''
+
  
 
=== Other classes ===
 
=== Other classes ===
Line 61: Line 63:
 
== Classes Not Used  ==
 
== Classes Not Used  ==
  
* Label (disjoint with Tel) - not used (don't yet understand what it is)  
+
* Label (disjoint with Tel) - not used (don't yet understand what it is)
* Tel - not used; we use foaf:phone instead
+
  
 
== Attributes Not Used ==
 
== Attributes Not Used ==
 
+
* honorific-prefix - use p:honorificPrefix
The following attributes are '''not''' used:  
+
* agent - use hasAgent 
 
+
* bday - p:birthDay, p:birthMonth, p:birthYear
 
* category  
 
* category  
 
* class  
 
* class  
* email - we use foaf:mbox instead
+
* fn - use skos:prefLabel
* fn
+
* geo - use geo:location
* agent - we use hasAgent instead
+
* geo - we use geo:location instead
+
 
* key  
 
* key  
 +
* logo
 
* mailer - not sure what this is  
 
* mailer - not sure what this is  
* photo - we use foaf:thumbnail instead
+
* photo  
 
* prodid  
 
* prodid  
 +
* region - use p:region instead
 +
* country-name - use p:country instead
 
* rev  
 
* rev  
 
* sort-string  
 
* sort-string  
 
* sound  
 
* sound  
 
* tz - not sure syntax of range/value  
 
* tz - not sure syntax of range/value  
* uid - we use entityId instead
+
* uid - use entityId
* url - we use foaf:page (and sub-attributes) instead
+
* url - use foaf:page (and sub-attributes)
  
 
== Other conventions ==
 
== Other conventions ==

Latest revision as of 18:32, 28 June 2012

{{#eclipseproject:technology.higgins|eclipse_custom_style.css}}

The Persona vocabulary imports vCard (http://www.w3.org/2006/vcard/ns) and uses some, but not all of its attributes and classes.

UML Overview

We show below the aspect of the Persona vocabulary that builds on the vCard vocabulary. Classes from other vocabularies are shown in grey.

Vcard02.0.119.png

Classes and Attributes Used

Note: Additional attributes from persona.owl or higgins.owl are shown in bold below.

The following attributes are used on p:Person objects:

  • 0..1 title
  • 0..1 tel
  • 0..1 n
  • 0..1 adr
  • 0..1 org

Address

  • 0..1 address
  • 0..1 extended-address
  • 0..1 post-office-box
  • 0..1 locality
  • 0..1 postal-code

Email

Has no attributes.

Name

  • 0..1 given-name
  • 0..N additional-name
  • 0..1 family-name
  • 0..1 honorific-suffix

Organization

  • 0..1 organization-name
  • 0..1 organization-unit

Tel (and subclasses)

In PDM (like FOAF) the rdf:value of a Tel instance is a tel URI, whereas in the usual RDF mapping of VCard it is an unstructured string. Here is an example of a VCard:Tel instance:

 v:tel
  [ a v:Work, v:Cell, v:Pref ;
    rdf:value tel:+1-212-555-0101
  ]

See http://www.ietf.org/rfc/rfc3966.txt for details on the tel URI scheme.

Other classes

  • Work
  • Also used: Parcel, Dom, Intl, Pref, Postal
  • Also used: BBS...Voice as shown above

Classes Not Used

  • Label (disjoint with Tel) - not used (don't yet understand what it is)

Attributes Not Used

  • honorific-prefix - use p:honorificPrefix
  • agent - use hasAgent
  • bday - p:birthDay, p:birthMonth, p:birthYear
  • category
  • class
  • fn - use skos:prefLabel
  • geo - use geo:location
  • key
  • logo
  • mailer - not sure what this is
  • photo
  • prodid
  • region - use p:region instead
  • country-name - use p:country instead
  • rev
  • sort-string
  • sound
  • tz - not sure syntax of range/value
  • uid - use entityId
  • url - use foaf:page (and sub-attributes)

Other conventions

Whereas by inference a p:Person node that has a adr or n etc link is a VCard, we add the following constraints (that are not present in usual VCards) on p:Persons using these complex attributes:

  1. A single p:Person instance has a maximum of one adr, one n, one org

The implication of #1 above is that if a person has N addresses, then N separate p:Person nodes must be instantiated. If it is desired to indicate the time period for which the person lived at a given address, the h:start..h:end attributes on the p:Person node are used.

Links

Back to the top