Qworum Enterprise specification, version 1.0 Draft
1. Introduction
1.1. Purpose
The use of Qworum in private networks requires a valid Qworum Enterprise license. The present specification describes the use cases that are covered by the license, and how user agents verify the validity of the license.
1.2. Requirements
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 RFC 2119 [Keywords].
2. Concept
Calls to Qworum services that are hosted inside a private network [IPaddress] require a valid Enterprise license, except for localhost-to-localhost [Loopback] calls, which are always allowed.
| Service location | |||
|---|---|---|---|
| Local host | Private network | ||
| Service caller location |
Local host | Call allowed | Call requires a valid Enterprise license |
| Private network | Call requires a valid Enterprise license | Call requires a valid Enterprise license | |
If a call is forbidden according to these rules, then the user agent MUST raise an authorization fault instead of performing the call.
3. Protocol
In order to validate an Enterprise license, the user agent sends a POST request to the Enterprise license validation service located at http://www.qworum.com/mediator/enterprise and receives a response with the status code 200. The content type of both the request body and the response body is application/xml.
For example, the following request body might be received by the Enterprise license validation service:
<message>
<head>
<!--
The user-agent element identifies the Qworum implementation,
which may be a web browser, a web browser add-on, a software module, etc.
-->
<user-agent>firefox@qworum.com</user-agent>
</head>
<body>
<contract>
<id>f1-ff8b9-b1e82-4a45b-1bde6-cd289-20f3e</id>
</contract>
</body>
</message>
If the contract identified in the request is currently valid, then the Enterprise license validation service might send a message such as the following in its response:
<message>
<body>
<contract>
<id>f1-ff8b9-b1e82-4a45b-1bde6-cd289-20f3e</id>
<expires>2012.12.31</expires>
</contract>
</body>
</message>
On the other hand, if the contract identified in the request is not currently valid, then the Enterprise license validation service might send the following message in its response:
<message>
<body>
<contract>
<id>f1-ff8b9-b1e82-4a45b-1bde6-cd289-20f3e</id>
</contract>
</body>
</message>
4. Implementations
User agents which implement the present version of the Qworum Enterprise specification MUST NOT implement any other system wherein the right to call Qworum services hosted in private networks can be purchased.
5. Appendices
5.1. References
| [XML] | Tim Bray, Jean Paoli, C. M. Sperberg-McQueen, Eve Maler, François Yergeau, Extensible Markup Language (XML), W3C Recommendation |
| [Keywords] | Bradner, B., Key words for use in RFCs to Indicate Requirement Levels, RFC 2119 |
| [IPaddress] | IP address |
| [Loopback] | Loopback IP address |
5.2. Revision history
2010.05.03: Initial release.
5.3. Copyright and disclaimer
© Copyright 2010 Doğa Armangil. All Rights Reserved.
This document and translations of it may be copied and furnished to others, and derivative works that comment on or otherwise explain it or assist in its implementation may be prepared, copied, published and distributed, in whole or in part, without restriction of any kind, provided that the above copyright notice and these paragraphs are included on all such copies and derivative works. This document may not be modified in any way, such as by removing the copyright notice or references to Doğa Armangil or other organizations.
Any party may implement software that gives user agents the ability to send requests to the Enterprise license validation service, without royalty or license fee to Doğa Armangil.
THIS DOCUMENT AND THE INFORMATION CONTAINED HEREIN IS PROVIDED "AS IS", AND DOĞA ARMANGIL DISCLAIMS ALL WARRANTIES, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTY THAT THE USE OF THE INFORMATION HEREIN WILL NOT INFRINGE ANY RIGHTS OR ANY IMPLIED WARRANTIES OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. FURTHER, DOĞA ARMANGIL WILL NOT BE LIABLE FOR ANY DIRECT, INDIRECT, SPECIAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF ANY USE OF THIS DOCUMENT.