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 "Proxy vocabulary"

(UML Overview)
(connectionType)
 
(43 intermediate revisions by the same user not shown)
Line 1: Line 1:
{{#eclipseproject:technology.higgins|eclipse_custom_style.css}} [[Image:Higgins logo 76Wx100H.jpg|right]]
+
{{#eclipseproject:technology.higgins|eclipse_custom_style.css}}  
 +
A proxy is an object that stands in for a "real" object that is stored in the local Attribute Data Store (ADS). The proxy's proxy:resource URI that is a link to the "real" object. To support a visual representation of a proxy, proxies have optional background color, image and imageType attributes.
  
A vocabulary to describe the Proxies. A Proxy is an (abstract) proxy for an object that is stored external to the local data store. Concrete subclasses of Proxy specify how this external object it accessed (e.g. by specifying location of the object, the used protocol to access it, and any authentication materials required). Each Proxy instance has a resource attribute that is a reference to a representation of the external object in a context in the local data store. Some Proxies may be represented as visual icons/metaphors in a UI. To support this it has optional background color, image and imageType attributes. Imported by [[Persona vocabulary]].
+
Subclasses of Proxy exist that add a second reference--a reference to an object stored ''external'' to the local ADS. Specific subclasses indicate the protocol used to access it, and any authentication materials required).  
 +
 
 +
Part of the [[Persona Data Model 2.0]].
  
 
=== Files ===
 
=== Files ===
Line 8: Line 11:
 
==UML Overview==
 
==UML Overview==
  
[[Image:Proxy 2.0.107.png|center]]
+
[[Image:Proxy-2.0.125b.png|center]]
  
 
==Classes==
 
==Classes==
  
 
===App===
 
===App===
A metaphor representing a nugget of application functionality in the PDS that can read from any of the user's contexts (including contexts pointed to by Card Proxies) and can read/write the h:Agent (likely a p:Person, to be more precise) entity to which its proxy:resource link points, as well as any other entities/attributes within the context containing this h:Agent. In some cases this h:Agent isn't really needed and doesn't hold any attributes; in these cases it is merely being used as a way to identify the surrounding read/write context.
+
An App Proxy references an h:Agent (usually a p:Person) that an App (a PDS add-on) can use for local storage.
 
+
 
* subClassOf Proxy
 
* subClassOf Proxy
 +
* description xsd:String
  
 
===Connection===
 
===Connection===
Abstract class. A metaphor representing an attribute data channel to/from an external site or API.  
+
Abstract class. A metaphor representing an attribute data channel to/from an external party. The ''connectionType'' attribute indicates the nature of the party on the other end of the connection.
  
 
* subClassOf Proxy
 
* subClassOf Proxy
Line 25: Line 28:
  
 
Known subclasses of Connection: I-Card (See [[I-Card vocabulary]]), WebLogin, LinkedData, XRI2.0
 
Known subclasses of Connection: I-Card (See [[I-Card vocabulary]]), WebLogin, LinkedData, XRI2.0
 +
 +
===EmailRelationshipType===
 +
Values of emailRelationship attribute. Instances:
 +
* Account : User receives emails from a registered account at the site of this WebLogin connector.
 +
* Forwarded : User receives emails from the site of this WebLogin that are forwarded from an external email inbox
 +
* SharedSubscription : User has no direct email relationship with the site of this WebLogin but instead is delivered copies of the emails received by some other entity.
 +
* Subscription : User is subscribed to the mailling list of the site of this WebLogin.
 +
 +
===ConnectionType===
 +
Abstract class. A categorization of the proxy:Connection
 +
todo: list subclasses
  
 
=== LinkedData ===
 
=== LinkedData ===
Line 34: Line 48:
 
A connection that uses HTML screen scraping and form filling to read/write from/to an external website. The 'externalResource' is the URI of the homepage of this site. If login is required then userid and password are the values required to login.
 
A connection that uses HTML screen scraping and form filling to read/write from/to an external website. The 'externalResource' is the URI of the homepage of this site. If login is required then userid and password are the values required to login.
 
* subClassOf: Connection
 
* subClassOf: Connection
* 0..1 userid
+
 
* 0..1 password
+
* 0..1 invalidCredentials
 
* 0..1 neverRememberPassword
 
* 0..1 neverRememberPassword
 +
* 0..1 password
 +
* 0..1 userid
 +
* 0..1 loginPage
 +
* 0..1 registerPage
 +
* 0..1 subscribePage
 +
* 0..1 hasConnector
 +
* 0..1 sendsEmails
  
 
=== Proxy ===
 
=== Proxy ===
A (abstract) proxy for an object that is stored external to the local data store. Concrete subclasses of Proxy specify how this external object it accessed (e.g. by specifying location of the object, the used protocol to access it, and any authentication materials required).  Each Proxy instance has a resource attribute that is a reference to a representation of the external object in a context in the local data store. Some Proxies may be represented as visual icons/metaphors in a UI. To support this it has optional background color, image and imageType attributes
+
A (abstract) proxy for an object that is stored external to the local data store. Concrete subclasses of Proxy specify how this external object it accessed (e.g. by specifying location of the object, the used protocol to access it, and any authentication materials required).  Each Proxy instance has a resource attribute that is a reference to a representation of the external object in a context in the local data store. Some Proxies may be represented as visual icons/metaphors in a UI. To support this it has optional background color, image/imageType or imageURL attributes
* 1..1 skos:prefLabel - display name
+
* 1..1 displayName
 
* 1..1 resource
 
* 1..1 resource
 +
* 1..1 template
 
* 0..1 backgroundColor
 
* 0..1 backgroundColor
 
* 0..1 image
 
* 0..1 image
 
* 0..1 imageType
 
* 0..1 imageType
 +
* 0..1 imageURL
  
 
===XRI2.0===
 
===XRI2.0===
Line 60: Line 83:
  
 
=== externalResource ===
 
=== externalResource ===
URI of a higgins:Agent (likely a persona:Person) stored external to the PDS
+
URI of a resource external to the ADS. Different Connection subclasses interpret this differently.
* domain: Connection
+
* value: xsd:anyURI
* value: h:Agent
+
  
 
=== connectionType ===
 
=== connectionType ===
Indication of the nature of the counter party of this connection. If the value is "business" then the counterparty pointed to by 'externalResource' is some kind of organization. If the value is "person" then 'externalResource' is an identifier of a person (e.g. if this is a LinkedData Connection then it could be the URI of the "me" entity in a FOAF file). If the value is "ad" then this Connection is a connection to a set of businesses (e.g. Google, Yahoo, Bizo, Excelate, etc.) from which interests & demographics can be read and to which user-managed values of such can be written.  
+
Categorization of the external resource party.
 
* domain: Connection
 
* domain: Connection
* value: one of ("business", "person", "ad")
+
* value: ConnectionType
 
+
  
 
==WebLogin Attributes==
 
==WebLogin Attributes==
  
=== userid ===
+
=== domain ===
Username or email etc. used by external site to identify the user.
+
DND domain name of this site (e.g. nytimes.com)
* domain: WebLogin
+
 
* value: xsd:string
 
* value: xsd:string
  
=== password ===
+
=== emailRelationship ===
Password used in conjunction with userid to login user.
+
Nature of the relationship the user has with this WebLogin's externalResource especially WRT email communications.
 
* domain: WebLogin
 
* domain: WebLogin
* value: xsd:string
+
* value: EmailRelationshipType
 +
 
 +
=== hasConnector ===
 +
If true this PDS instance is deployed with a connector that can integrate with the external object
 +
* value: xsd:boolean
 +
 
 +
=== imageURL ===
 +
Optional URL of background image. An alternative to the embedded image/imageType attributes.
 +
* value: foaf:Image
 +
 
 +
=== invalidCredentials ===
 +
If true, then some attempt has been made to use the userid/password but the login failed.
 +
* domain: WebLogin
 +
* value: xsd:boolean
 +
 
 +
=== loginPage ===
 +
URL of a page where a user can login to this site.
 +
* value: Entity
  
 
=== neverRememberPassword ===
 
=== neverRememberPassword ===
Line 86: Line 123:
 
* domain: WebLogin
 
* domain: WebLogin
 
* value: xsd:boolean
 
* value: xsd:boolean
 +
 +
=== oldUserid ===
 +
The userid (that is also an email address) that had been used BEFORE the current value (see 'userid') is used by an external site to identify the user. E.g. paul@fabrikam.com. If the user had used a ChangeEmail connector script and changed their email in their account at fabrikam.com from paul@gmail.com to paul@azigo.com, then paul@gmail.com would be the oldUserid.
 +
* domain: WebLogin
 +
* value: p:emailDatatype
 +
 +
=== password ===
 +
Password used in conjunction with userid to login user.
 +
* domain: WebLogin
 +
* value: xsd:string
 +
 +
=== registerPage ===
 +
URL of a page where the user can register for a new account at this site.
 +
* value: Entity
 +
 +
=== sendsEmails ===
 +
If true the external website sends emails to those on its mailing list
 +
* value: xsd:boolean
 +
 +
=== subscribePage ===
 +
URL of a page where the user can subscribe to emails from this site.
 +
* value: Entity
 +
 +
=== userid ===
 +
A userid (that is also an email address) used by an external site to identify the user. E.g. paul@fabrikam.com
 +
* domain: WebLogin
 +
* value: p:emailDatatype
 +
 +
=== useridOnly ===
 +
A userid (that is not an email address) used by an external site to identify the user. E.g. "john53"
 +
* domain: WebLogin
 +
* value: xsd:string
  
 
==Proxy Attributes==
 
==Proxy Attributes==
  
 
=== backgroundColor ===
 
=== backgroundColor ===
Background image of a Card.
+
Background image of a Proxy/Card.
* domain: Proxy
+
* value: xsd:string
 +
 
 +
=== displayName ===
 +
Short human-friendly name for this Proxy.
 
* value: xsd:string
 
* value: xsd:string
  
===image===
+
=== image ===
* domain: Proxy
+
 
* value: xsd:base64
 
* value: xsd:base64
  
 
=== imageType ===
 
=== imageType ===
* domain: Proxy
 
 
* one of ("JPG", "GIF", "PNG")
 
* one of ("JPG", "GIF", "PNG")
  
===resource===
+
=== resource ===
 
Entity stored in local data store that is a local representation of the external object represented by this Proxy.
 
Entity stored in local data store that is a local representation of the external object represented by this Proxy.
* domain: Proxy
+
* value: higgins:Agent
* value: h:Agent
+
  
 
==XRI 2.0 Attributes==
 
==XRI 2.0 Attributes==

Latest revision as of 15:05, 27 July 2012

{{#eclipseproject:technology.higgins|eclipse_custom_style.css}} A proxy is an object that stands in for a "real" object that is stored in the local Attribute Data Store (ADS). The proxy's proxy:resource URI that is a link to the "real" object. To support a visual representation of a proxy, proxies have optional background color, image and imageType attributes.

Subclasses of Proxy exist that add a second reference--a reference to an object stored external to the local ADS. Specific subclasses indicate the protocol used to access it, and any authentication materials required).

Part of the Persona Data Model 2.0.

Files

UML Overview

Proxy-2.0.125b.png

Classes

App

An App Proxy references an h:Agent (usually a p:Person) that an App (a PDS add-on) can use for local storage.

  • subClassOf Proxy
  • description xsd:String

Connection

Abstract class. A metaphor representing an attribute data channel to/from an external party. The connectionType attribute indicates the nature of the party on the other end of the connection.

  • subClassOf Proxy
  • 1..1 externalResource
  • 1..1 connectionType

Known subclasses of Connection: I-Card (See I-Card vocabulary), WebLogin, LinkedData, XRI2.0

EmailRelationshipType

Values of emailRelationship attribute. Instances:

  • Account : User receives emails from a registered account at the site of this WebLogin connector.
  • Forwarded : User receives emails from the site of this WebLogin that are forwarded from an external email inbox
  • SharedSubscription : User has no direct email relationship with the site of this WebLogin but instead is delivered copies of the emails received by some other entity.
  • Subscription : User is subscribed to the mailling list of the site of this WebLogin.

ConnectionType

Abstract class. A categorization of the proxy:Connection todo: list subclasses

LinkedData

A reference to an external representation (e.g. a person) stored as Linked Data in the Semantic Web (probably using FOAF). See (http://linkeddatabook.com/editions/1.0/). The value of its inherited externalResource attribute is a LinkedData URI (303 or Hash)

  • subClassOf Connection

WebLogin

A connection that uses HTML screen scraping and form filling to read/write from/to an external website. The 'externalResource' is the URI of the homepage of this site. If login is required then userid and password are the values required to login.

  • subClassOf: Connection
  • 0..1 invalidCredentials
  • 0..1 neverRememberPassword
  • 0..1 password
  • 0..1 userid
  • 0..1 loginPage
  • 0..1 registerPage
  • 0..1 subscribePage
  • 0..1 hasConnector
  • 0..1 sendsEmails

Proxy

A (abstract) proxy for an object that is stored external to the local data store. Concrete subclasses of Proxy specify how this external object it accessed (e.g. by specifying location of the object, the used protocol to access it, and any authentication materials required). Each Proxy instance has a resource attribute that is a reference to a representation of the external object in a context in the local data store. Some Proxies may be represented as visual icons/metaphors in a UI. To support this it has optional background color, image/imageType or imageURL attributes

  • 1..1 displayName
  • 1..1 resource
  • 1..1 template
  • 0..1 backgroundColor
  • 0..1 image
  • 0..1 imageType
  • 0..1 imageURL

XRI2.0

A reference to an external representation (e.g. a person). The value of the inherited externalReference attribute is an XRI 2.0 URI. Dereferences to an XRDS discovery document.

  • subClassOf Card
  • 0..1 app-data:appData - provides a "template" for the AppData object within a dynamically created AppDataContext (see App-data vocabulary)
  • 1..1 authNMaterialsType
  • 1..1 contextType
  • 0..1 udiMetadata

UDIMetadata

A set of attribute/values that, taken together, are considered the "metadata" for the XRDS service endpoint.

Connection Attributes

externalResource

URI of a resource external to the ADS. Different Connection subclasses interpret this differently.

  • value: xsd:anyURI

connectionType

Categorization of the external resource party.

  • domain: Connection
  • value: ConnectionType

WebLogin Attributes

domain

DND domain name of this site (e.g. nytimes.com)

  • value: xsd:string

emailRelationship

Nature of the relationship the user has with this WebLogin's externalResource especially WRT email communications.

  • domain: WebLogin
  • value: EmailRelationshipType

hasConnector

If true this PDS instance is deployed with a connector that can integrate with the external object

  • value: xsd:boolean

imageURL

Optional URL of background image. An alternative to the embedded image/imageType attributes.

  • value: foaf:Image

invalidCredentials

If true, then some attempt has been made to use the userid/password but the login failed.

  • domain: WebLogin
  • value: xsd:boolean

loginPage

URL of a page where a user can login to this site.

  • value: Entity

neverRememberPassword

If true then don't ever capture/remember the password that the user just typed in.

  • domain: WebLogin
  • value: xsd:boolean

oldUserid

The userid (that is also an email address) that had been used BEFORE the current value (see 'userid') is used by an external site to identify the user. E.g. paul@fabrikam.com. If the user had used a ChangeEmail connector script and changed their email in their account at fabrikam.com from paul@gmail.com to paul@azigo.com, then paul@gmail.com would be the oldUserid.

  • domain: WebLogin
  • value: p:emailDatatype

password

Password used in conjunction with userid to login user.

  • domain: WebLogin
  • value: xsd:string

registerPage

URL of a page where the user can register for a new account at this site.

  • value: Entity

sendsEmails

If true the external website sends emails to those on its mailing list

  • value: xsd:boolean

subscribePage

URL of a page where the user can subscribe to emails from this site.

  • value: Entity

userid

A userid (that is also an email address) used by an external site to identify the user. E.g. paul@fabrikam.com

  • domain: WebLogin
  • value: p:emailDatatype

useridOnly

A userid (that is not an email address) used by an external site to identify the user. E.g. "john53"

  • domain: WebLogin
  • value: xsd:string

Proxy Attributes

backgroundColor

Background image of a Proxy/Card.

  • value: xsd:string

displayName

Short human-friendly name for this Proxy.

  • value: xsd:string

image

  • value: xsd:base64

imageType

  • one of ("JPG", "GIF", "PNG")

resource

Entity stored in local data store that is a local representation of the external object represented by this Proxy.

  • value: higgins:Agent

XRI 2.0 Attributes

authNMaterialsType

udiMetadata

UDIMetadata instance

  • domain: XRI2.0
  • value: UDIMetadata

Links

Back to the top