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

PDS Architecture

Revision as of 10:06, 26 August 2011 by Ptrevithick.gmail.com (Talk | contribs) (A Common Vocabulary)

{{#eclipseproject:technology.higgins|eclipse_custom_style.css}}
Higgins.funnell.PNG

This document describes the top level Higgins 2.0 PDS components under active development. Here are the bugzilla component names:

  • H2-Client
  • H2-HBX
  • H2-PDS
  • H2-PDS Support
  • H2-ADS
  • H2-Data Model

Front End Components

There are two front end components: a web client, and a browser extension.

Higgins-client-2.0.213.png

Client

The client is written in HTML and JavaScript and runs in any desktop browser (e.g. IE, FF, Safari, Chrome). In the future we also plan to make it display well on the limited screen size of smartphone mobile browser (e.g. iPhone, Android, etc.).

HBX

The Higgins browser extension makes possible functionality that isn't possible in a pure web app architecture. One kind of functionality is browser-side integration with other web APIs and sites. Shown above is a connector that imports the user's advertising preferences from Google's Ad Preference page (http://www.google.com/ads/preferences).

Back End Components

There are three back end components mostly written in Java and running in the cloud (e.g. Amazon AWS):

  • PDS
  • PDS Support
  • ADS
Server 2.0.216.png

PDS

PDS Subcomponents:

  • .pds.usermanager.ws - simple web service to manage user accounts, change password, etc.

PDS Support

PDS Support Subcomponents:

  • .pds.client - wrapper around Open Anzo java client

ADS

ADS Subcomponents:

  • PLANNED: .ads.ld - Linked Data endpoint

Data Model

Data Model

Data that is either created by the user and stored on the PDS or passes through the PDS intermediary on its way from the data source to the data consuming service can in many cases be mapped into a rich, common data model. This allows it to be consistently displayed to, and in some cases edited by, the user irrespective of its original source. The common data model being developed for the purpose of representing people and their social networks is called the Persona Data Model 2.0. The Persona Data Model 2.0 builds on the Higgins Data Model 2.0 which defines a small set of fairly abstract attributes.

Naming: Entity and Context Ids

@@@TODO: describe the notion of globally unique graph of UDIs; the fact that in Higgins 2.0 we are only allowing UDIs to be Linked Data URIs; the fact that there will be TWO separate APIs that clients can be built on; the first API provides data access to the local contents of the ADS; the second API provides access to the open web of data defined by (Linked Data) UDIs; the fact that the entire contents of the ADS can be treated as a cache of a (tiny) portion of the UDI web of data; need to describe the component that maintains the map from the URI of the external information resource vs. the URI of its data description (these are the WRONG terms) and a time-to-live; refresh algorithms; etc.

Back to the top