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

Difference between revisions of "Context Data Model"

(Redirecting to Context Data Model 1.0)
 
(43 intermediate revisions by 4 users not shown)
Line 1: Line 1:
== Introduction ==
+
#REDIRECT [[Context Data Model 1.0]]
The [[Higgins Global Graph]] provides a foundation for integrating, unifying, and sharing identity data. It enables portability of three key types of data:
+
 
+
# '''Identity''' data, i.e., identifiers and credentials related to identification, authentication, authorization, etc.
+
# '''Attribute''' data, i.e., contact information, preferences, interests, and associated objects like events, wishlists, presence, state, etc.
+
# '''Relation''' data, i.e., attributes representing relationships (e.g., "friends", "customers", "suppliers") and other kinds of associations with people, organizations, etc. A particular kind of relation, called a '''correlation''', models a link between different representations of the same entity (e.g., a person) in different contexts.
+
 
+
See the [http://dev.eclipse.org/viewsvn/index.cgi/org.eclipse.higgins/trunk/doc/org.eclipse.higgins.doc/Higgins-Data-Model-Intro.ppt?root=Technology_SVN&view=co Higgins Data Model Intro (PPT)] for a Powerpoint overview.
+
 
+
== 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]] data model 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.
+
 
+
=== 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 [[Entity]] and "full-name" and "email" as kinds of [[Attribute]]s.
+
 
+
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]]
+
 
+
== IdAS ==
+
 
+
The [[Identity Attribute Service]] (IdAS) provides a Java API that exposes read/write-able data from a wide variety of external data sources that can be "plugged in" to the [[Higgins Global Graph]]. (Note that the IdAS API implements but does not define the semantics of the [[Higgins Global Graph]] model.)
+
 
+
[[Context Provider]] plug-ins to IdAS are used to adapt external systems, sites, databases, or other data sources to the IdAS API. These [[Context Provider]]s are responsible for data transformation between the Higgins model and their own internal data model. Higgins does not constrain the [[Context Provider]]'s choice of data representation; it can be XML-based, object-oriented, relational, or anything else.
+
 
+
[[Context Provider]]s can be used to adapt data stores/sources such as:
+
* ''Directories'': LDAP stores like eDirectory, Active Directory, OpenLDAP, etc.
+
* ''Relational databases'': used by enterprise apps to store identity/profile information.
+
* ''Online social networks'' (node-edge graphs): data behind Facebook, MySpace, LinkedIn, etc.
+
* ''Messaging systems'': email, IM, collaboration client contact/buddy lists.
+
* ''Website account "silos"'': personal profile and preference information stored sites like eBay, Amazon, Google Groups, Yahoo Groups, etc.
+
 
+
== Higgins Global Graph: IdAS Specifications ==
+
 
+
The [[Higgins Global Graph]] implementation is built on existing, proven web and semantic web technologies. It extends these by profiling their use within the context of Higgins.
+
 
+
[[Image:HGG-v10.PNG]]
+
 
+
=== Identifiers ===
+
* [[ContextIdDataRange]] - A URI or XRI used to identify a [[Context]]
+
* [[NodeIdDataRange]] - A URI or XRI used to identify a [[Node]], either absolutely within a specific [[Context]] or relatively within a given [[Context]].
+
 
+
=== Discovery ===
+
* [[Context Discovery]] defines the process of resolving a [[NodeIdDataRange]] to obtain a [[Higgins XRDS Service Endpoint]] or [[Higgins XDI Context Descriptor]].
+
* [[Higgins XRDS Service Endpoint]] defines how XRDS documents are used to support access to [[Node]]s in the [[Higgins Global Graph]].
+
* [[Higgins XDI Context Descriptor]] does the same for XDI documents.
+
 
+
=== Ontology ===
+
* [[HOWL]] - Conventions on how W3C Web Ontology Langugage (OWL) is used to describe the [[Attribute]]s of [[Node]]s representing [[Entity | Entities]] in the [[Higgins Global Graph]].
+
 
+
==Open Issues==
+
* [[Data Model 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: [http://www.wiwiss.fu-berlin.de/suhl/bizer/toolkits/ Developers Guide to Semantic Web Toolkits]
+
** Reference documents: [http://www.w3.org/2001/sw/WebOnt/#Current W3C Web Ontology Working Group]
+
** Tutorial: http://www.cs.man.ac.uk/~horrocks/ISWC2003/Tutorial/
+
* Normalization to OWL/RDF
+
** [http://www.ldap.com/1/spec/schema/ont.shtml Schemat]
+
** Sebastian Dietzold, Generating RDF Models from LDAP Directories (PDF), [http://www.semanticscripting.org/SFSW2006/ 2nd Workshop on Scripting for the Semantic Web] co-located with the [http://www.eswc2006.org/ 3rd European Semantic Web Conference], June 12, 2006
+
 
+
===Misc Resources===
+
* http://wiki.idcommons.net/index.php/Identity_Schemas
+
* "D3.2: Models" FIDIS, October, 2005, ([http://www.fidis.net/fileadmin/fidis/deliverables/fidis-wp2-del2.3.models.pdf 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.
+
* [http://www.nmi-edit.org/eduPerson/internet2-mace-dir-eduperson-200604.html eduPerson spex]
+
 
+
== Links ==
+
* [http://eclipse.org/higgins Higgins Home]
+

Latest revision as of 16:04, 20 June 2008

Back to the top