Hello,

I consider to make a CMIS PHP library available as Open Source, possibly through a contribution to Apache Chemistry.

Of course, I am aware of the existing PHP library at http://chemistry.apache.org/php/phpclient.html, I looked at it closely before starting my own work. Let me point out the differences and why a second library could be useful:

1) the existing library supports Atom / REST, while my new library uses the WebService WSDL binding. Both together would cover both bindings, and complete the coverage for CMIS.

2) the existing library uses the PHP cURL functions. My new library uses the native PHP SoapClient package, to handle the transformation between XML and PHP variables in native code. This is not a big deal on it's own, but

3) as a result of using SoapClient, CMIS data structures are returned as typed PHP objects. The library defines all 170 CMIS data types, allowing to access and work with content data in object form as defined by CMIS.

4) The library is complete, covering 100% of all functions defined in the WSDL file, because the library is generated through a code generator transforming a WSDL file into PHP code. This ability was the main reason to start the development based on WSDL, and not use the existing Atom / REST library.

Generating a PHP library from a WSDL file should be useful for cases where a repository supports more or less functions than what is defined in CMIS. Extensions could be easily added, or functions removed.

I would like to offer the standard PHP library, based on the CMIS standard, as Open Source. I am not yet decided for the code generation module, and specialized libraries for certain repositories, but I am open for suggestions.

The library is available today, still outstanding are further test scenarios, a full example application, and complete documentation. Current testing is done using Alfresco only, I would be interested to expand this to other repositories and WSDL specifications as well.

This new library should in no way replace the existing REST implementation, but be another alternative to enhance the overall Chemistry offering.

Please let me know your thoughts and interest.

thanks
--
Karsten Eberding
[email protected]

Reply via email to