MForm webcontrols - Description
What is MForm?

MForm is a set of webcontrols that can be used to create, modify and view typed XML data. Typed XML is such an XML document, whose structure is well-known and defined. The special thing about MForm is that it provides a way to easily generate a fully functional form from the given data definition. This data definition must represent the aforementioned typed XML, this can be either XML Schema, WSDL or XML-serializable type. After the generation process, the form can be freely modified either in .aspx or in code.

What was MForm designed for?

MForm was created to provide a fast, consistent and elegant way for collecting large data inputs.

Creating web forms is usually a mundane and repetitive task. There needs to be a label, a text box and a validator for each of the fields. Controls such as a Repeater and a GridView may limit work expense if the collected data is tabular but data structures tend to be more complicated. MForm aims at resolving these problems.

How is MForm written?

MForm is built on top of the ASP.NET 3.5 framework. MForm is created from a tree of custom web controls, of which each represents a part of XML data definition. From the technical point of view, MForm uses some concepts from the Ajax control toolkit library and uses jquery library on the client side.

How does it look like?

You can watch the video in order to see how web forms can be created using MForm.

OK, it looks promising. How can I start?

The easiest way to create MForm control is to generate one with the use of Visual Studio designer. In order to do it, you need to have some representation of the XML structure, which the MForm control will reflect. As already mentioned, this data representation can be a XML schema file, a WSDL file/url or a managed library with XML-serializable types. If you have not heard of XML Schema before, you might want to read this introduction. A WSDL on the other hand is a web service definition language.

You will find the tutorial on how to generate your first MForm webcontrol in here.

The latest MForm sources can be found at CodePlex.

A detailed introductory article can also be found at CodeProject.

Can any XML schema / WSDL be used with the generator?

The generator is capable of converting XML schema or WSDL definitions into a corresponding MForm controls structure. However, there are some limitations, either because the MForm controls cannot operate on some typed XML features, or because the generator cannot convert some schema definitions. These limitations will be investigated when MForm reaches a stable release.

List of known limitations:

  • xsd:any element from XML Schema definition is ignored,
  • recursively used element definitions (i.e. element definition which as one of its descendants has itself) are ignored,
  • Two or more elements with the same qualified name but different definition under one schema particle (xsd:sequence or xsd:choice or xsd:all) may result in an unexpected data input.
  • xsd:group with maxoccurs higher than 1 is treated as with maxoccurs equal 1,
This page is hosted free, courtesy of GoDaddy.com®
Copyright © 2009 GoDaddy.com, Inc. All Rights Reserved.
Domain names from $1.99
Visit GoDaddy.com for the best values on: Domain names, Web hosting and more! See product catalog.