This wiki is locked. Future workgroup activity and specification development must take place at our new wiki. For more information, see this blog post about the new governance model and this post about changes to the website.

Asset Resource Definition

1.0 Specification

Contents

Introduction

Asset Management resources define the definative software assets for the software delivery lifecycle. This specification will focus on the definition of an asset, which includes common set of properties, their types and requirements on usage. Implementations can extend this base definition of an asset by contributing their additional properties to the asset resource defintion.

Refer to the definitions page for descriptions on asset management related terms used here.

Notation and Conventions

The key words “MUST”, “MUST NOT”, “REQUIRED”, “SHALL”, “SHALL NOT”, “SHOULD”, “SHOULD NOT”, “RECOMMENDED”, “MAY”, and “OPTIONAL” in this document are to be interpreted as described in RFC2119. Domain name examples use RFC2606.

Asset Resource

The asset resource properties are not limited to the ones defined in this specification. It is recommended to contribute resource properties in their own unique namespace, not to reuse those defined in these specifications.

XML namespace abbreviations used in this specification:

XML Representation of the Asset Resource

The media type used for this representation MUST be application/xml.

XML Representation Summary: Asset Element
<oslc_asset:Asset rdf:about = xsd:anyURI >
Content: (ras:id, dc:title, dc:type, dc:subject, dc:state, dc:description?, dc:contributor?, artifactContentFactory, artifact?, relation?, dc:modified?)
</oslc_asset:Asset>
Property Representation
ras:id
The required identifier for the asset includes the GUID and version.
dc:titleThe required title string. Note that this element comes from the DC namespace, allowing tools unaware of the asset management domain to access this element. This is sometimes also referred to as the asset name.
dc:typeThe required type string. The type of asset that is represented, such as: Service, Release, etc.
dc:subjectThe required subject string. The DC namespace defines this element to be the topic of the asset.This is also known as the asset's short description.
dc:description
The optional description string. This element comes from the DC namespace, allowing tools completely unaware of the change management domain to access this element.
dc:contributor
The required multi-valued property for each of the asset owners.
state
The required , read-only, state string. The current state of the asset. This element comes from the DC namespace, allowing tools completely unaware of the change management domain to access this element.
artifactContentFactoryThe required , read-only resource URI used to post new Artifacts to the Assset.
artifact
The optional multi valued list of artifacs
- dc:title
The required title string. Note that this element comes from the DC namespace, allowing tools unaware of the asset management domain to access this element.
- content
The required media resource reference URI (the artifact bytes).
- dc:subject The optional subject string. The DC namespace defines this element to be the topic of the asset.This is also known as the artifact's label.
- mimeTypeThe required mime type of the artifact media.
- sizeThe required size of the artifact media in bytes.
- dc:modifiedThe required, read-only modified date time which must conform to RFC3339 format
relation
The optional multi valued list of relationships to other assets.
- rdf:resource
The required reference to the related resource.
- dc:type
The optional type string. The type of relationship (i.e. dependcy, test case, specification...)
- dc:titleThe optional string name of the relation.
dc:modified
The required, read-only modified date time which must conform to RFC3339 format

Example

<?xml version="1.0" encoding="UTF-8"?>
<oslc_asset:asset rdf:about="https://server:9443/am/oslc/assets/%7B1082CDD3-1E40-5648-E7DC-5137CC841AA5%7D/1.0">
    <ras:id>
        <ras:GUID>{1082CDD3-1E40-5648-E7DC-5137CC841AA5}</ras:GUID>
        <ras:version>1.0.20091011</ras:version>
    </ras:id>
    <dc:title>Myco Services Application</dc:title>
    <dc:subject>My Company's REST Services Application</dc:subject>
    <dc:type>Application</dc:type>
    <oslc_asset:state>Approved</oslc_asset:state>
    <dc:contributor>bobsmith@myco.com</dc:contributor>
    <oslc_asset:artifactContentFactory rdf:resource="https://server:9443/am/oslc/assets/%7B1082CDD3-1E40-5648-E7DC-5137CC841AA5%7D/1.0.20091011/artifacts"/>
    <oslc_asset:artifact>
        <dc:title>services.ear</dc:title>
        <dc:subject>Services Enterprise Application</dc:subject>
        <oslc_asset:mimeType>application/ear</oslc_asset:mimeType>
        <oslc_asset:content rdf:resource="oslc/assets/%7B1082CDD3-1E40-5648-E7DC-5137CC841AA5%7D/1.0.20091011/artifactConetnts/ear/services.ear"/>
        <oslc_asset:size>22130688</oslc_asset:size>
        <dc:modified>2008-09-16T08:42:11.265Z</dc:modified>
    </oslc_asset:artifact>
    <oslc_asset:artifact>
        <dc:title>buildSummary.html</dc:title>
        <dc:subject>Build Summary</dc:subject>
        <content rdf:resource="https://buildServer/fullcontrol/index.php?mod=jobs&action=edit&bf_id=965518"/>
        <dc:modified>2008-09-16T08:42:11.265Z</dc:modified>
    </oslc_asset:artifact>
    <oslc_asset:relation rdf:resource="https://server:9443/am/oslc/assets/%7B882B4FD7-3C72-4DB0-8097-66866E7D45F6%7D/1.2">
        <dc:title>Appache Logging Service</dc:title>
        <dc:type>Dependency</dc:type>
    </oslc_asset:relation>
    <dc:modified>2008-09-16T08:42:11.265Z</dc:modified>
</oslc_asset:asset>

JSON Representation of the Asset Resource

The media type used for this representation MUST be application/json.

XML Representation Summary: Asset Element
{ Content: (ras:id, dc:title, dc:type, dc:subject, dc:state, dc:description?, owner?, artifactContentFactory, artifact?, relation?, dc:modified?) }
Property Representation
ras:id
The required identifier for the asset includes the GUID and version.
dc:titleThe required title string. Note that this element comes from the DC namespace, allowing tools unaware of the asset management domain to access this element. This is sometimes also referred to as the asset name.
dc:typeThe required type string. The type of asset that is represented, such as: Service, Release, etc.
dc:subjectThe required subject string. The DC namespace defines this element to be the topic of the asset.This is also known as the asset's short description.
dc:description
The optional description string. This element comes from the DC namespace, allowing tools completely unaware of the change management domain to access this element.
dc:contributor
The required multi-valued property for each of the asset owners.
state
The required , read-only, state string. The current state of the asset. This element comes from the DC namespace, allowing tools completely unaware of the change management domain to access this element.
artifactContentFactoryThe required , read-only resource URI used to post new Artifacts to the Assset.
artifact
The optional multi valued list of artifats
- dc:title
The required title string. Note that this element comes from the DC namespace, allowing tools unaware of the asset management domain to access this element.
- content
The required media resource reference URI (the artifact bytes).
- dc:subject The optional subject string. The DC namespace defines this element to be the topic of the asset.This is also known as the artifact's label.
- mimeTypeThe required mime type of the artifact media.
- size
The required size of the artifact media in bytes.
- dc:modifiedThe required, read-only modified date time which must conform to RFC3339 format
relation
The optional multi valued list of relationships to other assets.
- rdf:resource
The required reference to the related resource.
- dc:type
The optional type string. The type of relationship (i.e. dependcy, test case, specification...)
- dc:titleThe optional string name of the relation.
dc:modified
The required, read-only modified date time which must conform to RFC3339 format

Example

{
 "rdf:about": "https://server:9443/am/"oslc/assets/%7B1082CDD3-1E40-5648-E7DC-5137CC841AA5%7D/1.0", 
 "ras:id": {"ras:GUID": "{1082CDD3-1E40-5648-E7DC-5137CC841AA5}", "ras:version", "1.0.20091011"},
 "dc:title": "Myco Services Application", 
 "dc:subject" : "My Company's REST Services Application",
 "dc:type" : "Application",
 "oslc_asset:state" : "Approved",
 "dc:contributor" : "bobsmith@myco.com",
 "oslc_asset:artifactFactory" :{ "rdf:resource": "https://server:9443/am/"oslc/assets/%7B1082CDD3-1E40-5648-E7DC-5137CC841AA5%7D/1.0.20091011/artifacts"},
 "oslc_asset:artifact" : {"dc:title" : "services.ear", "dc:subject": "Services Enterprise Application", "oslc_asset:mimeType": "application/ear"
               "oslc_asset:size": "22130688", "dc:modified": "2008-09-16T08:42:11.265Z"},
 "oslc_asset:artifact" : {"dc:title" : "buildSummary.html", "dc:subject", "Build Summary"
               "oslc_asset:content" : "https://buildServer/fullcontrol/index.php?mod=jobs&action=edit&bf_id=965518"},
 "dc:relation": {"dc:type": {"value": "Dependency", "rdf:resource": "https://server:9443/am/"oslc/assets/%7B882B4FD7-3C72-4DB0-8097-66866E7D45F6%7D/1.2"}} 
 "dc:modified" : "2008-09-16T08:42:11.265Z"
}  
Topic revision: r25 - 21 Apr 2010 - 17:45:46 - TWikiAdminUser
 
This site is powered by the TWiki collaboration platform Copyright � by the contributing authors. All material on this collaboration platform is the property of the contributing authors.
Contributions are governed by our Terms of Use
Ideas, requests, problems regarding this site? Send feedback