Your SlideShare is downloading. ×
0
FISE Integration with Python and Plone
FISE Integration with Python and Plone
FISE Integration with Python and Plone
FISE Integration with Python and Plone
FISE Integration with Python and Plone
FISE Integration with Python and Plone
FISE Integration with Python and Plone
FISE Integration with Python and Plone
FISE Integration with Python and Plone
FISE Integration with Python and Plone
FISE Integration with Python and Plone
FISE Integration with Python and Plone
FISE Integration with Python and Plone
FISE Integration with Python and Plone
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

×
Saving this for later? Get the SlideShare app to save on your phone or tablet. Read anywhere, anytime – even offline.
Text the download link to your phone
Standard text messaging rates apply

FISE Integration with Python and Plone

739

Published on

"Unleashing the Power of Semantic Data - Today"

"Unleashing the Power of Semantic Data - Today"

0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total Views
739
On Slideshare
0
From Embeds
0
Number of Embeds
1
Actions
Shares
0
Downloads
6
Comments
0
Likes
0
Embeds 0
No embeds

Report content
Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
No notes for slide

Transcript

  • 1. IKS Semantic Workshop Amsterdam 2010 FISE integration with Python and PloneJens W. Klein <jk@kleinundpartner.at> 2010-12-09 Creative Commons Namensnennung- Keine kommerzielle Nutzung- Page 1 of 14 Keine Bearbeitung 3.0 Österreich Lizenz
  • 2. Who we are● Jens Klein – Managing Director an founder of KUP – Software Architect and FOSS Enthusiaist● KUP - Klein & Partner KG – web technology agency based in Innsbruck (AT) – focused on Python, App-Engine, BFG, Zope, Plone – founding member of BlueDynamics Alliance● BlueDynamics Alliance – cluster of seven companies in region D-A-CH Creative Commons Namensnennung- Keine kommerzielle Nutzung- Page 2 of 14 Keine Bearbeitung 3.0 Österreich Lizenz
  • 3. PYTHON● programming language● used by Google, NASA and many more● increasing number of users● interpreted language (byte-code compiler)● untyped, lean, easy-to-read and understand● functional, object-oriented programming● powerful standard library● thousands of addon libraries Creative Commons Namensnennung- Keine kommerzielle Nutzung- Page 3 of 14 Keine Bearbeitung 3.0 Österreich Lizenz
  • 4. ZOPE● Python Technology for Web Applications● Zope 2 Web Application Server – more than 10 years old, but continiously modernized● Bluebream webapplication framework – application related parts of former Zope 3● Zope Toolkit Library – used/created by devs of Zope2, BlueBream, BFG● BFG/ Pylons Pyramid light weight web-app framework (related) Creative Commons Namensnennung- Keine kommerzielle Nutzung- Page 4 of 14 Keine Bearbeitung 3.0 Österreich Lizenz
  • 5. PLONE● Web Content Management System – built on top of Zope 2 – large community with >200 core contributors, in top 3% of FOSS-communities – trademark and IP managed by non-profit Plone Foundation – excellent security record – common WebCMS with focus on users/usability, scalability – addons and plugins for hundreds of use-cases Creative Commons Namensnennung- Keine kommerzielle Nutzung- Page 5 of 14 Keine Bearbeitung 3.0 Österreich Lizenz
  • 6. bring FISE to the Plone Community: Conference 2010● Talk at Plone Conference 2010/ Bristol – recorded at http://ploneconference2010.blip.tv/file/4317791● Open Space Session on Semantics in Plone● One Day Sprint (aka Hackathon) on FISE Creative Commons Namensnennung- Keine kommerzielle Nutzung- Page 6 of 14 Keine Bearbeitung 3.0 Österreich Lizenz
  • 7. FISE Python API Goals● offer a pythonic API to all FISE features exposed by its RESTFul API● hide as much as possible the HTTP aspect● use a widely used, well tested and scaleable foss-library for RESTFul http connections● full test coverage with Python doctests● provide an zc.buildout based installation which includes FISE itself and the tests Creative Commons Namensnennung- Keine kommerzielle Nutzung- Page 7 of 14 Keine Bearbeitung 3.0 Österreich Lizenz
  • 8. FISE Python-API fise.clientWanna smell code? Doctest style:FISE „engines“1 >>> from fise.client import FISE2 >>> fise = FISE(http://localhost:8080/)3 >>> somedoc = u"This is an example text."4 >>> fise.engines(somedoc)5 <rdf:RDF...</rdf:RDF>n6 >>> fise.engines(somedoc, format=rdfjson)7 {"...}8 >>> fise.engines(somedoc, parsed=True)9 <Graph identifier=... (<class rdflib.Graph.Graph>)> Creative Commons Namensnennung- Keine kommerzielle Nutzung- Page 8 of 14 Keine Bearbeitung 3.0 Österreich Lizenz
  • 9. FISE Python-API fise.clientFISE „store“1 >>> generated_id = fise.store.add(somedoc)2 >>> fise.store[existing_id] = somedoc3 >>> fise.store[generated_id] == somedoc4 True5 >>> fise.store.metadata(existing_id)6 <rdf:RDF...</rdf:RDF>n7 >>> fise.store.metadata(existing_id, parsed=True)8 <Graph identifie... (<class rdflib.Graph.Graph>)> 9 >>> fise.store.page(generated_id)10 <html>...</html> Creative Commons Namensnennung- Keine kommerzielle Nutzung- Page 9 of 14 Keine Bearbeitung 3.0 Österreich Lizenz
  • 10. FISE Python API Implementation Details● uses restkit as rest library● uses rdflib to transform results to Python object graphs,● uses SuRF library (on top of rdflib) for Sparql queries.● code at http://github.com/collective/fise.client● integration buildout at http://github.com/collective/fise-buildout Creative Commons Namensnennung- Keine kommerzielle Nutzung- Page 10 of 14 Keine Bearbeitung 3.0 Österreich Lizenz
  • 11. fise.client code location● Python-API http://github.com/collective/fise.client● Python Integration Buildout http://github.com/collective/fise-buildout● Plone Integration Package http://github.com/collective/fise.plone Creative Commons Namensnennung- Keine kommerzielle Nutzung- Page 11 of 14 Keine Bearbeitung 3.0 Österreich Lizenz
  • 12. Plone IntegrationWork done so far:● „indexing“ in FISE after creation and changes of content-objects.Whats missing?● query facility – Zope plugin index to FISE sparql endpoint – Integration with Collections● passing the site-structure and DC to FISE.● asynchronous processing Creative Commons Namensnennung- Keine kommerzielle Nutzung- Page 12 of 14 Keine Bearbeitung 3.0 Österreich Lizenz
  • 13. Plone DemoDEMO TIME Creative Commons Namensnennung- Keine kommerzielle Nutzung- Page 13 of 14 Keine Bearbeitung 3.0 Österreich Lizenz
  • 14. The EndQuestions AnswersDiscussions Creative Commons Namensnennung- Keine kommerzielle Nutzung- Page 14 of 14 Keine Bearbeitung 3.0 Österreich Lizenz

×