ODF API - ODFDOM Svante Schubert Software Engineer

Slides:



Advertisements
Similar presentations
Classification & Your Intranet: From Chaos to Control Susan Stearns Inmagic, Inc. E-Libraries E204 May, 2003.
Advertisements

1 XML Data Management Course Outline and Organisation Werner Nutt.
What are they? Users see a single file MyDoc.docx Developers see a zip file with xml parts Document properties File container Comments WordML/SpreadsheetML,
Adaptability of learning objects by appropriate knowledge representation Anastas Misev Institute of Informatics Faculty of Natural Science and Mathematics.
XML Parsing Using Java APIs AIP Independence project Fall 2010.
Presented by IBM developer Works ibm.com/developerworks/ 2006 January – April © 2006 IBM Corporation. Making the most of Creating Eclipse plug-ins.
Steps to Display a Text file in an Applet Abhishek Mehta.
XML October 24, Unit 6. What is XML? Stands for eXtensible Markup Language It is a markup language, like HTML But, –XML is designed to markup data –HTML.
4.01B Authoring Languages and Web Authoring Software 4.01 Examine webpage development and design.
Introduction to XSLT & its use in Grainger Library full-text & metadata projects Thomas G. Habing Grainger Engineering Library Presentation to ASIS&T,
Sheet 1XML Technology in E-Commerce 2001Lecture 6 XML Technology in E-Commerce Lecture 6 XPointer, XSLT.
M1G Introduction to Programming 2 4. Enhancing a class:Room.
Nov China-VO 架起 VO 与桌面应用的桥梁 崔辰州 China-VO Project 中科院国家天文台 The Chinese V IRTUAL O BSERVATORY.
INTRODUCTION TO FRONTPAGE. TOPICS TO BE DISCUSSED……….  Introduction Introduction  Features Features  Starting Front Page Starting Front Page  Components.
Web Technologies Website Development Trade & Industrial Education
XML eXtensible Markup Language w3c standard Why? Store and transport data Easy data exchange Create more languages WSDL (Web Service Description Language)
NetTech Solutions Working with Web Elements Lesson 6.
© Disruptive Innovations Etna a wysiwyg XML RELAXNG- and Gecko-based editor.
Copyright © IBM Corp., All rights reserved. This presentation is licensed under Creative Commons Att. Nc Nd 2.5 license. OpenDocument Format.
The Basics of Javadoc Presented By: Wes Toland. Outline  Overview  Background  Environment  Features Javadoc Comment Format Javadoc Program HTML API.
Intro to XML Originally Presented by Clifford Lemoine Modified by Box.
Tutorial 7 Designing a Multimedia Web Site
Axel Naumann University of Nijmegen / NIKHEF, NL ROOT 2004 Users Workshop The Future of THtml Plans and Status of ROOT’s documentation facility.
Embedded XML Documentation for Fortran 90 and C/C++ Brett N. DiFrischia RS Information Systems NOAA | GFDL.
An OO schema language for XML SOX W3C Note 30 July 1999.
Standards, Reusability, and the Mating Habits of Learning Content Robby Robson Eduworks Corporation
XML Grammar and Parser for WSOL Kruti Patel, Vladimir Tosic, Bernard Pagurek Network Management & Artificial Intelligence Lab Department of Systems & Computer.
Extending & Customizing XNAT with Modules Rick Herrick
COMP9321 Web Application Engineering Semester 2, 2015 Dr. Amin Beheshti Service Oriented Computing Group, CSE, UNSW Australia Week 4 1COMP9321, 15s2, Week.
4.01B Authoring Languages and Web Authoring Software 4.01 Examine webpage development and design.
HTML A brief introduction HTML1. HTML, what is? HTML is a markup language for describing web documents (web pages). HTML stands for Hyper Text Markup.
Java Programming: Advanced Topics1 Introduction to Advanced Java Programming Chapter 1.
©2001 Priority Technologies, Inc. All Rights Reserved Meteor Status Miami Face to Face Meeting January 16 – 18, 2002.
1 Model Driven Health Tools Design and Implementation of CDA Templates Dave Carlson Contractor to CHIO
Java High level programming language ◦ Sun Microsystems ◦ ORACLE acquired Java Development Kit – JDK Java Runtime Environment – JRE Java Virtual Machine.
CFUNITED – The premier ColdFusion conference Another Look at Microsoft Office Using Apache Jakarta POI Jeremy Lund June 28th, 2006.
UAB Requirements for 2016 Ivan Prieto Barreiro 18/04/2016 UAB Requirements for
1 Sun: - ODF - StarOffice & OpenOffice ● Rudy Van Hoe ● Software Practice Manager ● Sun Microsystems 1.
OpenOffice.org & ODF eco system Dieter Loeschky Sr. Manager Software Engineering OpenOffice.org / StarOffice Development Sun Microsystems.
The new ODF 1.2 Metadata Framework Svante Schubert Software Engineer Sun Microsystems Inc.
1 Workshop - ODFDOM Lars Behrmann Frank Meies Svante Schubert Sun Microsystems, Hamburg 1.
An OpenDocument Developers Kit (ODDK) What do we need to make Application Developers Productive with ODF? Rob Weir IBM
Improving ODF applications by sharing ODF tests Svante Schubert Software Engineer Sun Microsystems Inc.
1 ODF and Web Mashups Basic techniques Rob Weir, IBM :15.
1 Niklas Nebel Sun Microsystems NEW FEATURES IN CALC
© 2007 IBM Corporation ODF Programmability – What we need & What we have Robert Weir Software Architect IBM Software Group
Merge-enabled Change Tracking Freelancer.
OpenDocument Format (ODF - ISO/IEC 26300) !!! D R A F T !!!
XML Based Filters ● Svante Schubert – Co-Lead XML OpenOffice.org – StarOffice/OpenOffice.org ● Sun Microsystems.
10 Questions and Answers about.
NOTICE! These materials are prepared only for the students enrolled in the course Distributed Software Development (DSD) at the Department of Computer.
Topic Map & SMIL Prototypes KUL-ESAT-DOCARCH
4.01B Authoring Languages and Web Authoring Software
Using XML Tools CS551 – Fall 2001.
Introduction to Advanced Java Programming
Intro to XML.
UAB Development Status
ODF Support in KWord 2 Girish Ramakrishnan
The merging of Web and Mobile APP
Introduction to XHTML.
Data Modeling II XML Schema & JAXB Marc Dumontier May 4, 2004
OpenOffice. org Extensions Infrastructure What it is –. What it can –
Prepared for Md. Zakir Hossain Lecturer, CSE, DUET Prepared by Miton Chandra Datta
4.01B Authoring Languages and Web Authoring Software
HTML A brief introduction HTML.
JQuery with ASP.NET.
XML Problems and Solutions
Getting Started With Solr
CSE591: Data Mining by H. Liu
XML and Web Services (II/2546)
Presentation transcript:

ODF API - ODFDOM Svante Schubert Software Engineer Sun Microsystems, Hamburg 1

Do you know ODF? The OASIS / ISO standard for office documents (2005/06) The document format of many office applications A zipped package of XML and related files (image, sound, user files) Origin from OpenOffice.org's default format

What to do with ODF documents? Usually store your Texts / Spreadsheets / Presentation Edited and viewing by an Office application

What to do with ODF documents? But how do I process 1.000.000 ODF documents?

We need an ODF API! API to automate ODF processing Creating, manipulating ODF documents Lightweight API API close related to ODF Opensource

Where to find an ODF API? Use StarOffice / OpenOffice.org API? Office API not ODF centric StarOffice funded 1984, ODF standardized 2005 / 06 Office viewing & editing functionality undesired, Lightweight editing functionality not easy extractable

The Idea of a new ODF API! We need a new lightweight ODF API!! New API will focus on ODF Taking over ideas from previous ODF APIs (OOo API, AODL, ODF4J, etc.) The Idea is to create a new library and the merging of both after some time..

New ODF API - ODFDOM Sun opensourced ODFDOM Lightweight API OpenDocument centric Opensource (Apache 2) Multi-layered Java 5 reference implementation

ODF Basics - Package & Files ISO standardized default content (as shown, but NOT Picture folder)

ODF Basics - Package & Files Manifest as an Inventory / 'table of content' Any user content..

ODFDOM - Layered Model ODFDOM featuring: Adding / removing file streams from the ODF package (ZIP) Generated from the ODF RelaxNG Schema (typed W3C XML DOM, similar to HTML DOM part of Apache Xerces parser)

ODF Basics – XML Table Example

Design Idea - DOM API for ODF

ODFDOM - Layered Model ODFDOM featuring: Processing ODF documents on ODF XML element level Generated from the ODF RelaxNG Schema (typed W3C XML DOM, similar to HTML DOM part of Apache Xerces parser)

ODFDOM - Layered Model ODFDOM featuring: Common high-level convenience functionality (e.g. add table, add table row, etc.) Generated (at least skeleton at the first time) from the ODF RelaxNG Schema (typed W3C XML DOM, similar to HTML DOM part of Apache Xerces parser)

ODFDOM - Layered Model

ODFDOM - Layered Model

ODFDOM - Resources Quick Look Deep Look (Packages) Project of ODF Toolkit - http://odftoolkit.org Wiki - http://odftoolkit.org/projects/odftoolkit/pages/ODFDOM Deep Look (Packages) The zipped JavaDoc API The JAR of the reference Java 5 implementation The zipped NetBeans package containing the sources of ODFDOM

Why an ODF TOOLKIT Project? Round up ODF developer story Provide a site to share programs & ideas on ODF ODF SDK ODF Conformance Tools ODF Applications and Tools ODF SDK - ODFDOM Provide a layered model for ODF reusable for different programming languages (ODFDOM) To discuss common ODF application problems...

Shared Problems of ODF Application How to support multiple ODF versions? ODFDOM supports by default latest ODF version Provides downgrade functionality to older ODF versions Problem: Not yet specified when a feature was added to ODF How test ODF application for conformance? Why not sharing ODF conformance tests and documents with other ODF applications? Possible ways to support multiple ODF versions: Only support the latest ODF version? Every ODF version gets its own ODFDOM version? Every ODF version can be accessed by latest ODFDOM? Possible solution: annotate element and attribute accessors with an annotation of ODF version of their introduction

Shared Problems of ODF Application ODF RelaxNG schema not sufficient for Code Generation Misses relation between stylable element and style:family (e.g. text:p is related to the value 'Paragraph') Creation of attribute default values from ODF 1.2 schema possible, missing example for default of mandatory attributes (As in OOo - create an image just by an image source)

Questions & Answers Svante Schubert Svante.Schubert@sun.com 22