Login| Sign Up| Help| Contact|

Patent Searching and Data


Title:
A PAGE RENDERING METHOD FOR A SMALL FORM FACTOR DEVICE
Document Type and Number:
WIPO Patent Application WO/2011/091867
Kind Code:
A1
Abstract:
This invention relates to a method of rendering a field data collection system (FDCS) page on a small form factor (SFF) device. The SFF device comprises a user interface including a miniature visual display and a data repository containing a plurality of FDCS page script definitions. Each of the script definitions has a linear progression of questions with conditional logic therein. The method comprises the steps of retrieving a script definition of the FDCS page from the data repository, parsing the script definition, loading the parsed script definition into a dynamic memory array and building the FDCS page from the parsed script definition on the visual display. On the user inputting data in the FDCS page that necessitates a FDCS page content update, a pointer is accessed from the parsed script definition and used to access additional FDCS page content to update the parsed script. By having such a method, the FDCS page will be rendered in such a way that it will be very simple to navigate and faster to render.

Inventors:
HAYES LEONARD PATRICK (IE)
Application Number:
PCT/EP2010/062992
Publication Date:
August 04, 2011
Filing Date:
September 03, 2010
Export Citation:
Click for automatic bibliography generation   Help
Assignee:
AMT SYBEX RES LTD (IE)
HAYES LEONARD PATRICK (IE)
International Classes:
G06F9/44
Foreign References:
US7136865B12006-11-14
Other References:
None
Attorney, Agent or Firm:
MCCRANN, Sarah et al. (8a Sandyford Business ParkSandyfor, Dublin 18, IE)
Download PDF:
Claims:
Claims:

(1) A method of rendering a field data collection system (FDCS) page on a small form factor (SFF) device, the SFF device comprising a user interface including a miniature visual display, a data repository containing an FDCS page script definition, the script definition structured having a linear progression of questions with conditional logic therein, a script player, a dynamic memory array, a page builder and an event monitor, the method comprising the steps of: retrieving the script definition of the FDCS page from the data repository; parsing the script definition to remove at least one of a repeating group and a subsidiary conditional question from the script definition and insert a pointer in its place in the parsed script definition; loading the parsed script definition into the dynamic memory array; building and displaying the FDCS page from the parsed script definition on the visual display; and on the user inputting data in the FDCS page that necessitates a FDCS page content update, carrying out the following steps: accessing a pointer from the parsed script definition in the dynamic memory array; using the pointer to access additional FDCS page content from the data repository; and updating the parsed script definition in the dynamic memory array with the additional FDCS page content. A method as claimed in claim 1 in which on the parsed script definition being updated, the page builder updates a scroll bar of the FDCS page on the visual display.

A method as claimed in claim 2 in which on the parsed script definition being updated, the page builder subsequently refreshes the FDCS page on the visual display.

A method as claimed in claim 3 in which the step of subsequently refreshing the FDCS page on the visual display further comprises the steps of: comparing the current view of the FDCS page stored in an internal memory array with the updated parsed script definition; and waiting until the current view of the FDCS page requires modification due to the updating of the parsed script definition, and only then refreshing the FDCS page on the visual display.

A method as claimed in claim 3 or 4 in which the step of subsequently refreshing the FDCS page on the visual display comprises: refreshing the FDCS page on the visual display upon detecting a user scrolling action.

A method as claimed in any preceding claim in which the method comprises the step of the event monitor storing the data inputted by the user in an output dynamic memory array.

A method as claimed in claim 6 in which the step of the event monitor storing the data inputted by the user in an output dynamic memory array comprises storing the data inputted by the user in a sub-array of the dynamic memory array.

(8) A method as claimed in any preceding claim in which there are provided a plurality of scripts stored in the data repository and the method comprises the initial step of the SFF device user selecting one of the scripts from the data repository.

(9) A method as claimed in any preceding claim in which the dynamic memory array comprises sizing information and the page builder retrieves the sizing information prior to displaying the FDCS page from the parsed script definition on the visual display.

(10) A method as claimed in any preceding claim in which when all the questions in the parsed script definition have been answered, the answers are stored in persistent storage on the SFF device.

(11) A method as claimed in any preceding claim in which when all the questions in the parsed script definition have been answered, the answers are collated into an XML file and transmitted to a remote server.

(12) A computer program having program instructions to cause a SFF device to perform the method steps of any of claims 1 to 11. (13) A computer program as claimed in claim 12 embodied on a carrier.

(14) A computer program as claimed in claim 13 in which the carrier is a record medium. (15) A SFF device having the computer program as claimed in claim 12 or 13 stored thereon.

(16) A small form factor (SFF) device having a field data collection system (FDCS) component, the SFF device comprising: a user interface including a miniature visual display; a data repository containing an FOCS page script definition, the script definition having a linear progression of questions with conditional logic therein; a script player having means to parse the script definition to remove at least one of a repeating group and a subsidiary conditional question from the script definition and insert a pointer in its place in the parsed script definition; a dynamic memory array to store the parsed script definition; a page builder operable to display the FDCS page from the parsed script definition on the visual display; an event monitor operable to detect a user inputting data that requires a FDCS page content update and notify the script player that a FDCS page content update is required; and the script player further comprising means to access a pointer from the parsed script definition in the dynamic memory array, access additional FDCS page content from the data repository using the pointer; and update the parsed script definition in the dynamic memory array with the additional FDCS page content.

(17) A SFF device as claimed in claim 16 in which the page builder has means to update the scroll bar of the FDCS page on the visual display.

(18) A SFF device as claimed in claim 17 in which the page builder has means to subsequently refresh the FDCS page on the visual display.

(19) A SFF device as claimed in claim 18 in which the page builder has means to: compare the current view of the FDCS page stored in an internal memory array with the updated parsed script definition; and wait until the current view of the FDCS page requires modification due to the updating of the parsed script definition, and only then refreshing the FDCS page on the visual display.

A SFF device as claimed in claims 16 to 19 in which there is provided an output dynamic memory array for storing the data inputted by the user.

A field data collection system (FDCS) comprising a remote server and at least one remote SFF device as claimed in claims 16 to 20.

Description:
"A page rendering method for a small form factor device"

Introduction This invention relates to a method of rendering a field data collection system (FDCS) page on a small form factor device.

FDCS are used to collate information taken from a plurality of remote locations. For example, FDCS are used to monitor sub-station equipment in an electrical power grid. Test engineers periodically visit the site of the sub-station where they perform various tests and checks. They enter the results of their tests and checks into a portable device and when finished they can upload the results from the portable device to a central server. Small form factor (SFF) devices such as mobile phones, smart phones and PDAs are becoming increasingly popular for use as the portable device in the FDCS. These SFF devices are compact and lightweight and are suitable for transportation to the remote location. There is however a significant problem with the use of SFF devices in a FDCS. Due to the diminutive size of the visual display of the SFF devices, it is often difficult to display a suitable FDCS page on the visual display. The FDCS page typically comprises a large number of questions relating to the information to be collected, thereby resulting in a large FDCS page. Generally speaking, SFF devices are unsuitable for displaying large pages. Large pages are difficult to navigate using a SFF device and due to the limited processing capability of the SFF device, these large pages often take a long time to render on the SFF device which increases the time and cost of collecting the data.

One solution has been to minimise the FDCS page and allow the user to zoom in and out of various sections of the page. Effectively, a smaller version of the page used by PCs or like equipment with much larger visual displays is miniaturised for display on the SFF device. However, such solutions are generally unsuitable with FDCS due to the fact that the large FDCS page is difficult to navigate on a miniature visual display and it is not uncommon for various tests or checks to be overlooked. Furthermore, the large FDCS page still takes a long time to render on the visual display which increases the time necessary to collect the data. It is an object of the present invention to provide a method of rendering a field data collection system page on a small form factor device that overcomes at least some of the problems with the known solutions.

Statements of Invention

According to the invention there is provided a method of rendering a field data collection system (FDCS) page on a small form factor (SFF) device, the SFF device comprising a user interface including a miniature visual display, a data repository containing an FDCS page script definition, the script definition having a linear progression of questions with conditional logic therein, a script player, a dynamic memory array, a page builder and an event monitor, the method comprising the steps of: retrieving the script definition of the FDCS page from the data repository; parsing the script definition to remove at least one of a repeating group and a subsidiary conditional question from the script definition and insert a pointer in its place in the parsed script definition; loading the parsed script definition into the dynamic memory array; building and displaying the FDCS page from the parsed script definition on the visual display; and on the user inputting data in the FDCS page that necessitates a FDCS page content update, carrying out the following steps: accessing a pointer from the parsed script definition in the dynamic memory array; using the pointer to access additional FDCS page content from the data repository; and updating the parsed script definition in the dynamic memory array with the additional FDCS page content.

By having such a method, the FDCS page will be rendered in such a way that it will be very simple to navigate and faster to render. This is achieved in part by providing the questions as a linear progression of questions with inherent conditional logic that allows for data dependent flow of control. The script definition of the page is parsed to remove any subsidiary conditional questions and/or repeating groups and those subsidiary conditional questions and repeating groups are replaced with pointers. The parsed script definition may then be stored in a dynamic array. The page is built from the parsed script definition in the dynamic array resulting in a page that is faster to render. If subsidiary conditional questions and repeating groups are not required during the execution of the page, they will not be displayed and only the information that it is absolutely necessary is rendered on the visual display. During use, if a user action causes a pointer to be invoked, additional FDCS page content may be retrieved and added seamlessly to the parsed script definition in the dynamic array and the updated parsed script definition may be rendered when required.

In one embodiment of the invention there is provided a method in which on the parsed script definition being updated, the page builder updates a scroll bar of the FDCS page on the visual display. By doing so, this provides an indication that the content of the page has changed without requiring a full refresh of the page. This reduces processing time and resources required on the SFF device. In another embodiment of the invention there is provided a method in which on the parsed script definition being updated, the page builder subsequently refreshes the FDCS page on the visual display. By subsequently refreshing the FDCS page, the page is only refreshed when it absolutely needs to be refreshed and this reduces the processing burden on the device.

In another embodiment of the invention there is provided a method in which the step of subsequently refreshing the FDCS page on the visual display further comprises the steps of: comparing the current view of the FDCS page stored in the internal memory array with the updated parsed script definition; and waiting until the current view of the FDCS page requires modification due to the updating of the parsed script definition, and only then refreshing the FDCS page on the visual display.

By providing such a method, the FDCS page does not have to be refreshed until the new additional FDCS page content must be displayed on the visual display. This reduces the number of refreshes that must be done as many changes to the page can be combined into a single page refresh thereby improving system performance.

In a further embodiment of the invention there is provided a method in which the step of subsequently refreshing the FDCS page on the visual display comprises: refreshing the FDCS page on the visual display upon detecting a user scrolling action.

In another embodiment of the invention there is provided a method in which the method comprises the step of the event monitor storing the data inputted by the user in an output dynamic memory array. By storing the data inputted by the user in a dynamic memory array, the size of the output file can also vary depending on the size of the FDCS page which provides a very flexible method and system. In one embodiment of the invention there is provided a method in which the step of the event monitor storing the data inputted by the user in an output dynamic memory array comprises storing the data inputted by the user in a sub-array of the dynamic memory array. In a further embodiment of the invention in which there are provided a plurality of scripts stored in the data repository and the method comprises the initial step of the SFF device user selecting one of the scripts from the data repository. ln another embodiment of the invention there is provided a method in which the dynamic memory array comprises sizing information and the page builder retrieves the sizing information prior to displaying the FDCS page from the parsed script definition on the visual display.

In one embodiment of the invention there is provided a method in which when all the questions in the parsed script definition have been answered, the answers are stored in persistent storage on the SFF device. In a further embodiment of the invention there is provided a method in which when all the questions in the parsed script definition have been answered, the answers are collated into an XML file and transmitted to a remote server.

In one embodiment of the invention there is provided a computer program having program instructions to cause a SFF device to carry out the method of rendering a field data collection system (FDCS) page on a small form factor (SFF) device. In one embodiment the computer program is embodied on a carrier. In one embodiment, the carrier is a record medium. In one embodiment of the invention there is provided a SFF device having the computer program to cause a SFF device to carry out the method stored thereon.

In another embodiment of the invention there is provided a small form factor (SFF) device having a field data collection system (FDCS) component, the SFF device comprising: a user interface including a miniature visual display; a data repository containing an FDCS page script definition, the script definition having a linear progression of questions with conditional logic therein; a script player having means to parse the script definition to remove at least one of a repeating group and a subsidiary conditional question from the script definition and insert a pointer in its place in the parsed script definition; a dynamic memory array to store the parsed script definition; a page builder operable to display the FDCS page from the parsed script definition on the visual display; an event monitor operable to detect a user inputting data that requires a FDCS page content update and notify the script player that a FDCS page content update is required; and the script player further comprising means to access a pointer from the parsed script definition in the dynamic memory array, access additional FDCS page content from the data repository using the pointer; and update the parsed script definition in the dynamic memory array with the additional FDCS page content.

In a further embodiment of the invention the page builder has means to update the scroll bar of the FDCS page on the visual display.

In one embodiment of the invention the page builder has means to subsequently refresh the FDCS page on the visual display.

In another embodiment of the invention the page builder has means to: compare the current view of the FDCS page stored in an internal memory array with the updated parsed script definition; and wait until the current view of the FDCS page requires modification due to the updating of the parsed script definition, and only then refreshing the FDCS page on the visual display.

In a further embodiment of the invention there is provided a SFF device with an output dynamic memory array for storing the data inputted by the user. ln one embodiment of the invention there is provided a field data collection system (FDCS) comprising a remote server and at least one remote SFF device with the FDCS component thereon. Detailed Description of the Invention

The invention will now be more clearly understood from the following description of some embodiments thereof given by way of example only with reference to the accompanying drawings, in which:-

Figure 1 is a block diagram showing the components of a small form factor device in which the method according to the invention may be performed; and

Figure 2 is a flow diagram of the method according to the present invention.

Referring to the drawings and initially to Figure 1 thereof, there is shown the components of a small form factor (SFF) device, indicated generally by the reference numeral 1. It will be understood that for clarity most of the components are shown external the SFF device but in practice they will be internal, integral components. The components comprise a user interface 2 including a miniature visual display 3 having a scroll bar 4 and a data repository 5 containing a plurality of FDCS page script definitions 7, each script definition having a linear progression of questions with conditional logic therein. The components further comprise a script player 9, a dynamic memory array 11 , an output array 12, a page builder 13, a library 15, an internal memory array 17 and an event monitor 19.

Referring to Figure 2 of the drawings, there is shown a flow diagram of the method according to the invention, indicated generally by the reference numeral 20. The method comprises the initial step 21 of the script player 9 retrieving a script definition 7 of the FDCS page from the data repository 5. The data repository will typically contain a plurality of script definitions of FDCS pages, for example, there may be a different FDCS page for each piece of equipment being tested in the case of the FDCS being used to monitor sub-station equipment in an electrical power grid. The user may select a particular script definition which in turn will be retrieved by the script player. Once the script definition has been retrieved, it is parsed in step 23. Parsing entails removing any repeating groups and/or subsidiary conditional questions from the script definition 7 and inserting in their place into the parsed script definition a pointer to their location in the original script definition 7 in data repository 5. Repeating groups are a set of identical questions that relate to a particular type of item when there are usually numerous instances of that item. The script definition 7 may be preferably held in a meta-data format within an XML structure and is parsed as per normal XML parsing techniques. Conditional queries are flagged as such by the script player 9 and "repeating groups" of queries are bound by XML tags that define the repeating group. For example, sticking with the example of the sub-station, there may be a set of questions relating to a transformer and due to the fact that there is often more than one transformer present, the set of questions is repeated in a repeating group. Often, an arbitrary number of repeating groups is provided in a FDCS page and many of the repeating groups are not used.

Subsidiary conditional questions are questions that only arise if a particular answer is given to a previous question. For example, if the initial conditional question is "Is the trip switch worn?" there may be provided a yes/no answer. If the answer is yes, a range of subsidiary conditional questions may arise such as: "On a scale of 1 to 10, 10 being the most worn, how badly worn is the trip switch?", "Does the trip switch require replacement?", "When will the trip switch require replacement?", "What is the make and model of the trip switch?" and the like. If the answer to the initial conditional question is no, that the trip switch is not worn, no further information is required concerning the trip switch and there will be no further subsidiary conditional questions required. Therefore, these subsidiary conditional questions may in certain circumstances not be needed and accordingly they may be removed from the script definition to be rendered initially. A pointer is installed in the parsed script definition in their place so that should the initial conditional question be responded to in such a way that the subsidiary conditional question or questions are needed (in the example above, by answering the question "is the trip switch worn?" in the affirmative), the subsidiary conditional questions can be retrieved for rendering. It will be understood that a subsidiary conditional question may itself have one or more subsidiary conditional questions or repeating groups that will be invoked only if necessary after the initial subsidiary conditional question so requires. ln step 25, the parsed script definition is loaded into the dynamic memory array 11 and in step 27 the FDCS page is built by the page builder 13 from the parsed script definition using the library 15 and displayed on the miniature visual display 3 of the user interface 2. In step 29, the event monitor 19 monitors the user activity on the FDCS page. The event monitor checks to see if the user scrolls up or down or inputs data into the FDCS page. At the same time, a copy of the portion of the FDCS page currently in view is stored in internal memory array 17. If the user inputs data in the FDCS page, the event monitor will retrieve that data and send that data for storage to the output array 12 which is part of the dynamic memory array 11. If the user inputs data that necessitates a FDCS page content update, such as by answering an initial conditional question in such a way that one or more further conditional or simple questions will have to be answered, the event monitor notifies the script player in step 31. In step 33, the script player 9 accesses the appropriate pointer from the parsed script definition in the dynamic memory array 11 and in step 35 the script player uses that pointer to access additional FDCS page content from the data repository 5. In step 37, the script player 9 updates the parsed script definition in the dynamic memory array with the additional FDCS page content and in step 39, the script player 9 notifies the page builder 13 that the parsed script definition has been updated in dynamic memory array 11.

On the page builder 13 being notified of the updated parsed script definition, the page builder 13 updates a scroll bar 4 of the FDCS page on the visual display 3 in step 41 and in step 43 the page builder 13 subsequently refreshes the FDCS page on the visual display 3. In this way, only the information that is absolutely necessary to render on the visual display is rendered on the visual display thereby making the page faster to render and easier to navigate.

It is not always necessary for the page builder to immediately refresh the FDCS page. For example, if the update to the parsed script definition does not affect the current page view, it is not necessary to refresh the page until such time that it does. Therefore, the page builder will keep track of the current view of the FDCS page stored in internal memory 17 and compare it with the updated parsed script definition stored in dynamic memory array 11. If the current page view requires data from the updated parsed script definition, the page can then be refreshed at that time. Preferably, the page is refreshed when a structure-changing event occurs within the current view of the FDCS page stored in internal memory 17. When the user responds to a query (based on the script definition) and if that script definition comprises a conditional question, then the answer is checked to see if it creates a condition in which additional or alternative questions or conditional questions are required in the script definition. If this happens then additional questions are inserted in the internal memory 17 and a page refresh is performed to ensure the full script definition is displayed. This provides for a better user experience and also allows for less page refresh operations than would perhaps be required as numerous updates may be made to the page concurrently, those updates having been built up in the updated parsed script definition.

It will be further understood that the method according to the present invention will be performed largely in software and therefore the present invention extends also to computer programs, on or in a carrier such as a record medium, comprising program instructions for causing a computer to carry out the method. The computer program may be in source code format, object code format or a format intermediate source code and object code. The computer program may be stored on a carrier such as a record medium including any computer readable medium, including but not limited to a floppy disc, a CD, a DVD, a memory stick, a tape, a RAM, a ROM, a PROM, an EPROM or a hardware circuit. The carrier could be a transmissible carrier such as a carrier signal when transmitted either wirelessly and/or through wire and/or cable.

In the specification and claims, the components of the field data collection system, namely the server and the SFF devices are described as being "remote". In this context, "remote" will be understood to mean physically separate but also will be understood to mean that the remote device may not simply be located in another place to the remaining components but indeed may be located in another jurisdiction. For example, the server could be located in one jurisdiction and the SFF devices may be located in another jurisdiction. Indeed, the server could be located in one jurisdiction, one or more SFF devices could be located in a second jurisdiction and one or more other SFF devices could be located in a third jurisdiction. In this specification the terms "comprise, comprises, comprised and comprising" and the terms "include, includes, included and including" are all deemed totally interchangeable and should be afforded the widest possible interpretation. The invention is in no way limited to the embodiment hereinbefore described but may be varied in both construction and detail within the scope of the specification.