XForms with Linux

  • 2,175 views
Uploaded on

XForms, with Linux ,Mobile computing,XHTML

XForms, with Linux ,Mobile computing,XHTML

More in: Education , Technology
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
  • Books for XForms:
    http://tueno2010.blogspot.com/2010/10/definicion-de-xforms-y-libro-util-para.html
    Are you sure you want to
    Your message goes here
    Be the first to like this
No Downloads

Views

Total Views
2,175
On Slideshare
0
From Embeds
0
Number of Embeds
0

Actions

Shares
Downloads
17
Comments
1
Likes
0

Embeds 0

No embeds

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
    No notes for slide

Transcript

  • 1. XForms and Fedora Simplifying Fedora Frontends with XForms and Fedora Disseminators Matt Zumwalt MediaShelf, LLC http://www.yourmediashelf.com
  • 2. Requirements What MediaShelf aims accomplish with its UIs
  • 3. User Experience
    • One feature set, Many Interfaces
    • Minimize Learning Curve
    • UX Must match Use Cases & User Requirements
  • 4. Diverse XML Metadata
    • Task-specific taxonomies
      • Ex. Descriptive Metadata
    • Aggregate taxonomies
    • Cross-pollination
  • 5. Users’ Vocabularies
    • Groups of users inevitably talk about their work in distinct ways. An effective UI has to reflect that vocabulary
  • 6. Lexicon for UIs
    • Finite Vocabulary
    • One description, many renditions
  • 7. Separation of Concerns
    • Binding XML to UI
    • Binding UI to user vocabularies
    • Finding that balance
  • 8. XForms A Look at the pertinent features of XForms and how they satisfy our requirements
  • 9. Using Forms to Edit XML
    • Anywhere an HTML Form would be used, XForms can be used
    • Best example: Descriptive Metadata
  • 10. XForms Strengths
    • Codify Intentions for UI
    • Separation of Concerns with MVC
    • Pure XML & XSL
    • Service Oriented
    • Standardized
  • 11. Codify Intentions
    • XForms enables creators to codify the intended components and functionality for a form rather than defining the form itself
  • 12. Separation of Concerns with MVC
  • 13. Define the Model
    • An XForms Model defines the data that you want to operate on and the targets you want to submit that data to
  • 14. Explicitly Aware of XML
  • 15. Describe the UI
    • An XForms View is a standards-compliant description of a form and all of the actions it should perform
  • 16. XForms Elements
  • 17.  
  • 18. Pure XML & XSL
    • Relatively simple markup
    • Mature technologies
    • Store as datastreams in Fedora
      • Inline or Reference
      • Use disseminators
      • Versionable UI!
  • 19. Service Oriented
    • Submit XML to any service
    • Easy to change target URL
    • Multiple submissions
  • 20. Standardized
    • A single XForms Model/View pair can be displayed by any XForms compliant tool
    • Automatically switch between XHTML, Flash, Swing, etc.
  • 21.
    • Codify intentions for UI
    • Separation of Concerns with MVC
    • Pure XML & XSL
    • Service Oriented
    • Standardized
    Discuss XForms
  • 22. The Perfect Match How we integrated XForms with Fedora
  • 23. Overlap with CMDA
    • Simplified subset of same concerns
    • Deals only with datastreams that contain (XML) metadata
    • Easily translate when/if CMDA is ready
  • 24.  
  • 25.  
  • 26. Inherited Datastreams
    • Define what metadata you’re tracking for a given set of objects
    • Define how you store that metadata
      • URL of datastreams
      • Schema or template of XML
  • 27. One model to another…
    • XForms model can be derived from content model
    • Primary Concerns
      • Location of XML to edit
      • URL of service for submitting edited XML
  • 28. The Views Follow…
    • Any number of Xforms Views can be created that manipulate your XML by means of its XForms Model
  • 29. XForms Disseminators
    • For a simple context, XForms model and view can be hard coded as datastreams
    • For a more dynamic system, both can be generated on the fly using disseminators
  • 30. Transitive Qualities
    • An XForms model/view pair can be applied to any object that conforms to the content model
    • (CMDA aims to support this)
  • 31. Summary
    • We apply a simple content model to objects, dictating that certain XML datastreams must exist
    • XForms model and view can be exposed for those objects using disseminators
  • 32. Exposure Getting from XML/XForms to a UI
  • 33. Renderer: OrbeonForms
    • Server Side XForms
    • XHTML templates & CSS
    • Supports custom javascript
    • XPL processing
  • 34. XForms Renderers
    • Server Side vs Client Side
    • Firefox Extension
    • Eclipse/SWT Component
    • Growing list on Wikipedia…
  • 35. XForms in Context
    • Editing XML datastreams is only a part of our users’ concerns
    • Must create complete UIs
  • 36. Tapestry Approach
    • Full UI from many parts
    • AJAX Tricks
    • Integrated at service level
  • 37.  
  • 38.  
  • 39. Observations Some technical observations/speculations about XForms and Fedora
  • 40. The RESTful Approach
    • Ruby on Rails
    • “ Being a good web citizen”
    • SOA done right (and easily)
  • 41. REST and HTTP Verbs
    • Example URL: …/fedora/service/manage/demo:77/DC
    • PUT : Create Datastream
    • POST : Update Datastream
    • GET : Get Datastream
    • DELETE : Delete Datastream
  • 42. XForms, REST & Fedora
    • REST, HTTP and CRUD
    • XForms Actions & Methods
    • Minimize code between User and Fedora
  • 43. XForms in CMDA?
    • What stage of development?
    • Is XForms a good fit?
    • How to move forward?
  • 44. Thank You. For more information and code samples, visit http://www.yourmediashelf.com/reference/xforms Matt Zumwalt MediaShelf, LLC http://www.yourmediashelf.com