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

Persona Data Model 2.0

Revision as of 15:19, 24 February 2011 by Ptrevithick.gmail.com (Talk | contribs) (Meta Context)

{{#eclipseproject:technology.higgins|eclipse_custom_style.css}}
Higgins logo 76Wx100H.jpg

The Persona Data Model 2.0 is a vocabulary for describing people that is used by Attribute Data Service 2.0. This page is essentially an introduction. For more details see Persona vocabulary

Person graph

A natural, human person is represented as a graph of p:Person entities (nodes, or vertices) interconnected by links (edges). Each node represents a different facet of the user (person). Each of these facets is held in a separate (graph) container called a context.

Each Person node is a set of attributes and values. These attributes may be simple literals (e.g. the user's first name) or they may be other entities (which we call complex attributes). These latter attributes are shown in diagrams a as links to other nodes.

Typically each node in the person graph is located in its own container call a Context. The root node lies in a special context (for each user) called the root context.

All of the main person entities can be reached by traversing links of the following kinds, (although other links may also exist (e.g. p:source, foaf:knows, etc.)):

  • h:correlation
  • h:relation
  • h:indeterminate

In order to simplify the diagram below we follow a convention whereby the links are drawn between contexts whereas in reality the links are between the main p:Person objects within each of these contexts. Further, these main person entities may well themselves have complex attributes (i.e. links to other entities). These have also been omitted.

Person graph 2.0.121.png

Meta and Control Contexts

Meta Context

Each regular context may have up to one associated "meta" context (pointed to by p:metaContext attribute). This meta has two sets of attribute. The first set is defined by the Persona data model and describes events (e.g. information disclosure events) that relate to the data in the context.

The second set of attributes is implementation specific. It may contain statements about:

  • access control policy - what parties are allow what kinds of access (e.g. read, write, append) to the associated regular context
  • date-time statements about when the associated regular context was created, modified, etc.
  • graph versioning information

Template Context

Each regular context may have up to one associated "control" context (pointed to by h:control attribute). This control context contains:

  • so-called "view" information that describes how to logically organize a presentation interface for the associated regular context
  • information related to how to dynamically build so-called AppData contexts that are pointed to by the Person in the associated regular context

Visually

Meta and template context.png

Representing Social Graphs

h:relation

HDM defines a h:relation complex attribute that is used in PDM to link one Person node to another where each Person node represents a different person. No symmetry is implied in this thus the statement (A h:relation B) is akin to saying person A "knows of" person B.

Shown below are two social graph examples. One uses foaf:knows links and and (unrelated to this) shows each node in its own context. The other uses h:relation links and (unrelated) shows all person nodes in a single context. In the Work context we see that the user knows three colleagues but doesn't know how they know one another. In the Home & Family context we see that the user knows two people and that everyone knows one another. The foaf:knows links are shown in both directions although logically this is redundant since foaf:knows is what is a called a symmetric relation.

Nodes that represent the user are shown in purple. Nodes representing a person other than the user are shown in red.

Social graph 2.0.102.png

foaf:knows

To indicate that a person A "knows" person B where some level of reciprocated interaction between the parties is implied, we use foaf:knows.

Since foaf:knows is a broader concept than h:relation, foaf:knows is not a sub-attribute of h:relation. Thus if we had the statement "A h:relation B" then we might later add a second statement "A foaf:knows B" to add the stronger, broader (and symmetric) concept of "knowing."

h:indeterminate

HDM also defines h:indeterminate link attribute on node A to indicates that its value(s) may or may not represent the same thing as is represented by A.

Implementation Note

Consumers of the HDM may traverse h:relation, h:correlation and h:indeterminate attribute links and (despite ignoring all other links) traverse the entire graph of Person nodes.

Vocabularies

Contexts may describe their contents in any vocabulary they wish so long as it builds on the Persona vocabulary. In the person graph example above all of the contexts except one describe their contents using the Persona Data Model (vocabulary) (shown as purple "PDM"s above). The exception is the managed i-card from Equifax which uses attribute (aka claim) URIs defined by the OASIS IMI TC and by the ICF's (Information Card Foundation) schema working group.

Concept Scheme

Persona.owl includes the following skos:Concept instances. This structure is used to define the logical groupings of attributes defined in the Persona Data Model.

Concept-hierarchy.png

See Higgins Data Model 2.0 for information about Concept schemes.

Naming Conventions

@@@Need to rewrite. Old Persona Data Model Naming Notes

Examples

Imagine a root context containing a p:Person node locally named "me". This root node could have h:correlation links pointing to the root "me" nodes in two contexts, a web profile context, and a alice-staples context.

The web profile context might look like this:

Webprofile.png

The staples context (the profile of the user at staples.com) might look like this:

Alice-staples2.png

Links

Rough notes; a bit long in the tooth:

Back to the top