1、raising standards worldwide NO COPYING WITHOUT BSI PERMISSION EXCEPT AS PERMITTED BY COPYRIGHT LAW BSI Standards Publication BS ISO/IEC 20944-4:2013 Information technology Metadata Registries Interoperability and Bindings (MDR-IB) Part 4: Protocol bindingsBS ISO/IEC 20944-4:2013 BRITISH STANDARD Nat
2、ional foreword This British Standard is the UK implementation of ISO/IEC 20944-4:2013. The UK participation in its preparation was entrusted to T e c h n i c a l C o m m i t t e e I S T / 4 0 , D a t a m a n a g e m e n t a n d i n t e r c h a n g e . A list of organizations represented on this comm
3、ittee can be obtained on request to its secretary. This publication does not purport to include all the necessary provisions of a contract. Users are responsible for its correct application. The British Standards Institution 2013. Published by BSI Standards Limited 2013. ISBN 978 0 580 56088 0 ICS 3
4、5.040 Compliance with a British Standard cannot confer immunity from legal obligations. This British Standard was published under the authority of the Standards Policy and Strategy Committee on 31 January 2013. Amendments issued since publication Date T e x t a f f e c t e dBS ISO/IEC 20944-4:2013Re
5、ference number ISO/IEC 20944-4:2013(E) ISO/IEC 2013INTERNATIONAL STANDARD ISO/IEC 20944-4 First edition 2013-01-15 Information technology Metadata Registries Interoperability and Bindings (MDR-IB) Part 4: Protocol bindings Technologies de linformation Interoprabilit et liaisons des registres de mtad
6、onnes (MDR-IB) Partie 4: Liaisons de protocoles BS ISO/IEC 20944-4:2013 ISO/IEC 20944-4:2013(E) COPYRIGHT PROTECTED DOCUMENT ISO/IEC 2013 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,
7、including photocopying and microfilm, without permission in writing from either ISO at the address below or ISOs 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 copyrightiso.org Web www.iso.org Pu
8、blished in Switzerland ii ISO/IEC 2013 All rights reservedBS ISO/IEC 20944-4:2013 ISO/IEC 20944-4:2013(E) ISO/IEC 2013 All rights reserved iiiContents Page Foreword iv Introduction . v 1 Scope 1 2 Normative references 1 3 Terms and definitions . 1 4 Intended use of this part of ISO/IEC 20944 . 1 5 A
9、bstract model 2 5.1 General . 2 5.2 Participant model 2 5.3 Data model . 2 5.4 Control Model 2 5.5 Connections . 3 5.6 State model 3 6 Services 5 6.1 Use of ISO/IEC 13886 5 6.2 Session establishment services 5 6.3 Session parameter services . 6 6.4 Security services . 7 6.5 Data transfer services .
10、8 6.6 Data sharing services . 9 6.7 Miscellaneous 10 7 Bindings . 12 8 Administration . 12 9 Conformance . 12 9.1 Protocol conformance paradigm . 12 9.2 Protocol server service . 12 9.3 Protocol client service 12 9.4 Conformance labels 13 10 Reserved for future standardization 13 11 HTTP/1.1 protoco
11、l binding 13 11.1 Session services . 13 11.2 Service list 13 11.3 Conformance label prefix . 14 12 WebDAV protocol binding 14 12.1 Session services . 14 12.2 Service list 14 12.3 Conformance label prefix . 16 BS ISO/IEC 20944-4:2013 ISO/IEC 20944-4:2013(E) iv ISO/IEC 2013 All rights reservedForeword
12、 ISO (the International Organization for Standardization) and IEC (the International Electrotechnical Commission) form the specialized system for worldwide standardization. National bodies that are members of ISO or IEC participate in the development of International Standards through technical comm
13、ittees established by the respective organization to deal with particular fields of technical activity. ISO and IEC technical committees collaborate in fields of mutual interest. Other international organizations, governmental and non-governmental, in liaison with ISO and IEC, also take part in the
14、work. In the field of information technology, ISO and IEC have established a joint technical committee, ISO/IEC JTC 1. International Standards are drafted in accordance with the rules given in the ISO/IEC Directives, Part 2. The main task of the joint technical committee is to prepare International
15、Standards. Draft International Standards adopted by the joint technical committee are circulated to national bodies for voting. Publication as an International Standard requires approval by at least 75 % of the national bodies casting a vote. Attention is drawn to the possibility that some of the el
16、ements of this document may be the subject of patent rights. ISO and IEC shall not be held responsible for identifying any or all such patent rights. ISO/IEC 20944-4 was prepared by Joint Technical Committee ISO/IEC JTC 1, Information technology, Subcommittee SC 32, Data management and interchange.
17、ISO/IEC 20944 consists of the following parts, under the general title Information technology Metadata Registries Interoperability and Bindings (MDR-IB): Part 1: Framework, common vocabulary, and common provisions for conformance Part 2: Coding bindings Part 3: API bindings Part 4: Protocol bindings
18、 Part 5: Profiles BS ISO/IEC 20944-4:2013 ISO/IEC 20944-4:2013(E) ISO/IEC 2013 All rights reserved vIntroduction The ISO/IEC 20944 series of International Standards provides the bindings and their interoperability for metadata registries, such as those specified in the ISO/IEC 11179 series of Intern
19、ational Standards. This part of ISO/IEC 20944 contains provisions that are common to protocol bindings (Clauses 4-10) and the protocol bindings themselves (Clause 11 onward). The protocol bindings have commonality in their conceptualization of the services provided. For example, common features incl
20、ude: common data transfer semantics; harmonized session services for connection-oriented and connection-less protocols. Clause 11 and onward are the actual protocol bindings themselves. The clauses of this part of ISO/IEC 20944 are organized such that future amendments are possible, which would incl
21、ude additional protocol bindings. BS ISO/IEC 20944-4:2013BS ISO/IEC 20944-4:2013 INTERNATIONAL STANDARD ISO/IEC 20944-4:2013(E) ISO/IEC 2013 All rights reserved 1Information technology Metadata Registries Interoperability and Bindings (MDR-IB) Part 4: Protocol bindings 1 Scope The ISO/IEC 20944 seri
22、es of International Standards describe codings, application programming interfaces (APIs), and protocols for interacting with an ISO/IEC 11179 metadata registry (MDR). This part of ISO/IEC 20944 specifies provisions that are common across protocol bindings for the ISO/IEC 20944 series of Internation
23、al Standards, and provides the individual protocol bindings themselves. 2 Normative references The following referenced documents are indispensable for the application of this document. For dated references, only the edition cited applies. For undated references, the latest edition of the referenced
24、 document (including any amendments) applies. ISO/IEC 11404:2007, Information technology General-Purpose Datatypes (GPD) ISO/IEC 13886:1996, Information technology Language-Independent Procedure Calling (LIPC) ISO/IEC 20944-1:2013, Information technology Metadata Registries Interoperability and Bind
25、ings (MDR-IB) Part 1: Framework, common vocabulary, and common provisions for conformance ISO/IEC 20944-2:2013, Information technology Metadata Registries Interoperability and Bindings (MDR-IB) Part 2: Coding bindings IETF RFC 2616, Hypertext Transfer Protocol HTTP/1.1, June 1999 IETF RFC 4918, HTTP
26、 Extensions for Web Distributed Authoring and Versioning (WebDAV), June 2007 3 Terms and definitions For the purposes of this document, the terms and definitions given in ISO/IEC 20944-1 apply. 4 Intended use of this part of ISO/IEC 20944 The purpose of this part of ISO/IEC 20944 is to provide a com
27、mon set of services (common protocol provisions) and standardized protocol bindings such that interoperable systems can be created to access the MDR repositories. These systems are interoperable in that they should be able to access MDR repositories that conform to this International Standard. BS IS
28、O/IEC 20944-4:2013 ISO/IEC 20944-4:2013(E) 2 ISO/IEC 2013 All rights reserved5 Abstract model 5.1 General The protocol bindings have commonality in their conceptualization of data access services. For example, common features include: common data transfer semantics harmonized session services for co
29、nnection-oriented and connection-less protocols The conceptual model is divided into two parts: the data model and the control model. The data model describes the logical structure of information as it is transferred. The control model describes the structure of the transactions, events, and protoco
30、l state. 5.2 Participant model The senders and receivers of messages are called participants. The protocol binding permits client-server, peer-to-peer, publish-subscribe, multicast, and broadcast modes of participation. The underlying communication system determines which modes of participation are
31、supported. 5.3 Data model The data structure of ISO/IEC 20944-2 is incorporated via normative reference. 5.4 Control Model The control model refers to the methods of causing actions among the parties communicating. The following concepts characterize the control model. 5.4.1 Event Assuming prior arr
32、angement and appropriate authorization, each participant may send events. For the sender, an event is a one-way message with no expected response. In programming languages, an event is analogous to a “go to“. For the receiver, an incoming event is processed by an event handler. The semantics of even
33、t handling is outside the scope of this part of ISO/IEC 20944. 5.4.2 Wait Assuming prior arrangement and appropriate authorization, a participant can ask another participant to wait for an event, e.g., node A asks node B to wait for event E. In operating system kernel technology, this is equivalent
34、to “sleeping on an event“. 5.4.3 Call Assuming prior arrangement and appropriate authorization, a participant can send a “call“ message, similar to a remote procedure call. A “call“ is equivalent to (1) sending data (input parameters) from caller to callee, (2) sending a “start“ event to the “callee
35、“, (3) posting a “wait“ on the callees “finish“ event, (4) receiving data (output parameters) from callee to caller. The advantage of “call“ over combined “event“ and “wait“ is that “call“ handles the storage of temporary information in the “event“ and “wait“ services. 5.4.4 Parameters The “event“,
36、“wait“, and “call“ messages may pass parameters. Parameters are passed in a list along with the target event. BS ISO/IEC 20944-4:2013 ISO/IEC 20944-4:2013(E) ISO/IEC 2013 All rights reserved 3EXAMPLE A hypothetical function named ls is called with two function properties: (1) the options to the comm
37、and, and (2) three parameters to the command (the third parameter has properties, too). The following is illustration shows the syntax: call ls .listing-type: long .dir-expand: no a b c .listing-encoding: iso-646 5.5 Connections A connection is created when a client successfully completes a connecti
38、on command to a server. A participant is one end of communication regardless of role (e.g., client or server). Some implementations may support multiple roles. Once a connection is established, parameters may be negotiated and sessions may be created for data and control transfer. A session is a con
39、nection established between one or more participants. 5.6 State model A participant may act in the role of client or server. 5.6.1 Server state model A server behaves according to the following state model. wait for connect start wait for command successful connect knockdown connection dropped conne
40、ction end process command command received disconnect command event handler event received event complete command completedFigure 1 State model for server The following are the states for the server. Start: The state model begins in this state. Wait For Connect (state): The server is waiting for a c
41、onnect. Successful Connect (event): Starts up the connection. Changes to Wait For Command (state). Wait For Command (state): The server is waiting for a command. Command Received (event): Begins the processing of a command. Changes to Process Command (state). Event Received (event): Begins the event
42、 handling. Changes to Event Handler (state). Dropped Connection (event): The connection was dropped. Changes to Knockdown Connection (state). Process Command (state): Processes a command, consumes and produces data, returns command status. BS ISO/IEC 20944-4:2013 ISO/IEC 20944-4:2013(E) 4 ISO/IEC 20
43、13 All rights reserved Command Completed (event): The command has completed. Changes to Wait For Command (state). Disconnect Command (event): The Disconnect command was executed. Changes to Knockdown Connection (state). Event Handler (state): Processes an unsolicited event (e.g., security requests)
44、and returns event status. Event Complete (event): The Event completed. Changes to Wait For Command (state). Knockdown Connection (state): Closes the connection. Changes to End (state) End: The state model exits. 5.6.2 Client state model A client behaves according to the following state model. initia
45、te connect start wait for cmd ready successful connect knockdown connection dropped connection end command process command sent process disconnect event handler event received event complete command return failed connectFigure 2 State model for client The following are the states for the client. Sta
46、rt: The state model begins in this state. Initiate Connect (state): The client initiates a connection the server. Successful Connect (event): Starts up the connection. Changes to Wait For Cmd Ready (state). Failed Connect (event): Connection failure. Changes to Knockdown Connection (state). Wait For
47、 Cmd Ready (state): The client is waiting for the server to indicate that it is ready for a command. Command Sent (event): Sends the command to process. Changes to Command Process (state). Event Received (event): Begins the event handling. Changes to Event Handler (state). Dropped Connection (event)
48、: The connection was dropped. Changes to Knockdown Connection (state). Command Process (state): Requests the processing of a command, produces and consumes data, receives the command status upon command completion. Command Return (event): The command has completed. Changes to Wait For Cmd Ready (sta
49、te). BS ISO/IEC 20944-4:2013 ISO/IEC 20944-4:2013(E) ISO/IEC 2013 All rights reserved 5 Process Disconnect (event): Sends the Disconnect command. Changes to Knockdown Connection (state). Event Handler (state): Processes an unsolicited event (e.g., security requests) and returns event status. Event Complete (event): The Event completed. Changes to Wait For Cmd Ready (state). Knockdown Connection (state): Closes the connection. Changes