XML Forms Generator
A standards-based, data-driven Eclipse plug-in that generates functional forms with XForms mark-up embedded within an XHTML document from a XML data instance or a WSDL document.
Date Posted: April 12, 2005
|
|
 |
 |
|
Update: December 5, 2007
Version 2.0.3: Performance updates; support for Eclipse 3.3; and support for Eclipse Web Tools (WTP) 2.0.1.
Overview:
What is the XML Forms Generator?
This standards-based, data-driven Eclipse plug-in generates forms that adhere to the XForms 1.0 standard, using as a starting point either Web Service Description Language (WSDL) documents or XML instance documents having optional XML Schema backing models. The generated forms adhere to the XHTML and XForms 1.0 standards and can be viewed in popular XHTML and XForms renderers.
When generating forms from an XML instance document, the XML Forms Generator has access to the XML Schema specifications of the data domain to which the XML instance document belongs. Thus, for each data item in the instance document, the Generator automatically creates the appropriate form constructs. Those constructs include type constraints, length constraints, control types (drop-down list, text input, range), and iterative structures.
The XML Forms Generator can also generate XHTML/XForms documents from WSDL source documents. Tools are also included for the generation and testing of JSP (Java™ Server Page) response templates.
The XML Forms Generator is integrated into the Eclipse workbench, and in many cases it can generate valid, working forms with only a couple of mouse clicks.
A set of animated demonstrations of the XML Forms Generator, as well as extensive documentation, is included; it is integrated into the Eclipse Help system.
The XML Forms Generator runs on Windows® and Linux® (see the Requirements section for details).
How does it work?
As an Eclipse plug-in, the XML Forms Generator provides tight integration with Eclipse and Eclipse-based products, with convenient user interface elements, including context menus, wizards, and preference pages.
XML schemas associated with XML instances provide the metadata required for the detection and generation of varying constructs, such as type constraints, length constraints, control types (drop-down list, text input, range), and iterative structures over array types.
When an instance XML document is used as the starting point for form generation, its corresponding XML Schema provides that metadata, but the instance itself determines the elements and attributes for which entry fields will be generated. Therefore, the XML instance document acts as a template, permitting a data-driven approach to form generation. With the XML Forms Generator's data-driven approach, the output generated by just a few mouse clicks is a functioning form that is ready for deployment.
When a WSDL document is used as the starting point for form generation, its properties (operations, message parts, type definitions, etc.) are analyzed; the WSDL document itself makes use of an EMF model of WSDL and XML Schema. This analysis then allows for the creation of a prototypical XML instance document that in turn ("under the covers") drives the generation of a functioning form that is ready for deployment.
The output of the XML Forms Generator conforms to the XHTML and XForms 1.0 standards. The generated forms therefore can immediately be rendered in popular XForms-capable renderers and customized in existing editors meant to work with documents adhering to those standards.
What's new in the recent update?
The December 3, 2007, update contains several enhancements:
- support for Eclipse 3.3
- support for Eclipse Web Tools 2.0.1 (WTP)
- performance improvements when generating XFORMS from XML/WSDL sources that reference XML schemas (replaces EMF model with Xerces PSVI for schema parsing)
- ability to create XForms binds from schema type information
- ability to hide Delete button for repeat structures when there is one or fewer rows of a repeated section
- fix for PrefixResolver problem with IBM®/Sun Java Development Kit (JDK)
- miscellaneous fixes and improvements.
|
|
 |

|  | About the technology author(s): Kevin E. Kelly, a senior technical staff member with IBM, works on software standards. Mr. Kelly has been a member of the W3C XForms Working Group and is chairman of W3C Compound Document Formats Working Group. His focus is on developing open standards-based technologies for faster, more efficient standards adoption through XML-based and model-driven approaches. Before joining IBM, Mr. Kelly spent eight years at Rational Software working on UML modeling and Java technologies.
Jan Joseph Kratky is the lead developer for the Compound XML Document Editor and XML Forms Generator. Mr. Kratky is currently a software engineer with IBM Emerging Software Standards in Research Triangle Park, N.C. He holds an M.S. from Rensselaer Polytechnic Institute and a B.A. from Cornell University. A Sun Certified Java Programmer and Sun Certified Web Component Developer, Mr. Kratky has worked with Java technolgies since 1997 and with Eclipse technologies since 2001.
Steve Speicher, a senior software engineer with IBM, works on software standards. His current focus is on making use of tools and model-driven development to improve the process of creating standards. Mr. Speicher has previously worked on software development tools in the Rational division and IBM internal tools. He holds a B.S. in computer science and applied mathematics, both from Kent State University.
Keith Wells is the technical and team lead for Xforms development in the IBM Emerging Standards in Research Triangle Park, N.C. Currently, Mr. Wells is a member of the W3C Forms Working Group and is exploring opportunities with XForms, emerging software standards, industry standards, and other XML-based technologies.
Gee Chia, an advisory software engineer with IBM, currently works on emerging software standards development in Research Triangle Park, N.C. Her focus is on XML Forms Generator, emerging software standards, and industry standards. Ms. Chia has previously worked on developing IBM software products.
Java and all Java-based trademarks are trademarks of Sun Microsystems, Inc. in the United States, other countries, or both.
Microsoft, Windows, Windows NT, and the Windows logo are trademarks of Microsoft Corporation in the United States, other countries, or both.
Linux is a registered trademark of Linus Torvalds in the United States, other countries, or both.
IBM is a trademark of IBM Corporation in the United States, other countries, or both.
Other company, product, or service names may be trademarks or service marks of others.
| |
|
| |