# This small vocabulary is intended to extend the W3C's Ontology for vCards.
# It adds a bunch of terms from the vCard 4.0 draft, plus allows for an
# alternative representation of "typed" properties like adr, tel and email.
#
# Original method:
#
#     _:me a v:VCard ;
#          v:fn "Alice Smith" ;
#          v:workTel <tel:+44-7700-900123> ;
#          v:mobileTel <tel:+44-7700-900123> .
#
# Extended method:
#
#     _:me a v:VCard ;
#          v:fn "Alice Smith" ;
#          v:tel [ a vx:Tel ;
#                  rdf:value <tel:+44-7700-900123> ;
#                  vx:usage "work" , "mobile" ] .
#
# The latter is closer to the hCard model, so more useful when mapping from
# microformats to RDF.

## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## 

# This ontology.
@prefix vx:       <http://buzzword.org.uk/rdf/vcardx#> .

# Related ontologies.
@prefix v:        <http://www.w3.org/2006/vcard/ns#> .

# Stock imports.
@prefix cc:       <http://creativecommons.org/ns#> .
@prefix dc:       <http://purl.org/dc/terms/> .
@prefix dcmitype: <http://purl.org/dc/dcmitype/> .
@prefix foaf:     <http://xmlns.com/foaf/0.1/> .
@prefix link:     <http://www.w3.org/2006/link#> .
@prefix owl:      <http://www.w3.org/2002/07/owl#> .
@prefix rdf:      <http://www.w3.org/1999/02/22-rdf-syntax-ns#> .
@prefix rdfs:     <http://www.w3.org/2000/01/rdf-schema#> .
@prefix skos:     <http://www.w3.org/2004/02/skos/core#> .
@prefix vs:       <http://www.w3.org/2003/06/sw-vocab-status/ns#> .
@prefix xhv:      <http://www.w3.org/1999/xhtml/vocab#> .
@prefix xsd:      <http://www.w3.org/2001/XMLSchema#> .

## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## 

vx: 
	rdfs:label "Ontology for vCards (Extentions)"@en ;
	foaf:maker _:toby ;
	dc:issued "2008-12-04"^^xsd:date ;
	dc:modified "2008-12-04"^^xsd:date ;
	cc:license <http://creativecommons.org/licenses/by-sa/2.0/uk/deed.en_GB> ;
	cc:attributionName "Toby Inkster" ;
	cc:attributionURL vx: ; 
	rdfs:seeAlso <http://www.w3.org/2006/vcard/ns> ,
		<http://microformats.org/wiki/hcard> ,
		<http://buzzword.org.uk/cognition/uf-plus.html#hcard> ,
		<http://www.ietf.org/internet-drafts/draft-ietf-vcarddav-vcardrev-05.txt> .

_:toby
	a foaf:Person ;
	foaf:name "Toby Inkster";
	foaf:homepage <http://tobyinkster.co.uk/> .
	
vx:CommunicationsDevice
	a rdfs:Class ;
	rdfs:label "Communications Device"@en ;
	rdfs:comment "A device that can be used for communicating with."@en .

vx:Tel
	a rdfs:Class ;
	rdfs:subClassOf vx:CommunicationsDevice ;
	rdfs:label "Telephone"@en ;
	rdfs:comment "A real or virtual telephone or telephonic device."@en .

vx:Email
	a rdfs:Class ;
	rdfs:subClassOf vx:CommunicationsDevice ;
	rdfs:label "E-mail Account"@en ;
	rdfs:comment "An electronic mail account."@en .

vx:Impp
	a rdfs:Class ;
	rdfs:subClassOf vx:CommunicationsDevice ;
	rdfs:label "IMPP"@en ;
	rdfs:comment "An instant messaging or presence protocol account."@en .
	
vx:Label
	a rdfs:Class ;
	rdfs:subClassOf vx:CommunicationsDevice ;
	rdfs:label "Address Label"@en ;
	rdfs:comment "An address label to which things could be delivered."@en .
	
vx:usage
	a rdfs:Property ;
	rdfs:label "usage"@en ;
	rdfs:domain vx:CommunicationsDevice .

vx:kind
	a rdfs:Property ;
	rdfs:label "kind"@en ;
	rdfs:comment "Type of contact. Usually \"individual\", \"org\" or \"group\"."@en ;
	rdfs:domain v:VCard ;
	rdfs:range rdfs:Literal .

vx:gender
	a rdfs:Property ;
	rdfs:label "gender"@en ;
	rdfs:comment "Gender of a contact. Usually \"male\" or \"female\"."@en ;
	rdfs:domain v:VCard ;
	rdfs:range rdfs:Literal .

vx:birth
	a rdfs:Property ;
	rdfs:label "birth place"@en ;
	rdfs:comment "Place of birth."@en ;
	rdfs:domain v:VCard ;
	rdfs:range v:VCard , v:Address , v:Location , rdfs:Literal .

vx:death
	a rdfs:Property ;
	rdfs:label "death place"@en ;
	rdfs:comment "Place of death."@en ;
	rdfs:domain v:VCard ;
	rdfs:range v:VCard , v:Address , v:Location , rdfs:Literal .

vx:dday
	a rdfs:Property ;
	rdfs:label "date of dead"@en ;
	rdfs:comment "Date of death. Should usually be an xsd:date."@en ;
	rdfs:domain v:VCard ;
	rdfs:range rdfs:Literal .

vx:lang
	a rdfs:Property ;
	rdfs:label "language"@en ;
	rdfs:comment "Indicates a language that can be spoken, written or read by a contact."@en ;
	rdfs:domain v:VCard ;
	rdfs:range rdfs:Literal .

vx:member
	a rdfs:Property ;
	rdfs:label "member"@en ;
	rdfs:comment "Indicates group/organisation membership. The subject is the group and the object is the member."@en ;
	rdfs:domain v:VCard ;
	rdfs:range v:VCard .

vx:caladruri
	a rdfs:Property ;
	rdfs:label "calendar requests"@en ;
	rdfs:comment "The URI (often an e-mail address) to which calendar requests (e.g. invitations) should be sent."@en ;
	rdfs:domain v:VCard .
	
vx:caluri
	a rdfs:Property ;
	rdfs:label "calendar URI"@en ;
	rdfs:comment "URI for the contact's calendar."@en ;
	rdfs:domain v:VCard .

vx:fburl
	a rdfs:Property ;
	rdfs:label "free/busy URI"@en ;
	rdfs:comment "URI for the contact's free/busy information."@en ;
	rdfs:domain v:VCard .

vx:x-vat-number
	a rdfs:Property ;
	rdfs:label "VAT number"@en ;
	rdfs:comment "A tax number for an organisation."@en ;
	rdfs:domain v:Organization ;
	rdfs:range rdfs:Literal .

vx:x-company-number
	a rdfs:Property ;
	rdfs:label "company number"@en ;
	rdfs:comment "A registered company number for an organisation."@en ;
	rdfs:domain v:Organization ;
	rdfs:range rdfs:Literal .
	
vx:x-charity-number
	a rdfs:Property ;
	rdfs:label "charity number"@en ;
	rdfs:comment "A registered charity number for an organisation."@en ;
	rdfs:domain v:Organization ;
	rdfs:range rdfs:Literal .

vx:impp
	a rdfs:Property ;
	rdfs:label "impp"@en ;
	rdfs:comment "Instant messaging/presence protocol for a contact."@en ;
	rdfs:domain v:VCard ;
	rdfs:range vx:Impp .

vx:source
	a rdfs:Property ;
	rdfs:label "source"@en ;
	rdfs:comment "A source of information about this contact."@en ;
	rdfs:domain v:VCard ;
	rdfs:range foaf:Document .

## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## 
