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
.
TWiki
>
Main Web
>
RmHome
>
RmV2copy09082010
(09 Aug 2010,
IanGreen
)
(raw view)
<h1 id="titleL2-community">OSLC Requirements Management V2.0 Specification DRAFT</h1> <font color="orangered">2.0 _CONVERGENCE_ </font> _- Issues to be recorded at RmSpecificationV2Issues._ <blockquote>*NOTE*: Sections indented like this, a blockquote section, is in an early development state. Actually, the whoe thing is in a development state. </blockquote> %TOC{depth="3"}% ---++ Introduction<a name="intro" title="intro"></a> ---+++ 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 [[http://www.ietf.org/rfc/rfc2119.txt][RFC2119]]. ---+++ Terminology *Requirement Resource* - Some statement of need. *Service Provider* - an implementation of the OSLC Requirements Management specification. OSLC RM clients consume these services. Unless explicitly qualified otherwise, OSLC RM in this document refers to OSLC RM V2.0 specification. ---+++ Examples Resources Illustrative examples will not be included in this document, but instead may be found in separate documents. This document will link to relevant examples. ---++ Base Requirements ---+++ Compliance This specification is based on [[OSLCCoreSpecDRAFT][OSLC Core Specification]]. OSLC RM consumers and service providers MUST be compliant with both the core specification and this RM specification in order to claim OSLC RM V2.0 compliance. ---+++ Specification Versioning See [[OSLCCoreSpecDRAFT#Specification_Versioning][OSLC Core Specification Versioning section]]. Service providers that support the resource formats and services in this specification MUST support the use of HTTP request and HTTP response headers "OSLC-Core-Version" with a value of "2.0". This specification reserves the header "OSLC-RM-Version" for future use. OSLC RM 2.0 service providers MUST NOT use the "OSLC-RM-Version" header. ---+++ Namespaces In addition to the namespace URIs and namespace prefixes defined in the [[OSLCCoreSpecDRAFT][OSLC Core specification]], OSLC RM defines the following namespace and prefix: * Namespace URI: =http://open-services.net/ns/rm#= * Prefix: =oslc_rm= ---+++ Resource Formats OSLC RM describes the use of RDF/XML resource formats (with media-type "application/rdf+xml", as specified by the OSLC Core - see [[OSLCCoreSpecDRAFT#Resource_Formats][OSLC Resource Formats]]). Other resource formats are not prohibited by this specification and OSLC RM providers MAY offer additional formats if required. The meaning of such representations is outwith the scope of this specification. OSLC RM service providers SHOULD support the retrieval of a user interface (UI) preview for OSLC defined resources as defined by [[OSLCUIPreviewDRAFT][OSLC UI Preview]]. ---+++ Authentication See [[OSLCCoreSpecDRAFT#Authentication][OSLC Core Authentication section]]. OSLC RM places no additional constraints on authentication. ---+++ Error Responses See [[OSLCCoreSpecDRAFT#Error_Responses][OSLC Core Error Responses section]]. OSLC RM puts no additional constraints on error responses. ---+++ Partial Update Providers MAY support the partial update of resources using OSLCCorePartialUpdate. Providers doing so should indicate this capability in the s ---++ RM Resource Definitions ---+++ Use of rdf:type There is a need to distiguish between different types of requirement - for example a "user requirement" and a "system requirement" are different - see the scenario on RmScenarioElaboration. Resource Requirement The requirement resource properties are not limited to the ones defined in this specification. Properties defined by providers which lie outwith this specification MUST belong to non-OSLC-defined namespaces. * *Name:* =Requirement= * *Type URI* =http://open-services.net/ns/rm#Requirement= | *Prefixed Name* | *Occurs* | *Read-only* | *Value-type* | *Represen-tation* | *Range* | *Description* || | *OSLC Core:* Common Properties |||||||| | dcterms:title | exactly-one | unspecified | XMLLiteral | n/a | n/a | Title (reference: Dublin Core) of the resource represented as rich text in XHTML content. SHOULD include only content that is valid inside an XHTML <span> element. || | dcterms:description | at-most-one | unspecified | XMLLiteral | n/a | n/a | Descriptive text (reference: Dublin Core) about resource represented as rich text in XHTML content. SHOULD include only content that is valid and suitable inside an XHTML <div> element. || | dcterms:identifier | at-most-one | True | String | n/a | n/a | An identifier for a resource. This identifier may be unique with a scope that is defined by the RM provider. Assigned by the service provider when a resource is created. Not intended for end-user display. || | dcterms:name | at-most-one | unspecified | XMLLiteral | n/a | n/a | Short name identifying a resource, often used as an abbreviated identifier for presentation to end-users. SHOULD include only content that is valid inside an XHTML <span> element. || | dcterms:subject | zero-or-many | False | String | n/a | n/a | Tag or keyword for a resource. Each occurrence of a dcterms:subject property denotes an additional tag for the resource. || | dcterms:creator | zero-or-many | unspecified | Resource | Either | =foaf:Person= | Creator of resource (reference: Dublin Core). || | dcterms:contributor | zero-or-many | unspecified | Resource | Either | =foaf:Person= | Contributor to resource (reference: Dublin Core). || | dcterms:created | at-most-one | True | !DateTime | n/a | n/a | Timestamp of resource creation (reference: Dublin Core). || | dcterms:modified | at-most-one | True | !DateTime | n/a | n/a | Timestamp last latest resource modification (reference: Dublin Core). || | rdf:type | zero-or-many | unspecified | Resource | Reference | n/a | The resource type URIs. || | oslc:serviceProvider | zero-or-many | unspecified | Resource | Reference | =oslc:ServiceProvider= | The scope of a resource is a URI for the resource's OSLC Service Provider. || | oslc:instanceShape | at-most-one | unspecified | Resource | Reference | =oslc:ResourceShape= | Resource Shape that provides hints as to resource property value-types and allowed values. || | oslc:discussion | at-most-one | unspecified | Resource | Reference | =oslc:Discussion= | A sequence of notes and discussions about this requirement. || | *Prefixed Name* | *Occurs* | *Read-only* | *Value-type* | *Represen-tation* | *Range* | *Description* || | *OSLC RM:* Start of additional properties |||||||| | NONE | | | | | | || | *Prefixed Name* | *Occurs* | *Read-only* | *Value-type* | *Represen-tation* | *Range* | *Description* || | *Relationship properties:* This grouping of properties are used to identify relationships between resources managed by other OSLC Service Providers |||||||| | oslc_rm:relatedTo | zero-or-more | False | Resource | Reference | n/a | Requirement is related to other resource. || | oslc_rm:elaboratedBy | zero-or-more | False | Resource | Reference | n/a | Resource which elaborates this requirement. || | oslc_rm:specifiedBy | zero-or-more | False | Resource | Reference | n/a | Resource which specifies this requirement. || | oslc_rm:affectedBy | zero-or-more | False | Resource | Reference | =oslc_cm:ChangeRequest= | Requirement is affected by a reported defect. || | oslc_rm:trackedBy | zero-or-more | False | Resource | Reference | =oslc_cm:ChangeRequest= | Change requests which track this requirement. || | oslc_rm:implementedBy | zero-or-more | False | Resource | Reference | =oslc_cm:ChangeRequest= | Implemented by associated ChangeRequest. || | oslc_rm:validatedBy | zero-or-more | False | Resource | Reference | =QM resource= | QM resource which validates this requirement. || Resource Requirement Collection The requirement collection resource properties are not limited to the ones defined in this specification. Properties defined by providers which lie outwith this specification MUST belong to non-OSLC-defined namespaces. * *Name:* =RequirementCollection= * *Type URI* =http://open-services.net/ns/rm#RequirementCollection= | *Prefixed Name* | *Occurs* | *Read-only* | *Value-type* | *Represen-tation* | *Range* | *Description* || | *OSLC Core:* Common Properties |||||||| | dcterms:title | exactly-one | unspecified | XMLLiteral | n/a | n/a | Title (reference: Dublin Core) of the resource represented as rich text in XHTML content. SHOULD include only content that is valid inside an XHTML <span> element. || | dcterms:description | at-most-one | unspecified | XMLLiteral | n/a | n/a | Descriptive text (reference: Dublin Core) about resource represented as rich text in XHTML content. SHOULD include only content that is valid and suitable inside an XHTML <div> element. || | dcterms:identifier | at-most-one | True | String | n/a | n/a | An identifier for a resource. This identifier may be unique with a scope that is defined by the RM provider. Assigned by the service provider when a resource is created. Not intended for end-user display. || | dcterms:name | at-most-one | unspecified | XMLLiteral | n/a | n/a | Short name identifying a resource, often used as an abbreviated identifier for presentation to end-users. SHOULD include only content that is valid inside an XHTML <span> element. || | dcterms:subject | zero-or-many | False | String | n/a | n/a | Tag or keyword for a resource. Each occurrence of a dcterms:subject property denotes an additional tag for the resource. || | dcterms:creator | zero-or-many | unspecified | Resource | Either | =foaf:Person= | Creator of resource (reference: Dublin Core). || | dcterms:contributor | zero-or-many | unspecified | Resource | Either | =foaf:Person= | Contributor to resource (reference: Dublin Core). || | dcterms:created | at-most-one | True | !DateTime | n/a | n/a | Timestamp of resource creation (reference: Dublin Core). || | dcterms:modified | at-most-one | True | !DateTime | n/a | n/a | Timestamp last latest resource modification (reference: Dublin Core). || | rdf:type | zero-or-many | unspecified | Resource | Reference | n/a | The resource type URIs. || | oslc:serviceProvider | zero-or-many | unspecified | Resource | Reference | =oslc:ServiceProvider= | The scope of a resource is a URI for the resource's OSLC Service Provider. || | oslc:instanceShape | at-most-one | unspecified | Resource | Reference | =oslc:ResourceShape= | Resource Shape that provides hints as to resource property value-types and allowed values. || | oslc:discussion | zero-or-more | unspecified | Resource | Reference | =oslc:Discussion= | A sequence of notes and discussions about this requirement collection. || | *Prefixed Name* | *Occurs* | *Read-only* | *Value-type* | *Represen-tation* | *Range* | *Description* || | *OSLC RM:* Start of additional properties |||||||| | dcterms:type | zero-or-more | unspecified | String | n/a | n/a | A short string representation for the type, example 'Stakeholder Requirements'. || | oslc_rm:uses | zero-or-more | unspecified | Resource | Reference | n/a | A collection uses a requirement - the assocaited requirement is in the requirement collection. || | *Prefixed Name* | *Occurs* | *Read-only* | *Value-type* | *Represen-tation* | *Range* | *Description* || | *Relationship properties:* This grouping of properties are used to identify relationships between resources managed by other OSLC Service Providers |||||||| | oslc_rm:relatedTo | zero-or-more | False | Resource | Reference | n/a | Related resource. || | oslc_rm:elaboratedBy | zero-or-more | False | Resource | Reference | n/a | Resource which elaborates this requirement collection. || | oslc_rm:specifiedBy | zero-or-more | False | Resource | Reference | n/a | Resource which specifies this requirement collection. || | oslc_rm:affectedBy | zero-or-more | False | Resource | Reference | =oslc_cm:ChangeRequest= | Requirement Collection is affected by a reported defect. || | oslc_rm:trackedBy | zero-or-more | False | Resource | Reference | =oslc_cm:ChangeRequest= | Change requests which track this requirement collection. || | oslc_rm:implementedBy | zero-or-more | False | Resource | Reference | =oslc_cm:ChangeRequest= | Implemented by associated ChangeRequest. || | oslc_rm:validatedBy | zero-or-more | False | Resource | Reference | =QM resource= | QM resource which validates this requirement collection. || ---++ RM Service Provider Capabilities ---+++ Service Discovery and Description ---+++ Resource Shapes OSLC RM service providers SHOULD support [[OSLCCoreSpecDRAFT#Resource_Shapes][Resource Shapes]] as defined in [[OSLCCoreSpecDRAFT#Resource_Shapes][OSLC Core Specification]] ---+++ Service Provider Resource OSLC RM service providers MUST provide a [[OSLCCoreSpecDRAFT#Service_Provider_Resources][Service Provider Resource]] that can be retrieved at a implementation dependent URI. OSLC RM service providers MAY provide a [[OSLCCoreSpecDRAFT#Service_Provider_Catalog_Resources][Service Provider Catalog Resource]] that can be retrieved at a implementation dependent URI. OSLC RM service providers MUST provide an =oslc:serviceProvider= property for their defined resources that will be the URI to a [[OSLCCoreSpecDRAFT#Service_Provider_Resources][Service Provider Resource]]. ---+++ Creation Factories OSLC RM service provider SHOULD support the creation of requirement resources and requirement collection resources (that is, SHOULD be at least one [[OSLCCoreSpecDRAFT#Creation_Factories][Creation Factories]] entry in the Services definition). ---+++ Query Capabilities OSLC RM service provider SHOULD support OSLC query (that is, SHOULD be at least one [OSLCCoreSpecDRAFT#Query_Capabilities][Query Capabilities]] entry in the Services definition).<br /><br />The Query Capability SHOULD at least support these parameters:<br /> * oslc:where<br /> * oslc:select ---+++ Delegated UIs If an OSLC RM service provider supports the selection and creation of resources by delegated web-based user interface dialogs, there MUST be at least one [[OSLCCoreSpecDRAFT#Delegated_User_Interface_Dialogs][Delegated UIs]] entry in the Services definition.<br /><br />OSLC RM service provider SHOULD support the pre-filling of creation dialogs based on the definition at [[OSLCCoreSpecDRAFT#Delegated_User_Interface_Dialogs][Delegated UIs]]. ---++ Miscellaneous ---+++ Version Compatibility with 1.0 Specifications It is recommended that service providers carefully consider existing deployments and client needs when deciding on which combinations of OSLC RM protocols to support. The OSLC RM 1.0 and 2.0 specifications are not interchangeable, though providers can provide 1.0 and 2.0 services simultaneously. ---++++ Media Types RM 1.0 and 2.0 media types are not interchangeable. All RM 2.0 media types are those described in this specification. ---++ Appendix A: Samples ---++ Appendix B: Notices and References ---+++ Authors and Contact Information Authors of the OSLC RM 2.0 Specification: * AndyBerner (IBM) * ScottBosworth (IBM) * JimConallen (IBM) * GeorgeDeCandio (IBM) * JeremyDick (Integrate) * BrendaEllis (Northrop Grumman) * RainerE (Siemens) * IanGreen (IBM; OSLC RM Lead) * AndreasKeis (EADS) * NicholasKruk (IBM) * ChrisMcGraw (IBM) * PaulMcMahan (IBM) * DevangParikh (IBM) * VishyRamaswamy (IBM) * RenRenganathan (Citigroup) * DavidRuiz (Ravenflow) * MatthewStone (Stoneworks) * DominicTulley (IBM) * RandyVogel (Accenture) * SimonWills (Integrate) ---+++ Reporting Issues on the Specification The working group participants who author and maintain this working draft specification, monitor a distribution list where issues or questions can be raised, see [[http://open-services.net/mailman/listinfo/oslc-rm_open-services.net][Requirements Management Mailing List]] Issues found with this specification and their resolution may be found at RmSpecificationV2Issues. ---+++ Intellectual Property Covenant The members of the Working Group (or as appropriate, their employers) have documented a Patent Non-Assertion Covenant for implementations of the RM 2.0 Specification, as described in the open-services.net [[http://open-services.net/html/Terms.html][Terms of Use]]. Details of the Covenant may be found [[RmSpecificationCovenantV2][here]]. ---+++ References * OSLC RM 1.0 - [[RmSpecificationV1][OSLC Requirements Management Specification 1.0]] * OSLC Core - [[OSLCCoreSpecDRAFT][OSLC Core Specification 1.0]] * OSLC UI Preview - [[OslcUiPreviewDRAFT][OSLC UI Preview Guidance]] * OSLC Quality Management 2.0 - QmSpecificationV2. * OSLC Change Management 2.0 - CmSpecificationV2. * Dublin Core - [[http://dublincore.org/documents/dces/][Dublin Core Metadata Element Set, Version 1.1]] * FOAF - [[http://xmlns.com/foaf/spec][Friend of a Friend (FOAF)]] * HTTP - [[http://tools.ietf.org/html/rfc2616][Hyper-text Transfer Protocol (HTTP/1.1)]] * RDF/XML Concepts - [[http://www.w3.org/TR/2004/REC-rdf-concepts-20040210/][RDF/XML Concepts and Abstract Syntax]] * RDF/XML Syntax - [[http://www.w3.org/TR/2004/REC-rdf-syntax-grammar-20040210/][RDF / XML Syntax Specification (Revised)]] * URI Syntax - [[http://tools.ietf.org/html/rfc3986][URI Generic Syntax]] * XML Namespaces - [[http://www.w3.org/TR/REC-xml-names/][Namespaces in XML 1.0 (Third Edition)]] * XML Base - [[http://www.w3.org/TR/xmlbase/][XML Base (Second Edition)]] * XSD Datatypes - [[http://www.w3.org/TR/xmlschema-2][XML Schema Part 2: Datatypes Second Edition]] ---+++ References
E
dit
|
A
ttach
|
P
rint version
|
H
istory
: r1
|
B
acklinks
|
V
iew topic
|
Ra
w
edit
|
M
ore topic actions
Topic revision: r1 - 09 Aug 2010 - 21:53:43 -
IanGreen
Main
Main Web
Create New Topic
Index
Search
Changes
Notifications
RSS Feed
Statistics
Preferences
Webs
Main
Sandbox
TWiki
Български
Cesky
Dansk
Deutsch
English
Español
Français
Italiano
日本語
Nederlands
Polski
Português
Русский
Svenska
简体中文
簡體中文
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