XForms Essentials



Preface
1. Who Should Read This Book?
2. Who Should Not Read This Book?
3. If You're Still Reading This...
4. About the Examples
5. Organization of This Book
6. Conventions Used in This Book
7. How to Contact Us
8. Acknowledgments
1. Introduction to Web Forms
1.1. The Past, Present, and Future of Web Forms
1.2. A Brief Review of HTML Forms
1.2.1. Single-Line Text Input
1.2.2. Multi-Line Text Input
1.2.3. Password Text Input
1.2.4. Submit and Reset
1.2.5. Buttons
1.2.6. Radio Buttons
1.2.7. Checkboxes
1.2.8. Single-Select Menus
1.2.9. Multiple-Select Menus
1.2.10. File Select
1.2.11. Hidden Controls
1.2.12. Object Controls
1.2.13. Labels and Legends
1.2.14. Access and Navigation
1.2.15. Readonly and Disabled
1.2.16. Initialization
1.2.17. Submit
1.3. Limitations of HTML Forms, Advantages of XForms
1.4. The History of XForms
1.5. The Revenge of the Simple Syntax
2. XForms Building Blocks
2.1. More Than Forms
2.2. A Real-World Example
2.3. Host Language Issues
2.3.1. Combined Document Types
2.4. Linking Attributes
3. XPath in XForms
3.1. Getting Up to Speed with XPath
3.2. Going Deep: The XPath Data Model
3.3. Location Paths
3.3.1. Context
3.3.2. Axes
3.3.3. Predicates
3.4. Computed Expressions
3.4.1. Operators
3.4.2. Functions
3.5. How XPath is Used in XForms
3.5.1. Context Nodes
3.5.2. Model Binding Expressions
3.5.3. UI Binding Expressions
3.5.4. Computations
4. XML Schema in XForms
4.1. Wide Open (Value) Spaces
4.1.1. Derivation
4.2. Useful Datatypes
4.3. Other Datatypes
4.4. An Email Datatype for XForms
4.4.1. Using the Email Datatype
4.5. Complex Types
4.6. xsi:type
5. The XForms Model
5.1. Will the Real Data Model Step Forward?
5.2. Structural Elements
5.3. Common Attributes
5.3.1. Binding Attributes—Single Node and Node-set
5.4. Model Item Properties
5.5. Making the Connection—Binding
5.5.1. With IDREFs
5.5.2. With XPath
5.5.3. Multiple Models
5.5.4. Multiple Instances
6. The XForms User Interface
6.1. Form Controls
6.1.1. input
6.1.2. secret
6.1.3. textarea
6.1.4. output
6.1.5. upload
6.1.6. range
6.1.7. trigger
6.1.8. submit
6.1.9. select1
6.1.10. select
6.1.11. Complex Lists
6.1.12. Common Markup
6.2. Interaction with Instance Data
6.2.1. Incremental
6.3. Grouping
6.4. Dynamic Presentation
6.4.1. switch and case
6.5. Repeating Line Items
6.5.1. repeat
6.5.2. Attribute Syntax
7. Actions and Events
7.1. XML Events
7.1.1. The Old Way
7.1.2. Listeners, Observers, and Handlers
7.1.3. Declarative Actions, Displacing Script
7.2. XForms Actions
7.3. XForms Events
7.3.1. Stages of XForms Processing
7.3.2. Useful Events
7.3.3. Less-Useful Events
7.3.4. Error Handling
8. Submit
8.1. When to Submit
8.2. What to Submit
8.3. Where and How to Submit
8.3.1. URI Scheme and Method
8.3.2. Serialization Formats for Data Submission
8.4. What Happens After Submit?
8.5. The submission Element
8.6. Review: Submission Options
8.7. Security and Privacy Concerns
9. Styling XForms
9.1. CSS, Level 3
9.1.1. The Appearance Property
9.1.2. Aligning Form Controls and Labels
9.1.3. Styling Invalid Form Controls
9.1.4. Styling Required Form Controls
9.1.5. Styling Alert Messages
9.1.6. Styling Repeating Items
9.1.7. Styling Non-Visible Items
10. Form Accessibility, Design, and Troubleshooting
10.1. Basics of Accessibility
10.1.1. W3C Accessibility Guidelines
10.2. Form Design Patterns
10.2.1. Stepwise XPath
10.2.2. Design by Buddy System
10.2.3. XML Localization
10.3. XForms-specific Design Hints
10.3.1. Always Include Keyboard Navigation Hints
10.3.2. Always Use P3P Datatypes
10.3.3. Don't Use a Form for Navigation
10.3.4. Concatenating a Currency Symbol or Special Character
10.3.5. Server-Side Database Lookups
10.3.6. Reliably Submitting the Form with Enter
10.3.7. Refresh-on-Demand
10.4. Troubleshooting
10.4.1. Stubborn Read-only Controls
10.4.2. Context Node Problems
10.4.3. XForms Portion of Document Not Recognized
10.4.4. Schema or Validation Errors
10.5. Making the Switch to XForms
10.5.1. Client-Side and Server-Side XForms
10.5.2. The Featherweight Client
10.5.3. The Scriptable Client
10.5.4. The Modern Browser Client
10.5.5. Client-Side Options
11. Extending XForms
11.1. The Cost of Extensibility
11.1.1. Extension and mustUnderstand
11.2. Ways to Extend
11.2.1. With Script
11.2.2. With New Datatypes and Libraries
11.2.3. With XPath Extension Functions
11.2.4. With New Form Controls
11.2.5. With XForms Actions
11.2.6. With Custom Events
11.2.7. With New Serialization Formats
A. Examining Microsoft InfoPath
A.1. How Does It Work?
A.2. Similar, Different
A.3. A Real-World Example
A.4. Conclusion
B. The GNU Free Documentation License
B.1. GNU Free Documentation License
B.2. 0. Preamble
B.3. 1. APPLICABILITY AND DEFINITIONS
B.4. 2. VERBATIM COPYING
B.5. 3. COPYING IN QUANTITY
B.6. 4. MODIFICATIONS
B.7. 5. COMBINING DOCUMENTS
B.8. 6. COLLECTIONS OF DOCUMENTS
B.9. 7. AGGREGATION WITH INDEPENDENT WORKS
B.10. 8. TRANSLATION
B.11. 9. TERMINATION
B.12. 10. FUTURE REVISIONS OF THIS LICENSE
B.13. Addendum: How to use this License for your documents
n
Next Page
p
Previos Page
h
Book Home
u
Go Up One Level
?
Press ? for Help
esc
Hide Help
Your Ad Here