Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

2. Changes to Parsing and Use of WSDL, Front and Back end

Support for WSDL Faults (API WSDL & SDef/p)

stub

Deliver Composed WSDL for Object Disseminations

Variant on the ListMethodsServlet calls with xml=true

WSDL-2 Support

Pros: Better language for multiple verbs; better support for serialization of multiply-valued parts into URLs for GET requests; supported by Axis2

Cons: People kind of hate it; changed characters for value substitution mean patterns aren't backward compatible; questionable whether it's necessary for REST support

FCREPO-500: Writeable disseminators; REST support; POST support

stub

3. SOAP Support

There are two broad areas of SOAP suport that may be pursued: SDep binding to SOAP services, and SDef specification of SOAP services.

Allow SDeps to Bind to SOAP Services

Allowing SDeps to bind to SOAP services allows a Fedora object to mask complex behaviors relying on datastream content and metadata with a relatively simple interface of UserInputParms.  It requires support for HTTP POST, and indicates a different context for the use of existing input parms.

Message part definitions include types; would have to assume corresponding order

Example: Document sdef with a getCalais service defined - sdep might have default parms for API key; nullbind-style bind to paramsXML, bind to content datastream

Potential problems: Support for xsd types is easy; support for complex or user-defined types is more difficult.  Need to specify some rules for attempted type conversion.

Allow SDefs to Specify SOAP Services

stub

Proposal Outline

  1. Refinements in the scope of the Fedora 3.3 Service Mapping
    1. Tweaking the ServiceMapper class
      1. More robust port-to-method binding
      2. Define and Implement a pluggable interface
      3. FCREPO 619: ServiceDeployment WSDL cannot specify relative URIs in http:address
    2. More input parm binding options
      1. bind to DC element
      2. bind to object of RDF triple
      3. bind to a system or environment property
    3. Improving documentation and validation
      1. Documenting the role and relationship of similar structures in SDef/SDep
      2. A trouble-shooting/analysis tool to identify problems (perhaps part of an EZService bundle)
  2. WSDL Descriptions: Front-end and back-end
    1. WSDL 2 support
    2. Delivery of composed WSDL for clients at service endpoints
    3. FCREPO-52: WSDL Should Declare Faults 
    4. FCREPO-500 ; writeable disseminators, REST-as-service, POST support for (hopefully) idempotent services?
  3. FCREPO-16: SDeps with SOAP Bindings
    1. Back-end with Datastreams (SOAPInputParm? DSInputParm@passBy='VALUE'?)
    2. Front-end as service (follow-on to FCREPO-500?)

...