Notice: This Wiki is now read only and edits are no longer possible. Please see: https://gitlab.eclipse.org/eclipsefdn/helpdesk/-/wikis/Wiki-shutdown-plan for the plan.
Context Data Model
Contents
Introduction
Although it can be used for almost any kind of data, the focus of the Higgins Global Graph is to provide a foundation for integrating, unifying, and sharing identity-related data. In particular we are focused on information about a person, a group or an entire organization. This might include contact information, authentication data, preferences, email addresses, interests, employer-related information. An object representing a single person, might have relationships to other objects and other people in the same or different data contexts.
Note that Higgins provides only an abstract, base vocabulary for identity information. Definitions of specific attributes and sets of attributes, as well as classes of objects (e.g. calendar events, movies, books, etc.) are all left to be defined by Higgins Context Provider developers.
See the Higgins Data Model Intro (PPT) for a Powerpoint overview.
See Higgins Global Graph Background for information about motivations and design goals.
Domain Concepts
The Higgins Global Graph defines these Concepts (listed alphabetically):
- Attribute
- Context
- ContextId
- Context Relation
- Context Correlation
- Data Range --formerly Attribute Value Datatype
- Entity
- Node --formerly Digital Subject
- NodeId
- Node Relation
- Node Correlation
Higgins Ontology Language (HOWL)
Rather than invent a new metamodel from scratch, the Higgins Global Graph is based on the W3C's Resource Description Framework (RDF) and Web Ontology Language (OWL 1.0). We use RDF and OWL to express an abstract base ontology called HOWL (higgins.owl) that in turn describes the domain of identity information.
- See HOWL
Extending HOWL
HOWL is a base ontology. To be useful in real-world applications developers must develop specialized ontologies based on HOWL that describe a specific concrete domain.
For example, if a developer wanted to describe a CRM database, she would create an OWL ontology that would describe the data objects in the CRM database. This CRM database is called a Context in Higgins. If, for example, the database contained records about customers and those customers had full-names and email addresses, then the developer would define "Customer" as a sub-class of Node and "full-name" and "email" as kinds of Attributes.
Here are some HOWL-based Ontologies (note - these need to be updated):
- test-person Example Context Ontology
- Person-with-address Example Context Ontology
- Person-with-friend Example Context Ontology
Open Issues
References
RDF/OWL Related Resources
- OWL
- W3C OWL working group: http://www.w3.org/2007/OWL/wiki/OWL_Working_Group
- OWL 1.1 at Google Code: http://code.google.com/p/owl1-1/
- OWL 1.1 WD 8: http://www.w3.org/TR/owl11-syntax/
- Semantic Web (RDF/OWL) Resources
- Toolkit: Developers Guide to Semantic Web Toolkits
- Reference documents: W3C Web Ontology Working Group
- Tutorial: http://www.cs.man.ac.uk/~horrocks/ISWC2003/Tutorial/
- Normalization to OWL/RDF
- Schemat
- Sebastian Dietzold, Generating RDF Models from LDAP Directories (PDF), 2nd Workshop on Scripting for the Semantic Web co-located with the 3rd European Semantic Web Conference, June 12, 2006
Misc Resources
- http://wiki.idcommons.net/index.php/Identity_Schemas
- "D3.2: Models" FIDIS, October, 2005, (PDF 74 pages). Summary: "The objective of this document is to present in a synthetic way different models of representation of a person ("person schema") that can be used in different application domains.
- eduPerson spex