Copyright © 2008 Model Driven Solutions EKB XML Interface Jim Logan September 2008 Formerly Data Access Technologies.

Slides:



Advertisements
Similar presentations
RDF/XML Syntax Specification Ming Jing Team W. Tutorial Overview - Introduction - An XML Syntax for RDF - Syntax Data Model (*) Order - Concept and Standard.
Advertisements

Copyright © 2008 Pearson Education, Inc. Publishing as Pearson Addison-Wesley Chapter 16 Introduction to Ajax.
Dr. Leo Obrst MITRE Information Semantics Information Discovery & Understanding Command & Control Center February 6, 2014February 6, 2014February 6, 2014.
Digital Repositories – Linked Open Data – the possible Role of D4Science Workshop, December 2010, FAO use cases A tool to create Linked Data providers.
Copyright © 2008 Model Driven Solutions EKB User Interface Jim Logan September 2008 Formerly Data Access Technologies.
RDFa: Embedding RDF Knowledge in HTML Some content from a presentation by Ivan Herman of the W3c, Introduction to RDFa, given at the 2011 Semantic Technologies.
RDF Tutorial.
Semantic Web Introduction
© Copyright IBM Corporation 2014 Getting started with Rational Engineering Lifecycle Manager queries Andy Lapping – Technical sales and solutions Joanne.
Ruby on Rails Model of MVC. Model-View-Controller Paradigm A way of organizing a software system Benefits: Isolation of business logic from the user interface.
© 2006 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice RDF and SOA David Booth, Ph.D. HP.
Dr. Alexandra I. Cristea RDF.
1 Semantic Web and Retrieval of Scientific Data Semantics Goran Soldar University of Brighton UK Dan Smith University of East Anglia UK.
RDF: Building Block for the Semantic Web Jim Ellenberger UCCS CS5260 Spring 2011.
1/17 RDF Gravity 2/17 Content 1. Introduction  Problem statement and Existing Solutions 3. RDF Gravity 4. Conclusion 5. References.
RESTful Web Development With Nodejs and Express. REST Stands for REpresentational State Transfer Has the following constraints: ◦Client-Server ◦Stateless.
CIMI / FHIR and Shape Expressions. Local DB … …
Sheet 1XML Technology in E-Commerce 2001Lecture 6 XML Technology in E-Commerce Lecture 6 XPointer, XSLT.
RDF (Resource Description Framework) Why?. XML XML is a metalanguage that allows users to define markup XML separates content and structure from formatting.
JavaScript, Fourth Edition Chapter 12 Updating Web Pages with AJAX.
Selenium Web Test Tool Training Using Ruby Language Discover the automating power of Selenium Kavin School Kavin School Presents: Presented by: Kangeyan.
XP New Perspectives on XML, 2 nd Edition Tutorial 10 1 WORKING WITH THE DOCUMENT OBJECT MODEL TUTORIAL 10.
Logics for Data and Knowledge Representation
Copyright © Orbeon, Inc. All rights reserved. Erik Bruchez Applications of XML Pipelines XML Prague, June 16 th, 2007.
Digital Enterprise Research Institute HADA – An Access Controlled Application for Publishing and Discovering Linked Government Data Owen Sacco.
Copyright © 2008 Model Driven Solutions EKB User Interface Lab Jim Logan October 2008 Formerly Data Access Technologies.
Chapter 27 The World Wide Web and XML. Copyright © 2004 Pearson Addison-Wesley. All rights reserved.27-2 Topics in this Chapter The Web and the Internet.
WebDAV Issues Munich IETF August 11, Property URL encoding At present, spec. allows encoding of the name of a property so it can be appended to.
Integrating Live Plant Images with Other Types of Biodiversity Records Steve Baskauf Vanderbilt Dept. of Biological Sciences
Chapter 8 Cookies And Security JavaScript, Third Edition.
Master Informatique 1 Semantic Technologies Part 11Direct Mapping Werner Nutt.
CITA 330 Section 6 XSLT. Transforming XML Documents to XHTML Documents XSLT is an XML dialect which is declared under namespace "
(Business) Process Centric Exchanges
REST - Introduction Based on material from InfoQ.com (Stefan Tilkov) And slides from MindTouch.com (Steve Bjorg) 1.
Of 41 lecture 4: rdf – basics and language. of 41 RDF basic ideas the fundamental concepts of RDF  resources  properties  statements ece 720, winter.
Integrating Modeling Tools in the Development Lifecycle with OSLC Miami, October 2013 Adam Neal (Presenter) Maged.
RDF and XML 인공지능 연구실 한기덕. 2 개요  1. Basic of RDF  2. Example of RDF  3. How XML Namespaces Work  4. The Abbreviated RDF Syntax  5. RDF Resource Collections.
Linked Open Architectures for Open Government Transparent knowledge for and about the Federal Enterprise Cory Casanave, CEO Model Driven Solutions Cory-c.
Semantic Technologies and Application to Climate Data M. Benno Blumenthal IRI/Columbia University CDW /04-01.
XP New Perspectives on XML, 2 nd Edition Tutorial 8 1 TUTORIAL 8 CREATING ELEMENT GROUPS.
Server-side Programming The combination of –HTML –JavaScript –DOM is sometimes referred to as Dynamic HTML (DHTML) Web pages that include scripting are.
1 Web Servers (Chapter 21 – Pages( ) Outline 21.1 Introduction 21.2 HTTP Request Types 21.3 System Architecture.
Understanding RDF. 2/30 What is RDF? Resource Description Framework is an XML-based language to describe resources. A common understanding of a resource.
KEW Definitions Document Type The Document Type defines the routing definition and other properties for a set of documents. Each document is an instance.
1 © The ATHENA Consortium. Resource Description Framework (RDF) A language for making simple statements about things (resources) Statements:
MyGrid/Taverna Provenance Daniele Turi University of Manchester OMII f2f Meeting, London, 19-20/4/06.
Semantic Phyloinformatic Web Services Using the EvoInfo Stack Speaker: John Harney LSDIS Lab, Dept. of Computer Science, University of Georgia Mentor(s):
Problems with XML & XML Schemas XML falls apart on the Scalability design goal. 1.The order in which elements appear in an XML document is significant.
Ontology based e-Real Estate Agency Information System By Moein Mehrolhasani Bijan Zamanian cmpe 588.
AJAX. Overview of Ajax Ajax is not an API or a programming language Ajax aims to provide more responsive web applications In normal request/response HTTP.
Raluca Paiu1 Semantic Web Search By Raluca PAIU
Improving User Access to Metadata for Public and Restricted Use US Federal Statistical Files William C. Block Jeremy Williams Lars Vilhuber Carl Lagoze.
AJAX Use Cases for WSRP Subbu Allamaraju BEA Systems Inc WSRP F2F Meeting, May 2006.
0 RPE document specifications are enhanced with the addition of a data source property that specifies the configuration URI. If this variable is defined.
Scheduling of Transactions on XML Documents Author: Stijin Dekeyser Jan Hidders Reviewed by Jason Chen, Glenn, Steven, Christian.
Introduction to JavaScript MIS 3502, Spring 2016 Jeremy Shafer Department of MIS Fox School of Business Temple University 2/2/2016.
Author: Akiyoshi Matonoy, Toshiyuki Amagasay, Masatoshi Yoshikawaz, Shunsuke Uemuray.
Introduction to AJAX MIS 3502, Spring 2016 Jeremy Shafer Department of MIS Fox School of Business Temple University 2/4/2016.
Session 11: Cookies, Sessions ans Security iNET Academy Open Source Web Development.
Chapter 04 Semantic Web Application Architecture 23 November 2015 A Team 오혜성, 조형헌, 권윤, 신동준, 이인용.
Semantic Web In Depth Resource Description Framework Dr Nicholas Gibbins –
Setting the stage: linked data concepts Moving-Away-From-MARC-a-thon.
Hyperlinks Links for Other Pages. Hyperlink (aka Link) Text (or image) user can click Takes user to different location In general, location can be: On.
Introduction to the Semantic Web (tutorial) 2009 Semantic Technology Conference San Jose, California, USA June 15, 2009 Ivan Herman, W3C
Node.js Express Web Services
Middleware independent Information Service
Subbu Allamaraju BEA Systems Inc
MVC Framework, in general.
Controllers.
Semantic-Web, Triple-Strores, and SPARQL
Presentation transcript:

Copyright © 2008 Model Driven Solutions EKB XML Interface Jim Logan September 2008 Formerly Data Access Technologies

Page 2 EKB XML Interface Rationale Business systems are increasingly using XML interfaces It would be nice to have one XML interface for systems and UI Challenges with this approach are: –Our EKB data is represented as a virtual graph of RDF triples –How do we get from triples to XML and back again? –Popular UI technologies require lots of code to bridge browsers and XML –Is there a UI technology where the widgets are tied directly to XML data? Copyright © 2008 Model Driven Solutions.March 2008

Page 3 From RDF Graph to XML: Overview Our EKB data is represented as a virtual graph We need to somehow transform that to XML and back again There is a W3C recommendation called RDF/XML that helps, but: –The graph has no real “root”, so it walks the graph in an unpredictable order –If an instance has multiple types, the type used as the XML element name is unpredictable Copyright © 2008 Model Driven Solutions.March 2008

Page 4 From Triples to XML: Virtual Graph Our EKB data is represented as RDF triples in a special repository Each triple represents {subject, predicate, object} The subject and predicate is always a URI The object can be either a URI or a literal value These triples form a virtual graph Copyright © 2008 Model Driven Solutions.March 2008 #p1 #p2 “John” “Jeff” name knows name #Person type

Page 5 From Triples to XML: RDF/XML John Jeff Copyright © 2008 Model Driven Solutions.March 2008 Striped RDF/XML is a W3C recommendation that almost works This is a bit oversimplified*, but roughly: The black-on-tan elements represent subjects and objects The blue elements represent properties (kinds of predicates) Person “John” “Jeff” name knows name * This is oversimplified because each Person node actually represents an additional node and an arc: This turns into an XML element for the type name and an XML attribute for the ID / URI #p1#Person type

Page 6 From Triples to XML: Solution RDF/XML is really close, but: –It walks the graph in an unpredictable order, since there is no “root” –It uses unpredictable XML element names when several types exist –We only use it as a guide The EKB provides a REST service that produces XML instance documents, given: –A “viewpoint” –The “root” (i.e., subject) of the graph, so the structure is predictable Copyright © 2008 Model Driven Solutions.March 2008

Page 7 From Triples to XML: Viewpoint A “viewpoint” is expressed in an ontology and specifies: –What types of properties to traverse –How deep to traverse –Which type name to use for polymorphic traversals The UI tells the service: –Which viewpoint to use –The subject, as either: A specific URI, or A query-by-example in XML –The context (i.e., ontology file), as either: The REST URL, or An attribute in the XML query-by-example Copyright © 2008 Model Driven Solutions.March 2008

Page 8 Both examples will return an XML instance document: –HTTP POST to –HTTP GET from viewpoint-uri&id=&23p1 viewpoint-uri&id=&23p1 From Triples to XML: HTTP Examples Copyright © 2008 Model Driven Solutions.March 2008 Actors.owl Viewpoint Property / predicate Type

Page 9 From Triples to XML: Instance Example Copyright © 2008 Model Driven Solutions.March 2008 <Versioning:Data_asset rdf:about=" <Authority:Authority rdf:about=" Cory Casanave Actors.owl Viewpoint Subject Property / predicate Type Object

Page 10 From Triples to XML: Interface Specifics The service requires: –The name of the structure, called the viewpoint, either as: A URL query parameter The outermost XML element in a POSTed query –The name of the containing ontology file, called the context, either as: The URL of the GET or POST An asset attribute in the outermost XML element in a POSTed query A GET from the special “global asset URL”: “.../asset/head/root/asserted/RDFS/*” –The subject of interest within that ontology file or one of the files it includes, either as: A full URI (e.g., “about= An abbreviated URI (e.g., “id=#p1”) A query-by example Copyright © 2008 Model Driven Solutions.March 2008

Page 11 MVC In one sense: –The model is the RDF triples –The view is what the service generates algorithmically from the viewpoint –The controller is the service In another sense: –The model is the XML instance document –The view is the UI controls –The controller is the UI In a unified sense: –The model is the RDF triples –The view is the UI controls –The controller is the UI and the service Copyright © 2008 Model Driven Solutions.March 2008

Page 12 From XML to RDF Triples: Overview The outside world interacts with the EKB using XML The EKB data is represented as a virtual graph We need to somehow transform the XML into RDF triples We need concurrency: –No locking –No stomping –Minimal rollback We need value-level provenance (e.g., who set this value when?) Copyright © 2008 Model Driven Solutions.March 2008

Page 13 From XML to RDF Triples: The UI The UI requests an XML instance document from the EKB The user changes the XML instance document, as the UI marks up the XML instance The UI sends the marked-up XML instance document back to the EKB EKB uses this XML instance document to change the RDF triples Copyright © 2008 Model Driven Solutions.March 2008

Page 14 From XML to RDF Triples: Edited XML Copyright © 2008 Model Driven Solutions.September 2008 <Versioning:Data_asset rdf:about=" action="edit"> <Authority:Authority rdf:about=" Cory Casanave <Authority:Authority rdf:about=" Jim Logan Actors.owl Changed Actors.owl Viewpoint Subject

Page 15 From XML to RDF Triples: EKB Service Provides a REST service that consumes a marked-up XML instance document containing: –The “viewpoint” –The subject –Actions Starts a transaction Ensures that the removed values are still the current values Deletes the corresponding triples Adds the new triples Ends the transaction Unimplemented: if any rules are violated, the transaction should fail and the service should send back a report Copyright © 2008 Model Driven Solutions.March 2008