XForms. National Informatics Centre, Open Technology Centre. -a new generation e-form Introduction



Similar documents
MVC web framework based on exist application server and XRX architecture

Internet Technologies_1. Doc. Ing. František Huňka, CSc.

Macromedia Dreamweaver 8 Developer Certification Examination Specification

Outline. CIW Web Design Specialist. Course Content

Introduction to BlackBerry Smartphone Web Development Widgets

Web Design Specialist

Agents and Web Services

Invited Expert on XForms and HTML Working Group

Software Requirements Specification For Real Estate Web Site

Short notes on webpage programming languages

WWW. World Wide Web Aka The Internet. dr. C. P. J. Koymans. Informatics Institute Universiteit van Amsterdam. November 30, 2007

EPiServer and XForms - The Next Generation of Web Forms

Term Paper. P r o f. D r. E d u a r d H e i n d l. H o c h s c h u l e F u r t w a n g e n U n i v e r s i t y. P r e s e n t e d T o :

Developer Tutorial Version 1. 0 February 2015

JOB READY ASSESSMENT BLUEPRINT WEB DESIGN - PILOT. Test Code: 3750 Version: 01

10CS73:Web Programming

New Features Overview

BFMA Presentation: Why use one form format over another?

Introduction to XML Applications

Server-Side Scripting and Web Development. By Susan L. Miertschin

MyCompany Professional Web Developer Certification Examination Specification

SUBJECT CODE : 4074 PERIODS/WEEK : 4 PERIODS/ SEMESTER : 72 CREDIT : 4 TIME SCHEDULE UNIT TOPIC PERIODS 1. INTERNET FUNDAMENTALS & HTML Test 1

SCHOOL DISTRICT OF ESCAMBIA COUNTY

IT3504: Web Development Techniques (Optional)

Presentation / Interface 1.3

Bridging the Gap: from a Web App to a Mobile Device App

Web Pages. Static Web Pages SHTML

An introduction to creating Web 2.0 applications in Rational Application Developer Version 8.0

IT3503 Web Development Techniques (Optional)

An introduction to creating JSF applications in Rational Application Developer Version 8.0

Course Information Course Number: IWT 1229 Course Name: Web Development and Design Foundation

Automating Rich Internet Application Development for Enterprise Web 2.0 and SOA

<Insert Picture Here> Oracle Policy Automation System Requirements

Putting the power of Web 2.0 into practice.

Web Development News, Tips and Tutorials

What s New in IBM Web Experience Factory IBM Corporation

Introduction to IBM Worklight Mobile Platform

Chapter 13 Computer Programs and Programming Languages. Discovering Computers Your Interactive Guide to the Digital World

Oracle Application Express MS Access on Steroids

Lesson Overview. Getting Started. The Internet WWW

IBRI College of Technology Department of Information Technology. Intercollegiate Web Programming Contest On 12 March, 2013 (Tuesday)

AJAX. Gregorio López López Juan Francisco López Panea

AJAX Toolkit Framework

San Joaquin County Office of Education Career & Technical Education Web Design ~ Course Outline CBEDS#: 4601

Web Development. Owen Sacco. ICS2205/ICS2230 Web Intelligence

STATEMENT OF PURPOSE

ActiveVOS Server Architecture. March 2009

Cross Platform Applications with IBM Worklight

GeoNetwork, The Open Source Solution for the interoperable management of geospatial metadata

Platform support for UNIT4 Milestone 4

Overview Document Framework Version 1.0 December 12, 2005

4.2 Understand Microsoft ASP.NET Web Application Development

CommonTime Making Business Mobile. Enterprise. CommonTime. Mobile Solutions. mdesign Platform.

IGW+ Certificate. I d e a l G r o u p i n W e b. International professional web design,

Curl Building RIA Beyond AJAX

RFP# ADDENDUM No. 1 Questions and Answers


IBM Rational Web Developer for WebSphere Software Version 6.0

A Comparative Study of Web Development Technologies Using Open Source and Proprietary Software

WEB& WEBSITE DESIGN TRAINING

PROJECT MANAGEMENT SYSTEM

CIW Web Design Specialist

4/25/2016 C. M. Boyd, Practical Data Visualization with JavaScript Talk Handout

IBM Workplace Forms. Evaluating E-Forms Solutions for Business Process Automation

DIPLOMA IN GRAPHIC WEB DESIGN AND WEB DEVELOPMENT COURSE INFO PACK

JavaFX Session Agenda

Computer Science E-259

CIW Web Design Professional

<Insert Picture Here>

How To Design The Web And The Internet

Content Management Systems: Drupal Vs Jahia

Framework as a master tool in modern web development

GeoNetwork, The Open Source Solution for the interoperable management of geospatial metadata

design coding monitoring deployment Java Web Framework for the Efficient Development of Enterprise Web Applications

<Insert Picture Here> Oracle Application Express 4.0

How To Write An Ria Application

The Sitecore Solution for Web Content Management

Coding for Desktop and Mobile with HTML5 and Java EE 7

An Oracle White Paper May Creating Custom PDF Reports with Oracle Application Express and the APEX Listener

Software Architecture for Paychex Out of Office Application

A collaborative platform for knowledge management

Web Designing with UI Designing

Modern Technologies in Client-Server Architecture for Geo-based Interactive Web Portals

CSE 203 Web Programming 1. Prepared by: Asst. Prof. Dr. Maryam Eskandari

Using Altova Tools with DB2 purexml

Chapter 12: Advanced topic Web 2.0

Echo360 Voluntary Product Accessibility Template

Test Plan Security Assertion Markup Language Protocol Interface BC-AUTH-SAML 1.0

Title: Front-end Web Design, Back-end Development, & Graphic Design Levi Gable Web Design Seattle WA

BC481 SAP Interactive Forms by Adobe

Automating Testing and Configuration Data Migration in OTM/GTM Projects using Open Source Tools By Rakesh Raveendran Oracle Consulting

SAFE Digital Signatures in PDF

Web Development. How the Web Works 3/3/2015. Clients / Server

Business Process Management

Using XForms to Simplify Web Programming

Cocoon 2 Programming: Web Publishing with XML and Java"

Portals, Portlets & Liferay Platform

Cross Platform Applications with IBM Worklight

Front-End Performance Testing and Optimization

Transcription:

Open Technology Centre, Chennai 1 XForms -a new generation e-form Introduction Open Technology Centre National Informatics Centre, DIT, MCIT, Govt of INDIA, E-3-A, Rajaji Bhavan, Besant Nagar, Chennai-600090

Open Technology Centre, Chennai 2 Forms HTML forms have been the basis of e-governance Forms are everywhere On-line application & filing Search engines Webmails Wiki etc.

Open Technology Centre, Chennai 3 Problems with HTML forms Presentation oriented, mixing data and presentation Data is tied to UI controls No data types; validation on server or with scripts Relies on scripting Accessibility problems

Open Technology Centre, Chennai 4 e-forms Solution for the problems with HTML forms An electronic form which can be downloaded and filled locally Data validations Calculations Attachment capabilities Electronic signature e-form/data can be submitted/uploaded to server To replace paper forms Can be used on-line & off-line e-form technology being used worldwide

Open Technology Centre, Chennai 5 e-form solutions Open Source Solutions and Proprietary Solutions based on XForms Standard from W3C Adobe's PDF 1.7 (ISO/IEC 32000) Infopath-eForms from Microsoft

Open Technology Centre, Chennai 6 What are XForms Xforms is XML based Open Standard for eforms domain XML is the de-facto standard for data and applications interoperability All latest programming technologies (Java, dotnet, PHP) are XML-centric Separates Data, Logic and Presentation Several presentation options for the same content: XHTML (Desktop Web Browser) WML (Hand-held Devices) VoiceML (Voice interaction for accessibility) Proprietary User Interfaces (eg XFDL) SVG Based on MVC paradigm Includes XML technologies like Xpath, XML schema, XSL, etc.

Open Technology Centre, Chennai 7 Uses Declarative language by avoiding scripting What are Xforms... W3C Recommendation (XForms 1.1 20 October 2009) http://www.w3.org/tr/xforms11/ Based on totally new model Not compatible with HTML Forms 1993: HTML forms 1994 2001: Few non-proprietary extensions 1997 XML Schema and standard data types 2000 CSS 2002: XForms initial drafts 2006: World Wide Web Consortium (W3C) XForms 1.0 Recommendation status 2009: World Wide Web Consortium (W3C) XForms 1.1 Recommendation status

Open Technology Centre, Chennai 8 What are Xforms... Platform, device, and modality independent Accommodates form component reuse Improves user experience: richer user interface and advanced forms logic Stores and transports data in XML documents Reduces or eliminates the need for scripting Eases authoring of complex forms Fosters strong data type validation

Open Technology Centre, Chennai 9 Strong Typing Submitted data is strongly typed and can be checked using offthe-shelf XML Schema tools Strong typing also enables automatic client-side validation A native XForms browser can use these types of constraints for validating user input When serving the same XForms document to an non-compliant browser, these constraints can be used to generate client-side Javascript

Open Technology Centre, Chennai 10 Beyond XML Schema XForms authors can go beyond the basic set of XML Schema constraints available from the underlying business application and add complex validation rules XForms provides additional constraints as part of the Model This enhances the overall manageability of the resulting Web applications

Open Technology Centre, Chennai 11 Xforms: MVC Model describes form data, constraints and submission View describes what visual controls appear in the form, how they are grouped together and what data they are bound to. CSS can be used to describe a form's appearance View (Presentation) Control Model Controller that handles event input and the mappings between the two

Open Technology Centre, Chennai 12 XML Data is a Tree Structure bra nch ro ot bra nch le af bra nch le af bra nch le af le af bra nch le af le af le af le af Both the model and the view are trees of data elements

View and Model are Trees View (Presentation) The view is a tree of a presentation data element Models are comprised of one or more trees XForms supplies the control layer that moves data elements to and from the model Users don t have to worry about moving things to and from the screen Control Model Open Technology Centre, Chennai 13

Open Technology Centre, Chennai 14 Separation of Concerns <html> </html> <head> XForms Model </head> <body> </body> Business Model (non-visible) Presentation Form controls Model is in the header (non-visual section) Visual components are in the body (presentation)

Open Technology Centre, Chennai 15 Models and View Are Linked with "Bind" HT ML xf:m odel he ad bo dy Per son fo rm fir st Na me la st <bind> la be l inp ut field set la be l inp ut

Open Technology Centre, Chennai 16 Code snippet Model <html xmlns="http://www.w3.org/1999/xhtml" xmlns:xf="http://www.w3.org/2002/xforms" xmlns:xsd= http://w3.org/2001/xmlschema > <head> <xf:model> <xf:instance xmlns= > Instance <person xmlns=""> <fname/><lname/> </person> </xf:instance> Bind Name space <xf:bind id= fn nodeset= fname type= xsd:string /> <xf:bind id= ln nodeset= lname type= xsd:string /> <xf:submission id="form1" action="submit.xml" Submission method="put"/> </xf:model> </head>

Open Technology Centre, Chennai 17 cont.., User interface <body> <xf:input bind="fn"><xf:label>first Name</xf:label> </xf:input> <xf:input bind="ln"><xf:label>last Name</xf:label> </xf:input> <xf:submit submission="form1"><xf:label>submit</xf:label> </xf:submit> </body> </html>

Open Technology Centre, Chennai 18 XForms framework Based on MVC paradigm XForms model defines What the form is What data it contains What it should do XForms user interface defines the form controls and how they should be displayed Instance contains the data and initial form values Submit protocol defines how XForms sends and receives instance data Bindings bind properties to instance data

Open Technology Centre, Chennai 19 Declarative vs Imperative(Procedural) Main difference is how control of a program is defined With declarative languages, developer defines only logic of a program What should happen? With imperative languages, developer defines both the logic and the control What should happen and how does it happen? Declarative languages are considered easier to program Imperative languages are more expressive

Open Technology Centre, Chennai 20 Declarative vs Imperative(Procedural) Procedural (How) Stepwise algorithms, instructions Written by programmers and software engineers Examples: Java, C++, C#, C, Assembly Code Declarative (What) Pattern matching languages and graphical tools Created by Business Analysts (BA) or designers using graphical notation and tools Examples: HTML, Cascading Style Sheets (CSS), Apache Ant, XML Schemas, XML Transforms, XML Configuration Files, Workflows and XForms

Open Technology Centre, Chennai 21 Parker Projection* Procedural code (Java, JavaScript, VB, C#, C++) 100% Relative Code Base Declarative code (HTML, XML, XSLT, XForms * Source: Jason Parker, Minnesota Department of Revenue, November 2006 Time

Open Technology Centre, Chennai 22 Web UI Languages Declarative: HTML, CSS, XForms Imperative: Javascript Hybrid: DHTML = HTML+CSS+Javascript HTML 5

Open Technology Centre, Chennai 23 Form Creation Visual design of XHTML with CSS using web designing tools like Amaya (Open Source) Dreamweaver (Commercial) MS Expression Web(Commercial) Insertion of coding through manual editing (re-usable-template approach) XML Schema Xforms (Instances, Bindings, Submission, Controls)

Open Technology Centre, Chennai 24

Open Technology Centre, Chennai 25 Form Hosting Designed form can be hosted in any repository running Apache Tomcat IIS etc..,

Open Technology Centre, Chennai 26 Xforms Implementations 1. Native browser support Browser is able to interpret and display XHTML+XForms documents as such E.g., X-Smiles 2. Browser plug-in User has to install the plug-in once E.g., Mozilla XForms for Firefox, MozzIE for IE 3. Client implementation A Javascript component, which is embedded into XHTML+XForms document E.g., formsplayer for IE, Google's Ubiquity, formfaces for major browsers XSLTForms 4. Server-side transformation XHTML+XForms is transformed to HTML+CSS+Javascript E.g.,Orbeon(CMS like LifeRay uses Orbeon),Chiba,betterFORM, XSLTForms

Open Technology Centre, Chennai 27 On-line Access form from URL Form Usage Syntactic validation and certain Semantic validation Off-line Download form from URL Fill the Form Fill the Form Submit Save locally XML instance data Server XML instance data Upload to server

Open Technology Centre, Chennai 28 Back-end Process XML instance data Client Acknowledgment Syntactic validation (against XML schema) XML parser Semantic validation Push to Database Web-application will handle the submitted data with work-flow, etc as per application logic

Open Technology Centre, Chennai 29 Signing with XML XML Signature can be added to the XML data using plug-in and Java Script Signed XML data can be validated on server side

Open Technology Centre, Chennai 30 Other eforms Solutions Adobe's PDF 1.7 (ISO:32000) IBM Lotus Forms (Xforms + XFDL) Microsoft Infopath 2007 Designer Adobe's LiveCycle Designer IBM Lotus Forms Designer Infopath Designer Server Adobe's Form Server IBM Lotus Forms Server Infopath Forms Service Viewer PDF viewers Lotus Forms Viewer only Web browser Platform Windows Windows Windows

Open Technology Centre, Chennai 31 XRX Xforms Rest XQuery XRX label created by Dan McCreary in December 2007 Xforms on the client REST interface Xquery on the server with native XML database like exist Some of Open Source XML db Apache Xindice, BaseX, MonetDB, MyXMLDB, OZONE, Senda Some of Commercial XML db Gemfire Enterprise, DOMSafeXML, Software AG's Tamino

Open Technology Centre, Chennai 32 Test forms for live applications 1. e-services for TN (Comm. & Resi. certificate) 2. Commercial tax VAT & CST forms for TN 3. Work flow based eservices application(community certificate) 4. Transport offense booking application (using mobile) 5. LLP form 2 NIC-HQ as PoC 6. LLR form for TN transport 7. Self-help group details form for TN 8. General Stores - NIC-HQ

Open Technology Centre, Chennai 33 OTC XForms 1.1 Template OTC(XForms Team) had developed a template for XForms 1.1 recommendation The hosted link : https://ask.otc.nic.in/xft2 Within NIC people can access this link for their references. This template can be used as reference material for both study and development of XForms applications.

Open Technology Centre, Chennai 34 Conclusion Xforms can be considered as usable for normal e-governance applications ( simple to complex ) Gaps in the implementations like browsers/plug-ins to be completed for end user usage(new implementations like betterform, XSLTForms, etc.., are coming up) Gaps in the Standards to address issues like XML Digital Signature to be filled(xforms 1.2 will include)

Open Technology Centre, Chennai 35 Thank you Open Technology Centre National Informatics Centre E3-A, Rajaji Bhavan Besant Nagar Chennai 600 090