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
>
QmHome
>
QmSpecificationV2
(26 May 2011,
PaulMcMahan
)
(raw view)
<table cellspacing="1" cellpadding="5" border="0"> <tbody><tr><td valign="center"><img width="59" alt="OSLC_logo.png" src="/pub/Main/OslcCoreSpecification/OSLC_logo.png" height="66" /></td><td valign="top"> ---+!! Open Services for Lifecycle Collaboration<br />Quality Management Specification Version 2.0 </td></tr> </tbody></table> *Status:* 2.0 Specification - 26 May 2011 *This Version* * [[http://open-services.net/bin/view/Main/QmSpecificationV2]] *Latest Version* * [[http://open-services.net/bin/view/Main/QmSpecificationV2]] *PreviousVersion* * [[http://open-services.net/bin/view/Main/QmSpecificationV1]] *Authors* * PaulMcMahan *Contributors* * See [[#Contributors][Contributors section]] below. *Table of Contents* %TOC{depth="3"}% *License* [[http://i.creativecommons.org/l/by/3.0/us/88x31.png]] <br /> This work is licensed under a [[http://creativecommons.org/licenses/by/3.0/us/][Creative Commons Attribution License]]. *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]]. Domain name examples use [[http://tools.ietf.org/html/rfc2606][RFC2606]]. ---++ Introduction (this section is informative) This specification builds on the [[OslcCoreSpecification][OSLC Core Specification]] to define the resources and operations supported by an Open Services for Lifecycle Collaboration (OSLC) Quality Management (QM) provider. Quality Management resources define the test plans, test cases, and test results of the software delivery lifecycle. They represent individual resources along with their relationships to other shared resource types such change requests and requirements. The intent of this specification is to define the set of HTTP-based RESTful interfaces in terms of HTTP methods: GET, POST, PUT and DELETE, HTTP response codes, mime type handling and resource formats. The capabilities of the interface definitions are driven by key integration scenarios and therefore don't represent a complete setup of operations on resources or resource types. The resource formats and operations may not match exactly the native models supported by quality management service providers but are intended to be compatible with them. A key approach to supporting these scenarios is to delegate operations, as driven by service provider contributed user interfaces, as much as possible and not require a service provider to expose its complete data model and application logic. ---+++ Terminology *Service Provider* - an implementation of the OSLC Quality Management specifications as a server. OSLC QM clients consume these services *QM Resource* - A resource managed by the QM service provider. The types of resources defined by this specification are Test Plan, Test Case, Test Script, Test Execution Record, and Test Result. *Test Plan Resource* - Defines the overall process and strategy for testing a system *Test Case Resource* - Defines the criteria which determine whether a system exhibits the correct behavior under a specific set of circumstances *Test Script Resource* - Defines a program or list of steps used to conduct a test *Test Execution Record Resource* - Planning for execution of a test *Test Result Resource* - Describes the outcome of attempting to execute a test ---++ Base Requirements ---+++ Compliance This specification is based on [[OslcCoreSpecification][OSLC Core Specification]]. OSLC QM consumers and service providers *MUST* be compliant with both the core specification and this QM specification, and *SHOULD* follow all the guidelines and recommendations in both these specifications. The following table summarizes the requirements from OSLC Core Specification as well as some additional specific to QM. Note that this specification further restricts some of the requirements for OSLC Core Specification. See further sections in this specification or the OSLC Core Specification to get further details on each of these requirements. | *Requirement* | *Level* | *Meaning* | | Unknown properties and content | MAY / MUST | OSLC services MAY ignore unknown content and OSLC clients MUST preserve unknown content | | Resource Operations | MUST | OSLC service MUST support resource operations via standard HTTP operations | | Resource Paging | MAY | OSLC services MAY provide paging for resources but only when specifically requested by client | | Partial Resource Representations | MUST / MAY | OSLC services MUST support request for a subset of a resource's properties via the oslc.properties URL parameter retrieval via HTTP GET and MAY support via HTTP PUT | | Service Provider Resources | MAY / MUST | OSLC service providers MAY provide a Service Provider Catalog and MUST provide a Service Provider resource | | Creation Factories | MAY | OSLC service providers MAY provide creation factories to enable resource creation via HTTP POST | | Query Capabilities | MUST | OSLC service providers MUST provide query capabilities to enable clients to query for resources | | Query Syntax | MUST | OSLC query capabilities MUST support the OSLC Core Query Syntax and MAY use other query syntax | | Delegated UI Dialogs | MUST | OSLC Services MUST offer delegated UI dialogs (creation and selections) specified via service provider resource | | UI Preview | SHOULD | OSLC Services SHOULD offer UI previews for resources that may be referenced by other resources | | HTTP Basic Authentication | MAY | OSLC Services MAY support Basic Auth and should do so only over HTTPS | | OAuth Authentication | MAY | OSLC Services MAY support OAuth and can indicate the required OAuth URLs via the service provider resource | | Error Responses | MAY | OSLC Services MAY provide error responses using Core defined error formats | | RDF/XML Representations | MUST / MUST | OSLC services MUST provide an RDF/XML representation for HTTP GET requests and MUST support RDF/XML representations on POST and PUT requests. | | XML Representations | MAY | OSLC services MAY provide a XML representation for HTTP GET, POST and PUT requests that conform to the Core Guidelines for XML. | | JSON Representations | MAY | OSLC services MAY provide JSON representations for HTTP GET, POST and PUT requests that conform to the Core Guidelines for JSON | | HTML Representations | SHOULD | OSLC services SHOULD provide HTML representations for HTTP GET requests | The following areas of the [[QmSpecificationV1][OSLC QM V1 specification]] are affected by the corresponding areas of the OSLC Core Specification. | *Specification* | *Corresponding Area of Core Specification* | | [[QmRestApiV1][QM V1 REST API]] | [[OslcCoreSpecification#Resource_Operations][Resource Operations]] | | [[QmDelegatedResourceSelectionAndCreationV1][QM V1 Delegated Resource Selection and Creation]] | [[OslcCoreSpecification#Delegated_User_Interface_Dialogs][Delegated User Interface Dialogs]] | | [[QmResourceDefinitionsV1][QM V1 Resource Definitions]] | [[OslcCoreSpecification#OSLC_Defined_Resource_Representa][Resource Representation]] | | [[QmQuerySyntaxV1][QM V1 Query Syntax]] | [[OslcCoreSpecification#Query_Capabilities][Query Capabilities]] | | [[OslcServiceProviderCatalogV1][Service Provider Catalog (common spec)]] | [[OslcCoreSpecification#Service_Provider_Resources][Service Provider Resources]] | Backwards compatibility with OSLC QM V1 is discussed below. ---+++ Specification Versioning See [[OslcCoreSpecification#Specification_Versioning][OSLC Core Specification Versioning section]]. ---+++ Namespaces In addition to the namespace URIs and namespace prefixes defined in the [[OslcCoreSpecification][OSLC Core specification]], OSLC QM defines the namespace URI of =http://open-services.net/ns/qm#= with a namespace prefix of =oslc_qm=. This namespace URI and prefix are used to designate the resources defined in this specification and their properties. ---+++ Resource Formats In addition to the requirements for [[OslcCoreSpecification#OSLC_Defined_Resource_Representa][OSLC Defined Resource Representations]], this section outlines further refinements and restrictions. For HTTP GET requests on all OSLC QM and OSLC Core defined resource types, * QM Providers *MUST* provide RDF/XML and XML representations. The XML representation *SHOULD* follow the guidelines outlined in the [[OSLCCoreSpecAppendixRepresentations][OSLC Core Representations Guidance]]. * QM Consumers requesting RDF/XML *SHOULD* be prepared for any valid RDF/XML document. QM Consumers requesting XML *SHOULD* be prepared for representations that follow the guidelines outlined in the [[OSLCCoreSpecAppendixRepresentations][OSLC Core Representations Guidance]]. * QM Providers *SHOULD* support an [X]HTML representation and a user interface (UI) preview as defined by [[OslcCoreUiPreview][UI Preview Guidance]] For HTTP PUT/POST request formats for QM resources, * QM Providers *MUST* accept XML representations and *SHOULD* accept RDF/XML representations. QM Providers accepting RDF/XML *SHOULD* be prepared for any valid RDF/XML document. For XML, QM Providers *SHOULD* be prepared for representations that follow the guidelines outlined in the [[OSLCCoreSpecAppendixRepresentations][OSLC Core Representations Guidance]]. For HTTP GET response formats for Query requests, QM Providers *MUST* provide RDF/XML, XML, and Atom Syndication Format XML. When QM Consumers request: * =application/rdf+xml= QM Providers *MUST* respond with RDF/XML representation without restrictions. * =application/xml= QM Providers *MUST* respond with OSLC-defined abbreviated XML representation as defined in the [[OSLCCoreSpecAppendixRepresentations][OSLC Core Representations Guidance]] * =application/atom+xml= QM Providers *MUST* respond with Atom Syndication Format XML representation as defined in the [[OSLCCoreSpecAppendixRepresentations][OSLC Core Representations Guidance]] * The Atom Syndication Format XML representation *SHOULD* use RDF/XML representation without restrictions for the atom:content entries representing the resource representations. ---+++ Authentication See [[OslcCoreSpecification#Authentication][OSLC Core Authentication section]]. OSLC QM puts no additional constraints on authentication. ---+++ Error Responses See [[OslcCoreSpecification#Error_Responses][OSLC Core Error Responses section]]. OSLC QM puts no additional constraints on error responses. ---+++ Labels for Relationships Quality Management relationships to other resources are represented as properties whose values are the URI of the object or target resource. When a Quality Management relationship property is to be presented in a user interface, it may be helpful to provide an informative and useful textual label for that relationship instance. (This in addition to the relationship property URI and the object resource URI, which are also candidates for presentation to a user.) To this end, OSLC providers *MAY* support a =dcterms:title= link property in Quality Management resource representations, using the anchor approach outlined in the [[OslcCoreSpecAppendixLinks][OSLC Core Links Guidance]]. RDF/XML and XML example using reified statement: <blockquote> <verbatim> <rdf:RDF xmlns:dcterms="http://purl.org/dc/terms/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:oslc_qm="http://open-services.net/ns/qm#"> <oslc_qm:TestCase rdf:about="http://example.com/testcases/4321"> <oslc_qm:validatesRequirement rdf:ID="link1" rdf:resource="http://anotherexample.com/requirements/123" /> </oslc_qm:TestCase> <rdf:Description rdf:about="#link1"> <dcterms:title>Requirement 123: Provide keyboard accessibility</dcterms:title> </rdf:Description> </rdf:RDF> </verbatim> </blockquote> ---++ QM Resource Definitions The QM resource properties are not limited to the ones defined in this specification; service providers may provide additional properties. It is recommended that any additional properties exist in their own unique namespace and not use the namespaces defined in this specification. A list of properties is defined for each type of resource. Most of these properties are identified in [[OSLCCoreSpecAppendixA][ OSLC Core Appendix A: Common Properties]]. Any exceptions are noted. Relationship properties refer to other resources. These resources may be in any OSLC domain (including QM). The diagram below shows the relationships between QM Resources. <img alt="Diagram of OSLC QM relationships" src="http://open-services.net/pub/Main/QmSpecificationV2/oslc_qm_resources.png" /> For all resource types defined in this specification, all *required* properties (those defined with an occurrence of *exactly-one* or *one-or-many*) *MUST* exist for each resource and must be provided when requested. All other properties are optional, and might not exist on some or any resources; those that do not exist will not be present in the returned representation even if requested, while those that do exist *MUST* be provided if requested. Providers *MAY* define additional provider-specific properties; providers *SHOULD* use their own namespaces for such properties, or use standard Dublin Core or RDF namespaces and properties where appropriate. If no specific set of properties is requested, *all* properties are returned - both those defined in this specification as well as any provider-specific ones. See [[OslcCoreSpecification#Selective_Property_Values][Selective Property Values]] in OSLC Core Specification. Consumers of OSLC QM services should note that some resources may have a very large number of related resources, and that some resources may be very large and/or expensive to compute. For this reason, consumers are *strongly* encouraged to use the =oslc.properties= parameter to limit the properties returned from a request to the subset required. See [[OslcCoreSpecification#Selective_Property_Values][Selective Property Values]] in OSLC Core Specification. ---+++ Resource: !TestPlan * *Name:* =TestPlan= * *Type URI* =http://open-services.net/ns/qm#TestPlan= ---++++ !TestPlan Properties | *Prefixed Name* | *Occurs* | *Read-only* | *Value-type* | *Representation* | *Range* | *Description* || | *OSLC Core:* Common Properties |||||||| | =dcterms:contributor= | zero-or-many | unspecified | Either Resource or Local Resource | Either Reference or Inline | =any= | Contributor or contributors to resource (reference: Dublin Core). It is likely that the target resource will be an [[OSLCCoreSpecAppendixA#foaf_Person_Resource][ =foaf:Person= ]] but that is not necessarily the case. || | =dcterms:created= | zero-or-one | True | !DateTime | n/a | n/a | Timestamp of resource creation (reference: Dublin Core) || | =dcterms:creator= | zero-or-many | unspecified | Either Resource or Local Resource | Either Reference or Inline | =any= | Creator or creators of resource (reference: Dublin Core). It is likely that the target resource will be an [[OSLCCoreSpecAppendixA#foaf_Person_Resource][ =foaf:Person= ]] but that is not necessarily the case. || | =dcterms:description= | zero-or-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. SHOULD include only content that is valid inside an XHTML <span> element. || | =dcterms:identifier= | exactly-one | True | String | n/a | n/a | A unique identifier for a resource. Assigned by the service provider when a resource is created. Not intended for end-user display. || | =dcterms:modified= | zero-or-one | True | !DateTime | n/a | n/a | Timestamp of latest resource modification (reference: Dublin Core) || | =rdf:type= | zero-or-many | unspecified | Resource | Reference | n/a | The resource type URIs. || | =dcterms:subject= | zero-or-many | unspecified | String | n/a | n/a | Tag or keyword for a resource. Each occurrence of a dc:subject property denotes an additional tag for the resource. || | =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. || | =oslc:instanceShape= | zero-or-one | True | Resource | Reference | [[OSLCCoreSpecAppendixA#oslc_ResourceShape_Resource][ =oslc:ResourceShape= ]] | Resource Shape that provides hints as to resource property value-types and allowed values. || | =oslc:serviceProvider= | zero-or-many | True | Resource | Reference | [[OslcCoreSpecification#Service_Provider_Resources][ =oslc:ServiceProvider= ]] | The scope of a resource is a link to the resource's OSLC Service Provider. || | *Prefixed Name* | *Occurs* | *Read-only* | *Value-type* | *Representation* | *Range* | *Description* | | *Relationship properties:* This grouping of properties is used to identify relationships between resources managed by OSLC Service Providers ||||||| | =oslc_qm:relatedChangeRequest= | zero-or-many | False | Resource | Reference | =any= | A related change request. It is likely that the target resource will be an [[CmSpecificationV2#Resource_ChangeRequest][ =oslc_cm:ChangeRequest= ]] but that is not necessarily the case. | | =oslc_qm:usesTestCase= | zero-or-many | False | Resource | Either | =any= | Test Case used by the Test Plan. It is likely that the target resource will be an [[QmSpecificationV2#Resource_TestCase][ =oslc_qm:TestCase= ]] but that is not necessarily the case. | | =oslc_qm:validatesRequirementCollection= | zero-or-many | False | Resource | Reference | =any= | Requirement Collection that is validated by the Test Plan. It is likely that the target resource will be an [[RmSpecificationV2#Resource_RequirementCollection][ =oslc_rm:RequirementCollection= ]] but that is not necessarily the case. | ---+++ Resource: !TestCase * *Name:* =TestCase= * *Type URI* =http://open-services.net/ns/qm#TestCase= ---++++ !TestCase Properties | *Prefixed Name* | *Occurs* | *Read-only* | *Value-type* | *Representation* | *Range* | *Description* || | *OSLC Core:* Common Properties |||||||| | =dcterms:contributor= | zero-or-many | unspecified | Either Resource or Local Resource | Either Reference or Inline | =any= | Contributor or contributors to resource (reference: Dublin Core). It is likely that the target resource will be an [[OSLCCoreSpecAppendixA#foaf_Person_Resource][ =foaf:Person= ]] but that is not necessarily the case. || | =dcterms:created= | zero-or-one | True | !DateTime | n/a | n/a | Timestamp of resource creation (reference: Dublin Core) || | =dcterms:creator= | zero-or-many | unspecified | Either Resource or Local Resource | Either Reference or Inline | =any= | Creator or creators of resource (reference: Dublin Core). It is likely that the target resource will be an [[OSLCCoreSpecAppendixA#foaf_Person_Resource][ =foaf:Person= ]] but that is not necessarily the case. || | =dcterms:description= | zero-or-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. SHOULD include only content that is valid inside an XHTML <span> element. || | =dcterms:identifier= | exactly-one | True | String | n/a | n/a | A unique identifier for a resource. Assigned by the service provider when a resource is created. Not intended for end-user display. || | =dcterms:modified= | zero-or-one | True | !DateTime | n/a | n/a | Timestamp of latest resource modification (reference: Dublin Core) || | =rdf:type= | zero-or-many | unspecified | Resource | Reference | n/a | The resource type URIs. || | =dcterms:subject= | zero-or-many | unspecified | String | n/a | n/a | Tag or keyword for a resource. Each occurrence of a dc:subject property denotes an additional tag for the resource. || | =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. || | =oslc:instanceShape= | zero-or-one | True | Resource | Reference | [[OSLCCoreSpecAppendixA#oslc_ResourceShape_Resource][ =oslc:ResourceShape= ]] | Resource Shape that provides hints as to resource property value-types and allowed values. || | =oslc:serviceProvider= | zero-or-many | True | Resource | Reference | [[OslcCoreSpecification#Service_Provider_Resources][ =oslc:ServiceProvider= ]] | The scope of a resource is a link to the resource's OSLC Service Provider. || | *Prefixed Name* | *Occurs* | *Read-only* | *Value-type* | *Representation* | *Range* | *Description* | | *Relationship properties:* This grouping of properties is used to identify relationships between resources managed by OSLC Service Providers ||||||| | =oslc_qm:relatedChangeRequest= | zero-or-many | False | Resource | Reference | =any= | A related change request. It is likely that the target resource will be an [[CmSpecificationV2#Resource_ChangeRequest][ =oslc_cm:ChangeRequest= ]] but that is not necessarily the case. | | =oslc_qm:testsChangeRequest= | zero-or-many | False | Resource | Reference | =any= | Change Request tested by the Test Case. It is likely that the target resource will be an [[CmSpecificationV2#Resource_ChangeRequest][ =oslc_cm:ChangeRequest= ]] but that is not necessarily the case. | | =oslc_qm:usesTestScript= | zero-or-many | False | Resource | Either | =any= | Test Script used by the Test Case. It is likely that the target resource will be an [[QmSpecificationV2#Resource_TestScript][ =oslc_qm:TestScript= ]] but that is not necessarily the case. | | =oslc_qm:validatesRequirement= | zero-or-many | False | Resource | Reference | =any= | Requirement that is validated by the Test Case. It is likely that the target resource will be an [[RmSpecificationV2#Resource_Requirement][ =oslc_rm:Requirement= ]] but that is not necessarily the case. | ---+++ Resource: !TestScript * *Name:* =TestScript= * *Type URI* =http://open-services.net/ns/qm#TestScript= ---++++ !TestScript Properties | *Prefixed Name* | *Occurs* | *Read-only* | *Value-type* | *Representation* | *Range* | *Description* || | *OSLC Core:* Common Properties |||||||| | =dcterms:contributor= | zero-or-many | unspecified | Either Resource or Local Resource | Either Reference or Inline | =any= | Contributor or contributors to resource (reference: Dublin Core). It is likely that the target resource will be an [[OSLCCoreSpecAppendixA#foaf_Person_Resource][ =foaf:Person= ]] but that is not necessarily the case. || | =dcterms:created= | zero-or-one | True | !DateTime | n/a | n/a | Timestamp of resource creation (reference: Dublin Core) || | =dcterms:creator= | zero-or-many | unspecified | Either Resource or Local Resource | Either Reference or Inline | =any= | Creator or creators of resource (reference: Dublin Core). It is likely that the target resource will be an [[OSLCCoreSpecAppendixA#foaf_Person_Resource][ =foaf:Person= ]] but that is not necessarily the case. || | =dcterms:description= | zero-or-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. SHOULD include only content that is valid inside an XHTML <span> element. || | =dcterms:identifier= | exactly-one | True | String | n/a | n/a | A unique identifier for a resource. Assigned by the service provider when a resource is created. Not intended for end-user display. || | =dcterms:modified= | zero-or-one | True | !DateTime | n/a | n/a | Timestamp of latest resource modification (reference: Dublin Core) || | =rdf:type= | zero-or-many | unspecified | Resource | Reference | n/a | The resource type URIs. || | =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. || | =oslc:instanceShape= | zero-or-one | True | Resource | Reference | [[OSLCCoreSpecAppendixA#oslc_ResourceShape_Resource][ =oslc:ResourceShape= ]] | Resource Shape that provides hints as to resource property value-types and allowed values. || | =oslc:serviceProvider= | zero-or-many | True | Resource | Reference | [[OslcCoreSpecification#Service_Provider_Resources][ =oslc:ServiceProvider= ]] | The scope of a resource is a link to the resource's OSLC Service Provider. || | *Prefixed Name* | *Occurs* | *Read-only* | *Value-type* | *Representation* | *Range* | *Description* | | *Relationship properties:* This grouping of properties is used to identify relationships between resources managed by OSLC Service Providers ||||||| | =oslc_qm:executionInstructions= | unspecified | unspecified | Resource | Reference | =any= | Instructions for executing the test script. Note that the value of Occurs is undefined. The resource shape document provided by the QM service provider may be consulted for its value. | | =oslc_qm:relatedChangeRequest= | zero-or-many | False | Resource | Reference | =any= | A related change request. It is likely that the target resource will be an [[CmSpecificationV2#Resource_ChangeRequest][ =oslc_cm:ChangeRequest= ]] but that is not necessarily the case. | | =oslc_qm:validatesRequirement= | zero-or-many | False | Resource | Reference | =any= | Requirement that is validated by the Test Script. It is likely that the target resource will be an [[RmSpecificationV2#Resource_Requirement][ =oslc_rm:Requirement= ]] but that is not necessarily the case. | ---+++ Resource: !TestExecutionRecord * *Name:* =TestExecutionRecord= * *Type URI* =http://open-services.net/ns/qm#TestExecutionRecord= ---++++ !TestExecutionRecord Properties | *Prefixed Name* | *Occurs* | *Read-only* | *Value-type* | *Representation* | *Range* | *Description* || | *OSLC Core:* Common Properties |||||||| | =dcterms:contributor= | zero-or-many | unspecified | Either Resource or Local Resource | Either Reference or Inline | =any= | Contributor or contributors to resource (reference: Dublin Core). It is likely that the target resource will be an [[OSLCCoreSpecAppendixA#foaf_Person_Resource][ =foaf:Person= ]] but that is not necessarily the case. || | =dcterms:created= | zero-or-one | True | !DateTime | n/a | n/a | Timestamp of resource creation (reference: Dublin Core) || | =dcterms:creator= | zero-or-many | unspecified | Either Resource or Local Resource | Either Reference or Inline | =any= | Creator or creators of resource (reference: Dublin Core). It is likely that the target resource will be an [[OSLCCoreSpecAppendixA#foaf_Person_Resource][ =foaf:Person= ]] but that is not necessarily the case. || | =dcterms:identifier= | exactly-one | True | String | n/a | n/a | A unique identifier for a resource. Assigned by the service provider when a resource is created. Not intended for end-user display. || | =dcterms:modified= | zero-or-one | True | !DateTime | n/a | n/a | Timestamp of latest resource modification (reference: Dublin Core) || | =rdf:type= | zero-or-many | unspecified | Resource | Reference | n/a | The resource type URIs. || | =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. || | =oslc:instanceShape= | zero-or-one | True | Resource | Reference | [[OSLCCoreSpecAppendixA#oslc_ResourceShape_Resource][ =oslc:ResourceShape= ]] | Resource Shape that provides hints as to resource property value-types and allowed values. || | =oslc:serviceProvider= | zero-or-many | True | Resource | Reference | [[OslcCoreSpecification#Service_Provider_Resources][ =oslc:ServiceProvider= ]] | The scope of a resource is a link to the resource's OSLC Service Provider. || | *Prefixed Name* | *Occurs* | *Read-only* | *Value-type* | *Representation* | *Range* | *Description* | | *Relationship properties:* This grouping of properties is used to identify relationships between resources managed by OSLC Service Providers ||||||| | =oslc_qm:blockedByChangeRequest= | zero-or-many | False | Resource | Reference | =any= | Change Request that prevents execution of the Test Execution Record. It is likely that the target resource will be an [[CmSpecificationV2#Resource_ChangeRequest][ =oslc_cm:ChangeRequest= ]] but that is not necessarily the case. | | =oslc_qm:runsOnTestEnvironment= | zero-or-one | unspecified | Resource | Reference | =any= | Indicates the environment details of the test case for this execution record. | | =oslc_qm:relatedChangeRequest= | zero-or-many | False | Resource | Reference | =any= | A related change request. It is likely that the target resource will be an [[CmSpecificationV2#Resource_ChangeRequest][ =oslc_cm:ChangeRequest= ]] but that is not necessarily the case. | | =oslc_qm:reportsOnTestPlan= | zero-or-one | unspecified | Resource | Either | =any= | Test Plan that the Test Execution Record reports on. It is likely that the target resource will be an [[QmSpecificationV2#Resource_TestPlan][ =oslc_qm:TestPlan= ]] but that is not necessarily the case. | | =oslc_qm:runsTestCase= | exactly-one | False | Resource | Either | =any= | Test Case run by the Test Execution Record. It is likely that the target resource will be an [[QmSpecificationV2#Resource_TestCase][ =oslc_qm:TestCase= ]] but that is not necessarily the case. | ---+++ Resource: !TestResult * *Name:* =TestResult= * *Type URI* =http://open-services.net/ns/qm#TestResult= ---++++ !TestResult Properties | *Prefixed Name* | *Occurs* | *Read-only* | *Value-type* | *Representation* | *Range* | *Description* || | *OSLC Core:* Common Properties |||||||| | =dcterms:created= | zero-or-one | True | !DateTime | n/a | n/a | Timestamp of resource creation (reference: Dublin Core) || | =dcterms:identifier= | exactly-one | True | String | n/a | n/a | A unique identifier for a resource. Assigned by the service provider when a resource is created. Not intended for end-user display. || | =dcterms:modified= | zero-or-one | True | !DateTime | n/a | n/a | Timestamp of latest resource modification (reference: Dublin Core) || | =rdf:type= | zero-or-many | unspecified | Resource | Reference | n/a | The resource type URIs. || | =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. || | =oslc:instanceShape= | zero-or-one | True | Resource | Reference | [[OSLCCoreSpecAppendixA#oslc_ResourceShape_Resource][ =oslc:ResourceShape= ]] | Resource Shape that provides hints as to resource property value-types and allowed values. || | =oslc:serviceProvider= | zero-or-many | True | Resource | Reference | [[OslcCoreSpecification#Service_Provider_Resources][ =oslc:ServiceProvider= ]] | The scope of a resource is a link to the resource's OSLC Service Provider. || | *Prefixed Name* | *Occurs* | *Read-only* | *Value-type* | *Represen-tation* | *Range* | *Description* | | *OSLC QM:* Start of additional properties ||||||| | =oslc_qm:status= | zero-or-one | unspecified | String | n/a | n/a | Used to indicate the state of the Test Result based on values defined by the service provider. Most often a read-only property. | | *Prefixed Name* | *Occurs* | *Read-only* | *Value-type* | *Representation* | *Range* | *Description* | | *Relationship properties:* This grouping of properties is used to identify relationships between resources managed by OSLC Service Providers ||||||| | =oslc_qm:affectedByChangeRequest= | zero-or-many | False | Resource | Reference | =any= | Change request that affects the Test Result. It is likely that the target resource will be an [[CmSpecificationV2#Resource_ChangeRequest][ =oslc_cm:ChangeRequest= ]] but that is not necessarily the case. | | =oslc_qm:executesTestScript= | zero-or-one | unspecified | Resource | Either | =any= | Test Script executed to produce the Test Result. It is likely that the target resource will be an [[QmSpecificationV2#Resource_TestScript][ =oslc_qm:TestScript= ]] but that is not necessarily the case. | | =oslc_qm:producedByTestExecutionRecord= | zero-or-one | unspecified | Resource | Either | =any= | Test Execution Record that the Test Result was produced by. It is likely that the target resource will be an [[QmSpecificationV2#Resource_TestExecutionRecord][ =oslc_qm:TestExecutionRecord= ]] but that is not necessarily the case. | | =oslc_qm:reportsOnTestCase= | exactly-one | unspecified | Resource | Either | =any= | Test Case that the Test Result reports on. It is likely that the target resource will be an [[QmSpecificationV2#Resource_TestCase][ =oslc_qm:TestCase= ]] but that is not necessarily the case. | | =oslc_qm:reportsOnTestPlan= | zero-or-one | unspecified | Resource | Either | =any= | Test Plan that the Test Result reports on. It is likely that the target resource will be an [[QmSpecificationV2#Resource_TestPlan][ =oslc_qm:TestPlan= ]] but that is not necessarily the case. | ---++ QM Service Provider Capabilities ---+++ Service Discovery and Description ---+++ Resource Shapes OSLC QM services providers *SHOULD* support [[OSLCCoreSpecAppendixA#oslc_ResourceShape_Resource][Resource Shapes]] as defined in [[OSLCCoreSpecAppendixA][OSLC Core Specification Appendix A]] ---+++ Service Provider Resource OSLC QM service providers *MUST* provide a [[OslcCoreSpecification#Service_Provider_Resources][Service Provider Resource]] that can be retrieved at a implementation dependent URI. OSLC QM service providers *MAY* provide a [[OslcCoreSpecification#Service_Provider_Catalog_Resources][Service Provider Catalog Resource]] that can be retrieved at a implementation dependent URI. OSLC QM service providers *MUST* provide a =oslc:serviceProvider= property for their defined resources that will be the URI to a [[OslcCoreSpecification#Service_Provider_Resources][Service Provider Resource]]. ---+++ Creation Factories If an OSLC QM service provider supports the creation of resources, there *MUST* be at least one [[OslcCoreSpecification#Creation_Factories][Creation Factories]] entry in the Services definition. ---+++ Query Capabilities There *MUST* be at least one [[OslcCoreSpecification#Query_Capabilities][Query Capabilities]] entry in the Services definition. The Query Capability *MUST* at least support these parameters: * oslc:where * oslc:select If shape information is NOT present with the Query Capability, service providers *SHOULD* use the default properties defined in [[OSLCCoreSpecAppendixRepresentations#Specifying_the_shape_of_a_query][OSLC Core RDF/XML Examples]] to contain the result. ---+++ Delegated UIs OSLC QM service providers support the selection and creation of QM resources as defined by [[OslcCoreSpecification#Delegated_User_Interface_Dialogs][Delegated UIs]] in OSLC Core. The service providers supports the delegated UIs as follows: | *QM Resource* | *Selection* | *Creation* | | !TestPlan | MUST | MUST | | !TestCase | MUST | MUST | | !TestScript | MUST | MAY | | !TestExecutionRecord | MUST | MAY | | !TestResult | MUST | MAY | ---++ Miscellaneous ---+++ Version Compatibility with 1.0 Specifications ---++++ Media Types For a resource format identification of RDF/XML and XML, the media type used for this representation *SHOULD* be application/rdf+xml or application/xml. The usage of the OSLC QM 1.0 defined media types of application/x-oslc-qm-* is being deprecated. ---++++ Requesting formats QM 1.0 consumers wanting to request 1.0 resource formats will not need to change if they used 1.0 defined media types ( =application/x-oslc-qm*=), see OSLC-QM 1.0. QM 2.0 consumers should use media types as defined in this specification for requests, excluding the OSLC QM 1.0 specific media types ( =application/x-oslc-qm*=). QM consumers supporting both 1.0 and 2.0, may request request both 1.0 and 2.0 media types on HTTP GET requests as usually done with HTTP request parameter =Accept= giving appropriate quality (See HTTP Accept) weighting to help distinguish their preferred content. For additional guidance, a QM 2.0 consumer or provider may reference the =OSLC-Core-Version= HTTP header with a value of =2.0=. ---++ Appendix A: Samples (this section is informative) See QmSpecificationV2Samples ---++ Appendix B: Resource Shapes (this section is informative) See QmSpecificationV2Shapes ---++ Appendix C: Notices and References ---+++ Contributors ---+++ 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-qm_open-services.net][Quality Management Mailing List]] Also the issues found with this specification and their resolution can be found at QmSpecV2Issues. ---+++ Authors and Contact Information * DaveJohnson (IBM) * IngridJorgensen (Tieto) * MichaelPena (Sogeti) * NigelLawrence (IBM) * PaulMcMahan (IBM, OSLC-QM Lead) * ScottBosworth (IBM) * ScottFairbrother (IBM) ---+++ 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-qm_open-services.net][Quality Management Mailing List]] Also the issues found with this specification and their resolution can be found at QmSpecV2Issues. ---+++ 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 QM 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 [[QmSpecificationCovenantV2][here]]. ---+++ References * OSLC-QM 1.0 - [[QmSpecificationV1][OSLC Quality Management Specification 1.0]] * OSLC Core - [[OslcCoreSpecification][OSLC Core Specification 2.0]] * OSLC-CM 2.0 - [[CmSpecificationV2][OSLC Change Management Specification 2.0]] * OSLC-RM 2.0 - [[RmSpecificationV2][OSLC Requirements Management Specification 2.0]] * Dublin Core 1.1 - [[http://dublincore.org/documents/2010/10/11/dces/][Dublin Core Metadata Element Set, Version 1.1]] * FOAF - [[http://xmlns.com/foaf/spec/20100809.html][Friend of a Friend (FOAF) v0.98]] * HTTP 1.1 - [[http://tools.ietf.org/html/rfc2616][Hyper-text Transfer Protocol (HTTP/1.1)]] * OAuth 1.0a - [[http://tools.ietf.org/html/rfc5849][RFC5849 - The OAuth 1.0 Protocol]] * 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)]] * XSD Datatypes - [[http://www.w3.org/TR/xmlschema-2][XML Schema Part 2: Datatypes Second Edition]]
Attachments
Attachments
Topic attachments
I
Attachment
Action
Size
Date
Who
Comment
png
oslc_qm_resources.png
manage
22.2 K
13 Jul 2010 - 16:46
PaulMcMahan
OSLC QM V2 resources
E
dit
|
A
ttach
|
P
rint version
|
H
istory
: r52
<
r51
<
r50
<
r49
<
r48
|
B
acklinks
|
V
iew topic
|
Ra
w
edit
|
M
ore topic actions
Topic revision: r52 - 26 May 2011 - 20:55:46 -
PaulMcMahan
Main.QmSpecificationV2 moved from Main.QmSpecV2Draft on 24 Jul 2010 - 13:23 by
PaulMcMahan
-
put it back
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