
=   AlexisDoc > Programming > Client Server > CLIENT/SERVER PROTOCOL Overview

   TOC:

   1. Protocol layers and layer contents: brief description


   Content:

   Shamiram distributed filesystem protocol (0.1, 15/4/2003)

   Layers:
     * Soap (transport) wrapper
     * XML-wrapped webDAV + extensions

   Soap layer (request)   http://schemas.xmlsoap.org/soap/envelope/
   Section (Tag) Contents Schema
   Header

   Security information (Authentication, certificate, session id)
   http://schemas.ella-associates.org/shamiram/protocol/security.xsd
   Message size http://schemas.ella-associates.org/shamiram/protocol/custom-meta-inf.xsd
   Soap-specific attributes http://schemas.xmlsoap.org/soap/envelope/
   Sender Attributes (can-handle-zip, can-handle-byte-stream etc)
   http://schemas.ella-associates.org/shamiram/protocol/custom-meta-inf.xsd
   Body

   One of the following:

   Login request (app-spec) http://schemas.ella-associates.org/shamiram/protocol/login.xsd
   Special server request (app-spec) http://schemas.ella-associates.org/shamiram/protocol/custom.xsd
   webDAV request (using org.eclipse.webdav)
   http://schemas.ella-associates.org/shamiram/protocol/web-dav-wrapper.xsd
   Attachments Optional byte streams referenced by webDAV request


   Soap layer (request)   http://schemas.xmlsoap.org/soap/envelope/
   Section (Tag) Contents Schema
   Header

   Security information (Authentication, certificate, session id)
   http://schemas.ella-associates.org/shamiram/protocol/security.xsd
   Message size http://schemas.ella-associates.org/shamiram/protocol/custom-meta-inf.xsd
   Soap-specific attributes http://schemas.xmlsoap.org/soap/envelope/
   Body format attributes (zipped, bytestream etc)
   http://schemas.ella-associates.org/shamiram/protocol/custom-meta-inf.xsd
   Body

   One of the following:

   Login response (app-spec) http://schemas.ella-associates.org/shamiram/protocol/login.xsd
   Special server response (app-spec) http://schemas.ella-associates.org/shamiram/protocol/custom.xsd
   webDAV response http://schemas.ella-associates.org/shamiram/protocol/web-dav-wrapper.xsd
   Plus:
     * (if necessary) SOAP-encapsulated error information

   http://schemas.xmlsoap.org/soap/envelope/
   Attachments Optional byte streams referenced by webDAV request


   Sample client request:
<?xml version="1.0" encoding="UTF-8"?>

<!--
    Document   : ShamiramRequestSample.xml
    Created on : 16 de abril de 2003, 2:36
    Author     : ouiji
    Description:
        A Sample Request from the client
-->

<SOAP-ENV:Envelope
  xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/"
  SOAP-ENV:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"
    xmlns:web-dav-wrapper="http://schemas.ella-associates.org/shamiram/protocol/web-dav-wrapper.xsd">
      <SOAP-ENV:Header>
            <security:sessionID xmlns:security="http://schemas.ella-associates.org/shamiram/protocol/security.xsd"
                    SOAP-ENV:mustUnderstand="1">
                          ASD;FJBN4877
            </security:sessionID>
            <custom-meta-inf:supports-zip xmlns:custom-meta-inf="http://schemas.ella-associates.org/shamiram/protocol/c
ustom-meta-inf.xsd"
                    SOAP-ENV:mustUnderstand="1">
                          true
            </custom-meta-inf:supports-zip>

      </SOAP-ENV:Header>
      <SOAP-ENV:Body>
            <web-dav-wrapper:head>
                PROPFIND /file HTTP/1.1
                Host: www.foo.bar
                Content-type: text/xml; charset="utf-8"
                Content-Length: xxxx
            </web-dav-wrapper:head>
            <web-dav-wrapper:body>
                <![CDATA[<?xml version="1.0" encoding="utf-8" ?>
                <D:propfind xmlns:D="DAV:">
                <D:prop xmlns:R="http://www.foo.bar/boxschema/">
                <R:bigbox/>
                <R:author/>
                <R:DingALing/>
                <R:Random/>
                </D:prop>
                </D:propfind>]]>
            </web-dav-wrapper:body>
      </SOAP-ENV:Body>
</SOAP-ENV:Envelope>
<!--optional mime parts-->


   For more detail on the protocol contents, see the schema page.

   To do:

   LAST UPDATE:
   Nick Reddel
   Wednesday April 16, 2003
   
