OSLC Relationships
INCOMPETE AND UNDER discussion
At OSLC the notion of relationship is central. Spec. to allow providers to surface relationship information in a RESTful manner.
Using OSLC Shape Resources to describe
- Relationship: name, description of a relation
- Relationship: service providers which are known to support that relationship.
- Links: In OSLC today, two resources stand in a certain relation to one another but the existence of this relation is modelled by two OSLC Properties - a link in the forward direction and a link in the other direction. A -> B and B -> A. The link in the other direction has been called the "inverse", "reverse", "complement", "dual", "back" and so on. Here we call it the inverse link.
- OSLC Leads are aware this is an architectural weakness
-
OSLC Relationships Resource
An OSLC Resource which enumerates the OSLC Relationships that are configured for the service provider.
- Name: Relationships
- Type URI: http://open-services.net/xmlns/oslc#Relationships
- Description: Defines a set of relationships that a OSLC service provider exposes.
- Properties:
- See table immediately below
- Other OSLC Properties MAY be specified by OSLC Services
These properties are intended to be part of an OSLC Service resource to identify the relationships that exist between service providers.
OSLC Relationship Resource
Describes a relationship that exists to other OSLC service providers, and the OSLC Properties which are used to indicate the presence of such a relationship.
- Name: Relationship
- Type URI: http://open-services.net/xmlns/oslc#Relationship
- Description: Defines a single relationship that a OSLC service provider exposes.
- Properties:
- See table immediately below
- Other OSLC Properties MAY be specified by OSLC Services
Prefixed Name |
Data type |
Occurs |
Extended Property? |
Title |
Description |
OSLC Common Properties HERE |
OSLC Relationship Resource |
dc:title |
XMLLiteral |
at-most-one |
No |
Title |
Title of the relationship; this SHOULD include only content that is valid inside an XHTML <span> element. |
dc:description |
XMLLiteral |
at-most-one |
No |
Description |
Description of the relationship; this SHOULD include only content that is valid and suitable inside an XHTML <div> element. |
oslc:link |
Resource of type oslc:Property |
exactly-one |
No |
Link |
The OSLC Property that describes the link. |
oslc:inverse |
Resource of type oslc:Property |
exactly-one |
No |
Inverse |
The OSLC Property that describes the inverse link. |
Bringing the oslc:link an oslc:inverse together in a Relationship resource identifies the oslc:Properties as defining the relation - is this strong enough?
Should the description of a relationship include a description of the expected/supported OSLC Domains at either end? For example, oslc:domain and oslc:range? I don't like this idea because it leads to a brittleness in the linking, but we might want to discuss.
Some
RmRelationshipExamples.
Topic revision: r2 - 19 May 2010 - 14:39:05 -
IanGreen