introduction to w3c xforms the future of web forms micah dubinko
TRANSCRIPT
![Page 1: Introduction to W3C XForms The Future of Web Forms Micah Dubinko](https://reader030.vdocuments.mx/reader030/viewer/2022032415/56649f085503460f94c1d15f/html5/thumbnails/1.jpg)
Introduction to W3C XForms
The Future of Web Forms
Micah Dubinko
![Page 2: Introduction to W3C XForms The Future of Web Forms Micah Dubinko](https://reader030.vdocuments.mx/reader030/viewer/2022032415/56649f085503460f94c1d15f/html5/thumbnails/2.jpg)
About Your Guide
Lead editor of XForms specificationSoftware Engineer for Cardiff SoftwareBook and magazine articlesContributing Editor http://www.xmlhack.com/CDIA [email protected]://dubinko.info/xforms/
![Page 3: Introduction to W3C XForms The Future of Web Forms Micah Dubinko](https://reader030.vdocuments.mx/reader030/viewer/2022032415/56649f085503460f94c1d15f/html5/thumbnails/3.jpg)
What We’ll Talk About
1. The “Big Picture”2. What are XForms?3. What does it all mean?
![Page 4: Introduction to W3C XForms The Future of Web Forms Micah Dubinko](https://reader030.vdocuments.mx/reader030/viewer/2022032415/56649f085503460f94c1d15f/html5/thumbnails/4.jpg)
Part 1
The Big Picture
![Page 5: Introduction to W3C XForms The Future of Web Forms Micah Dubinko](https://reader030.vdocuments.mx/reader030/viewer/2022032415/56649f085503460f94c1d15f/html5/thumbnails/5.jpg)
A Brief History of Web Forms
1993: HTML forms1994–2001: Nothing happenedToday: XForms
![Page 6: Introduction to W3C XForms The Future of Web Forms Micah Dubinko](https://reader030.vdocuments.mx/reader030/viewer/2022032415/56649f085503460f94c1d15f/html5/thumbnails/6.jpg)
HTML Forms Limitations
Some Assembly Required <input value=“initial value”>
Primitive Data Representation Urlencoded? Ugh.
Need Script to do anything… Validations Calculations Dynamic Forms
![Page 7: Introduction to W3C XForms The Future of Web Forms Micah Dubinko](https://reader030.vdocuments.mx/reader030/viewer/2022032415/56649f085503460f94c1d15f/html5/thumbnails/7.jpg)
XForms = Interactive Web Services
Some Assembly Required <input value=“initial value”>
Primitive Data Representation Urlencoded? Ugh.
Blending Purpose and Presentation <input type=“radio |
checkbox”> etc… No validations, calculations
XML In, XML Out
Integration with Web Services; XML ToolsLeverage XPath, XML Schema, XSLT, SVGAny Time, Any Place, and on Any Device
![Page 8: Introduction to W3C XForms The Future of Web Forms Micah Dubinko](https://reader030.vdocuments.mx/reader030/viewer/2022032415/56649f085503460f94c1d15f/html5/thumbnails/8.jpg)
HTML Demo
![Page 9: Introduction to W3C XForms The Future of Web Forms Micah Dubinko](https://reader030.vdocuments.mx/reader030/viewer/2022032415/56649f085503460f94c1d15f/html5/thumbnails/9.jpg)
Part 2
What are XForms?
![Page 10: Introduction to W3C XForms The Future of Web Forms Micah Dubinko](https://reader030.vdocuments.mx/reader030/viewer/2022032415/56649f085503460f94c1d15f/html5/thumbnails/10.jpg)
Terminology
XForm or XForms?XForms ProcessorXForms ModelInstance dataContaining documentForm control
![Page 11: Introduction to W3C XForms The Future of Web Forms Micah Dubinko](https://reader030.vdocuments.mx/reader030/viewer/2022032415/56649f085503460f94c1d15f/html5/thumbnails/11.jpg)
XForms Conformance Profiles
Two conformance profiles to support wide range of devicesBasic: small devices, TV, phones, etc.Full: desktop browsers, servers
![Page 12: Introduction to W3C XForms The Future of Web Forms Micah Dubinko](https://reader030.vdocuments.mx/reader030/viewer/2022032415/56649f085503460f94c1d15f/html5/thumbnails/12.jpg)
Contain This!
XForms lives in multiple locations within a single “containing document” file
<html>
</html>
<head>
</head>
<body>
</body>
XForms Model
Purpose(non-visible)
PresentationForm controls
![Page 13: Introduction to W3C XForms The Future of Web Forms Micah Dubinko](https://reader030.vdocuments.mx/reader030/viewer/2022032415/56649f085503460f94c1d15f/html5/thumbnails/13.jpg)
XForms Model
Defines the ‘Purpose’ of the formIncludes the following: Instance Data Submit Information XML Schema Information XForms specific properties and actions
Model and Instance can be synthesized
![Page 14: Introduction to W3C XForms The Future of Web Forms Micah Dubinko](https://reader030.vdocuments.mx/reader030/viewer/2022032415/56649f085503460f94c1d15f/html5/thumbnails/14.jpg)
XForms Instance
Provides template for your dataProvides default or partially submitted dataCan be inline or referenced externallyFull support for XML Schema
![Page 15: Introduction to W3C XForms The Future of Web Forms Micah Dubinko](https://reader030.vdocuments.mx/reader030/viewer/2022032415/56649f085503460f94c1d15f/html5/thumbnails/15.jpg)
XForms Constraints
Static (from Schema) and dynamic Datatypes Relevant Required ReadOnly Validation Calculation Minimum/maximum occurrences
![Page 16: Introduction to W3C XForms The Future of Web Forms Micah Dubinko](https://reader030.vdocuments.mx/reader030/viewer/2022032415/56649f085503460f94c1d15f/html5/thumbnails/16.jpg)
XForms Submit Info
Provides How, Where, and What to submit Multiple models per form Partial form submission
Default is ‘post’ of XML Instance
Submit
![Page 17: Introduction to W3C XForms The Future of Web Forms Micah Dubinko](https://reader030.vdocuments.mx/reader030/viewer/2022032415/56649f085503460f94c1d15f/html5/thumbnails/17.jpg)
How It Works
XSLT XForms
<>
<> <> <> <>
Source tree
Instance data
Stylesheet tree
XForms Processing
XSLT
Processing
![Page 18: Introduction to W3C XForms The Future of Web Forms Micah Dubinko](https://reader030.vdocuments.mx/reader030/viewer/2022032415/56649f085503460f94c1d15f/html5/thumbnails/18.jpg)
XForms User Interface
Describes intent “selectOne”, not “checkbox”
Input/Secret/TextareaselectOne/selectManyRangeUploadButton
![Page 19: Introduction to W3C XForms The Future of Web Forms Micah Dubinko](https://reader030.vdocuments.mx/reader030/viewer/2022032415/56649f085503460f94c1d15f/html5/thumbnails/19.jpg)
Advanced User Interface
GroupingDynamic interfacesRepeating “line items” (similar to Zope)
![Page 20: Introduction to W3C XForms The Future of Web Forms Micah Dubinko](https://reader030.vdocuments.mx/reader030/viewer/2022032415/56649f085503460f94c1d15f/html5/thumbnails/20.jpg)
Binding
<head>
</head>
<body>
</body>
XForms Model
<bind id=“xyz” ref=“memo/cc” required=“true”/>
<input bind=“xyz”…>
<input ref=“memo/cc”…>
![Page 21: Introduction to W3C XForms The Future of Web Forms Micah Dubinko](https://reader030.vdocuments.mx/reader030/viewer/2022032415/56649f085503460f94c1d15f/html5/thumbnails/21.jpg)
XForms Actions
Defines common set of behaviorsNo Javascript required Message SubmitInstance SetValue SetFocus Toggle LoadURI
![Page 22: Introduction to W3C XForms The Future of Web Forms Micah Dubinko](https://reader030.vdocuments.mx/reader030/viewer/2022032415/56649f085503460f94c1d15f/html5/thumbnails/22.jpg)
Processing Model
Event-driven modelInitialize Focus/blur, next/previous valueChanging/valueChanged Help/hint/alert Submit/reset Error conditions
![Page 23: Introduction to W3C XForms The Future of Web Forms Micah Dubinko](https://reader030.vdocuments.mx/reader030/viewer/2022032415/56649f085503460f94c1d15f/html5/thumbnails/23.jpg)
Data Submission
Called “Serialization”Choice of formats: Application/x-www-form-urlencoded Multipart/form-data Text/xml
Choice of transport HTTP GET HTTP POST SOAP (Future)
![Page 24: Introduction to W3C XForms The Future of Web Forms Micah Dubinko](https://reader030.vdocuments.mx/reader030/viewer/2022032415/56649f085503460f94c1d15f/html5/thumbnails/24.jpg)
Part 3
What it all means
![Page 25: Introduction to W3C XForms The Future of Web Forms Micah Dubinko](https://reader030.vdocuments.mx/reader030/viewer/2022032415/56649f085503460f94c1d15f/html5/thumbnails/25.jpg)
Unified Processing
Server Client
XForms Processor
XForms Processor
XForms
Model
•Server process for “data double check”
•Client process for optimal data entry
•Less CGI hacks = better security on the Web
![Page 26: Introduction to W3C XForms The Future of Web Forms Micah Dubinko](https://reader030.vdocuments.mx/reader030/viewer/2022032415/56649f085503460f94c1d15f/html5/thumbnails/26.jpg)
The end of the Web as we know it
0
20
40
60
80
100
2001 2002 2003 2004
Trend: Conventional Browsers are historyBrowsersDevices
![Page 27: Introduction to W3C XForms The Future of Web Forms Micah Dubinko](https://reader030.vdocuments.mx/reader030/viewer/2022032415/56649f085503460f94c1d15f/html5/thumbnails/27.jpg)
Any Device, anytime…
High-level form control definitionsFlexibility in implementationNo floating point, JavaScript requiredSubset of XML Schema
![Page 28: Introduction to W3C XForms The Future of Web Forms Micah Dubinko](https://reader030.vdocuments.mx/reader030/viewer/2022032415/56649f085503460f94c1d15f/html5/thumbnails/28.jpg)
XHTML 2.0
Web of Standards
XHTML 1.x
SVG FO ?SMIL
XForms
XML Schema
XPath
XML Events
XML
![Page 29: Introduction to W3C XForms The Future of Web Forms Micah Dubinko](https://reader030.vdocuments.mx/reader030/viewer/2022032415/56649f085503460f94c1d15f/html5/thumbnails/29.jpg)
Section 508
Accessible web forms for everybody Not keyboard-centric Events for focus, navigation Script not required Captions/metadata
Multimodal forms
![Page 30: Introduction to W3C XForms The Future of Web Forms Micah Dubinko](https://reader030.vdocuments.mx/reader030/viewer/2022032415/56649f085503460f94c1d15f/html5/thumbnails/30.jpg)
Paperwork Elimination
Unified format for instance dataEnables Workflow and RoutingDocumented savings of over $50/transaction
“How you gather, manage and use information will determine whether you win or lose.” – Bill
Gates
![Page 31: Introduction to W3C XForms The Future of Web Forms Micah Dubinko](https://reader030.vdocuments.mx/reader030/viewer/2022032415/56649f085503460f94c1d15f/html5/thumbnails/31.jpg)
The Web Service Revolution
User Interface for .NET and Web ServicesConnects directly to SOAP data sourceUtilizes existing XML SchemaArticle available on http://www.xml.com
![Page 32: Introduction to W3C XForms The Future of Web Forms Micah Dubinko](https://reader030.vdocuments.mx/reader030/viewer/2022032415/56649f085503460f94c1d15f/html5/thumbnails/32.jpg)
XForms Roadmap
Last Call: Ended 22 Feb 2002Candidate Recommendation:Proposed Recommendation:Recommendation:
![Page 33: Introduction to W3C XForms The Future of Web Forms Micah Dubinko](https://reader030.vdocuments.mx/reader030/viewer/2022032415/56649f085503460f94c1d15f/html5/thumbnails/33.jpg)
DeploymentPre-1998 1999-2000 2001-2002 2003-2004 2005+
![Page 34: Introduction to W3C XForms The Future of Web Forms Micah Dubinko](https://reader030.vdocuments.mx/reader030/viewer/2022032415/56649f085503460f94c1d15f/html5/thumbnails/34.jpg)
Help Make XForms Better!
XForms “Smoke Tests”Containing Document Schemahttp://dubinko.info/xforms/
Vote For XForms in Mozilla!http://bugzilla.mozilla.org/show_bug.cgi?id=97806
![Page 35: Introduction to W3C XForms The Future of Web Forms Micah Dubinko](https://reader030.vdocuments.mx/reader030/viewer/2022032415/56649f085503460f94c1d15f/html5/thumbnails/35.jpg)
Try Out XForms
Implementations:X-Smiles http://www.xsmiles.orgTIBET http://www.technicalpursuit.com/Mozquito http://www.mozquito.comApache Cocoon http://xml.apache.org/cocoon/Chiba http://sourceforge.net/projects/chiba/ExFormula http://sourceforge.net/projects/exformula/
Authoring ToolsCardiff LiquidOffice (demo)http://www.Cardiff.com/xforms/
![Page 36: Introduction to W3C XForms The Future of Web Forms Micah Dubinko](https://reader030.vdocuments.mx/reader030/viewer/2022032415/56649f085503460f94c1d15f/html5/thumbnails/36.jpg)
For More Information…
[email protected] (subj: “Subscribe”)http://www.w3.org/TR/xforms/http://www.w3.org/MarkUp/Formswww.zvon.org/xxl/XForms1.0/Output/More?