XFormsDB An XForms - Based Framework for Simplifying Web Application Development Markku Laine Master’s Thesis Presentation March 9, 2010.

Slides:



Advertisements
Similar presentations
Integrating SOA and the Application Development Framework Shaun O’Brien Principal Product Manager – Oracle JDeveloper / ADF.
Advertisements

Chapter Concepts Review Markup Languages
XRX: The Metadata Registry Example 21 October 2008 Jeremy Sutton Matt Steele.
Introduction to Web Application Architectures Web Application Architectures 18 th March 2005 Bogdan L. Vrusias
VCT May 20, 2009 Sapna Blesson Advisor: Dr.Christopher Pollett.
2006 IEEE International Conference on Web Services ICWS 2006 Overview.
ESI Extensions for Web-based Collaboration Introduction to Edge Side Includes: - ESI helps offload the work of web page construction from origin server.
1 The World Wide Web Architectural Overview Static Web Documents Dynamic Web Documents HTTP – The HyperText Transfer Protocol Performance Enhancements.
Chapter 14 Database Connectivity and Web Technologies
Web Development Using ASP.NET CA – 240 Kashif Jalal Welcome to week – 1 of…
Application Architectures Vijayan Sugumaran Department of DIS Oakland University.
Session-01. Layers Struts 2 Framework The struts 2 framework is used to develop MVC-based web application. Struts 1.0 was released in June The.
Computer Science 101 Web Access to Databases Overview of Web Access to Databases.
INTRO TO MAKING A WEBSITE Mark Zhang.  HTML  CSS  Javascript  PHP  MySQL  …That’s a lot of stuff!
UNIT-V The MVC architecture and Struts Framework.
Sys Prog & Scripting - HW Univ1 Systems Programming & Scripting Lecture 15: PHP Introduction.
Windows.Net Programming Series Preview. Course Schedule CourseDate Microsoft.Net Fundamentals 01/13/2014 Microsoft Windows/Web Fundamentals 01/20/2014.
CSCI 6962: Server-side Design and Programming Course Introduction and Overview.
LAYING OUT THE FOUNDATIONS. OUTLINE Analyze the project from a technical point of view Analyze and choose the architecture for your application Decide.
Architecture Of ASP.NET. What is ASP?  Server-side scripting technology.  Files containing HTML and scripting code.  Access via HTTP requests.  Scripting.
A Scalable Application Architecture for composing News Portals on the Internet Serpil TOK, Zeki BAYRAM. Eastern MediterraneanUniversity Famagusta Famagusta.
Joel Bapaga on Web Design Strategies Technologies Commercial Value.
CIS 375—Web App Dev II ASP.NET 2 Introducing Web Forms.
Copyright © cs-tutorial.com. Introduction to Web Development In 1990 and 1991,Tim Berners-Lee created the World Wide Web at the European Laboratory for.
5/5/2005Toni Räikkönen Internet based data collection from enterprises using XML questionnaires and XCola engine CoRD Meeting May 11th 2005.
XForms: A case study Rajiv Shivane & Pavitar Singh.
Databases and the Internet. Lecture Objectives Databases and the Internet Characteristics and Benefits of Internet Server-Side vs. Client-Side Special.
ASP.NET  ASP.NET is a web development platform, which provides a programming model, a comprehensive software infrastructure and various services required.
XML Overview. Chapter 8 © 2011 Pearson Education 2 Extensible Markup Language (XML) A text-based markup language (like HTML) A text-based markup language.
Copyright © Orbeon, Inc. All rights reserved. Erik Bruchez Applications of XML Pipelines XML Prague, June 16 th, 2007.
Fundamentals of Database Chapter 7 Database Technologies.
Introduction to ASP.NET 1www.tech.findforinfo.com.
WordFreak A Language Independent, Extensible Annotation Tool.
Silverlight Technology. Table of Contents 1.What is Silverlight Technology? 2.Silverlight Overview. 2.1 How it works 2.2 Silverlight development tools.
Domain Driven Web Development With WebJinn Sergei Kojarski College of Computer & Information Science Northeastern University joint work with David H. Lorenz.
TUTORIAL Dolphy A. Fernandes Computer Science & Engg. IIT Bombay.
Arnold Geraldo Designing and Making of The Online Auction Website Using CakePHP Framework.
Project Overview Graduate Selection Process Project Goal Automate the Selection Process.
Web Programming Brian Toone 8/27/2014. Outline for today 1.Understanding the architecture of the web 2.Overview of programming languages – Client-side.
Domain Driven Web Development With WebJinn Sergei Kojarski College of Computer & Information Science Northeastern University joint work with David H. Lorenz.
Active Server Pages (ASP), also known as Classic ASP or ASP Classic, was Microsoft's first server-side script engine for dynamically generated web pages.
GOAL User Interactive Web Interface Update Pages by Club Officers Two Level of Authentication.
Unified Distributed (UDub Mail) Life Cycle Objectives Sachin Pradhan Gabriel Maganis.
CS 157B: Database Management Systems II February 11 Class Meeting Department of Computer Science San Jose State University Spring 2013 Instructor: Ron.
Strategies for Virtual Enterprises using XForms and the Semantic Web Albert Rainer, Jürgen Dorn & Peter Hrastnik.
Assignment of JAVA id : BSSE-F10-M-10-JAVA1 Overview of J2EE/Session 2/Slide 1 of 38.
14 1 Chapter 14 Web Database Development Database Systems: Design, Implementation, and Management, Sixth Edition, Rob and Coronel.
Module: Software Engineering of Web Applications Chapter 2: Technologies 1.
CS562 Advanced Java and Internet Application Introduction to the Computer Warehouse Web Application. Java Server Pages (JSP) Technology. By Team Alpha.
Implementation of SCENS Yan Zhao. Current Status Current implementation is web-based –
Preface IIntroduction Objectives I-2 Course Overview I-3 1Oracle Application Development Framework Objectives 1-2 J2EE Platform 1-3 Benefits of the J2EE.
The basics of knowing the difference CLIENT VS. SERVER.
PROGRAMMING IN VISUAL BASIC.NET CREATING YOUR FIRST WEB APPLICATION Bilal Munir Mughal 1 Chapter-3.
UNDERSTANDING YOUR OPTIONS FOR CLIENT-SIDE DEVELOPMENT IN OFFICE 365 Mark Rackley
ASP.NET MVC An Introduction. What is MVC The Model-View-Controller (MVC) is an architectural pattern separates an application into three main components:
Overview Web Technologies Computing Science Thompson Rivers University.
Submitted by: Moran Mishan. Instructed by: Osnat (Ossi) Mokryn, Dr.
A S P. Outline  The introduction of ASP  Why we choose ASP  How ASP works  Basic syntax rule of ASP  ASP’S object model  Limitations of ASP  Summary.
12. DISTRIBUTED WEB-BASED SYSTEMS Nov SUSMITHA KOTA KRANTHI KOYA LIANG YI.
An Introduction to XForms Philadelphia XML Users' Group by Peter Meggitt.
J2EE Platform Overview (Application Architecture)
Web Technologies Computing Science Thompson Rivers University
GeneXus 9.0: Web applications at their higher power
Server Concepts Dr. Charles W. Kann.
Top Reasons to Choose Angular. Angular is well known for developing robust and adaptable Single Page Applications (SPA). The Application structure is.
Silverlight Technology
Chapter 1 HTML, XHTML, and the World Wide Web
Serpil TOK, Zeki BAYRAM. Eastern MediterraneanUniversity Famagusta
Web Technologies Computing Science Thompson Rivers University
Presentation transcript:

XFormsDB An XForms - Based Framework for Simplifying Web Application Development Markku Laine Master’s Thesis Presentation March 9, 2010

Aalto University, School of Science and Technology, Department of Media Technology Page 2 Presentation Outline  Part IIntroduction  Part IIBackground  Part IIIThe XFormsDB Markup Language  Part IVThe XFormsDB Framework  Part VSample Web Application: XFormsDB Blog  Part VIConclusions

Aalto University, School of Science and Technology, Department of Media Technology Page 3 Part I Introduction

Aalto University, School of Science and Technology, Department of Media Technology Page 4 Introduction  Developing even simple multi-user Web applications is a complex task  The author has to master many programming languages and paradigms -Client side:(X)HTML+CSS+JavaScript -Server side:PHP/J2EE/Ruby on Rails -Database:SQL/Object-Relational Mapping (ORM)  The bulk of Web content authors are non-programmers

Aalto University, School of Science and Technology, Department of Media Technology Page 5 The Main Research Question Is it possible to extend the XForms markup language in such a way that users can build useful, highly interactive multi-user Web applications quickly and easily using purely declarative languages?

Aalto University, School of Science and Technology, Department of Media Technology Page 6 Part II Background

Aalto University, School of Science and Technology, Department of Media Technology Page 7 XForms  An XML-based forms technology and the successor to HTML forms -A high-level declarative language for defining rich Web user interfaces -Client-side technology -Turing complete  W3C Recommendation since 2003  Architecture -Based on Model-View-Controller (MVC) -Instance Data (XML) -XForms Model -XForms User Interface -XForms Submit Protocol

Aalto University, School of Science and Technology, Department of Media Technology Page 8 Example: An XHTML+XForms Document Mailing List <xforms:submission id="form-submission" ref="instance( 'form-instance' )" resource="/form-handler" method="post" replace="none"> Mailing List Subscribe

Aalto University, School of Science and Technology, Department of Media Technology Page 9 Part III The XFormsDB Markup Language

Aalto University, School of Science and Technology, Department of Media Technology Page 10 Overview  An extension to the XForms markup language -A pure superset of XForms 1.1  Naturally extends XForms with common server-side and database related functionalities -Can be thought of as "XForms Server Pages" -Functionalities include, among others: querying and updating (with or without data synchronization) data stored in data sources, error handling, state maintenance as well as authentication and access control -Easily extensible, i.e., new server-side functionalities can be easily added to the language

Aalto University, School of Science and Technology, Department of Media Technology Page 11 Example: An XHTML+XFormsDB Document Mailing List <xforms:bind nodeset="instance( 'form-request-instance' = ' ' ]" calculate="instance( 'form-instance' )/ " /> <xformsdb:submission id="form-submission" requestinstance="form-request-instance" expressiontype="all" replace="none">...

Aalto University, School of Science and Technology, Department of Media Technology Page 12 Part IV The XFormsDB Framework

Aalto University, School of Science and Technology, Department of Media Technology Page 13 Overview  Implements the XFormsDB markup language  A Java-based, generic server-side component -Provides the integration services to heterogeneous data sources as well as common server-side functionalities  Bundled with -An XForms processor (Orbeon Forms) -A native XML database (eXist-db)  An extremely powerful XForms/REST/XQuery (XRX) framework -Allows for the rapid development of entire Web applications using a single document and under a single programming paradigm

Aalto University, School of Science and Technology, Department of Media Technology Page 14 High-Level Architecture

Aalto University, School of Science and Technology, Department of Media Technology Page 15 Part V Sample Web Application: XFormsDB Blog

Aalto University, School of Science and Technology, Department of Media Technology Page 16 XFormsDB Blog  An online journal Web tool for publishing personal contents  Three (3) separate Web pages and six to ten (6-10) main views  ~3000 lines of code -9% related to XFormsDB & XQuery  Normal response times  LIVE demo LIVE demo

Aalto University, School of Science and Technology, Department of Media Technology Page 17 Part VI Conclusions

Aalto University, School of Science and Technology, Department of Media Technology Page 18 Results  The XFormsDB markup language -Naturally extends the XForms markup language to include common server-side and database related functionalities -New server-side functionalities can be easily added to the language -For users who are already familiar with XForms, the language is relatively easy to learn  The XFormsDB framework -Supports most common browsers and heterogeneous data sources -Includes built-in support for synchronized updates -Allows for the rapid development of entire Web applications using a single document and under a single programming model

Aalto University, School of Science and Technology, Department of Media Technology Page 19 Future Work  Refine the syntax of the XFormsDB markup language  Implement support for a subset of XML Binding Language (XBL) 2.0 on the server side -Allows the use of highly reusable components  Implement a Web-based visual tool for developing XFormsDB Web applications -Makes the technology accessible to non-technical users  Add built-in support for OpenID authentication -Users could use an existing account to sign in to XFormsDB Web applications  Improve current transaction support -Grouping of synchronized updates

Aalto University, School of Science and Technology, Department of Media Technology Page 20 Thank You! Questions? Comments?