You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@chemistry.apache.org by Karsten Eberding <ka...@eberding.eu> on 2012/09/18 20:49:04 UTC
PHP WebService library - possible contribution
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
karsten@eberding.eu
Re: PHP WebService library - possible contribution
Posted by Richard McKnight <ri...@alfresco.com>.
Karsten and I spoke this morning,
He will be sending me the code. He used a generator to create much of
the code from the WSDL, which means that all of the functions are
covered. The object model is, however, a bit more complex. I will
review the code, but I am inclined to make both available.
Rich
On 09/24/2012 11:28 AM, Karsten Eberding wrote:
> Hello,
>
> thanks for some positive responses. I will publish the library in a
> week or so, together with a sample application and initial
> documentation. I am still finishing up the sample application, that
> best shows the use and programming model.
>
> thanks for all additional comments or feedback
> --
> Karsten Eberding
> karsten@eberding.eu
>
>
>
>> Karsten Eberding <ma...@eberding.eu>
>> 18. September 2012 20:49
>> 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
--
*Richard McKnight* | Principal Technical Consultant - Americas,
o +1 512 692 6179 | m +1 908 247 0756 | skype rmknightstar
Alfresco Professional Services
<http://www.alfresco.com/services/consulting> | LinkedIn Profile
<http://www.linkedin.com/in/richmcknight>
Alfresco Certified Engineer <http://university.alfresco.com>Alfresco
Certified Administrator <http://university.alfresco.com>Introducing
Alfresco
<http://university.alfresco.com/store/on-demand_training/element/introducing_alfresco.html>
Thinking about Alfresco or new to enterprise content management? Get up
to speed with the basics.
<http://university.alfresco.com/store/on-demand_training/element/introducing_alfresco.html>
Alfresco <http://www.alfresco.com/> Twitter
<http://twitter.com/alfresco> Facebook
<http://www.facebook.com/alfrescosoftware> Feed
<http://feeds.feedburner.com/alfresco> LinkedIn
<http://www.linkedin.com/companies/alfresco> YouTube
<http://www.youtube.com/alfresco101>
Re: PHP WebService library - possible contribution
Posted by Karsten Eberding <ka...@eberding.eu>.
Hello,
thanks for some positive responses. I will publish the library in a week
or so, together with a sample application and initial documentation. I
am still finishing up the sample application, that best shows the use
and programming model.
thanks for all additional comments or feedback
--
Karsten Eberding
karsten@eberding.eu
> Karsten Eberding <ma...@eberding.eu>
> 18. September 2012 20:49
> 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
Re: PHP WebService library - possible contribution
Posted by Richard McKnight <ri...@alfresco.com>.
Hi,
I will reach out directly to Karsten
Rich
On 09/19/2012 09:36 AM, Florian Müller wrote:
> Thanks Karsten!
>
> I think Richard, who maintains the PHP code, should have a look at it.
> @Richard: Can you jump in?
>
>
> Cheers,
>
> Florian
>
>
>> 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
>
--
*Richard McKnight* | Principal Technical Consultant - Americas,
o +1 512 692 6179 | m +1 908 247 0756 | skype rmknightstar
Alfresco Professional Services
<http://www.alfresco.com/services/consulting> | LinkedIn Profile
<http://www.linkedin.com/in/richmcknight>
Alfresco Certified Engineer <http://university.alfresco.com>Alfresco
Certified Administrator <http://university.alfresco.com>Introducing
Alfresco
<http://university.alfresco.com/store/on-demand_training/element/introducing_alfresco.html>
Thinking about Alfresco or new to enterprise content management? Get up
to speed with the basics.
<http://university.alfresco.com/store/on-demand_training/element/introducing_alfresco.html>
Alfresco <http://www.alfresco.com/> Twitter
<http://twitter.com/alfresco> Facebook
<http://www.facebook.com/alfrescosoftware> Feed
<http://feeds.feedburner.com/alfresco> LinkedIn
<http://www.linkedin.com/companies/alfresco> YouTube
<http://www.youtube.com/alfresco101>
Re: PHP WebService library - possible contribution
Posted by Florian Müller <fm...@apache.org>.
Thanks Karsten!
I think Richard, who maintains the PHP code, should have a look at it.
@Richard: Can you jump in?
Cheers,
Florian
> 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