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

(UML Overview)
Line 9: Line 9:
 
==UML Overview ==
 
==UML Overview ==
  
[[Image:Template 2.0.104d.png|center]]
+
[[Image:Template 2.0.104f.png|center]]
  
 
==Overview==
 
==Overview==

Revision as of 16:12, 22 August 2011

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

Vocabulary to describe a Template Context. Contains information necessary to dynamically instantiate regular contexts. Part of the Persona Data Model 2.0.

Files

UML Overview

Template 2.0.104f.png

Overview

Template contexts are used to instantiate both regular contexts and connector context pairs mentioned here: Persona Data Model 2.0. The AppTemplate subclass of TemplateContext (itself a subclass of ctxt:Context) is used to describe the former, and the ConnectorTemplate subclass of TemplateContext, the latter.

AppTemplate

An AppTemplate has an attribute whose value is an App (a subclass of ContextPrototype). An App instance has the following attributes:

  • 1..1 appURI - value is a URI containing a portion of a web page to load into the portal. This webpage may contain lots of JavaScript and provide sophisticated viewing, editing, validating or other services to the user--hence the use of the "app" term.
  • 1..1 description--human friendly text that describes this app/view/context
  • 0..1 viewRoot - value is a structure created using the View-builder vocabulary that describes how to dynamically construct a UI to view and/or edit the attributes of this context.
  • 0..1 settingsViewRoot - value is a structure created using the View-builder vocabulary that describes how to dynamically construct a UI to view and/or edit administrative settings related to the JavaScript app (if present)

The instantiated context of an AppTemplate TemplateContext is a place where the JavaScript of the app can persist new attributes if needed. Apps use an update-attributes API that may update the values of attributes in other contexts.

ConnectorTemplate

A ConnectorTemplate has two attributes, definer and participant whose values are Definer and Participant subclasses, respectively, of the Connector class (itself a subclass of ContextPrototype). The Definer instance has the following attributes:

  • 0..N provided - values are the URIs of attributes in the relationship for which the Definer is authoritative
  • 0..1 viewRoot - value is a structure created using the View-builder vocabulary that describes how to dynamically construct a UI to view and/or edit the attributes of this context.
  • 0..1 settingsViewRoot - value is a structure created using the View-builder vocabulary that describes how to dynamically construct a UI to view and/or edit administrative settings related to the JavaScript app (if present)

The Participant instance has the following attributes:

  • 0..1 templateRole - value is a default Role to assign to the new p:Person instance in the newly instantiated context
  • 0..N provided - values are the URIs of attributes in the relationship for which the participant is authoritative
  • 0..N providedOpt - values are the URIs of attributes in the relationship for which the participant is authoritative and may optionally decide to provide
  • 0..1 viewRoot - value is a structure created using the View-builder vocabulary that describes how to dynamically construct a UI to view and/or edit the attributes of this context.
  • 0..1 settingsViewRoot - value is a structure created using the View-builder vocabulary that describes how to dynamically construct a UI to view and/or edit administrative settings related to the JavaScript app (if present)

Below is an example of a ConnectorTemplate. For simplicity neither viewRoot nor a settingsViewRoot are included; no Person subclass and associated mapping rules have been included. In this relationship the NYTimes provides values for Alice's account number, and Alice provides her givenName, familyName and email address. The p:Ecommerce role is the role to be assigned to new p:Person nodes in the context for which this is the participant template.

 template:ConnectorTemplate_1
     rdf:type template:ConnectorTemplate ;
     template:definer :Definer_1 ;
     template:image "0243fa230243fa230243fa230243fa230243fa230243fa23"^^xsd:base64Binary ;
     template:participant
             :Participant_1 .
 
 :Definer_1
     rdf:type template:Definer ;
     template:provided <http://nytimes/accountNumber> .
 
 :Participant_1
     rdf:type template:Participant ;
     template:provided fp:familyName , fp:givenName , fp:email ;
     template:role <http://www.eclipse.org/higgins/ontologies/2010/6/persona#Ecommerce> .


Classes

App

A prototype of a context instance that holds app-specific data (e.g. Person entity) if any

  • subClassOf ContextPrototype
  • 1..1 appURI
  • 1..1 description

AppTemplate

A TemplateContext containing a ContextPrototype instance that describes a context to be used to support an app

  • 1..1 app

Connector

A prototype of a Definer-or-Participant context instance. Abstract.

ConnectorTemplate

A TemplateContext containing two ContextPrototypes instances that describe each connector context in a relationship

  • 1..1 definer
  • 1..1 participant

ContextPrototype

Abstract class. A prototype of an Context instance. The attributes of the prototype are copied into a Context instance

  • 0..1 image
  • 0..1 imageType
  • 0..1 templateRole
  • 0..1 viewRoot

Definer

A prototype of a context that is one side of a connector context pair. The Definer side is a context managed by the same party that created the TemplateContext--the party that defines the overall parameters of the connector relationship. In a person-to-business connector. Definer would typically be the business as it is the business that defines the relationship including the set of attributes that will go back and forth.

  • subClassOf: Connector

Participant

A prototype of a context that is one side of a connector context pair. The Participant side is a context managed by the other party--not the party that created the TemplateContext that defines the overall parameters of the connector relationship. In a person-to-business connector. Participant would be the person (the PDS owner/user)

  • subClassOf: Connector
  • 0..1 overlayCode

TemplateContext

A TemplateContext is an abstract class for a context whose attributes act analogous to a "class" for regular context "instances".

WebsiteFacade

A sideA context that instead of being managed by an external party, is created and managed by local code (e.g. JavaScript running locally) acting as a proxy for the "real" issuer.

  • subClassOf: SideA
  • 0..1 scrapeFillCode

Attributes

app

AppContext ContextPrototype

  • domain: AppTemplate
  • value: App

appURI

App UI page

  • domain: App
  • value: xsd:anyURI

definer

Definer context within a pair of Participant/Definer connector contexts

  • domain: Connector
  • value: Definer

description

Human readable description of this app

  • domain: App
  • value: xsd:string

image

Background image to use in proxy:Cards or proxy:Apps that point to contexts instantiated from this template context.

  • domain: TemplateContext
  • value: xsd:base64Binary

imageType

Type of background image to use in proxy:Cards or proxy:Apps that point to contexts instantiated from this template context.

  • domain: TemplateContext
  • value: one of ("GIF", "JPG", "PNG")

optional

Attribute that may be provided by the Participant context in a connector relationship (typically the user). Value is an attribute defined by persona.owl or fp.owl

  • domain: Participant
  • range: rdf:Property

overlayCode

JavaScript code to invoke to provide web augmentation/overlay.

  • domain: Participant
  • value: app-data:Overlay

participant

Participant context within a pair of Participant/Definer connector contexts

  • domain: Connector
  • value: Participant

provided

Attribute provided by either the issuer or the accepter end of a connector relationship. Value is an attribute defined by persona.owl or fp.owl

  • domain: Connector
  • value: rdf:Property

scrapeFillCode

JavaScript connector code

  • domain: WebsiteFacade
  • value: app-data:JavaScript

settingsViewRoot

Root of a tree of ViewNodes that describe the UI for the settings control panel for this context

  • domain: ContextPrototype
  • value: view-builder:ViewNode

role

Default role played by new Person entity instances in contexts instantiated from this Participant prototype

  • domain: Participant
  • value: persona:Role

viewRoot

Root of a tree of ViewNodes that describe the UI for this context

  • domain: ContextPrototype
  • value: view-builder:ViewNode


Links

Back to the top