LBSC 670 Information Organization
Today The web and automated information services Data, Ontologies and Web-services Protégé work time
Memex
Tim Berners-Lee
“data is the new killer app” Facebook developers kit Twitter API –Search, REST (CRUD), Stream The programmable web –Hundreds of API links
Three impacts of metadata Structured data use by Web-Services Metadata and software design Context-aware metadata
(1) Web-services –“A service that is accessible by means of messages sent using standard web protocols, notations and naming conventions, including XML Protocol (or until XML protocol is standardized, SOAP).”(w3c)w3c –An approach to application design that uses structured data to invoke a request and subsequently returns structured data to the client –Temp Convert: A quick exampleTemp Convert: A quick example
Model View Controller (2) Software design
MVC RSS application Model Dynamic XML data Database Controller Discovery Service Data Parsing View XSL transform HTML output
(3) Context-Aware Metadata –Application Programming Interfaces A set of functions that can be called from an application program to access features of another program (studiodog)studiodog A means of allowing system to system data and service interchange Metadata in....metadata out....
Example - The Flickr API Flickr API –Types of actions –A basic RSS feedfeed –A Search request & responseresponse photos.search&api_key=fb9f06d54e82609fce55 7cd3d4706a2d&tags=Terrapinshttp://api.flickr.com/services/rest/?method=flickr. photos.search&api_key=fb9f06d54e82609fce55 7cd3d4706a2d&tags=Terrapins
Example - API result
Flickr REST request A GET example: Key = value –?method=flickr.photos.search –&api_key=fb9f06d54e82609fce557cd3d4706a2d –&tags=Terrapins –?... The start of the Querystring –&... The Key=Value separator –=... Assignment operator
Web-services interoperate “SOA is an architectural style whose goal is to achieve loose coupling among interacting software agents”(xml.com)xml.com –Focus on developing information services (spell- checking) rather than applications (word processing) –Reusable, abstracted, formal, relevant, independent, structured, loosely coupled, documented, and discoverable(MSDN)MSDN
Web-Services use HTTP Get: –Request a resource (e.g. using a URL) Post: –“Submit data to be processed” (e.g. send an XML document) Put –Update/Replace an existing resource Delete –Remove a resource *Also Head, Trace, Options, Patch, Connect
Web-Services are RESTful Representational State Transfer: “Style of software architecture for distributed hypermedia” (wikipedia) –Base URI: » –Internet Media Type (MIME!) »XML, JSON –An operation mechanism »GET, PUT, POST, DELETE –Capable of “Stateless” interaction
Libraries Love Web-services SWORD: Simple Web-Service Offering Repository Deposit Create, Replace, Update, Delete OAI / PHM Open Archives Initiative Protocol for Metadata Harvesting Uses Dublin Core OAI / ORE OAI / Object Reuse and Exchange OAI for complex objects (METS)
SWORD Simple Web-Service Offering Repository Deposit Create, Replace, Update, Delete Atom Publishing Protocol
SWORD is METADATA Get: DescribePost: Publish, UpdateDelete: Delete
OAI / PMH Open Archive Initiative – Protocol for Metadata Harvesting
Oaister.worldcat.org
OAI/PMH sites
OAI/ORE
OAI/ORE is Ontological! Based on ATOM resource maps Encoded in RDF (Relational Data Framework)
RDF shows relationships <rdf:RDF xmlns:rdf=" xmlns:contact=" Eric Miller Dr.
ATOM Resource Map Similar to RSS RDF defines relationships between entries DC, DCTERMS describe items
RDF can be coded in HTML RDFa –Half-way between HTML & RDF –Uses defined attributes to add context to HTML elements rel property typeOf –ExampleExample
Ontological structures Ontological structures facilitate automation of services Highly structured data and knowledge create smarter services Context defines pathways to more information
Services | Ontologies | Data Services Access Actionable Ontologies Structured framework Data Linked Relationships
APIs may not use ontologies
Recap: Three facets of services Application Programming Interfaces (flickr) –Provide standard interfaces to distributed data; may include service or resource perspectives Web Services (SWORD, OAI/PMH OAI/ORE) –Include concepts of self-documentation, protocol definition, standards focus, structured data Software Architecture (MVC, SOA, REST) –Focuses on decomposing business processes into discrete services, uses concepts of documentation, standards basis but is not necessarily comparable with APIs or Web Services
The big ideas “The next big thing is going to be what someone else does with your data” Metadata is the language of the web - Data interoperability/automation/use Create new uses of data, empower end-users Open licensing agreements enable re-use of data
Remaining weeks Tonight – Protégé work time Week 12 - Dr. Jeffery Loo, Update on final projects Week 13 – Linked data, Ontologies due Week 14 – Final class