A WSDL 1.1 description for XKMS code { font-family: monospace; }
div.constraint, div.issue, div.note, div.notice { margin-left: 2em; }
dt.label { display: run-in; }
li, p { margin-top: 0.3em; margin-bottom: 0.3em; }
div.assertion { border: 4px double gray; padding: 0.5em; margin-bottom: 0.2em; } blockquote { background-color: #eeeeee; } spectext { background-color: #eeeeee; } .message { background-color: #d5dee3; }
pre { margin-left: 4em}
p.diff-chg, li.diff-chg, h1.diff-chg, h2.diff-chg, h3.diff-chg, h4.diff-chg, h5.diff-chg, h6.diff-chg, td.diff-chg, tr.diff-chg { background-color: #E47833; } p.diff-del, li.diff-del, h1.diff-del, h2.diff-del, h3.diff-del, h4.diff-del, h5.diff-del, h6.diff-del, td.diff-del, tr.diff-del { background-color: red; text-decoration: line-through;} p.diff-add, p.diff-add, h1.diff-add, h2.diff-add, h3.diff-add, h4.diff-add, h5.diff-add, h6.diff-add, td.diff-add, tr.diff-add { background-color: lime; } table { empty-cells: show; }
div.exampleInner pre { margin-left: 1em; margin-top: 0em; margin-bottom: 0em} div.exampleOuter {border: 4px double gray; margin: 0em; padding: 0em} div.exampleInner { background-color: #d5dee3; border-top-width: 4px; border-top-style: double; border-top-color: #d3d3d3; border-bottom-width: 4px; border-bottom-style: double; border-bottom-color: #d3d3d3; padding: 4px; margin: 0em } div.exampleWrapper { margin: 4px } div.exampleHeader { font-weight: bold; margin: 4px} A WSDL 1.1 description for XKMS W3C Working Group Note 18 November 2005 This version: http://www.w3.org/TR/2005/NOTE-xkms-wsdl-20051118/ Latest version: http://www.w3.org/TR/xkms-wsdl/ Authors: Rich Salz (DataPower Technology, Inc) Copyright W3C ® MIT ERCIM Keio liability trademark document use Abstract The XML Key Management Specification (XKMS 2.0) W3C Recommendation The XML Key Management Service (XKMS) Working Group has defined a Web Service to handle conventional PKI (public-key infrastructure) functions such as registration, revocation and status, as well as related functions such as retrieval. This note provides a sample Web Services Description Language (WSDL) 1.1 WSDL 2.0 Last Call Status of this document This section describes the status of this document at the time of its publication. Other documents may supersede this document. A list of current W3C publications and the latest revision of this technical report can be found in the W3C technical reports index This is the 18 November 2005 Working Group Note of "A WSDL 1.1 description for XKMS". This document was developed by the XML Key Management Working Group This document is a Working Group Note made available by W3C for discussion only. Publication of this Note by W3C does not imply endorsement by W3C, including the Team and Membership. No W3C resources were, are, or will be allocated to the issues addressed by this W3C Working Group Note. While the XKMS Working Group has completed its chartered work items, we expect that the mailing list will remain active for some time. Please send comments about this document to [email protected] public archive As of this publication, the Working Group does not expect this document to become a W3C Recommendation, and therefore it has no associated W3C Patent Policy This document was developed under no patent policy. Publication as a Working Group Note does not imply endorsement by the W3C Membership. 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. Table of Contents 1. Introduction 2. WSDL file 3. References The XKMS Since XKMS uses a conventional request-response message exchange pattern, the WSDL file is very straightforward. In fact, a server that implemented the entire service would most likely only have to change two parameters. The first is the URL where the service may be reached. A single XKMS service may wish to expose one URL for all domains that it processes, or a separate URL for each one. The second is the value of the SOAPAction Note, however, that many important operational and policy details are not exposed in the WSDL file, even though it is a natural place to do so. For example, an extension within the definition of the Register Service Note that the definition below uses two entities which must either be replaced inline or defined with a DTD: soapaction The value to be used in the HTTP SOAPAction serviceURL The URL where the service can be reached. An XML version of this file may be found at http://www.w3.org/TR/xkms2/Schemas/xkms.wsdl <?xml version="1.0"?>
<wsdl:definitions name="XMLKeyManagement" targetNamespace="http://www.w3.org/2002/03/xkms#wsdl" xmlns:tns="http://www.w3.org/2002/03/xkms#wsdl" xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" xmlns="http://schemas.xmlsoap.org/wsdl/" xmlns:wsdlsoap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:xkms="http://www.w3.org/2002/03/xkms#">
<import namespace="http://www.w3.org/2002/03/xkms#" location='http://www.w3.org/TR/xkms2/Schemas/xkms.xsd'/>
<message name="PendingRequest"> <part name="body" element="xkms:PendingRequest"/> </message> <message name="PendingResult"> <part name="body" element="xkms:Result"/> </message> <message name="CompoundRequest"> <part name="body" element="xkms:CompoundRequest"/> </message> <message name="CompoundResult"> <part name="body" element="xkms:CompoundResult"/> </message> <message name="StatusRequest"> <part name="body" element="xkms:StatusRequest"/> </message> <message name="StatusResult"> <part name="body" element="xkms:StatusResult"/> </message> <message name="LocateRequest"> <part name="body" element="xkms:LocateRequest"/> </message> <message name="LocateResult"> <part name="body" element="xkms:LocateResult"/> </message> <message name="ValidateRequest"> <part name="body" element="xkms:ValidateRequest"/> </message> <message name="ValidateResult"> <part name="body" element="xkms:ValidateResult"/> </message> <message name="RegisterRequest"> <part name="body" element="xkms:RegisterRequest"/> </message> <message name="RegisterResult"> <part name="body" element="xkms:RegisterResult"/> </message> <message name="ReissueRequest"> <part name="body" element="xkms:ReissueRequest"/> </message> <message name="ReissueResult"> <part name="body" element="xkms:ReissueResult"/> </message> <message name="RevokeRequest"> <part name="body" element="xkms:RevokeRequest"/> </message> <message name="RevokeResult"> <part name="body" element="xkms:RevokeResult"/> </message> <message name="RecoverRequest"> <part name="body" element="xkms:RecoverRequest"/> </message> <message name="RecoverResult"> <part name="body" element="xkms:RecoverResult"/> </message>
<portType name="XKMSPortType"> <operation name="Pending"> <input message="tns:PendingRequest"/> <output message="tns:PendingResult"/> </operation> <operation name="Compound"> <input message="tns:CompoundRequest"/> <output message="tns:CompoundResult"/> </operation> <operation name="Status"> <input message="tns:StatusRequest"/> <output message="tns:StatusResult"/> </operation> <operation name="Locate"> <input message="tns:LocateRequest"/> <output message="tns:LocateResult"/> </operation> <operation name="Validate"> <input message="tns:ValidateRequest"/> <output message="tns:ValidateResult"/> </operation> <operation name="Register"> <input message="tns:RegisterRequest"/> <output message="tns:RegisterResult"/> </operation> <operation name="Reissue"> <input message="tns:ReissueRequest"/> <output message="tns:ReissueResult"/> </operation> <operation name="Revoke"> <input message="tns:RevokeRequest"/> <output message="tns:RevokeResult"/> </operation> <operation name="Recover"> <input message="tns:RecoverRequest"/> <output message="tns:RecoverResult"/> </operation> </portType>
<binding name="SOAPBinding" type="tns:XKMSPortType"> <wsdlsoap:binding transport="http://schemas.xmlsoap.org/soap/http" style="document"/> <operation name="Pending"> <wsdlsoap:operation soapAction="&soapaction;"/> <input message="tns:PendingRequest"> <wsdlsoap:body use="literal"/> </input> <output message="tns:PendingResult"> <wsdlsoap:body use="literal"/> </output> </operation> <operation name="Compound"> <wsdlsoap:operation soapAction="&soapaction;"/> <input message="tns:CompoundRequest"> <wsdlsoap:body use="literal"/> </input> <output message="tns:CompoundResult"> <wsdlsoap:body use="literal"/> </output> </operation> <operation name="Status"> <wsdlsoap:operation soapAction="&soapaction;"/> <input message="tns:StatusRequest"> <wsdlsoap:body use="literal"/> </input> <output message="tns:StatusResult"> <wsdlsoap:body use="literal"/> </output> </operation> <operation name="Locate"> <wsdlsoap:operation soapAction="&soapaction;"/> <input message="tns:LocateRequest"> <wsdlsoap:body use="literal"/> </input> <output message="tns:LocateResult"> <wsdlsoap:body use="literal"/> </output> </operation> <operation name="Validate"> <wsdlsoap:operation soapAction="&soapaction;"/> <input message="tns:ValidateRequest"> <wsdlsoap:body use="literal"/> </input> <output message="tns:ValidateResult"> <wsdlsoap:body use="literal"/> </output> </operation> <operation name="Register"> <wsdlsoap:operation soapAction="&soapaction;"/> <input message="tns:RegisterRequest"> <wsdlsoap:body use="literal"/> </input> <output message="tns:RegisterResult"> <wsdlsoap:body use="literal"/> </output> </operation> <operation name="Reissue"> <wsdlsoap:operation soapAction="&soapaction;"/> <input message="tns:ReissueRequest"> <wsdlsoap:body use="literal"/> </input> <output message="tns:ReissueResult"> <wsdlsoap:body use="literal"/> </output> </operation> <operation name="Revoke"> <wsdlsoap:operation soapAction="&soapaction;"/> <input message="tns:RevokeRequest"> <wsdlsoap:body use="literal"/> </input> <output message="tns:RevokeResult"> <wsdlsoap:body use="literal"/> </output> </operation> <operation name="Recover"> <wsdlsoap:operation soapAction="&soapaction;"/> <input message="tns:RecoverRequest"> <wsdlsoap:body use="literal"/> </input> <output message="tns:RecoverResult"> <wsdlsoap:body use="literal"/> </output> </operation> </binding>
<service name="XKMSService"> <port name="XKMSPort" binding="tns:SOAPBinding"> <wsdlsoap:address location="&serviceURL;"/> </port> </service>
</wsdl:definitions> E. Christensen et al. W3C Note 15 March 2001 http://www.w3.org/TR/2001/NOTE-wsdl-20010315 P. Hallam-Baker and S. Mysore, Editors. W3C Recommendation, 28 June 2005, http://www.w3.org/TR/2005/REC-xkms2-20050628/