ISO/IEC 17826:2012
(Main)Information technology — Cloud Data Management Interface (CDMI)
Information technology — Cloud Data Management Interface (CDMI)
ISO/IEC 17826:2012 specifies the interface to access cloud storage and to manage the data stored therein. It is applicable to developers who are implementing or using cloud storage.
Technologies de l'information — Interface de management des données du nuage informatique (CDMI)
General Information
Relations
Standards Content (Sample)
INTERNATIONAL ISO/IEC
STANDARD 17826
First edition
2012-11-15
Information technology — Cloud Data
Management Interface (CDMI)
Technologies de l'information — Interface de management des
données du nuage informatique (CDMI)
Reference number
ISO/IEC 17826:2012(E)
©
ISO/IEC 2012
---------------------- Page: 1 ----------------------
ISO/IEC 17826:2012(E)
COPYRIGHT PROTECTED DOCUMENT
© ISO/IEC 2012
All rights reserved. Unless otherwise specified, no part of this publication may be reproduced or utilized in any form or by any means,
electronic or mechanical, including photocopying and microfilm, without permission in writing from either ISO at the address below or
ISO's member body in the country of the requester.
ISO copyright office
Case postale 56 CH-1211 Geneva 20
Tel. + 41 22 749 01 11
Fax + 41 22 749 09 47
E-mail copyright@iso.org
Web www.iso.org
Published in Switzerland
ii © ISO/IEC 2012 – All rights reserved
---------------------- Page: 2 ----------------------
International lSO/IEC
Standard
Information Technology -
Cloud Data Management Interface (CDMI™)
Reference Number
ISO/IEC 17826:2012(E)
November 15, 2012
---------------------- Page: 3 ----------------------
ISO/IEC 17826:2012(E)
PATENT STATEMENT
CAUTION: The developers of this international standard have requested that holders of patents that may
be required for the implementation of the standard, disclose such patents to the publisher. However,
neither the developers nor the publisher have undertaken a patent search in order to identify which, if any,
patents may apply to this international standard. As of the date of publication of this international standard,
following calls for the identification of patents that may be required for the implementation of the standard,
no such claims have been made. No further patent search is conducted by the developer or the publisher
in respect to any standard it processes. No representation is made or implied that licenses are not required
to avoid infringement in the use of this international standard.
Copyright Notice
This ISO document is copyright-protected by ISO. While the reproduction of working drafts or committee
drafts in any form for use by participants in the ISO standards development process is permitted without
prior permission from ISO, neither this document nor any extract from it may be reproduced, stored or
transmitted in any form for any other purpose without prior written permission from ISO.
Requests for permission to reproduce this document for the purpose of selling it should be addressed as
shown below or to ISO's member body in the country of the requester:
The Storage Networking Industry Association
425 Market Street, Suite 1020
San Francisco, CA 94105
Reproduction for sales purposes may be subject to royalty payments or a licensing agreement.
Violators may be prosecuted.
CDMI is a trademark of the Storage Networking Industry Association.
2 ©ISO/IEC 2012 – All rights reserved
---------------------- Page: 4 ----------------------
ISO/IEC 17826:2012(E)
Contents
Foreword.15
Introduction .16
1 Scope .18
2 Normative References .18
3 Terms .20
4 Conventions .23
4.1 Interface Format .23
4.2 Typographical Conventions .23
4.3 Request and Response Body Requirements .23
4.4 Key Word Requirements .24
5 Overview of Cloud Storage .25
5.1 Introduction .25
5.2 What is Cloud Storage? .25
5.3 Data Storage as a Service .25
5.4 Data Management for Cloud Storage .27
5.5 Data and Container Management .27
5.6 Reference Model for Cloud Storage Interfaces .28
5.7 Cloud Data Management Interface .29
5.8 Object Model for CDMI .30
5.9 CDMI Metadata .31
5.10 Object ID .32
5.11 CDMI Object ID Format .32
5.12 Security .33
5.13 Required HTTP Support .34
5.13.1 RFC 2616 Support Requirements .34
5.13.2 Content-Type Negotiation .34
5.13.3 Range Support .34
5.13.4 URI Escaping .34
5.13.5 Use of URIs .35
5.13.6 Reserved Characters .35
5.14 Time Representations .35
5.15 Backwards Compatibility .36
5.15.1 Value Transfer Encoding .36
5.15.2 Container Export Capabilities .36
6 Common Operations .37
6.1 Overview .37
6.2 Discover the Capabilities of a Cloud Storage Provider .37
6.3 Create a New Container .38
6.4 Create a Data Object in a Container .38
6.5 List the Contents of a Container .39
6.6 Read the Contents of a Data Object .39
6.7 Read Only the Value of a Data Object .40
6.8 Delete a Data Object .40
7 Interface Standard .41
7.1 HTTP Status Codes .41
7.2 Object References .41
©ISO/IEC 2012 – All rights reserved 3
---------------------- Page: 5 ----------------------
ISO/IEC 17826:2012(E)
8 Data Object Resource Operations .43
8.1 Overview .43
8.1.1 Data Object Metadata .44
8.1.2 Data Object Consistency .44
8.1.3 Data Object Representations .44
8.2 Create a Data Object Using CDMI Content Type .44
8.2.1 Synopsis .44
8.2.2 Delayed Completion of Create .45
8.2.3 Capabilities .45
8.2.4 Request Headers .46
8.2.5 Request Message Body .46
8.2.6 Response Headers .48
8.2.7 Response Message Body .49
8.2.8 Response Status .50
8.2.9 Examples .50
8.3 Create a Data Object using a Non-CDMI Content Type .51
8.3.1 Synopsis .51
8.3.2 Capability .51
8.3.3 Request Headers .52
8.3.4 Request Message Body .52
8.3.5 Response Headers .52
8.3.6 Response Message Body .52
8.3.7 Response Status .52
8.3.8 Example .53
8.4 Read a Data Object using CDMI Content Type .53
8.4.1 Synopsis .53
8.4.2 Capabilities .53
8.4.3 Request Headers .54
8.4.4 Request Message Body .54
8.4.5 Response Headers .54
8.4.6 Response Message Body .54
8.4.7 Response Status .57
8.4.8 Examples .57
8.5 Read a Data Object using a Non-CDMI Content Type .59
8.5.1 Synopsis .59
8.5.2 Capabilities .59
8.5.3 Request Header .59
8.5.4 Request Message Body .59
8.5.5 Response Headers .59
8.5.6 Response Message Body .60
8.5.7 Response Status .60
8.5.8 Examples .60
8.6 Update a Data Object using CDMI Content Type .61
8.6.1 Synopsis .61
8.6.2 Capabilities .61
8.6.3 Request Headers .62
8.6.4 Request Message Body .62
8.6.5 Response Header .64
8.6.6 Response Message Body .64
8.6.7 Response Status .64
8.6.8 Examples .65
8.7 Update a Data Object using a Non-CDMI Content Type .66
8.7.1 Synopsis .66
8.7.2 Capabilities .67
8.7.3 Request Headers .67
8.7.4 Request Message Body .67
8.7.5 Response Header .67
8.7.6 Response Message Body .68
4 ©ISO/IEC 2012 – All rights reserved
---------------------- Page: 6 ----------------------
ISO/IEC 17826:2012(E)
8.7.7 Response Status .68
8.7.8 Examples .68
8.8 Delete a Data Object using CDMI Content Type .69
8.8.1 Synopsis .69
8.8.2 Capability .69
8.8.3 Request Header .69
8.8.4 Request Message Body .69
8.8.5 Response Headers .69
8.8.6 Response Message Body .69
8.8.7 Response Status .70
8.8.8 Example .70
8.9 Delete a Data Object using a Non-CDMI Content Type .70
8.9.1 Synopsis .70
8.9.2 Capability .70
8.9.3 Request Headers .70
8.9.4 Request Message Body .71
8.9.5 Response Headers .71
8.9.6 Response Message Body .71
8.9.7 Response Status .71
8.9.8 Example .71
9 Container Object Resource Operations .72
9.1 Overview .72
9.1.1 Container Metadata .73
9.1.2 Reserved Container Names .73
9.1.3 Container Object Addressing .73
9.1.4 Container Object Representations .73
9.2 Create a Container Object using CDMI Content Type .74
9.2.1 Synopsis .74
9.2.2 Delayed Completion of Create .74
9.2.3 Capabilities .74
9.2.4 Request Headers .75
9.2.5 Request Message Body .75
9.2.6 Response Headers .77
9.2.7 Response Message Body .77
9.2.8 Response Status .78
9.2.9 Example .79
9.3 Create a Container Object using a Non-CDMI Content Type .80
9.3.1 Synopsis .80
9.3.2 Capability .80
9.3.3 Request Headers .80
9.3.4 Request Message Body .80
9.3.5 Response Headers .80
9.3.6 Response Message Body .80
9.3.7 Response Status .81
9.3.8 Example .81
9.4 Read a Container Object using CDMI Content Type .81
9.4.1 Synopsis .81
9.4.2 Capabilities .81
9.4.3 Request Headers .82
9.4.4 Request Message Body .82
9.4.5 Response Headers .82
9.4.6 Response Message Body .83
9.4.7 Response Status .84
9.4.8 Examples .85
9.5 Update a Container Object using CDMI Content Type .86
9.5.1 Synopsis .86
9.5.2 Delayed Completion of Snapshot .87
©ISO/IEC 2012 – All rights reserved 5
---------------------- Page: 7 ----------------------
ISO/IEC 17826:2012(E)
9.5.3 Capabilities .87
9.5.4 Request Headers .87
9.5.5 Request Message Body .88
9.5.6 Response Header .89
9.5.7 Response Message Body .89
9.5.8 Response Status .89
9.5.9 Examples .90
9.6 Delete a Container Object using CDMI Content Type .91
9.6.1 Synopsis .91
9.6.2 Capability .91
9.6.3 Request Header .91
9.6.4 Request Message Body .91
9.6.5 Response Headers .91
9.6.6 Response Message Body .91
9.6.7 Response Status .92
9.6.8 Example .92
9.7 Delete a Container Object using a Non-CDMI Content Type .92
9.7.1 Synopsis .92
9.7.2 Capability .92
9.7.3 Request Headers .92
9.7.4 Request Message Body .93
9.7.5 Response Headers .93
9.7.6 Response Message Body .93
9.7.7 Response Status .93
9.7.8 Example .93
9.8 Create (POST) a New Data Object using CDMI Content Type .93
9.8.1 Synopsis .93
9.8.2 Delayed Completion of Create .94
9.8.3 Capabilities .94
9.8.4 Request Headers .95
9.8.5 Request Message Body .96
9.8.6 Response Headers .98
9.8.7 Response Message Body .98
9.8.8 Response Status .99
9.8.9 Examples .100
9.9 Create (POST) a New Data Object using a Non-CDMI Content Type .101
9.9.1 Synopsis .101
9.9.2 Capability .101
9.9.3 Request Header .101
9.9.4 Request Message Body .101
9.9.5 Response Header .102
...
Questions, Comments and Discussion
Ask us and Technical Secretary will try to provide an answer. You can facilitate discussion about the standard in here.