Talk:ApplePie

From Filtered Push Wiki
Jump to: navigation, search

Annotation Messages

Here are a two options:

  • Modifications to Symbiota's web client would create a new form to allow users to create annotation messages to be sent to FP via an API over http in FP's xml annotation message schema.
This might be a modified form processor behind an existing form as well. Key pieces are: (1) Symbiota collects enough information to create a valid FP Message (e.g. DataOne authentication token), (2) Symbota collects data from user in atomic elements that are mappable to DarwinCore rather than a single text blob comment field, (3) The Symbiota form processor (interacts with FP client library components to) creates an annotation document, wraps it in an FP Message, and submits this to an FP access point. --Paul J. Morris 11:07, 28 October 2011 (EDT)
  • Modifications to Symbiota's web client would generate html with dwc microformat cues to allow an FP browser plugin to create annotation messages to be sent to FP via an API over http in FP's xml annotation message schema. http://en.wikipedia.org/wiki/Microformat
The current FP annotation format is RDF. If serialization format is critical, we could specify RDF/XML, which is probably a harmless requirement. I'd prefer that this be configurable in some way, but the fact is RDF/XML is probably ubiquitous. --Bob Morris 03:19, 28 October 2011 (EDT)
The Current FP Message format is XML. Annotations are wrapped in FP Messages. The format of the annotation is not specified by the message, other than that it can be wrapped in the XML message. --Paul J. Morris 11:03, 28 October 2011 (EDT)
The current design for FP message submission calls for FP Messages to be signed by the client and encrypted with XML DSIG and XML Encryption, and then transported to the access point over https. It will be very difficult to implement this with javascript. --Paul J. Morris 11:09, 28 October 2011 (EDT)
The design also calls for central registration of authorized clients, and crytptographic enforcement of submission of messages into the network only by authorized clients, in the case of Symbiota being a client, this is a small burden. In the case of a browser plugin, this is a very large burden, as each individual installing the browser plugin would need to be registered and have a key exchange with the network, a very large administrative burden. The relevant requirement is for all data in motion to be encrypted, and for only authorized network participants to be able to see the full data, implications of the presence of endangered species occurance data in the network. --Paul J. Morris 11:13, 28 October 2011 (EDT)

7. FP authentication verification with DataONE

FP would use DataONE's authentication API to verify the authentication token in annotation messages received from Specify or Symbiota.

http://mule1.dataone.org/ArchitectureDocs-current/design/UseCases/12_uc.html

Presumably, there should be an general FP authentication mechanism, which invokes something particular to the kind of authentication offered. We should perhaps consider the DataONE API as the generalization. They are likely to provide wrappers around anything else that matters anyway.
  • If there are other authentication mechanisms that we will support, we should find out what they are. --Maureen Kelly 12:08, 1 November 2011 (EDT)

8. FP sends notifications to Specify

Here are two options for Specify to receive notification messages from FP:

  • The Specify client is modified to create a new plugin that polls FP for new messages in an FP xml notification message schema, over http using an FP API.
  • The Specify client is modified to create a new plugin that opens a direct tcp/ip connection to FP to listen for new messages in an FP xml notification message schema, over http using an FP API.
The FPClientHelper proposed class in the UML has a method injectMessage, one of whose parameters is a Callback object. Callback is defined only as an artifact in a deployment. I don't know what the Bouml Java generator makes of it...--Bob Morris 13:10, 2 November 2011 (EDT)
See also the highLeverlInteraction diagram. --Bob Morris 13:11, 2 November 2011 (EDT)