UNEP Workshop on Knowledge Management and MEAs

Slides:



Advertisements
Similar presentations
RP Designs Semi-Custom e-Commerce Package. Overview RP Designs semi- custom e-commerce package is a complete website solution. Visitors can browse a catalog.
Advertisements

Usage Statistics in Context: related standards and tools Oliver Pesch Chief Strategist, E-Resources EBSCO Information Services Usage Statistics and Publishers:
The Biosafety Clearing-House of the Cartagena Protocol on Biosafety Tutorial – BCH Resources.
Reinventing using REST. Anything addressable by a URI is called a resource GET, PUT, POST, DELETE WebDAV (MOVE, LOCK)
National Database Templates for the Biosafety Clearing-House Application (NDT-nBCH) Overview of the US nBCH Applications.
Contents Importance Knowledge for CBD Managing Knowledge 2.
What are Web Services? How to use them?
European Clearing-House Mechanism Portal Toolkit Expert Group Meeting
Web Service Ahmed Gamal Ahmed Nile University Bioinformatics Group
1Proprietary and Confidential AirVantage API – Getting started David SCIAMMA – June 13th 2014.
1 The World Wide Web. 2  Web Fundamentals  Pages are defined by the Hypertext Markup Language (HTML) and contain text, graphics, audio, video and software.
AgriDrupal - a “suite of solutions” for agricultural information management and dissemination, built on the Drupal CMS; - the community of practice around.
RSS RSS is a method that uses XML to distribute web content on one web site, to many other web sites. RSS allows fast browsing for news and updates.
1 Web Developer & Design Foundations with XHTML Chapter 6 Key Concepts.
A Scalable Application Architecture for composing News Portals on the Internet Serpil TOK, Zeki BAYRAM. Eastern MediterraneanUniversity Famagusta Famagusta.
Example XML Applications/Languages. Objectives To Review uses of XML To investigate some Language applications of XML XHTML RSS WML Web Services.
Using the SAS® Information Delivery Portal
Google Data APIs Google Data APIs : Integrando suas aplicações Java com os serviços Google.
COLD FUSION Deepak Sethi. What is it…. Cold fusion is a complete web application server mainly used for developing e-business applications. It allows.
1 Biosafety Clearing House Training Workshop for Regional Advisors Donors applications May 2006 Bangkok, Thailand.
Training Guide for Inzalo SOP Users. This guide has been prepared to demonstrate the use of the Inzalo Intranet based SOP applications. The scope of this.
What’s new in Kentico CMS 5.0 Michal Neuwirth Product Manager Kentico Software.
Copenhagen, 7 June 2006 Toolkit update and maintenance Anton Cupcea Finsiel Romania.
ESafe Open Modules Overview Open modules implementing the eSafe document exchange protocol.
The new European Toolkit EC-CHM Miruna Bădescu EEA contractor: Eau de Web.
PubMed Overview From the main HINARI webpage, we can access PubMed by clicking on Search HINARI journal articles through PubMed (Medline). Note: If you.
Google Data Protocol Guy Mark Lifshitz. Motivation Google’s Mission: – Organize the world’s information – Make information universally accessible – Provide.
1 Alternative view on Internet Computing Web 1.0 –Web 1.0 is first generation, Web Information based. Driven by Information provider. Web 2.0 Ajax enabled.
Mercury. One single online platform: Mercury Highlights – USP’s Web-based platform: accessible from any computer in any location without installing any.
RESTful Web Services What is RESTful?
Web Technologies Lecture 10 Web services. From W3C – A software system designed to support interoperable machine-to-machine interaction over a network.
ASP-2-1 SERVER AND CLIENT SIDE SCRITPING Colorado Technical University IT420 Tim Peterson.
Biosafety Clearing House Training Workshop date place.
Convention on Biological Diversity (CBD) United Nations Environment Programme (UNEP) CBD Update on Knowledge Management and Interoperability Olivier de.
Getting Your Content in the Penn State Student Portal Presented By James Leous, Program Manager James Vuccolo, Lead Research Programmer.
| 1 EBSCOadmin EBSCO Support EDS Wiki Renata Wlodarczyk | EBSCO.
Biosafety Clearing House Training Workshop date place.
National College of Science & Information Technology.
Biosafety Clearing-House Solutions for National Participation First Regional Advisors Meeting, Delhi, INDIA, 26 April 2007 Philippe Leblond Secretariat.
Web Development. Agenda Web History Network Architecture Types of Server The languages of the web Protocols API 2.
AdisInsight User Guide July 2015
Gridpp37 – 31/08/2016 George Ryall David Meredith
Internet Made Easy! Make sure all your information is always up to date and instantly available to all your clients.
Chapter 8 Environments, Alternatives, and Decisions.
Top 10 Technology Tools for Teaching and Learning
API (Application Program Interface)
WEB SERVICES From Chapter 19 of Distributed Systems Concepts and Design,4th Edition, By G. Coulouris, J. Dollimore and T. Kindberg Published by Addison.
WEB SERVICES.
Syndication For Search Engines
REST- Representational State Transfer Enn Õunapuu
Unit – 5 JAVA Web Services
European Environment Agency November 2009 Copenhagen, Denmark
IP Publishing From IP Data Base to IP list to IP catalog
JDXpert Workday Integration
WEB API.
The Re3gistry software and the INSPIRE Registry
PSC Group, LLc Office 365/SharePoint Online Migration traps and tricks
2. An overview of SDMX (What is SDMX? Part I)
2. An overview of SDMX (What is SDMX? Part I)
JavaScript & jQuery AJAX.
Session 2: Metadata and Catalogues
Introduction to Database Programs
Serpil TOK, Zeki BAYRAM. Eastern MediterraneanUniversity Famagusta
The INTERACT Website: Important source of information for the ETC Community Karen Vandeweghe, Communications Manager, IS Bratislava 27 January 2010.
WEB SERVICES From Chapter 19, Distributed Systems
Introduction to Database Programs
Week 05 Node.js Week 05
WCF Data Services and Silverlight
IDABC e-Invoicing – e-Ordering > Pilot of e-PRIOR Meeting with Suppliers IDABC stands for Interoperable Delivery of European eGovernment Services to public.
SDMX IT Tools SDMX Registry
Presentation transcript:

UNEP Workshop on Knowledge Management and MEAs 22-24 September 2009 Chexbres, Switzerland MEA Information Sharing Through Web 2.0 Services Olivier de Munck (olivier.demunck@cbd.int) Programme Officer, Clearing-House Mechanism (CHM) CBD Secretariat

Content Background Provider Selection Service Overview Usage Strategy Specifications Implementation Final Comments

Information Sharing Needs with MEAs Frequent Information Sharing Needs Shared calendar of events (Rio, BLG, UNEP, IYB 2010) Who's who & yellow pages (persons, organizations, roles) Meeting outcomes Decisions Reports MEA Parties Other Information Sharing Needs Case studies Projects & Initiatives (fact sheets) Country profiles References (documents, websites, databases, etc) ... 

Interoperability Initiatives Protocol Format Comments Biosafety Clearing- House (BCH) SOAP Custom XML - Single central server - 2 full-time IT experts - OK but few implementations Rio Interoperability (NFP & Events) - Joint specs by Rio Conventions - Implementation issues - Multi-server issues - Operational but unused European CHM Portal Toolkit (News) RSS Feeds RDF with extensions - Custom software package - OK if same package GFIS (News, events) RSS with extensions - Good specs at www.gfis.net - OK Technology Transfer Atom Feeds Atom with extensions - Draft specs by CBD - Not implemented by partners Google Calendar (ongoing) REST & Atom Feeds - Public specs by Google - API & documentation available - Widely implemented - OK 

Comments on Interoperability Importance of well-designed comprehensive specifications Communication protocol, Data formats & classifications Special features (security, synchronization, errors, ...) Sample data & scenarios to facilitate implementation  Difficult to achieve with limited expertise & resources Take advantage of existing Web 2.0 services (e.g. Google) Designed by experts (reliable protocols with docs & samples) Consistent API for various services (Calendar, Contacts, ...) Custom formats & extensions can sometimes be defined Our focus Evaluate web 2.0 providers & services  select service(s) Prepare specifications / guidelines for service customization Focus on client-side implementation  Next slides 

Service Provider Selection Selection Criteria Reliable Provider Range of services matching MEA needs Security Use of open standards Implementation tools (API, Libraries for various platforms) Flexibility & customization Documentation Cost effectiveness Many Web 2.0 Service Providers Google http://code.google.com/apis/gdata 37 Signals http://37signals.com Zoho http://www.zoho.com Many more... 

Service Provider Selection Important Remarks No time for comprehensive evaluation Quick selection for pilot implementation Same Web 2.0 concepts shared by most providers Google as Service Provider + Strong provider of reliable & widely used services + Wide range of services with consistent API & documentation + Free for most services - Not the most specialized - Terms of use & restrictions to be checked - Too large to expect personalized support 

Service Overview Potential Google Web 2.0 Services for MEA Google Calendar To share meetings and events Google Blogger To share blog entries (news) Google Contacts To share contact information Google Base To share custom data (e.g. Decisions) ... Google Apps (Commercial version) Consistent API using Google Data Protocol http://code.google.com/apis/gdata (with 12 min. Video) Atom Feeds with Atom Publishing Protocol (REST-like) JSON data exchange mirroring Atom representation Simple syntax to query Atom Feeds using HTTP OpenSearch extension for search results Some convenient common elements (Google Kinds) Client libraries for popular platforms (PHP, .NET, Java, Python) 

Service Overview - Atom Feeds & Entries Feed = List of Entries (~ Database Table = List of Records) <feed xmlns='http://www.w3.org/2005/Atom' xmlns:gd='http://schemas.google.com/g/2005' gd:etag='W/"S0wCTlpIIip7ImA0X0QI"'> <title>My Feed</title> <updated>2006-01-23T16:26:03-08:00</updated> <id>http://www.example.com/myFeed</id> <author> <name>Jo March</name> </author> <link href='/myFeed' rel='self'/> <entry gd:etag='"CUUEQX47eCp7ImA9WxRVEkQ."'> <id>http://www.example.com/id/1</id> <link rel='edit' href='http://example.com/myFeed/1'/> <updated>2006-01-23T16:26:03-08:00</updated> <author> <name>Elizabeth Bennet</name> <email>liz@gmail.com</email> </author> <title type='text'>Entry 1</title> <content type='text'>This is my first entry</content> </entry> </feed> Feed Entry 

Service Overview - Managing Entries Entry Elements <id> <published>, <updated> <link> <title>, <summary>, <content> <category> (for all categories & controlled vocabularies) ... Extensions  from Google or other sources Atom Publishing Protocol to manipulate entries HTTP POST + data Create  id & ETag (version) HTTP GET Retrieve by id (single) or query (list) HTTP PUT + data Update with id & ETag HTTP DELETE Delete with id & ETag Documentation & Examples http://code.google.com/apis/gdata/docs/2.0/basics.html 

Service Overview - Queries & Results Querying Entries Single Entry by ID = 123456 http://www.google.com/my-feed/123456 Text Query: contains "forest" http://www.google.com/my-feed?q=forest Updated after September 1, 2009 http://www.google.com/my-feed?update-min=2009-09-01 Category = "confirmed" http://www.google.com/my-feed/-/confirmed Result Information (OpenSearch) <feed ...> ... <openSearch:totalResults>25</openSearch:totalResults> <openSearch:startIndex>0</openSearch:startIndex> <openSearch:itemsPerPage>10</openSearch:itemsPerPage> <entry ...>...</entry> ... </feed> 

Service Overview - API API = Application Programming Interface Simple functions to execute instructions Handles HTTP, XML and other protocol details Popular languages supported (PHP, Java, .NET, ...) .NET Example using Google.GData.Calendar; using Google.GData.Client; using Google.GData.Extensions; ... CalendarService oCal = new CalendarService("UNEP-TestCal"); oCal.setUserCredentials("user1" , "password1"); Uri oFeedUri = new Uri("http://www.google.com/my-feed"); EventEntry oEventEntry = new EventEntry(); oEventEntry.Title.Text = "My Title"; oEventEntry.Times.Add( new When(StartDate, EndDate)); oAtomEntry = oCal.Insert(oFeedUri, oEventEntry) 

Service Overview - Common Elements http://code.google.com/apis/gdata/docs/2.0/elements.html Google Kinds Contact Kind Profile Kind Event Kind Message Kind Google Data Elements (extensible) gd:country gd:name (structured form) gd:extendedProperty (can be anything) gd:organization (of a contact) gd:structuredPostalAdress gd:when gd:where gd:who ... 

Usage Strategy by MEA Web 2.0 Service Provider MEA KM Portal MEA KM DB  Web 2.0 Service Provider MEA1 MEA2 MEA3 UNEP Partner

Initial Steps for Use by MEA Create Google Accounts (1 per MEA or other provider) cbd.unep@gmail.com for data from CBD cites.unep@gmail.com for data from CITES hq.unep@gmail.com for data from UNEP HQ shared.unep@gmail.com if no sharing option Get Google API Key Setup development environment Select programming language (PHP, .NET, Java) Install client libraries and test samples Start mapping internal data to Google services Transfer and upload data 

Information Sharing Specifications Unique ID & Permanent Link Agree on Unique ID pattern: Source-Type-Local ID (e.g. cbd-event-123456) Corresponding permanent link to local resource - http://www.cbd.int/data/event/123456 - http://www.cbd.int/?event=123456 Information Types and Attributes Meeting: Subset of Google Event kind Contacts: Subset of Google Contact kind Decisions: Define custom type in Google Base Controlled Vocabularies / Classification Schemes Some existing ones: e.g. gd:country (ISO 3166-1 alpha-2) Controlled vocabularies: Use Atom <category> element 

Controlled Vocabulary Specifications 3 XML attributes to Atom <category> element: Scheme: classification scheme Term: coded value for machine Label: text value for human Example: <entry > <id>http://www.google.com/my-feed/123456</id> <title>My Event 123456</title> <content type='text'>This is my event 123456</content> <category scheme='http://www.google.com/g/2005#kind' term='http://www.google.com/g/2005#event' /> <category scheme='http://www.cbd.int/schemes/subjects' term='http://www.cbd.int/schemes/subjects#forest' label='Forest' /> </entry> 

Custom Data Specifications Google Extended Properties: Name/Value Pair Can contain Any XML data Example: <entry > <id>http://www.google.com/my-feed/123456</id> <title>UNEP Event 123456</title> <content type='text'>This is UNEP event 123456</content> <gd:extendedProperty name='http://km.unep.org/properties/uniqueId' value='unep-event-123456' /> <gd:extendedProperty name='http://km.unep.org/properties/funding'> <donor country='de'>Germany</donor> <amount currency='EUR'>10000</amount> </gd:extendedProperty> </entry> 

Sharing Events Service: Google Calendar Standard Attributes: Calendars & Events http://code.google.com/apis/calendar/ http://code.google.com/apis/calendar/docs/2.0/reference.html Standard Attributes: Title Content Text or HTML Description Author Atom Person  MEA Times Google When (StartTime, EndTime) Locations Google Where (Location text for Google Map) Status Google EventStatus (Tentative, Confirmed, Canceled) Additional Features <category> <gd:extendedProperty> 

Sharing Contacts Service: Google Contacts (Many) Standard Attributes: http://code.google.com/apis/contacts/docs/3.0/reference.html Contacts Groups (e.g. for NFP Categories) Warning: check sharing in free version (Many) Standard Attributes: name: Structured Name structuredPostalAddress Organization fields Additional Features <category> <gd:extendedProperty> (For Organization ID) 

Sharing Other Types Service: Google Base API 3 Types of Attributes To define & manage any data items (e.g. Decisions) http://code.google.com/apis/base/ http://code.google.com/apis/base/starting-out.html Terms: Max. 10 Feeds & 100,000 records per user 3 Types of Attributes Standard Atom Attributes (title, description, link, ...): Google Recommended Attributes http://base.google.com/base/api/itemTypeDocs User-defined Custom Attributes Many Special Features Reference between items (~ Foreign Key in Relational DB) Draft mode Multi-client accounts (for aggregators) FTP upload 

Technical Implementation Keep track of data sent to Google  Local DB Table ID Type Date Google ID & Revision (Etag) Entry XML (returned after POST or PUT) Data Workflow Sent by each MEA Read by KM Portal DB (when ready) Search on KM Portal Simple Calendar Demo Test transfer from CBD DB to Google calendar http://www.cbd.int/test/olivier/calendar/ 

Final Comments Pragmatic approach Some pending work Use existing services (not necessarily Google) Reliable service designed and tested by experts Ready to be used Expertise available if needed Some pending work Compare various providers (free & commercial versions) Customize service to MEA needs Plan implementation of KM Database & web portal 

Questions & Answers Thank you Any Question / Comment? 

UNEP Workshop on Knowledge Management and MEAs 22-24 September 2009 Chexbres, Switzerland MEA Information Sharing Through Web 2.0 Services Olivier de Munck (olivier.demunck@cbd.int) Programme Officer, Clearing-House Mechanism (CHM) CBD Secretariat