ODRL Service (ODRL-S) Profile

Working Draft: 2 April 2008

This version:
http://odrl.net/Profiles/Services/WD-20080402.html
Latest version:
http://odrl.net/Profiles/Services/WD.html 
Editor(s):
G.R. Gangadharan, University of Trento, Italy
Renato Iannella, NICTA, Australia

Abstract

This document describes the semantics of service licenses and how they can be represented using a Profile of the ODRL rights expression language.

Status of this document

This is the first public Working Draft of the ODRL Services (ODRL-S) Profile. It has been produced by the ODRL Services Working Group. This is a Working Draft for review by working group members and other interested parties. Comments on this document should be sent to editors and discussion of this document takes place on the public working group mailing list odrl-services@odrl.net archived at http://odrl.net/pipermail/odrl-services_odrl.net/.

This is a draft document and may be updated, replaced or obsoleted by other documents at any time. It is inappropriate to cite this document as other than "work in progress".

Publication as a Working Draft does not imply endorsement by the ODRL Initiative.

This document was produced under the ODRL Initiative WG Process and Procedures document.

Table of contents

1. Overview
2. Profile Description
3. Scenarios (Informative)
Appendix-A: Profile Semantics (Normative)
Appendix-B: Profile XML Schema (Normative)
Acknowledgements
References


1. Overview

The ODRL Services (ODRL-S) Profile working group is developing the semantics for licensing Service-Oriented Computing (SOC) services. The profile will address the core semantics for the licenses to enable services to be used, reused, and amalgamated with other services. By expressing the license terms in ODRL, greater features can be supported, such as automatically detecting conflicts in service conditions, and making explicit all requirements and conditions.

ODRL-S is designed as a complementary language to describe licensing clauses of a service in machine interpretable form. The salient features of ODRL-S are as follows:

2. Profile Semantics

This initial profile has been developed from research work and license requirements analysis of the SOC sector. See [GR1] and [GR2] for further details.

The core model behind licensing SOC services, shown in Figure 1 below, include:

Model

Figure 1 - ODRL-S Profile Model

2.1 Asset

The Asset is used to identify the Service via the UID element within the Context element. Any other Context element may be used to provide additional descriptive detail about the Service. It is highly recommended that the Version element be used to clearly articulate the version of the Service.

2.2 Permissions

The ODRL-S Profile defines three new permissions that are directly related to the types of uses of services in the SOC sector. These are:

2.3 Constraints

The ODRL-S Profile incorporates the NonCommercialUse constraint from the [ODRL/CC] Profile. This element is used to ensure that a service is not used in any commercial environments or for commercial advantage.

2.4 Requirements

The ODRL-S Profile incorporates the Attribution Requirement from the ODRL Core Profile. This element is used to ensure that the use of a service is attributed to the owner. If any specific wording or statement needs to be used, it is recommenced that the Remark element be used.

The ODRL-S Profile incorporates the Payment Requirement from the ODRL Core Profile. This element is used to describe the financial terms and conditions. It is recommended that one of the three payment models (Prepay, Postpay, or Peruse) be specified.

The ODRL-S Profile incorporates the ShareAlike Requirement from the [ODRL/CC] Profile. This element is used to ensure that any derivative of this service must be licensed under the same terms as the original license.

2.4.1 Warranties, Indemnities, and Liabilities

The Warranties, Indemnities, and Liabilities (WIL) model defines warranties, indemnities and limitations of liabilities associated with services. A warranty is a promise regarding the description of services and their quality, as stated by the service provider. A indemnity is protection against loss or other burden. A liability is limiting the responsibility of the service provision.

The WIL Model is represented diagrammatically in Figure 2.

Model

Figure 2 - ODRL-S WIL Model

Warranties are further categorised into the following entities:

Indemnities are further categorised into the following entities:

Limitation of Liability are further categorised into the following entities:

2.4.2 Evolution

The Evolution Model specifies the details of modifications by future releases or versions. The Evolution Model is represented diagrammatically in Figure 3.

Model

Figure 3 - ODRL-S Evolution Model

Evolution is further categorised into the following entities:

3. Scenarios (Informative)

Generally a service license is associated with a service. However, a service could have several operations which might differ in their usage terms. It is very common in the field of SOC for a service operation or a set of operations to be offered for free in terms of cost, and to require payments for using another advanced operations.

3.1 License Associating a Service

In general, each service can be specified with a license describing the terms and conditions for the use of and access to the service. Consider a service license with the following terms and conditions (with matching XML line numbers).

  1. The service and the version is identified (6-7)
  2. The service can be composed with other services. (11)
  3. The service requires attribution. (14)
  4. The service costs 9.99 Euros per use of the service. (15-19)
  5. The service provider describes the following warranties for the service:
    1. Mean response time : 10 milliseconds (22)
    2. Mean process time: 7 milliseconds (23)
    3. Mean latency: 0.1 milliseconds (24
    4. Mean service level violation rate : 0.1% (27)
    5. Mean availability rate: 99.9% (28)
    6. Resolution rate: 1 hour (31)
  6. The service provider will defend the consumer from any action based on a claim that the use of the service in accordance with the given service license infringes intellectual rights of any third party. (34-36)
  7. The service provider is not liable for any kinds of functional or non-functional errors in the infrastructure and networks of the service. (37-42)
  8. The service provider offers the right to use the service up to three new versions. (44)
  9. The service could be replaced by another service with broader scope in functionality (without affecting the existing functionality) by the service provider to which the licensee is allowed to use. (45)

These licensing clauses of a service are expressed using ODRL-S as follows:

  1. <?xml version=”1.0” encoding=”UTF-8”?>
  2. <o-ex:rights xmlns:o-ex=”http://odrl.net/1.1/ODRL-EX”
  3. xmlns:o-dd=”http://odrl.net/1.1/ODRL-DD”
  4. <o-ex:offer>
  5. <o-ex:asset>
  6. <o-ex:context>
  7. <o-dd:uid> urn:forex:service:currency-rate </o-dd:uid>
  8. <o-dd:version> 2.0 </o-dd:version>
  9. </o-ex:context>
  10. </o-ex:asset>
  11. <o-ex:permission>
  12. <sl:composition/>
  13. </o-ex:permission>
  14. <o-ex:requirement>
  15. <o-dd:attribution/>
  16. <o-dd:peruse>
  17. <o-dd:payment>
  18. <o-dd:amount o-dd:currency=”EUR”> 9.99 </o-dd:amount>
  19. </o-dd:payment>
  20. </o-dd:peruse>
  21. <sl:warranty>
  22. <sl:performance>
  23. <sl:meanresponsetime> 10.0 </sl:meanresponsetime>
  24. <sl:meanprocesstime> 7.0 </sl:meanprocesstime>
  25. <sl:meanlatency> 0.1 </sl:meanlatency>
  26. </sl:performance>
  27. <sl:reliability>
  28. <sl:meanslviolationrate> 0.1 </sl:meanslviolationrate>
  29. <sl:meanavailabilityrate> 99.9 </sl:meanavailabilityrate>
  30. </sl:reliability>
  31. <sl:compliance>
  32. <sl:resolutionrate > P1H </sl:resolutionrate>
  33. </sl:compliance>
  34. </sl:warranty>
  35. <sl:indemnity>
  36. <sl:thirdpartyclaims/>
  37. </sl:indemnity>
  38. <sl:limitationofliability>
  39. <sl:provisioning>
  40. <sl:networkerrors/>
  41. <sl:infrastructureerrors/>
  42. </sl:provisioning>
  43. </sl:limitationofliability>
  44. <sl:evolution>
  45. <sl:maxversions> 3.0 </sl:maxversions>
  46. <sl:generic/>
  47. </sl:evolution>
  48. </o-ex:requirement>
  49. </o-ex:offer>
  50. </o-ex:rights>

3.2 License Associating Features

As the terms and conditions for using and accessing a service can also be associated in the level of service operations, we model operational level licensing by the concept of features in services. Each feature is an operation or a bundle of closely related operations that can be invoked by the service. The concept of features of a service are implemented in ODRL-S by using the Unit model of ODRL.

Consider a Financial Service whose features facilitate buying and selling of foreign currencies. The specific service offers two different features:

Both features of the service are offered for composition (11).

However, for the Daily Rate feature, attribution is required (14-18). And for the Current Rate feature, a payment is required (21-28).

The above terms and conditions could be represented in ODRL-S as follows. Note the use of the ODRL Unit Constraint to indicate which feature of the service the requirement applies to.

  1. <?xml version=”1.0” encoding=”UTF-8”?>
  2. <o-ex:rights xmlns:o-ex=”http://odrl.net/1.1/ODRL-EX”
  3. xmlns:o-dd=”http://odrl.net/1.1/ODRL-DD”
  4. <o-ex:offer>
  5. <o-ex:asset>
  6. <o-ex:context>
  7. <o-dd:uid> urn:forex:service:currency-rate </o-dd:uid>
  8. <o-dd:version> 2.0 </o-dd:version>
  9. </o-ex:context>
  10. </o-ex:asset>
  11. <o-ex:permission>
  12. <sl:composition/>
  13. </o-ex:permission>
  14. <o-ex:requirement>
  15. <o-dd:attribution>
  16. <o-ex:constraint>
  17. <o-dd:unit o-ex:type=”urn:forex:service:dailyRate”/>
  18. </o-ex:constraint>
  19. </o-dd:attribution>
  20. </o-ex:requirement>
  21. <o-ex:requirement>
  22. <o-dd:peruse>
  23. <o-dd:payment>
  24. <o-dd:amount o-dd:currency=”EUR”> 0.25 </o-dd:amount>
  25. </o-dd:payment>
  26. <o-ex:constraint>
  27. <o-dd:unit o-ex:type=”urn:forex:service:currentRate”/>
  28. </o-ex:constraint>
  29. </o-dd:peruse>
  30. </o-ex:requirement>
  31. </o-ex:offer>
  32. </o-ex:rights>

Appendix-A: Profile Semantics (Normative)

Todo: List of new elements, identifiers, definitions, data types etc.

Appendix-B: Profile XML Schema (Normative)

Todo: XML Schema extension to ODRL Schemas

Todo: The file location of this XML Schema is: http://odrl.net/Profiles/Services/SL-10.xsd

References (Non-Normative)

[ODRL/CC] ODRL Creative Commons Profile. ODRL Specification/ 6 July 2005 <http://odrl.net/Profiles/CC/SPEC.html>

[ODRL] Open Digital Rights Language (ODRL), Version 1.1. <http://odrl.net/1.1/ODRL-11.pdf> Technical Specification, ODRL Initiative, August 2002

[GR1] Gangadharan, G.R., Weiss, M., D'Andrea, V., Iannella, R. Service License Composition and Compatibility Analysis. Fifth International Conference on Service-Oriented Computing (ICSOC07), Vienna, Austria, 17-20 September 2007.

[GR2] Gangadharan, G.R., D'Andrea, V., Iannella, R., Weiss, M. ODRL Service Licensing Profile (ODRL-S). 5th International Workshop for Technical, Economic and Legal Aspects of Business Models for Virtual Goods and the 3rd International ODRL Workshop. 11-13 October 2007, Koblenz, Germany.

Acknowledgements (Non-Normative)

This specification is the work of the ODRL-S Profile Working Group. The contributions of the Working Group members to this specification are gratefully acknowledged. Active participants in the Working Group include (by alphabetical order): Vincenzo D'Andrea, G.R. Gangadharan (WG Co-Chair), Renato Iannella (WG Co-Chair), Michael Weiss.