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
>
MainOslcCommonArchitecture
>
ReportingHome
>
ReportingSpecifications
(revision 12) (raw view)
---+ OSLC Reporting Specification V1.0 - DRAFT By: The [[ReportingHome][OSLC Reporting Specification Workgroup]] This is a DRAFT document that is under review. You can help by reviewing carefully, raising issues for discussion on the [[http://open-services.net/mailman/listinfo/oslc-reporting_open-services.net][OSLC Reporting WG mailing list]] and document specific issues that need response on the issues page here OSLCReportingV1Issues. %TOC{depth="2"}% --- <!-- *************************************************************************************** --> ---+ Overview The Open Services for Lifecycle Collaboration (OSLC) initiative is creating an family of web services specifications for products, services and other tools that support all phases of the software and product lifecycle. The purpose of these specifications is to enable integration between products that support Application Life-cycle Management (ALM) and Product Life-cycle Management (PLM). Each part of the lifecycle or domain has its own work group and specification, for example there are Change Management, Quality Management, Estimation & Measurement and more. Each of the domain specifications are built upon the OSLC Core Specification. Reporting is cross-cutting across all domains. Reporting builds upon the Core Specification. It specifies the additional requirements on top of domain specifications that would enable OSLC Service Providers providing OSLC Services that can be consumed by OSLC Reporting Consumers. This document will makes references to the [[OSLCCoreSpecDRAFT][OSLC Core Specification]]. This document may tighten the constraints as specified in the OSLC Core Specification, but will not relax them. ---++ Glossary of Terms A basic set of terms are defined in [[OSLCCoreSpecDRAFT#Glossary_of_terms?sortcol=table;up=][Glossary of Terms in the OSLC Core Specification]]. Here are the terminology introduced by Reporting. *Reporting Consumer* - A reporting system which consumes the OSLC services provided by OSLC Service Providers for the purpose of doing analysis and reporting on OSLC Resources. ---+++ 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]]. ---++ Interface Sequence Diagram This section illustrates the interaction between a OSLC Service Provider, a Reporting Consumer, and the reporting users. The specification assumes that the Reporting Consumer has no specific knowledge of the Service Provider or its domain resources. It relies wholly on the Service Provider for discovering the shape of resources and their properties and for the presence of an OSLC query capability. Based on the resource shape and query capabilities, a Reporting Consumer is able to offer it's users the ability to design and run reports. <img alt="" src="%ATTACHURL%/oslc_reporting_sequence_diagram_100426.jpg" /> ---++ Service Provider Resource An OSLC Service *MUST* have Query Capabilities defined in Service Provider Resource for all resources intended for Reporting. Each Query Capability for Reporting * *MUST* have oslc:queryBase pointing to the resource that has a list of resources intended for Reporting. The resources in the list *MUST* be identified as oslc:memberProperty in the Resource Shape Resource of the list resource. * *MUST* have oslc:shape to describe the list resource. ---++ Resource Shape Resource For every Query Capability that an OSLC Service provides for reporting, there *MUST* be a corresponding Resource Shape Resource for the subject resource identified in the Query Capability. For those properties in a Resource that are intended for Reporting, they *MUST* be described in the Resource Shape Resource. There is no requirements to describe all properties of a resource in Resource Shape Resource though. If the value-type of a property is a resource type, the property *MUST* provide a shape value (oslc:shape) to indicate the Resource Shape that applies to the resource. This applies to properties of the referrenced resource that are intended for Reporting and the Service Provider knows the shape. If the referenced resource is not managed by the Service Provider, then there is no need to provide a shape value (oslc:shape). ---++ Query An OSLC Service *MUST* support OSLC Core Query Syntax for Query Capabilities that are intending for Reporting. * *SHOULD* support oslc.properties * *SHOULD* support oslc.from * *SHOULD* support oslc.select * *SHOULD* support oslc.where * *SHOULD* support oslc.orderBy * *SHOULD* support oslc.limit An OSLC Service *SHOULD* support paging and include oslc:responseInfo as required in the response of a query. An OSLC Service *MUST* support oslc.properties=* and oslc.select=* that returns at least those properties that were described in Resource Shape Resource. Reporting consumers *MUST* tolerate additional unknown properties that *MAY* be returned. OSLC Resources *SHOULD* have a property dc:modified for modification timestamp. Reporting Consumer will use this property in oslc.where to effect delta loading for the data warehouse use case. ---++ Resource Representation An OSLC Service *MUST* provide RDF/XML representations of all Resources that are intended for Reporting. ---++ Authentication An OSLC Service Provider *MAY* choose not to protect its resources. If it chooses to protect its resources, it *SHOULD* use either HTTP Basic Authentication, OAuth or both. If other authentication mechanisms, including Form Base Authentication, are used instead, it is the responsibility of the OSLC Service to describe how those mechanisms work. Reporting Consumers *MAY* not support these. Form Based Authentication is intended for human to fill in authentication forms, thus there is no standardization of the fields in the form. On the other hand, Reporting requires programmatic handling of authentication and thus Reporting Consumer may not be able to handle. ---++ Appendix: Guidance ---+++ Deletion In delta loading data warehouse use case, there is a need to inform the Reporting Consumer on deleted resources. If resources are soft deleted (i.e. logically deleted), there would be a delete flag as a property of the resource. Thus deleted resources will be treated as changed resources. If resources are hard deleted (i.e. physically deleted), it will be the Reporting Consumer's responsibility to send query to get resource URL (or an unique identifier, if exist) for all current resources, and then map out what have been deleted in its data repository. ---+++ Form Based Authentication TBD ---++ Appendix : Example This section provides an end to end example. http://open-services.net/pub/Main/ImplementationScenario/oslc_implementation_100412.doc Note: Will convert the above doc. into web pages in wiki.
Attachments
Attachments
Topic attachments
I
Attachment
Action
Size
Date
Who
Comment
jpg
oslc_reporting_sequence_diagram_100426.jpg
manage
109.2 K
27 Apr 2010 - 02:52
TackTong
OSLC Reporting Sequence Diagram
Edit
|
Attach
|
P
rint version
|
H
istory
:
r13
<
r12
<
r11
<
r10
<
r9
|
B
acklinks
|
V
iew topic
|
Raw edit
|
More topic actions...
Topic revision: r12 - 07 May 2010 - 16:47:36 -
TackTong
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