Difference between revisions of "Profile"

From OpenOrg
Jump to: navigation, search
(Discovering with well-known URI)
(Disovery via Homepage)
Line 210: Line 210:
=== Disovery via Homepage ===
=== Disovery via Homepage ===
You may also make your document discoverable via a link element in the head of the homepage of your organisation.
  <link rel='openorgProfile' href='...url...' />
  <link rel='openorgProfile' href='...url...' />

Revision as of 12:52, 4 November 2012


This is a draft

This document defines an organisational profile document, which can be used to discover datasets about aspects of the organisation, and standards-conformant APIs which can be used to interact with some aspect of the organisation.

The profile document is a dataset about the organisation.


Name Organization Contact
Alexander Dutton University of Oxford alexander.dutton@it.ox.ac.uk
Christopher Gutteridge University of Southampton cjg@ecs.soton.ac.uk

Namespaces used in this document

Wherever possible, we seek to use pre-existing vocabularies and terms. Here are the namespaces we re-use:

Name Prefix Namespace Documentation
Organization ontology org http://www.w3.org/ns/org# http://www.epimorphics.com/public/vocabulary/org.html
vCard v http://www.w3.org/2006/vcard/ns# http://www.w3.org/TR/vcard-rdf/
SKOS (Simple Knowledge Organization System) skos http://www.w3.org/2004/02/skos/core# http://www.w3.org/2004/02/skos/
FOAF (Friend of a Friend) foaf http://xmlns.com/foaf/0.1/ http://xmlns.com/foaf/spec/
DCMI Type (Dublin Core Metadata Initiative Type) dcmit http://purl.org/dc/dcmitype/ http://dublincore.org/documents/2002/07/13/dcmi-type-vocabulary/


The profile document should be available as either RDF/XML (application/rdf+xml) or Turtle (text/turtle). One may implement content negotiation, but it isn't required.


The document should be of type oo:OrganizationProfileDocument, and contain a foaf:primaryTopic property pointing at the organization. We recommend that you use a class from the Organization ontology, such as org:FormalOrganization

RDF/XML <syntaxhighlight lang="xml"> <?xml version="1.0" encoding="utf-8"?> <rdf:RDF

 <oo:OrganizationProfileDocument rdf:about="">
     <org:FormalOrganization rdf:about="http://id.example.org/">

</rdf:RDF> </syntaxhighlight>

Turtle <syntaxhighlight lang="n3">

@prefix rdf:  <http://www.w3.org/1999/02/22-rdf-syntax-ns#> .
@prefix foaf: <http://xmlns.com/foaf/0.1/> .
@prefix org:  <http://www.w3.org/ns/org#> .
@prefix oo:   <http://purl.org/openorg/> .

<> a oo:OrganizationProfileDocument ;
   foaf:primaryTopic <http://id.example.org/> .

<http://id.example.org/> a org:FormalOrganization .

# organization metadata 

# profile documents 


Organization metadata

We recommend that you include the following metadata about your organization:

Purpose Predicates Description Examples Requirement
Preferred name skos:prefLabel Use skos:prefLabel for the primary (e.g. legally-recognised) name. You may provide names in more than one language if necessary, but there should be at most one in any language. <syntaxhighlight lang="xml"><skos:prefLabel>Cardiff University</skos:prefLabel></syntaxhighlight>

<syntaxhighlight lang="xml"><skos:prefLabel xml:lang="en">Cardiff University</skos:prefLabel> <skos:prefLabel xml:lang="cy">Prifysgol Caerdydd</skos:prefLabel></syntaxhighlight>

Alternative names skos:altLabel Use skos:altLabel for trading names and abbreviations. You may include as many alternative names as you wish. <syntaxhighlight lang="xml"><skos:altLabel>UWE</skos:altLabel></syntaxhighlight> MAY
Hidden names skos:hiddenLabel Use skos:hiddenLabel for names your organization is known by, but which aren't official. Examples include colloquial names, and common misspellings. These names may be used to help find your organization in searches. You may include as many hidden names as you wish. <syntaxhighlight lang="xml"><skos:hiddenLabel>Leeds Met</skos:hiddenLabel></syntaxhighlight> MAY
Sort name ov:sortLabel A string by which your organization should be sorted. There should be at most one, and your preferred label will be used if one isn't provided. <syntaxhighlight lang="xml"><ov:sortLabel>Oxford, University of</ov:sortLabel></syntaxhighlight>

<syntaxhighlight lang="xml"><ov:sortLabel>Saint Andrews, University of</ov:sortLabel></syntaxhighlight>

Telephone number (voice) v:tel The main contact number for your organization. <syntaxhighlight lang="xml"><v:tel>
 <v:Voice rdf:about="tel:+44-1234-123456">
   <rdfs:label>01234 123456</rdfs:label>


Telephone number (facsimile) v:tel The main fax number for your organization. <syntaxhighlight lang="xml"><v:tel>
 <v:Fax rdf:about="tel:+44-1234-123456">
   <rdfs:label>01234 123456</rdfs:label>


Logo foaf:logo The logo of your organization. We recommend this is a "web" site image, rather than a high resolution. <syntaxhighlight lang="xml">
 <foaf:logo rdf:resource='http://www.example.com/logo.png' /></syntaxhighlight>

Data Documents and Datasets

One of the goals of the organisational profile document is to allow systems to discover data about your organisation. Some information may be available as a single document (such as an RSS feed), other types of information may be available in alternate ways (eg. many repositories support OAI-PMH to retrieve their catalogue without the need to keep downloading a huge docmuent every time.

A Data Document is a single document, available from a URL, from which a Dataset may be obtained, it may not always contain the entire dataset. For example a dataset may be "News of our organisation" but the RSS feed would only contain the most recent 10 items.

Generally you only need to describe a dataset OR a data document, but in rare cases you might wish to describe both, if a dataset both has a data document and APIs to access it.

What to Include

Large organisations may have thousands of datasets. The profile document is only concerned with datasets which it is predictable for many organisations to have in common. For more specialist datasets, create a dataset catalogue and make that discoverable via the profile document.

Only datasets relating to the publishing organisation itself should be included in the profile.


A dataset should be identified by a URI. This identifies and abstract contcept, so should not be the URL of a website. If in doubt use a fragment identifier on the profile iteself. eg.

<syntaxhighlight lang="xml">

 <dcmit:Dataset rdf:about="#jobs">


Data Document


Discovering with well-known URI (preferred method)

The RFC 5758 defines a mechanism for reserving 'well-known' URIs on any Web server.

We intend to register the well-known URI /.well-known/openorg for the purpose of discovering the organisational profile document.

This may either serve the document directly or provide an HTTP redirect to the document URL.

Discovery with Linked Data

An Organisational Profile Document is the ideal thing to return when resolving the URI of your organiation.

Disovery via Homepage

You may also make your document discoverable via a link element in the head of the homepage of your organisation.

<link rel='openorgProfile' href='...url...' />