1 / 36

Introduction to W3C XForms

Introduction to W3C XForms. The Future of Web Forms. Micah Dubinko. About Your Guide. Lead editor of XForms specification Software Engineer for Cardiff Software Book and magazine articles Contributing Editor http://www.xmlhack.com/ CDIA certified mdubinko@Cardiff.com

ryo
Download Presentation

Introduction to W3C XForms

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Introduction to W3C XForms The Future of Web Forms Micah Dubinko

  2. About Your Guide • Lead editor of XForms specification • Software Engineer for Cardiff Software • Book and magazine articles • Contributing Editor http://www.xmlhack.com/ • CDIA certified • mdubinko@Cardiff.com • http://dubinko.info/xforms/

  3. What We’ll Talk About • The “Big Picture” • What are XForms? • What does it all mean?

  4. Part 1 The Big Picture

  5. A Brief History of Web Forms • 1993: HTML forms • 1994–2001: Nothing happened • Today: XForms

  6. HTML Forms Limitations • Some Assembly Required • <input value=“initial value”> • Primitive Data Representation • Urlencoded? Ugh. • Need Script to do anything… • Validations • Calculations • Dynamic Forms

  7. 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 Tools Leverage XPath, XML Schema, XSLT, SVG Any Time, Any Place, and on Any Device

  8. HTML Demo

  9. Part 2 What are XForms?

  10. Terminology • XForm or XForms? • XForms Processor • XForms Model • Instance data • Containing document • Form control

  11. XForms Conformance Profiles • Two conformance profiles to support wide range of devices • Basic: small devices, TV, phones, etc. • Full: desktop browsers, servers

  12. Contain This! • XForms lives in multiple locations within a single “containing document” file <head> </head> Purpose (non-visible) XForms Model <html> </html> <body> </body> Presentation Form controls

  13. XForms Model • Defines the ‘Purpose’ of the form • Includes the following: • Instance Data • Submit Information • XML Schema Information • XForms specific properties and actions • Model and Instance can be synthesized

  14. XForms Instance • Provides template for your data • Provides default or partially submitted data • Can be inline or referenced externally • Full support for XML Schema

  15. XForms Constraints • Static (from Schema) and dynamic • Datatypes • Relevant • Required • ReadOnly • Validation • Calculation • Minimum/maximum occurrences

  16. XForms Submit Info Submit • Provides How, Where, and What to submit • Multiple models per form • Partial form submission • Default is ‘post’ of XML Instance

  17. How It Works <> XSLT XForms Stylesheet tree XForms Processing <> <> <> <> XSLT Processing Source tree Instance data

  18. XForms User Interface • Describes intent • “selectOne”, not “checkbox” • Input/Secret/Textarea • selectOne/selectMany • Range • Upload • Button

  19. Advanced User Interface • Grouping • Dynamic interfaces • Repeating “line items” • (similar to Zope)

  20. Binding <head> </head> <bind id=“xyz” ref=“memo/cc” required=“true”/> XForms Model <body> </body> <input bind=“xyz”…> <input ref=“memo/cc”…>

  21. XForms Actions • Defines common set of behaviors • No Javascript required • Message • SubmitInstance • SetValue • SetFocus • Toggle • LoadURI

  22. Processing Model • Event-driven • modelInitialize • Focus/blur, next/previous • valueChanging/valueChanged • Help/hint/alert • Submit/reset • Error conditions

  23. 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)

  24. Part 3 What it all means

  25. Unified Processing Server Client XForms Processor XForms Processor • Server process for “data double check” • Client process for optimal data entry XForms Model • Less CGI hacks = better security on the Web

  26. The end of the Web as we know it

  27. Any Device, anytime… • High-level form control definitions • Flexibility in implementation • No floating point, JavaScript required • Subset of XML Schema

  28. Web of Standards XPath XML Events XML Schema XForms XHTML 2.0 XHTML 1.x SVG FO SMIL ? XML

  29. Section 508 • Accessible web forms for everybody • Not keyboard-centric • Events for focus, navigation • Script not required • Captions/metadata • Multimodal forms

  30. Paperwork Elimination • Unified format for instance data • Enables Workflow and Routing • Documented savings of over $50/transaction “How you gather, manage and use information will determine whether you win or lose.” – Bill Gates

  31. The Web Service Revolution • User Interface for .NET and Web Services • Connects directly to SOAP data source • Utilizes existing XML Schema • Article available on http://www.xml.com

  32. XForms Roadmap • Last Call: Ended 22 Feb 2002 • Candidate Recommendation: • Proposed Recommendation: • Recommendation:

  33. Deployment Pre-1998 1999-2000 2001-2002 2003-2004 2005+                       

  34. Help Make XForms Better! • XForms “Smoke Tests” • Containing Document Schema • http://dubinko.info/xforms/ • Vote For XForms in Mozilla! • http://bugzilla.mozilla.org/show_bug.cgi?id=97806

  35. Try Out XForms • Implementations: • X-Smiles http://www.xsmiles.org • TIBET http://www.technicalpursuit.com/ • Mozquito http://www.mozquito.com • Apache Cocoon http://xml.apache.org/cocoon/ • Chiba http://sourceforge.net/projects/chiba/ • ExFormula http://sourceforge.net/projects/exformula/ • Authoring Tools • Cardiff LiquidOffice (demo) • http://www.Cardiff.com/xforms/

  36. For More Information… • www-forms@w3.org (subj: “Subscribe”) • http://www.w3.org/TR/xforms/ • http://www.w3.org/MarkUp/Forms • www.zvon.org/xxl/XForms1.0/Output/ • More?

More Related