Architecture Management - Link Resource Format
1.0 SPECIFICATION DRAFT
Introduction
A resource link represents a connection from a resource managed by the Architecture Management Service Provider and another resource, given only by a URI.
The OSLC RM workgroup has defined a very generic
link resource format that can be used to satisfy the AM workgroups need. We propose this format for use in the AM specification.
Namespaces
RDF/XML Representation of Link Resource
The source, target and type of a link are described by the URIs of those resources using an RDF resource of type "oslc:Link" having the properties described in the table below.
The media type used for this RDF/XML representation MUST be application/x-oslc-common-link+xml.
The following properties are defined on an OSLC RM link resource:
Property |
Required |
Represents |
rdf:subject |
Yes |
The source of the link |
rdf:object |
Yes |
The target of the link |
rdf:predicate |
Yes |
The type of the link |
dc:description |
No |
Some description of the link |
dc:creator |
No |
Who created the link |
dc:modified |
No |
When the link was last modified |
OSLC Common.rdfs
This is the RDF Schema for the OSLC Common classes and properties.
?xml version="1.0"?>
<rdf:RDF
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:owl="http://www.w3.org/2002/07/owl#"
xmlns="http://open-services.net/xmlns/common/1.0/common#"
xmlns:xsd="http://www.w3.org/2001/XMLSchema#"
xmlns:rdfs="http://www.w3.org/2000/01/rdf-schema#"
xml:base="http://open-services.net/xmlns/common/1.0/common">
<owl:Ontology rdf:about="">
<owl:imports rdf:resource="http://xmlns.com/foaf/0.1/"/>
<owl:imports rdf:resource="http://purl.org/dc/elements/1.1/"/>
<owl:versionInfo rdf:datatype="http://www.w3.org/2001/XMLSchema#string"
>Created with TopBraid Composer</owl:versionInfo>
</owl:Ontology>
<rdfs:Class rdf:ID="Link">
<rdfs:subClassOf rdf:resource="http://www.w3.org/1999/02/22-rdf-syntax-ns#Statement"/>
</rdfs:Class>
<rdf:Description rdf:about="http://purl.org/dc/elements/1.1/creator">
<rdfs:range rdf:resource="http://xmlns.com/foaf/0.1/Person"/>
<rdfs:domain rdf:resource="#Link"/>
</rdf:Description>
<rdf:Description rdf:about="http://purl.org/dc/elements/1.1/modified">
<rdfs:range rdf:resource="http://www.w3.org/2001/XMLSchema#dateTime"/>
<rdfs:domain rdf:resource="#Link"/>
</rdf:Description>
<rdf:Description rdf:about="http://purl.org/dc/elements/1.1/description">
<rdfs:range rdf:resource="http://www.w3.org/2001/XMLSchema#string"/>
<rdfs:domain rdf:resource="#Link"/>
</rdf:Description>
</rdf:RDF>
Notes:
- Link is an rdf:Statement that specifies and asserts the statement. That is, it reifies the statement in order to enable properties to be asserted on the statement itself.
Example
In this example the link resource describes an "models" relation between a workitem (which is the target of the link) and an AM Resource (the source).
GET http://www.example.com/resources/links/link1
Accept: application/x-oslc-common-link+xml
<?xml version="1.0" encoding="UTF-8"?>
<rdf:RDF
xmlns:oslc="http://open-services.net/xmlns/common/1.0/"
xmlns:dc="http://purl.org/dc/terms/"
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
<oslc:Link rdf:about="http://www.example.com/links/link1">
<rdf:subject rdf:resource="http://www.example.com/resources/amresource15"/>
<rdf:object rdf:resource="http://www.example2.com/resources/workitem24"/>
<rdf:predicate rdf:resource="http://www.example.com/types/models"/>
<dc:modified>29 August 2009</dc:modified>
<dc:creator>Dan Developer</dc:creator>
</oslc:Link>
</rdf:RDF>
RDF/XML Representation of Link Collection Resource
A link collection resource describes a multiplicity (a number of) of links that are in some way related. A common usage of a link collection resource is to describe the link resources which are associated with an architecture management resource. A link collection is described by a resource of rdf:type "oslc:LinkCollection" which providers must be able to represent as RDF/XML document having media type application/x-oslc-common-link-collection+xml. The special case of a link collection which does not contain any links is represented as an RDF/XML document containing only a single "rdf:RDF" element.
The representation of a link collection is the aggregation of the representations of each of the links in that collection.
Example
This example shows the two links that are associated with a resource "requirement55".
GET http://example.com/resources/resource1/links
Accept: application/x-oslc-common-link-collection+xml
<?xml version="1.0" encoding="UTF-8"?>
<rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:rdfs="http://www.w3.org/2000/01/rdf-schema#"
xmlns:oslc="http://open-services.net/xmlns/common/1.0/"
xmlns:dc="http://purl.org/dc/terms/">
<oslc:Link rdf:about="http://www.example.com/links/link1">
<rdf:subject rdf:resource="http://www.example.com/resources/amresource15"/>
<rdf:object rdf:resource="http://www.example2.com/resources/workitem24"/>
<rdf:predicate rdf:resource="http://www.example.com/types/models"/>
<dc:modified>29 August 2009</dc:modified>
<dc:creator>Dan Developer</dc:creator>
</oslc:Link>
<oslc:Link rdf:about="http://www.example.com/links/link2">
<rdf:subject rdf:resource="http://www.example.com/resources/amresource15"/>
<rdf:object rdf:resource="http://www.example3.com/resources/requirement55"/>
<rdf:predicate rdf:resource="http://www.example.com/types/satisfies"/>
<dc:modified>1 January 2000</dc:modified>
</oslc:Link>
</rdf:RDF>
Back to
Architecture Management Resource Definitions
Comments
Enter your comments here.