FOAF-Persona

A schema for indicating relationships between personas and real people.

Ian Jacobi, 6 August 2005

Latest Version:
http://www.pipian.com/schemas/foaf/persona.html
Previous Version:
none
Authors:
Ian Jacobi

Abstract

The FOAF-Persona schema is designed to allow for indicating the existence of, and relationships between, personas and persons.

An RDF Schema is located here.

Namespace URI

http://www.pipian.com/schemas/foaf/persona#

Class

Persona

A persona is a representation of a person's identity in a given context, typically different enough from other contexts to justify calling it a separate identity. The Persona class is, as a subclass of foaf:Person, essentially identical to it in usage, though it it carries with it the interpretation of not being the actual identity of a person. As a result, the foaf:PersonalProfileDocument class should not have an foaf:maker property that references an instance of the Persona class.

For example, here is a fragment of an foaf file that might contain metadata on a Persona, together with a foaf:PersonalProfileDocument class.

<foaf:Person rdf:nodeID="p1">
 <foaf:name>Clark Kent</foaf:name>
 <rdfs:seeAlso rdf:reference="clarkkent.rdf"/>
</foaf:Person>

<persona:Persona rdf:nodeID="p2">
 <foaf:name>Superman</foaf:name>
 <!-- etc... -->
</persona:Persona>

<foaf:PersonalProfileDocument rdf:about="">
 <foaf:maker rdf:nodeID="p1"/>
 <foaf:primaryTopic rdf:nodeID="p2"/>
</foaf:Person>

Naturally, the choice of what makes up a persona and a real person is up to the choice of the FOAF writer.

Properties

hasPersona

The hasPersona property is a representation of a person having a particular Persona. It is to be used essentially identically to the foaf:knows property, having been derived from it, though it is more accurate.

For example, here is a fragment of an foaf file that might contain metadata on a Person, linking to his Personas.

<foaf:Person>
 <foaf:name>Clark Kent</foaf:name>
 <!-- etc... -->
 <persona:hasPersona>
  <persona:Persona>
   <foaf:name>Superman</foaf:name>
   <rdfs:seeAlso rdf:resource="superman.rdf"/>
  </persona:Persona>
 </persona:hasPersona>
</foaf:Person>

isPersonaOf

The isPersonaOf property is the inverse of the hasPersona property. It is to be used essentially identically to the foaf:knows property, having been derived from it, though it is more accurate.

For example, here is a fragment of an foaf file that might contain metadata on a Persona, linking to his Person.

<foaf:Person>
 <foaf:name>Superman</foaf:name>
 <!-- etc... -->
 <persona:isPersonaOf>
  <foaf:Person>
   <foaf:name>Clark Kent</foaf:name>
   <rdfs:seeAlso rdf:resource="clarkkent.rdf"/>
  </foaf:Person>
 </persona:isPersonaOf>
</foaf:Person>

Note that while the range of the hasPersona property must be a Persona, the domain of isPersonaOf need not be a Persona. This allows for a person to keep the Persona in relative precedence, by using a foaf:Person class to describe it.

To Consider

See Also