Most of the architectural resources that we use in our scenarios either are or can be represented in diagrams. A diagram being a visual (as opposed to textual) representation of one or more artefacts of the software development lifecycle process. Diagrams are a way to view potentially complex information in a more consumable form. UML is perhaps the most recognized example of a visual notation for software concepts. UML also has underneath it a complex and comprehensive model of the things in its diagrams, and indeed most of the specification is about this underlying model, rather than the visual notation.
Diagrams are common place in the set of architectural artefacts, and deserve special consideration.
We propose here to define a Diagram resource type that clients can use to 1) recognize that the resource they are working with can be requested in a visual form (i.e. image/png) and 2) identify which resources appear in the diagram.
The coordinate system used in the points is the native coordinate system of the image content type. The upper left hand corner represents the origin (0,0). This resource was influenced by the HTML <map> tag.
Usage Scenarios
Diagram Resource Example
Rational Design Management example
Resource: Diagram
A Diagram is a visual representation of a resource. It often includes references/representations of other AM Resourcess.
- Name:
Diagram
- Type URI
http://open-services.net/ns/am#Diagram
Prefixed Name |
Occurs |
Read-only |
Value-type |
Representation |
Range |
Description |
dcterms:title |
exactly-one |
unspecified |
XMLLiteral |
n/a |
n/a |
Name of diagram |
dcterms:description |
zero-or-one |
unspecified |
XMLLiteral |
n/a |
n/a |
A short description of the diagram. |
oslc_am:node |
zero-or-many |
true |
Either Resource or Local Resource |
Either Reference or Inline |
oslc_am:DiagramNode |
Nodes or regions in the diagram. May represent another resource internal or external (another resource managed by another server). May just represent some component of the diagram (i.e. legend, boundary, etc.) |
oslc_am:connector |
zero-or-many |
true |
Either Resource or Local Resource |
Either Reference or Inline |
oslc_am:DiagramConnector |
Lines connecting nodes in the diagram. May represent another resource internal or external (another resource managed by another server). May just represent some graphical element the diagram |
Resource: Diagram Rectangle
A Diagram Rectangle is a simple rectangular visual element in a diagram. It may represent another resource, or it could be just an element in the diagram like a legend, or logo image.
- Name:
DiagramRectangle
- Type URI
http://open-services.net/ns/am#DiagramRectangle
Prefixed Name |
Occurs |
Read-only |
Value-type |
Representation |
Range |
Description |
dcterms:title |
exactly-one |
unspecified |
XMLLiteral |
n/a |
n/a |
A label that identifies the view, or what the view represents. |
dcterms:description |
zero-or-one |
unspecified |
XMLLiteral |
n/a |
n/a |
A description about the element in the diagram. |
oslc_am:represents |
zero-or-one |
true |
Resource |
Reference |
any |
The uri of the resource that this view represents |
oslc_am:x |
exactly-one |
true |
integer |
n/a |
n/a |
The horizontal coordinate of the upper left hand corner of the area. |
oslc_am:y |
exactly-one |
true |
integer |
n/a |
n/a |
The vertical coordinate of the upper left hand corner of the area. |
oslc_am:width |
exactly-one |
true |
integer |
n/a |
n/a |
The width of the area. |
oslc_am:height |
exactly-one |
true |
integer |
n/a |
n/a |
The height of the area. |
Resource: Diagram Polygon
A Diagram Polygon is an irregularly shaped area in a diagram. It may represent another resource, or it could be just an element in the diagram. It is expressed as a sequence of points that represent the line segments that make up the polygon. It is expected that the first and last points are the same, and that the series of points forms a polygon where the line segments do not overlap.
- Name:
DiagramPolygon
- Type URI
http://open-services.net/ns/am#DiagramPolygon
Prefixed Name |
Occurs |
Read-only |
Value-type |
Representation |
Range |
Description |
dcterms:title |
exactly-one |
unspecified |
XMLLiteral |
n/a |
n/a |
A label that identifies the view, or what the view represents. |
dcterms:description |
zero-or-one |
unspecified |
XMLLiteral |
n/a |
n/a |
A description about the element in the diagram. |
oslc_am:represents |
zero-or-one |
true |
Resource |
Reference |
any |
The uri of the resource that this view represents |
oslc_am:points |
exactly-one |
true |
Local Resource |
Inline |
oslc_am:DiagramPoint |
The first point of the polygon. |
Resource: Diagram Point
A point in a multi-segmented line. Used to describe a polygon (where the first and last points are the same).
- Name:
DiagramPoint
- Type URI
http://open-services.net/ns/am#DiagramPoint
Prefixed Name |
Occurs |
Read-only |
Value-type |
Representation |
Range |
Description |
oslc_am:x |
exactly-one |
true |
integer |
n/a |
n/a |
The horizontal coordinate of the point. |
oslc_am:y |
exactly-one |
true |
integer |
n/a |
n/a |
The vertical coordinate of the point. |
oslc_am:next |
zero-or-one |
true |
integer |
n/a |
n/a |
The next point in a multi-segmented line. If there is no point then this point represents the last point. |