X6:%20neXt%20pleX%20Xml%20fleXibility%20eXperience:%20Xforms - PowerPoint PPT Presentation

About This Presentation
Title:

X6:%20neXt%20pleX%20Xml%20fleXibility%20eXperience:%20Xforms

Description:

Get contract.xhtml location on file system (on database/registry info) ... Display myForm.xhtml in Shdocvw. Save instance XML as 7315.999 ... – PowerPoint PPT presentation

Number of Views:107
Avg rating:3.0/5.0
Slides: 35
Provided by: remi5
Category:

less

Transcript and Presenter's Notes

Title: X6:%20neXt%20pleX%20Xml%20fleXibility%20eXperience:%20Xforms


1
X6 neXt pleX Xml fleXibility eXperience Xforms
Session No. 10C
  • Willem de Vries, Remia
  • Simon Jasperse, Kiboko

2
Agenda
  • Introduction
  • Background Flexibility and XML
  • XForms positioning and concepts
  • Application within Remias architecture
  • XForms inside the models
  • Demo
  • QA

3
Introduction
  • Remia Manufacturer of Sauces and Margarine
  • Kiboko Independent software consultancy
  • Software development in 2E and Plex
  • Strategic choice for model based development
  • Development speed
  • Reduced maintenance
  • Pattern-advantage main reason for Plex

4
Flexibility in applications
  • Application Customer Relationship Management
  • Requirement high level of configurability
  • For fast adaptation to business-requirements
  • To empower users
  • Example User Definable Data pattern
  • Example Document management module

5
User definable data pattern and XML
  • Two level (Feature / Feature aspect)
    representations of flexible data-structure
  • XML as a tool to provide single screen layout
  • XML-pattern for creation of data-document
  • XSLT for user-definable HTML-generation
  • Use of XML extended beyond HTML- presentation
  • Short DEMO

6
Document Management
  • Business documents like contracts, letters,
    invitations, resumes, product-specification-s
    heet
  • User defines functional types
  • Creation of actual Docs from Plex-application
  • Handling of external application (e.g. MS-Word)
  • Interfacing application-data to document
  • Support for external applications programmed
    individually

7
Document-management
Technical Concept
MS-Word MS-Excel
Functional Concept
8
Flexibility results
  • Results of Flexible data structure
  • Specific layouts for specific purposes
  • Users like single-screen overview
  • Results of Document system
  • Fast configuration of forms
  • General available competence office-templates
  • Documents managed within applications

9
Flexibility more to wish ?
  • Drawbacks of Document system
  • Information inside not retrievable
  • Storage / transfer too costly
  • Too little guidance / validation for users User
  • Single-screen output
  • Users ask for Single-screen input instead of
    wizards and tabs

10
Some requirements for documents
  • Form-like interface to offer guidance and
    validation
  • Easily configurable (as Word / Excel templates)
  • Integration with Plex-application based upon
    data-interface
  • Structured (XML-) document to support
  • searchability
  • Integration-facilities in back-office

11
Possible directions
  • Altovas Authentic
  • Microsofts Infopath
  • Scripting a generalized HTML-solution
  • XForms W3C next generation HTML-forms
  • Promise of open standard
  • Ambitious requirements
  • Growing support by implementors

12
Global features of XForms
  • Events, Actions and Validation declarative
  • Full support for XPath for calculations and
    validations
  • Schema-support for data-types and validation
  • Clean separation of data logic and presentation
  • Highly regular XML structure
  • Abstract controls for device-independence
  • Processor decides the actual presentation
  • E.g. Full browser, Mobile phone, Voice

13
Flexibility more to wish ?
  • ltfpmodel id"rm_model" gt
  • ltfpinstance id"rm_doc"gt
  • ltContract xmlns""gt
  • ltRelatie NodeID"1"gt
  • ltRelatienaamgtEurodisneylt/Relatienaamgt
  • lt/Relatiegt
  • ltCurrencygtEURlt/Currencygt
  • ltContractDategtlt/ContractDategt
  • ltContractDetailsgt
  • ltDetailLinegt
  • ltSubtotal /gt
  • lt/DetailLinegt
  • lt/ContractDetailsgt
  • lt/Contractgt
  • lt/fpinstancegt
  • ltfpbind id"conDate" nodeset"/Contract/Contract
    Date" required"true()" type"xsddate" /gt
  • ltfpbind id"relNaam" nodeset"/Contract/Relatie/
    Relatienaam" required"true()" /gt
  • ltfpbind nodeset"/Contract/ContractDetails/Detai
    lLine/Subtotal" calculate"../Quantity
    ../Price" readonly"true()" /gt
  • ltfpsubmission id"rm_submit1" replace"none"
    action"url" method"post" ref"instance('rm_doc')
    " /gt

14
Main elements model
ltbodygt ltfpinput bind"conDate"gt ltfplabelgtCont
ract Datelt/fplabelgt ltfpalertgtPlease enter a
valuelt/fpalertgt lt/fpinputgt ltfpselect1
bind"conCurrency" style"displayinline"gt ltfpl
abelgtCurrencylt/fplabelgt ltfpitem style"width
200px"gt ltfplabelgtEurolt/fplabelgt ltfpvalue
gtEURlt/fpvaluegt lt/fpitem/gt lt/fpselect1gt ltfp
repeat id"r1" nodeset"/Contract/ContractDetails/
DetailLine"gt ltfpoutput ref"Subtotal"gt ltfpl
abelgtSubtotallt/fplabelgt lt/fpoutputgt lt/fprepe
atgt ltfpsubmit submission"rm_submit1"gt ltfplab
elgt Ready lt/fplabelgt lt/fpsubmitgt lt/bodygt
15
Main elements result
16
Implementations (examples)
  • Client-side
  • Mozquito DENG (Flash)
  • Supported in every browser
  • X-Smiles (Java)
  • Strong device-independence
  • X-port Formsplayer (IE 6 plug-in)
  • Currently most complete implementation
  • Server-side
  • Chiba (open source)
  • Novells exteNd (Silverstream) ? Mozilla
  • IBMs Xforms Package (Alphaworks) ? Mozilla

17
The pilot XForms-Documents
  • Development of a new DocProgramma
  • Resulting document is .XML
  • Interfacing from application-data
  • Form based on XForms
  • Enables
  • Smaller documents (storage / transfer)
  • Validation
  • Processing by back-office applications

18
Xforms Demo Document Flow
  • Document travels through organisation workflow
  • Approval / Edit / Distribution / Function

19
Xforms Demo Documentflow
  • Configuration determines document flow / status
  • Steps allocated by user function
  • Todo list

20
Xforms Demo Documentflow
  • User can start document types based on user
    function
  • Select a style refers to programme (word /
    xForms)

21
Xforms Demo The Application
  • DEMO

22
Xforms Demo Create xForm Document
  • Xform Pattern
  • Write Relation data to C/temp/naw.xml
  • uses Remia XML pattern
  • Get contract.xhtml location on file system (on
    database/registry info)
  • Load contract.xhtml into XMLDOM
  • Load naw.xml into XMLDOM(2)
  • Parse naw.xml data into contract.xhtml.Model.insta
    nce
  • Save as C/temp/myForm.xhtml
  • Display myForm.xhtml in Shdocvw
  • Save instance XML as 7315.999

23
Xforms Demo Create xForm Document
24
Xforms Demo Saved XML
  • Contract XML saved on file system as 7568.45

25
Xforms Demo Edit xForm Document
  • DEMO

26
Xforms Demo xForm Functionality
Data Typing
No Scripting!
  • DEMO

Repeat
27
Xforms Demo Documents
  • Show XMLs

28
Xforms Demo Plex Integration
Plex
  • DEMO

Translate to Logical Event
29
Xforms Demo Register Event
WebBrowser1.Navigate FileName
Function RegisterForEvent(evtSource,evtName,Handl
erName) ' get a pointer to the function with the
given name dim fpHandler set fpHandler
getRef(HandlerName) 'bind it to the requested
event name evtSource.attachEvent
evtName,fpHandler End Function
Sub WebBrowser1_DocumentComplete(pDisp, URL)
Set g_document WebBrowser1.Document RegisterFor
Event g_document.getElementById(submitID),
"xforms-submit-done","getAddr_Submit_Done" End
Sub
Function getAddr_Submit_Done(e) Ad.LogicalEvent(
"xfSubmit") End Function
30
Xforms Demo Save Instance
At LogicalEvent("xfSubmit") set g_document
WebBrowser1.Document set model
g_document.getElementById(ModelID) set formDoc
model.getInstanceDocument(InstanceID) formDoc.sav
e (FileName) go sub terminate
31
Xforms Demo Experiences
  • xForms is promising, maturing
  • Integration with Plex simple
  • Better document handling Size / Data retrieval
  • Layout xForms in css needs practice!

32
Ideas for extension
  • Physical separation of Model and Layout
  • Layout as pure user-responsibility
  • Extending the pattern around documents
  • Support for database-lookups
  • Coupling of printing/export facilities
  • ..
  • Model-controlled structure for User-defined data
  • Processing XML-results to database
  • Meta-programming for panel-alternative

33
References
  • W3C
  • www.w3.org/MarkUp/Forms/
  • Micah Dubinko Xforms essentials
  • http//xformsinstitute.com/essentials/
  • x-port.net Ltd
  • www.formsplayer.com
  • DSTC University of Queensland
  • xforms.dstc.edu.au/index.html
  • Novell
  • developer.novell.com/xforms/

34
Xforms Demo Discussion
  • devries_at_remia.nl
  • simon_at_kiboko.nl
  • ppt at www.kiboko.nl
Write a Comment
User Comments (0)
About PowerShow.com