Presentation is loading. Please wait.

Presentation is loading. Please wait.

XForms: Bringing the Power of XML to Everyone 田 Micah Dubinko Editor, XForms 1.0

Similar presentations


Presentation on theme: "XForms: Bringing the Power of XML to Everyone 田 Micah Dubinko Editor, XForms 1.0"— Presentation transcript:

1 XForms: Bringing the Power of XML to Everyone 田 Micah Dubinko Editor, XForms 1.0 http://dubinko.info/writing/xforms/

2 Brought to you by the letters XFE http://dubinko.info/writing/xforms/

3 Introduction “In the beginning…the earth was without form and void” --Genesis 1:1,2

4 Long time coming Pre-Web:Proprietary; binary formats Pre-Web:Proprietary; binary formats 1993:HTML forms 1993:HTML forms 1994–2002:Nothing new 1994–2002:Nothing new Today:XForms & proprietary Today:XForms & proprietary

5 Limitations of HTML Forms Need Script to do anything… Need Script to do anything… –Validations –Calculations –Dynamic Forms Some Assembly Required Some Assembly Required – – Primitive Data Representation Primitive Data Representation –Name=Micah&Title=Chief+XML…

6 Scripting Closes Doors

7 Key Design Factors in XForms XML In; XML Out XML In; XML Out 80/20 80/20 Embrace existing practice Embrace existing practice Integration with Web Services; Tools Integration with Web Services; Tools Leverage XPath, XML Schema, XSLT Leverage XPath, XML Schema, XSLT Any Time, Any Place, Any Device Any Time, Any Place, Any Device

8 Implementation Strategies Server … Zero-install client … Application Chiba OXF IBM(1) DENG Ripcord nForms FormsPlayer XFE Oracle(1) X-Smiles Novell Oracle(2) MobiForm IBM(2) jXForms Xero

9 Example:

10 More Quotes “What the world really needs is more love and less paperwork.” --Pearl Bailey “XML lets organizations benefit from structured, predictable documents. Thus, XML breeds forms. QED. --David Weinberger

11 More Examples Working Group Examples Working Group Examples –http://www.w3.org/MarkUp/Forms/2002/Exa mples/ Test Suite Test Suite –http://www.w3.org/MarkUp/Forms/Test http://www.w3.org/MarkUp/Forms/Test –Of course, www-forms@w3.org

12 Benefit: Unify Client and Server ServerClient XForms Processor XForms Model Server process for “data double check” Client process for optimal data entry Less CGI hacks = better security

13 Foundations: XPath “Nobody trips over mountains. It is the small pebble that causes you to stumble. Pass all the pebbles in your path, and you will find you have crossed the mountain.” --Traditional Proverb

14 XForms Architecture XHTML 2.0SVGFO?SMIL Form Controls XML Schema XPath XML Events XML XForms ModelXForms Actions

15 XForms Instance Based on XPath Based on XPath Provides template for your data Provides template for your data Provides default or partially submitted data Provides default or partially submitted data Can be inline or referenced externally Can be inline or referenced externally Full support for XML Schema Full support for XML Schema

16 Binding XForms Model Insert LOTR joke here

17 Form Building Blocks XForms lives in multiple locations within a single “containing document” XForms lives in multiple locations within a single “containing document” XForms Model Purpose (non-visible) Presentation Form controls

18 Fundaments: XML Schema “Knowledge is of two kinds. We can know a subject ourselves, or we can know where to find information on it.” --Samuel Johnson

19 XForms Architecture XHTML 2.0SVGFO?SMIL Form Controls XML Schema XPath XML Events XML XForms ModelXForms Actions

20 XForms Model ARTHUR: Camelot! GALAHAD: Camelot! LANCELOT: Camelot! PATSY: It’s only a model. Arthur: Shhh! --Monty Python and the Holy Grail

21 XForms Model Single, device- independent XML form definition Single, device- independent XML form definition Works with standard or proprietary user interfaces Works with standard or proprietary user interfaces Defines the ‘Purpose’ of the form Defines the ‘Purpose’ of the form

22 XForms Constraints Static (from Schema) and dynamic Static (from Schema) and dynamic –Datatypes –Relevant –Required –ReadOnly –Validation –Calculation –Minimum/maximum occurrences

23 User Interface “A human being should be able to change a diaper, plan an invasion, butcher a hog, conn a ship, design a building, write a sonnet, balance accounts, build a wall, set a bone, comfort the dying, take orders, give orders, cooperate, act alone, solve equations, analyze a new problem, pitch manure, program a computer, cook a tasty meal, fight efficiently, and die gallantly. Specialization is for insects.” --Robert A. Heinlein

24 User Interface Describes intent, not presentation Describes intent, not presentation Total: $300.00

25 Advanced User Interface Grouping Grouping Dynamic Presentation Dynamic Presentation –Multiple pages Repeating Tables Repeating Tables

26 Actions & Events “While we are free to choose our actions, we are not free to choose the consequences of our actions” --Stephen Covey “We are not ready for any unforeseen event that may or may not occur.” --Dan Quayle

27 XForms Actions Defines common set of behaviors Defines common set of behaviors Based on XML Events Based on XML Events No JavaScript required No JavaScript required –Message –Send –Setvalue –Setfocus –Toggle –Load

28 More Examples Please enter the number… Please enter the number… Have you forgotten your password Have you forgotten your password This field is required (Street) This field is required (Street) ephemeral modeless modal

29 XML Events Event-driven Event-driven –modelInitialize –Focus/blur, next/previous –valueChanged –Help/hint/alert –Submit/reset –Error conditions

30 Submit “This element encodes how, where, and what to submit.” --XForms Candidate Rec, 12 Nov 2002

31 Data Submission XML in/XML out; or legacy format… XML in/XML out; or legacy format… –Including Binary data GET, PUT, or POST GET, PUT, or POST File system, HTTP, or e-mail File system, HTTP, or e-mail Submit

32 Style “Never offend people with style when you can offend them with substance.” --Sam Brown

33 CSS, Level 3 New styles for form controls; basic UI New styles for form controls; basic UI Ability to apply style to readonly, required, relevant, etc. Ability to apply style to readonly, required, relevant, etc.

34 Accessibility, Design, Troubleshooting “There are two ways of constructing a software design: One way is to make it so simple that there are obviously no deficiencies, and the other way is to make it so complicated that there are no obvious deficiencies.” --C. A. R. Hoare

35 Usability hint alert help

36 Section 508 Accessibility Accessible web forms for everybody Accessible web forms for everybody –Not keyboard-centric –Events for focus, navigation –Script not required –Captions/metadata Multimodal forms Multimodal forms

37 …on any Device appearance= “full” | “compact” | “minimal” appearance= “full” | “compact” | “minimal” “full” (always visible) “compact” (scroll bars) “minimal” (popup)

38 Extending XForms “Still, what an arm! and I could alter it: But all the play, the insight and the stretch— Out of me, out of me!” --Robert Browning

39 What about InfoPath? “Do not go where the path may lead; go instead where there is no path and leave a trail.” --Ralph Waldo Emerson

40 GFDL Full text and graphics available under open content license Full text and graphics available under open content license http://dubinko.info/writing/xforms/ http://dubinko.info/writing/xforms/

41 Help Make XForms Better! Vote For XForms in Mozilla! Vote For XForms in Mozilla! http://bugzilla.mozilla.org/show_bug.cgi?id=97806 http://bugzilla.mozilla.org/show_bug.cgi?id=97806 http://bugzilla.mozilla.org/show_bug.cgi?id=97806 Even better: help implement XForms in Mozilla Even better: help implement XForms in Mozilla

42 Try Out XForms Implementations: Implementations: Novell http://www.novell.com/xforms/ Novell http://www.novell.com/xforms/http://www.novell.com/xforms/ X-Smiles http://www.xsmiles.org X-Smiles http://www.xsmiles.orghttp://www.xsmiles.org FormsPlayer http://www.formsplayer.com FormsPlayer http://www.formsplayer.comhttp://www.formsplayer.com Mozquito http://webaccess.mozquito.com Mozquito http://webaccess.mozquito.comhttp://webaccess.mozquito.com Oracle http://otn.oracle.com/tech/wireless/mobilebrowser.htm Oracle http://otn.oracle.com/tech/wireless/mobilebrowser.htmhttp://otn.oracle.com/tech/wireless/mobilebrowser.htm IBM http://www.alphaworks.ibm.com/tech/xmlforms IBM http://www.alphaworks.ibm.com/tech/xmlformshttp://www.alphaworks.ibm.com/tech/xmlforms

43 Making the Transition Deploy XML data (Web Services) Deploy XML data (Web Services) –RPC-style bad; Document-style better –Plain-old XML even better Don’t assume browser-only access Don’t assume browser-only access Avoid dependence on HTML processing Avoid dependence on HTML processing Think beyond client-server Think beyond client-server Embrace open standards Embrace open standards

44 For More Information… www-forms@w3.org (subj: “Subscribe”) www-forms@w3.org (subj: “Subscribe”) www-forms@w3.org http://www.w3.org/TR/xforms/ http://www.w3.org/TR/xforms/ http://www.w3.org/TR/xforms/ http://www.w3.org/MarkUp/Forms http://www.w3.org/MarkUp/Forms http://www.w3.org/MarkUp/Forms http://dubinko.info/blog/ http://dubinko.info/blog/ http://dubinko.info/blog/ http://www.xml.com/ http://www.xml.com/ http://www.xml.com/ http://dubinko.info/writing/xforms/ http://dubinko.info/writing/xforms/ http://dubinko.info/writing/xforms/

45 Thank You! Please fill out an evaluation form Please fill out an evaluation form


Download ppt "XForms: Bringing the Power of XML to Everyone 田 Micah Dubinko Editor, XForms 1.0"

Similar presentations


Ads by Google