Hi Angelo: On Sat, Mar 19, 2011 at 12:09:06PM +0100, a.cammarot...@tiscali.it wrote: > Dear sirs,
(and madams!) > my name is Angelo Cammaroto and i'm an IT information technology > student. I'm really interested in working for your organization > during GSoC 2011. Visiting the page of your ideas I noticed the > project "Create a Ruby and / or client forPHP OpenSRF and Evergreen" > where you also talk about compatibility with drupal and wordpress. I > would like to better understand what do you mean and especially what > you need. This subject is probably better suited for the Evergreen Development mailing list (open-ils-...@list.georgialibraries.org) but in a nutshell, OpenSRF (the "Open Service Request Framework") defines a protocol for invoking methods on defined services over the network - see http://journal.code4lib.org/articles/3284 for an introduction to OpenSRF. While the earliest versions used XML serialization for the network messages, the current client portion of OpenSRF primarily uses JSON to communicate via XMPP or HTTP - a form of JSON-RPC, if you will. While teaching PHP or Ruby how to talk via OpenSRF over XMPP or HTTP is a good start, things get a little more interesting with Evergreen, which uses OpenSRF as a base layer for working with objects defined in a "fieldmapper" IDL. Client language bindings for Evergreen need to know how to parse the IDL to serialize and deserialize objects and auto-vivify methods, etc, based on the class definitions. For all of this, ultimately the goal would be to be able to add Evergreen integration to other applications like Wordpress that would talk to Evergreen via OpenSRF rather than trying to directly access Evergreen's database (messy from a security perspective, difficult because it means reimplementing some Evergreen business logic at the interface layer rather than using the core Evergreen business logic, and brittle as the database schema changes over releases) or screen-scraping (brittle and annoying). Does that help provide some further context for the project idea?