IP Library Granted Patent US 9,355,081
Granted Patent B2
US 9,355,081 · App. 14/304,756 · Granted May 31, 2016

Transforming HTML forms into mobile native forms

View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 9,355,081
App. No.
14/304,756
Granted
May 31, 2016
Kind
B2
Abstract

Techniques disclosed herein transform HTML forms into forms with graphical user interfaces (UIs) native to mobile devices. A user interface virtualization (UIV) agent divides an HTML form into rows based on row breaks. The UIV agent then identifies name-input pairs in the HTML form by applying a trained naïve Bayes classifier to determine name fields, and mapping the name fields to corresponding input fields. In addition, the UIV agent generates metadata which includes both information describing the rows in the form and the name-input information. Based on the metadata, a native form renderer running in the client device draws the form with native UI elements. In addition, the native form renderer forwards native UI events as HTML events.

Claims (49)

1. A method of providing access to a markup document form, the method comprising:

dividing the markup document form into rows based on row breaks;

determining name fields in the markup document form which specify the names of input fields;

determining the input fields in the markup document form which correspond to the determined name fields;

generating UI metadata that specifies the rows and the name and input fields; and

rendering, at a mobile client device and based on the UI metadata, a form having UI elements native to the mobile client device.

2. The method of claim 1 , wherein the markup document form is divided into rows by performing steps including:

parsing nodes of a document object model (DOM) tree representing the markup document form;

decomposing the DOM nodes into float elements, pre-inline elements, sur-inline elements, and full rows;

placing the float elements at the beginning or end of rows; and

merging the pre-inline elements and sur-inline elements of adjacent DOM node to form TOWS.

3. The method of claim 1 , wherein the name fields are determined using a trained naïve Bayes classification scheme.

4. The method of claim 3 ,

wherein the naïve Bayes classification scheme gives the probability that, given a node of a document object model (DOM) tree, the given DOM node represents a name field and the node does not represent a name field, and

wherein the given DOM node is determined as being a name field if the probability that the given DOM represents a name field is greater than the probability that the given DOM node dose not represent a name field.

5. The method of claim 3 , wherein the naïve Bayes classification scheme is trained using markup document forms with name fields and input fields that are manually classified.

6. The method of claim 1 , wherein the input fields are determined based on at least proximity to the corresponding name fields.

7. The method of claim 1 , further comprising, responsive to detecting user input via the native UI elements at the mobile client, forwarding the native UI input events as markup document form events.

8. The method of claim 1 , wherein the markup document comprises an HTML document.

9. The method of claim 1 , further comprising, capturing an alert and transmitting the captured alert to the mobile client device to be rendered using UI elements that are native to the mobile client device.

10. A non-transitory computer-readable storage medium comprising instructions that, when executed in a computing device, provide access to a markup document form by performing the steps comprising:

dividing the markup document form into rows based on row breaks;

determining name fields in the markup document form which specify the names of input fields;

determining the input fields in the markup document form which correspond to the determined name fields;

generating UI metadata that specifies the rows and the name and input fields; and

rendering, at a mobile client device and based on the UI metadata, a form having UI elements native to the mobile client device.

11. The non-transitory computer-readable storage medium of claim 10 , wherein the markup document form is divided into rows by performing steps including:

parsing nodes of a document object model (DOM) tree representing the markup document form;

decomposing the DOM nodes into float elements, pre-inline elements, sur-inline elements, and full rows;

placing the float elements at the beginning or end of rows; and

merging the pre-inline elements and sur-inline elements of adjacent DOM node to form TOWS.

12. The non-transitory computer-readable storage medium of claim 10 , wherein the name fields are determined using a trained naïve Bayes classification scheme.

13. The non-transitory computer-readable storage medium of claim 12 ,

wherein the naïve Bayes classification scheme gives the probability that, given a node of a document object model (DOM) tree, the given DOM node represents a name field and the node does not represent a name field, and

wherein the given DOM node is determined as being a name field if the probability that the given DOM represents a name field is greater than the probability that the given DOM node dose not represent a name field.

14. The non-transitory computer-readable storage medium of claim 10 , wherein the input fields are determined based on at least proximity to the corresponding name fields.

15. The non-transitory computer-readable storage medium of claim 10 , the steps further comprising, responsive to detecting user input via the native UI elements at the mobile client, forwarding the native UI input events as markup document form events.

16. The non-transitory computer-readable storage medium of claim 10 , wherein the markup document comprises an HTML document.

17. The non-transitory computer-readable storage medium of claim 10 , the steps further comprising, capturing an alert and transmitting the captured alert to the mobile client device to be rendered using UI elements that are native to the mobile client device.

18. A system comprising:

a processor; and

a memory, wherein the memory includes a program for reducing perceived read latency, the program being configured to perform operations for providing access to a markup document form, comprising:

dividing the markup document form into rows based on row breaks,

determining name fields in the markup document form which specify the names of input fields,

determining the input fields in the markup document form which correspond to the determined name fields,

generating UI metadata that specifies the rows and the name and input fields, and

rendering, at a mobile client device and based on the UI metadata, a form having UI elements native to the mobile client device.

19. The system of claim 18 , wherein the name fields are determined using a trained naïve Bayes classification scheme.

20. The system of claim 18 , wherein the input fields are determined based on at least proximity to the corresponding name fields.

Assignments (4)
PATENT ASSIGNMENT Recorded Aug 5, 2024
From: VMWARE LLC
To: OMNISSA, LLC
Reel/Frame 068327/0365 →
SECURITY INTEREST Recorded Jul 3, 2024
From: OMNISSA, LLC
To: UBS AG, STAMFORD BRANCH
Reel/Frame 068118/0004 →
CHANGE OF NAME Recorded Apr 15, 2024
From: VMWARE, INC.
To: VMWARE LLC
Reel/Frame 067102/0395 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 13, 2014
From: ZHANG, YAO; KOU, YU XIN; CHI, CHANG YAH; HE, ZHIBIN; WU, JUNFEI
To: VMWARE, INC.
Reel/Frame 033103/0552 →