A form-based query interface is usually the preferred means to provide an unsophisticated user access to a database. Not only is such an interface easy to use, requiring no technical training, but it also requires little or no knowledge of how the data is structured. However, forms do have drawbacks compared to other querying mechanisms. Firstly, forms are highly restrictive, i.e., they only support a precise set of queries and disallow all others. Secondly, the form developer is required to have complete ...
A form-based query interface is usually the preferred means to provide an unsophisticated user access to a database. Not only is such an interface easy to use, requiring no technical training, but it also requires little or no knowledge of how the data is structured. However, forms do have drawbacks compared to other querying mechanisms. Firstly, forms are highly restrictive, i.e., they only support a precise set of queries and disallow all others. Secondly, the form developer is required to have complete knowledge of the database schema and also have expertise in a structured query language to create useful forms. Thirdly, generating forms is repetitive, tedious and largely manual. This thesis addresses these shortcomings of forms-based interfaces while maintaining ease-of-use. First, the schema and content of the database are used to identify query foci and build forms centered on these entities. Choosing entities, attributes and relationships of likely interest to users and the types of query operations to support is the major challenge of this interface design approach. If queries posed by users to a database are known, form-design can be query-driven and this can improve upon schema-based form generation. Given a trace history of queries to a database the system can generate a minimal set of forms that can be used by subsequent users to express any query similar to any in the workload. Traditional forms are static and can only express a limited set of queries. Users are often unable to issue a desired query to the database because the available forms do not support it. This thesis presents a mechanism that lets a user modify an existing form to express the desired query. These modifications can be specified using operations no harder than form-filling. Finally, unlike auto-generated forms, forms in use today make use of creative layout design, helper text and advanced form controls and widgets to make query specification easier. While these features can be hard to automate and generalize, many of them are incorporated into this automatic form generation system improving usability.
Overview