Rob Weir, IBM 1 ODF and Web Mashups

Similar documents
All About Open & Sharing

OU Mashup V2. Display Page

Web 2.0, AJAX and RIAs

Stable currents. Nick Veenstra. Developing against the Pure API

MAP SCRIPTING 101. AH Example-Driven Guide to Building Interactive MapA with Sing, Yahoo!, and Google MapA. by Adam DuVander.

28 JANUARY, Updating appearances. WordPress. Kristine Aa. Kristoffersen, based on slides by Tuva Solstad and Anne Tjørhom Frick

Web 2.0 Käyttöliittymätekniikat

Web 2.0, Social Programming, and Mashups (What is in for me!) Social Community, Collaboration, Sharing

Nick Terkay CSCI 7818 Web Services 11/16/2006

Web 2.0 Attacks Explained

Kyle Rainville Littleton Coin Company

UNIT-II : VIRTUALIZATION & COMMON STANDARDS IN CLOUD COMPUTING

Web Architecture Review Sheet

Web Standards Mastering HTML5, CSS3, and XML

Collaboration. Problems in collaboration. The solution

Introduction to creating mashups using IBM Mashup Center

Web Services Bootcamp: Adding Value to Library Apps & Services

OpenOffice.org as a platform for developers

MAIL PLUGIN FOR IBM MASHUP CENTER

Building Mashups Using the ArcGIS APIs for FLEX and JavaScript. Shannon Brown Lee Bock

Applikationen im Browser Webservices ohne Grenzen

Getting Started with the ArcGIS Server JavaScript API

Introduction to Web Services

Mobile Data: How to avoid the latency trap when using web services

Web 2.0 Tutorial. Jacek Kopecký STI Innsbruck

Leveraging the Social Web for Situational Application Development and Business Mashups

AJAX: Rich Internet Applications

An API for Your Data. David Brennan, PhUSE An API for Your Data, David Brennan, AD08, PhUSE

Whirlwind Tour of Web Mashups. Sophia Liu November 19, 2008

Atom: From Blogging to Data, Web (Services) 2.0

An Overview of FMW MapViewer

Distribution and Publication With Atom Web Services

Creating an Online Catalogue Search for CD Collection with AJAX, XML, and PHP Using a Relational Database Server on WAMP/LAMP Server

Copyright is owned by the Author of the thesis. Permission is given for a copy to be downloaded by an individual for the purpose of research and

Lesson 1 Key-Terms Meanings: Web Connectivity of Devices and Devices Network

Agylia Mobile Learning App Feature Summary

Google & the Cloud. GData, Mashup Editor, AppEngine. Gregor Hohpe Software Engineer Google, Inc. All rights reserved,

PGT T3CHNOLOGY SCOUTING. Google Webtoolkit. JSF done right?

Semantic Integration Platform for Web Widgets Communication

Top 10 AJAX security holes & driving factors

Mobile Systeme Grundlagen und Anwendungen standortbezogener Dienste. Location Based Services in the Context of Web 2.0

Introduction Haim Michael. All Rights Reserved.

Oracle APEX 18.1 New Features

User Guide Parser add-on. Version: September by AgileBio. &

13. Databases on the Web

The new SAP PI REST adapter Unveiled v1.0. SAPience TECH commission, Nov Dimitri Sannen SAP Solution Architect

Develop Mobile Front Ends Using Mobile Application Framework A - 2

REST API Developer Preview

Writing REST APIs with OpenAPI and Swagger Ada

Assignment 2. Start: 15 October 2010 End: 29 October 2010 VSWOT. Server. Spot1 Spot2 Spot3 Spot4. WS-* Spots

The Business Value of Open Standards. Michael(tm) Smith

WELCOME TO JQUERY PROGRAMMING LANGUAGE ONLINE TUTORIAL

Spoilt for Choice Which Integration Framework to choose? Mule ESB. Integration. Kai Wähner

ODF Programmability What we need & What we have Robert Weir Software Architect IBM Software Group

Web Services for Libraries. Jason A. Clark Head of Digital Access and Web Services Montana State University Libraries

Publishing Technology 101 A Journal Publishing Primer. Mike Hepp Director, Technology Strategy Dartmouth Journal Services

Extensions. Server-Side Web Languages. Uta Priss School of Computing Napier University, Edinburgh, UK. Libraries Databases Graphics

IBM LOT-408. IBM Notes and Domino 9.0 Social Edition Application Development Updat.

PODCASTS, from A to P

Easy Web Reports and Documents with JODReports

PROCE55 Mobile: Web API App. Web API.

May 22, 2013 Ronald Reagan Building and International Trade Center Washington, DC USA

Implementation of Library 2.0 Technologies in BBEC Library using Blogger

Interoperable Cloud Storage with the CDMI Standard. Mark Carlson, SNIA TC and Oracle Co-Chair, SNIA Cloud Storage TWG

Database Driven Web 2.0 for the Enterprise

Dojo Meets XPages in IBM Lotus Domino 8.5. Steve Leland PouchaPond Software

Shankersinh Vaghela Bapu Institue of Technology

ThingWorx Open Street Map Extension User Guide. Open Street Map Extension User Guide Version 1.0

BEAWebLogic. Portal. Overview

WEBSITE INSTRUCTIONS

Enterprise Software Architecture & Design

Internet Technologies. Lab Introduction

Like It Or Not Web Applications and Mashups Will Be Hot

Blackboard Learn 9.1 Reference Terminology elearning Blackboard Learn 9.1 for Faculty

B. Assets are shared-by-copy by default; convert the library into *.jar and configure it as a shared library on the server runtime.

JMP to LSAF Add-in. User Guide v1.1

What is an RSS/Atom News Aggregator? The best way to explain is to quote from the online Tutorial for BottomFeeder:

Enterprise Web based Software Architecture & Design

End User SharePoint 2010 Videos List

Agenda. Introduction. Supported Formats. Creating a Custom REST Service. What s Next

Introduction to Worklight Integration IBM Corporation

Chapter 15 Plug-ins, ActiveX, and Applets

Data Acquisition using Mashup and 3-D Technology. Matt Rahr College of Agriculture and Life Sciences University of Arizona

User Interaction: jquery

2/24/2015. What are File Formats? Types of File Formats. Sustainable Formats. File formats can be grouped into three categories:

What s new in IBM Operational Decision Manager 8.9 Standard Edition

Assignment #3 CSCI 201 Spring % of course grade Title Weathermeister Back-End API Integration

Paul Withers Intec Systems Ltd By Kind Permission of Matt White and Tim Clark

Attacking Web2.0. Daiki Fukumori Secure Sky Technology Inc.

Getting started with Convertigo Mobilizer

Niagara 3.7 New Feature Review

IBM Exam C Developing Enterprise Mobile Applications with IBM Worklight and IBM WebSphere Portal Version: 6.0 [ Total Questions: 122 ]

PHP. MIT 6.470, IAP 2010 Yafim Landa

Big Wins with Document

Topics Augmenting Application.cfm with Filters. What a filter can do. What s a filter? What s it got to do with. Isn t it a java thing?

Page 1 AideRSS

Session 8. Reading and Reference. en.wikipedia.org/wiki/list_of_http_headers. en.wikipedia.org/wiki/http_status_codes

Los Angeles Cancer Surveillance Program. Links and Slides google Rich Pinder USC.

Mastering Notes.ini Settings, Both Old and New Chris Miller Connectria

Factory Method. Factory Method. Resource Mgt in App Framework. An Example: A Framework for Productivity ( Office ) Applications

Transcription:

ODF and Web Mashups Basic techniques Rob Weir, IBM robert_weir@us.ibm.com 2009-11-05 1615 1 ODF and Web Mashups

Agenda Why it is hard to use ODF in a web app Two techniques for accessing ODF on the web Atom JSON A couple of demos Some areas for exploration. Note although the examples give use ODFDOM, the same techniques could be used with other ODF libraries on other languages. ODF and Web Mashups Slide 2

How ODF Relates to the Web Documents stored on the web, retrieved with HTTP. Launch platform editor Browser Plugins to view documents HTML convertors (Stellent) Full text indexing (Google) But none of these techniques allow sharing of data from ODF documents with web applications... ODF and Web Mashups Slide 3

So what is the problem? ODF is XML-based, but not XML ODF is a ZIP-archive containing multiple XML files and associated resources (images, etc.). Web client's cannot get inside the ZIP given functionality provided by HTML/CSS/ JavaScript, etc. Could get around this with Java applets or ActiveX, but that has security implications and is not as portable. ODF and Web Mashups Slide 4

Two Approaches Convert ODF to Atom Convert ODF to JSON Small, fast, on-the-fly transformations from ODF to standard formats that are broadly consumable on the web. ODF and Web Mashups Slide 5

Atom Syndication Format Created in 2003, goal was 100% vendor neutral, implemented by everybody, freely extensible by anybody, and cleanly and thoroughly specified. IETF RFC 4287 (2005) Successor/rival of RSS Generally used for blog, podcast and similar feeds. But has some broader uses as well. ODF and Web Mashups Slide 6

Basic Structure of Atom ODF and Web Mashups Slide 7

Mapping ODF to Atom dccreator name dcdate updated dctitle title dcdescription summary dc refers to Dublin Core Element Set ODF and Web Mashups Slide 8

Example Metadata Aggregator Point to a directory full of ODF docs Use ODFDOM to extract the metadata Generate an Atom feed from this information Let's look at the code and have a demo ODF and Web Mashups Slide 9

Enhancements and Uses Run on server, via a cron job Atom feed via a servlet call http//foo.com/odf2atom?base=dir Read ODF documents from a document repository Apply same technique to individual documents, to publish individual slides in a presentation, or rows in a spreadsheet. Send updates whenever new document is uploaded to your web site Use TwitterFeed to publish updates to Twitter Use feed in IBM Mashup Center or in Yahoo Pipes Scan incoming attachments, extract them and add to personal feed of incoming documents Can help with widespread problem of two metadata views, that are unsynched, the intrinsic metadata in the document versus the metadata tracked by the content manager. ODF and Web Mashups Slide 10

JSON JavaScript Object Notation IETF 4627 (2006) Alternative to XML for an interchange data format. Is a subset of JavaScript's data declaration syntax. Can be very easily consumed by JavaScript applications via call to eval(), but can also be used by other languages, via libraries. ODF and Web Mashups Slide 11

JSON Example ODF and Web Mashups Slide 12

Example Spreadsheet Publisher Start with a spreadsheet with rows of records. First row is treated as the header row and used as labels. We then iterate over remaining rows, writing a subobject for each row. End result is a JSON object representing the spreadsheet. Let's look at the code and have a demo ODF and Web Mashups Slide 13

Security Note Same origin security restrictions require that the HTML page using the JSON object be in the same domain as the domain of the server hosting the JSON object. Can get around this somewhat with frames, but this then gets you into cross-frame scripting issues. ODF and Web Mashups Slide 14

Enhancements and Uses Run on server, via a cron job JSON == a servlet call http//foo.com/json?doc=foo.ods Could be used to aggregate data across documents Great for mashups Identify a column as a location value, use Google Maps API to geocode and place marker on a map. Can we go in the other direction? ODS JSON Interactive modifications JSON ODS Would be a killer feature. Let's do it! ODF and Web Mashups Slide 15

Thank you for your attention. Any questions? ODF and Web Mashups Slide 16