Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

ODFKit

1,398 views

Published on

ODFKit is a model parsing and rendering library on the ODF processing.

Published in: Technology
  • Be the first to comment

  • Be the first to like this

ODFKit

  1. 1. ODFKit-- the Common ODF Processing Library Inge Wallin, Koffice Alexandro Colorado, OpenOffice.org 2009-11-05 11:15
  2. 2. Who are we? <ul><li>Inge Wallin </li><ul><li>Koffice developer and Marketing coordinator
  3. 3. Founder of KO GmbH – the open document company </li></ul><li>Alexander Colorado </li><ul><li>OpenOffice.org spanish lead
  4. 4. Certification lead </li></ul></ul>
  5. 5. ODFKit – What is it? <ul><li>Think “WebKit for ODF apps” </li><ul><li>Cross platform
  6. 6. Cross toolkit
  7. 7. Embeddable into your own application
  8. 8. Fast, efficient </li></ul><li>Free </li><ul><li>LGPL 2+ </li></ul></ul>
  9. 9. WebKit – why is it successful? All the browsers <ul><li>Share code
  10. 10. Share tests
  11. 11. Share developers </li></ul>Development <ul><li>One repository
  12. 12. One review board
  13. 13. One bug tracker </li></ul>Safari Qt MFC Cocoa WebKit Gtk+ Chrome Arora / QtWebView ...
  14. 14. ODFKit – What is it? OdfKit will reuse WebKit: <ul><li>Development tools
  15. 15. Code infrastructure </li></ul>Foo Office Qt MFC Cocoa ODFKit Gtk+ Document Storage Java, etc bindings
  16. 16. Background: ODF Suites Today <ul>Native Format <li>OpenOffice.org
  17. 17. KOffice
  18. 18. Red Office
  19. 19. Symphony </li></ul><ul>Non-native Format <li>MS Office
  20. 20. Abiword
  21. 21. iWorks
  22. 22. Google docs </li></ul>
  23. 23. Background: Large Spec, growing <ul><li>Accessibility
  24. 24. Extensibility
  25. 25. Versioning
  26. 26. Change Tracking
  27. 27. Interoperability
  28. 28. Security </li></ul><ul><li>Unified Computation
  29. 29. Next Gen Spreadsheet
  30. 30. New Paradigms
  31. 31. SVG
  32. 32. Non-functional specification improvements </li></ul>Rob Weir: “What is ODF-Next?
  33. 33. Background: Government Reqs <ul><li>Common, consistent, transparent, easy ODF implementations fully interoperable across all offerings
  34. 34. Long term confidence in open, independent content accessibility
  35. 35. Long term ease of use </li></ul>Basil Cousins, Convenor, European ActionGroup
  36. 36. The Role of ODFKit To make it possible for new applications to quickly support ODF.
  37. 37. Reasons for the Project <ul><li>Improve interoperability </li><ul><li>Apps using Odfkit share a lot of code </li></ul><li>Create a widely used free ODF implementation
  38. 38. Make ODF a more common format </li></ul>
  39. 39. Goals <ul><li>Load/Store/Save with no dataloss.
  40. 40. Fast
  41. 41. Easy to plug in
  42. 42. Fast progress </li><ul><li>Use Webkit technology as far as possible. </li></ul></ul>
  43. 43. The offering Loader API Saver API ODF Parser ODF Saver Adap- tor Not provided: <ul><li>Main program
  44. 44. Editing tools
  45. 45. “ business logic” </li></ul>
  46. 46. Not provided <ul><li>Main program
  47. 47. Editing tools
  48. 48. “Business logic” </li></ul>
  49. 49. Scenario 1: Add ODF capability Loader API Saver API ODF Parser ODF Saver Adap- tor
  50. 50. Scenario 2: ODF Viewer Loader API Saver API ODF Parser Adap- tor
  51. 51. Scenario 3: File conversion Loader API Saver API ODF Parser Saver Adap- tor
  52. 52. Scenario 4: Simple editor Loader API Saver API ODF Parser ODF Saver Adap- tor
  53. 53. Relationship to other projects <ul><li>Odf toolkit Tools for the ODF developer
  54. 54. Lpod business processes with odf python, (perl, ruby)
  55. 55. Odfpy low-level handling of odf (python only)
  56. 56. OdfKit Core library for the appl. developer in C++ </li></ul>
  57. 57. Status <ul><li>Project is at the idea status
  58. 58. Looking for funding </li></ul>
  59. 59. Roadmap <ul><li>Investigate other projects (~1 month) </li><ul><li>To see what we can steal (WebKit, Koffice, ...)
  60. 60. Design </li></ul><li>Storage / package handling
  61. 61. Core classes </li><ul><li>Document, text, images,
  62. 62. Code to autogenerate classes </li></ul><li>Loading
  63. 63. Saving </li></ul>
  64. 64. Success factors <ul><li>Steal code!
  65. 65. Autogeneration </li></ul>

×