Proposal notes for London Committers' Meeting, Feb. 23-24, 2010:
- Refinements in the scope of the Fedora 3.3 Service Mapping
- Tweaking the ServiceMapper class
- More robust port-to-method binding
- Define and Implement a pluggable interface
- FCREPO 619: ServiceDeployment WSDL cannot specify relative URIs in http:address
- More input parm binding options
- bind to DC element
- bind to object of RDF triple
- bind to a system or environment property
- Improving documentation and validation
- Documenting the role and relationship of similar structures in SDef/SDep
- A trouble-shooting/analysis tool to identify problems (perhaps part of an EZService bundle)
- Tweaking the ServiceMapper class
- WSDL Descriptions: Front-end and back-end
- WSDL 2 support
- Delivery of composed WSDL for clients at service endpoints
- FCREPO-52: WSDL Should Declare Faults
- FCREPO-500 ; writeable disseminators, REST-as-service, POST support for (hopefully) idempotent services?
- FCREPO-16: SDeps with SOAP Bindings
- Back-end with Datastreams (SOAPInputParm? DSInputParm@passBy='VALUE'?)
- Front-end as service (follow-on to FCREPO-500?)
3.2 Notes
- Only supports one wsdl:service definition (contra WSDL 1.1), multiple wsdl:service elements will override previous
- This is dependent on the WSDLParser, which only allows a single service; as well as the ServiceMapper, which only expects one
- FCREPO-16: Does not support SOAP message bindings
- Effectively limited to one port (operations are all mapped to the first port with an HTTP binding)
- see ServiceMapper.merge();
- Consequence: Operations can't be grouped according to http:address, so different service hosts mean only LOCAL addressing can work
- FCREPO 619: ServiceDeployment WSDL cannot specify relative URIs in http:address
- Does allow local.fedora.server variable as location
- Effectively limited to a single portType (WSDLParser has one Service, Service class has one PortType)
- Appears to require all portTypes to include all abstract message types? (still looking into this)
Wishlist
- Allow multiple ports and port types
- Clarify documentation on meaning of required parms and default values in SDef and SDep