RELATED APPLICATION INFORMATION
This application is a Continuation application of co-pending U.S. patent application Ser. No. 12/847,484 filed on Jul. 30, 2010, incorporated herein by reference in its entirety.
- Top of Page
1. Technical Field
The present invention relates to web page navigation control and more particularly to a system and method for automatically providing navigation through pages based on a position and/or content of data known or entered into a web form or page.
2. Description of the Related Art
Complexities result from a lack of integrated document packaging for current document formats which represent composite forms in collaborative business processes. Underlying document formats that flow through business processes typically are existing formats such as PDF, DOC, HTML, or various proprietary XML formats. Proprietary, or vendor-centric, formats are not suitable representations for complex composite forms due to the closed nature of their formats. Complex forms require new or extended representations for issues such as data sharing across document fragments, transfer of control among fragments, electronic signatures that span document fragments, and style sheets for coherent presentation and interaction.
Web formats today, such as HTML, do not support packaging of composite resources directly—the page is the unit of content storage. Hyperlinks permit navigation among related resources but do not define collections of related content. Formats that collect related artifacts including HTML pages, images, and metadata into internally coherent entities are intended for archiving websites for historical or offline purposes, not as runtime platforms.
Most solutions to the packaging of composite web applications therefore are specific to the middleware platform on which the web application is deployed. Web application archive format (WAR) files are used by JEE web application servers to package and deploy the set of artifacts needed by a given web application including HTML pages or the Java Server Pages that create them, Java beans for storing and validating data during user interaction, and static resources such as images.
JEE web applications commonly include flow-based controllers such as Struts to control the internal behavior of the various artifacts included in the WAR file and to invoke back-end services as required. Generally, web archive (WAR) files define a packaging mechanism for composite web applications, but they do so in a platform-specific (JEE) way. Such archives are not transportable to other runtimes including non-JEE application servers or client-based runtimes.
Going beyond packaging formats, web archive files are deployment not runtime artifacts and hence do not define a network access protocol, or URL pattern, for accessing their contents. Web archives similarly provide no support for aggregating multiple content sources when several end-users are involved in a document-centric business process.
The emerging W3C format for widgets makes similar use of zip-based archives for packaging but, as in the JEE WAR example above, lacks requirements or support for an interactive protocol or instance-specific data storage. URI standards being defined for widgets are intended to resolve references internal to the widget from one resource to another. Prior work on composite document packaging focuses on adapting document content for rendering to multiple devices.
In traditional workflow, the token of control is the central focus and content (whether in documents or otherwise) flows through the process from one artifact to another as a result of the execution of a control path defined by the workflow. Documents and document behavior become secondary to control flow.
High level declarative languages for control are required just as they are for data and presentation. Many of today's complex forms processing systems require authors to “escape out” of their document-centric languages when describing behavior, even to manage document presentation and validation in single workflow steps with individual users. Document-centric formats that do not extend to behavioral control increase complexity due to the need to map repeatedly between declarative and procedural programming models.
Declarative languages for document behavior may nonetheless be expressed in multiple conceptual models, including flow-based languages with adaptations for human interaction, state-based languages, and time-based languages. These declarative languages share the advantage of being independent of the specific runtime middleware platform being used to support the composite web application.
Without a simple means to represent large or complex forms as composite documents, monolithic documents result in performance and scalability limitations, particularly on a logical client. Large documents are slow to transmit, parse, and display and consume large amounts of storage. When large forms applications are represented with a single XML document, the result is excessive, and sustained demand on memory resources is needed to provide a performant user experience. This is demanding on a rich client program, but it is even more demanding when the logical client includes a server program to present the parts of the document to an end-user through a web browser. The server side of the solution has the same performance challenges as a rich client for one user, but also does not scale up beyond a few dozen concurrent users per CPU.
- Top of Page
A system and method for web application navigation control includes relating data entry fields in a page stored in computer readable storage memory with non-procedural computed dependency constraints that provide navigation control when a condition is met. A presence of user-side information is checked to determine if the condition is met and the indicated navigation control is to be invoked. If the condition is met, a trigger event is evoked to navigate to a new page based on at least one of a set of entry fields where data was entered in and a type of data content entered in the entry fields without guidance from procedural navigation code.
A system for web application navigation control includes a server including a dependency graph relating data entry fields in a page with a navigation instruction that provides navigation control when a condition is met. An interaction module is configured to be sensitive to at least one of user-side information entry and known information to determine if the navigation instruction is to be invoked. A processor is configured to execute the navigation instruction in accordance with a presence or absence of data values or conditions over those values to navigate to a new page based on at least one of a set of entry fields data was entered in and a type of data content entered in the entry fields without guidance from procedural navigation code.
A system and method for web application navigation control includes updating navigation data models used in navigation constraints with received data from an end-user or system. Without needing a centralized application-specific controller, from a collection of extensible navigation rules associated with each page of a plurality of pages, the extensible navigation rules are automatically selected which depend on changed data values and need re-evaluation. The navigation constraints associated only with the pages potentially changing their ready state to execute from among the plurality of pages in an entire application are evaluated to determine which pages are ready to run based on updated data from the navigation data models. A preferred page to be actually navigated to next is selected from among a set of all available and ready pages by execution of a set of second and separate navigation constraints using results of the navigation constraints of the evaluating step.
These and other features and advantages will become apparent from the following detailed description of illustrative embodiments thereof, which is to be read in connection with the accompanying drawings.
BRIEF DESCRIPTION OF DRAWINGS
- Top of Page
The disclosure will provide details in the following description of preferred embodiments with reference to the following figures wherein:
FIG. 1 is a diagram showing a monolithic document decomposed and aggregated into an interactive web document (IWD) in accordance with the present principles;
FIG. 2 is a diagram showing resources using svc attributes with relative URIs to access other resources in a same IWD;
FIG. 3 is a diagram showing an illustrative page navigation submission sequence;
FIG. 4 is a diagram showing submission patterns for IWD interaction control;
FIG. 5 is a diagram showing an interaction controller submission sequence for interaction control based page navigation;
FIG. 6 is a diagram showing submission patterns for IWD interaction control using logical navigation targets;
FIG. 7 is a block/flow diagram showing a system/method for web page navigation control in accordance with one illustrative embodiment;
FIG. 8 is a block/flow diagram showing a system/method for web page navigation control in accordance with another illustrative embodiment; and