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.
VCard vocabulary usage
We show below the aspect of the Persona vocabulary that builds on the vCard vocabulary. Classes from other vocabularies are shown in grey.
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
- 0..1 address
- 0..1 extended-address
- 0..1 post-office-box
- 0..1 locality
- 0..1 postal-code
Has no attributes.
- 0..1 given-name
- 0..N additional-name
- 0..1 family-name
- 0..1 honorific-suffix
- 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.
- 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
- fn - use skos:prefLabel
- geo - use geo:location
- mailer - not sure what this is
- region - use p:region instead
- country-name - use p:country instead
- tz - not sure syntax of range/value
- uid - use entityId
- url - use foaf:page (and sub-attributes)
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:
- 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.