Systems, devices, and methods for automated and programmatic creation and deployment of remediations to non-compliant web pages or user interfaces
DC CAFCFirst Claim
Patent Images
1. A system for automated and programmatic creation and deployment of remediations to non-compliant web pages or user interfaces, the system comprising:
- one or more remediation code databases configured to store a plurality of remediation code blocks;
a JavaScript code database comprising one or more JavaScript codes for creating client-side interactivity with one or more web pages or user interfaces, the one or more web pages or user interfaces comprising a hypertext markup language (HTML) document object model (DOM), wherein the DOM comprises one or more nodes, the one or more nodes organized into a DOM tree structure;
one or more computer readable storage devices configured to store a plurality of computer executable instructions; and
one or more hardware computer processors in communication with the one or more computer readable storage devices and configured to execute the plurality of computer executable instructions in order to cause the system to;
trigger at least one of the one or more JavaScript codes to be embedded within a browser of a user device;
store, via the at least one of the one or more JavaScript codes embedded within the browser, an inventory comprising a set of one or more web pages or user interfaces previously accessed by the browser;
perform a first compliance assessment on the set of one or more web pages or user interfaces of the inventory, wherein performing the first compliance assessment comprises testing, tracking, and auditing of the set of one or more web pages or user interfaces of the inventory;
dynamically crawl, using a configuration file, a user-requested web page or user interface requested by the user device to generate a list of uniform resource locators (URLs) corresponding to one or more additional web pages or user interfaces, wherein the URLs are embedded in the user-requested web page or user interface, and wherein the configuration file comprises a specified maximum crawl time and level of recursion, wherein the level of recursion defines a depth of web pages or user interfaces to be crawled;
perform a second compliance assessment, by a scanning process commenced before a rendering of the user-requested web page or user interface on the user device, on the user-requested web page or user interface and the one or more additional web pages or user interfaces to identify one or more compliance issues, wherein the second compliance assessment comprises loading each of the user-requested web page or user interface and the one or more additional web pages or user interfaces in a headless browser, applying the at least one of the JavaScript codes, and executing a series of compliance tests;
map the one or more identified compliance issues to one or more pre-stored remediation scripts on the system, wherein each of the one or more pre-stored remediation scripts corresponds to a compliance issue;
access, from the one or more remediation code databases, one or more remediation code blocks comprising the one or more pre-stored remediation scripts mapped to the one or more identified compliance issues;
programmatically apply, before rendering the user-requested web page or user interface on the user device, the one or more remediation code blocks on the user-requested web page or user interface and the one or more additional web pages or user interfaces, wherein application of the one or more remediation code blocks manipulates the DOM, causing a correction or enhancement of the user-requested web page or user interface and the one or more additional web pages or user interfaces upon rendering; and
transmit, to the user device, the user-requested web page or user interface to which the one or more remediation code blocks have been applied.
3 Assignments
Litigations
0 Petitions
Accused Products
Abstract
Systems and methods are disclosed for manually and programmatically remediating websites to thereby facilitate website navigation by people with diverse abilities. For example, an administrator portal is provided for simplified, form-based creation and deployment of remediation code, and a machine learning system is utilized to create and suggest remediations based on past remediation history. Voice command systems and portable document format (PDF) remediation techniques are also provided for improving the accessibility of such websites.
130 Citations
19 Claims
-
1. A system for automated and programmatic creation and deployment of remediations to non-compliant web pages or user interfaces, the system comprising:
-
one or more remediation code databases configured to store a plurality of remediation code blocks; a JavaScript code database comprising one or more JavaScript codes for creating client-side interactivity with one or more web pages or user interfaces, the one or more web pages or user interfaces comprising a hypertext markup language (HTML) document object model (DOM), wherein the DOM comprises one or more nodes, the one or more nodes organized into a DOM tree structure; one or more computer readable storage devices configured to store a plurality of computer executable instructions; and one or more hardware computer processors in communication with the one or more computer readable storage devices and configured to execute the plurality of computer executable instructions in order to cause the system to; trigger at least one of the one or more JavaScript codes to be embedded within a browser of a user device; store, via the at least one of the one or more JavaScript codes embedded within the browser, an inventory comprising a set of one or more web pages or user interfaces previously accessed by the browser; perform a first compliance assessment on the set of one or more web pages or user interfaces of the inventory, wherein performing the first compliance assessment comprises testing, tracking, and auditing of the set of one or more web pages or user interfaces of the inventory; dynamically crawl, using a configuration file, a user-requested web page or user interface requested by the user device to generate a list of uniform resource locators (URLs) corresponding to one or more additional web pages or user interfaces, wherein the URLs are embedded in the user-requested web page or user interface, and wherein the configuration file comprises a specified maximum crawl time and level of recursion, wherein the level of recursion defines a depth of web pages or user interfaces to be crawled; perform a second compliance assessment, by a scanning process commenced before a rendering of the user-requested web page or user interface on the user device, on the user-requested web page or user interface and the one or more additional web pages or user interfaces to identify one or more compliance issues, wherein the second compliance assessment comprises loading each of the user-requested web page or user interface and the one or more additional web pages or user interfaces in a headless browser, applying the at least one of the JavaScript codes, and executing a series of compliance tests; map the one or more identified compliance issues to one or more pre-stored remediation scripts on the system, wherein each of the one or more pre-stored remediation scripts corresponds to a compliance issue; access, from the one or more remediation code databases, one or more remediation code blocks comprising the one or more pre-stored remediation scripts mapped to the one or more identified compliance issues; programmatically apply, before rendering the user-requested web page or user interface on the user device, the one or more remediation code blocks on the user-requested web page or user interface and the one or more additional web pages or user interfaces, wherein application of the one or more remediation code blocks manipulates the DOM, causing a correction or enhancement of the user-requested web page or user interface and the one or more additional web pages or user interfaces upon rendering; and transmit, to the user device, the user-requested web page or user interface to which the one or more remediation code blocks have been applied. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14)
-
-
15. A system for rendering one or more web pages enhanced by an integrated JavaScript, the system comprising:
-
one or more remediation code databases configured to store a plurality of remediation code blocks; a JavaScript code database comprising one or more JavaScript codes for creating client-side interactivity with web pages, the web pages comprising a hypertext markup language (HTML) document object model (DOM), wherein the DOM comprises one or more nodes, the one or more nodes organized into a DOM tree structure; one or more computer readable storage devices configured to store a plurality of computer executable instructions; and one or more hardware computer processors in communication with the one or more computer readable storage devices and configured to execute the plurality of computer executable instructions in order to cause the system to; receive a request to access a web page from a web browser; retrieve the web page; dynamically crawl, using a configuration file, the retrieved web page to generate a list of uniform resource locators (URLs) corresponding to one or more additional web pages, wherein the URLs are embedded in the retrieved web page, and wherein the configuration file comprises a specified maximum crawl time and level of recursion, wherein the level of recursion defines a depth of web pages to be crawled; perform a compliance assessment, by a scanning process commenced before a rendering of the retrieved web page on the web browser, on the retrieved web page and the one or more additional web pages to identify one or more compliance issues, wherein the compliance assessment comprises loading each of the retrieved web page and the one or more additional web pages in a headless browser, applying the at least one of the JavaScript codes, and executing a series of compliance tests; map the one or more identified compliance issues to one or more pre-stored remediation scripts on the system, wherein each of the one or more pre-stored remediation scripts corresponds to a compliance issue; receive a request to retrieve one or more remediation code blocks from the one or more remediation code databases JavaScript, the one or more remediation code blocks configured to solve the one or more identified compliance issues of the retrieved web page and the one or more additional web pages; access, from the one or more remediation code databases, the one or more remediation code blocks comprising the one or more pre-stored remediation scripts mapped to the one or more identified compliance issues of the retrieved web page and the one or more additional web pages; programmatically apply, before rendering the retrieved web page or user interface on the user device, the one or more remediation code blocks on the retrieved web page and the one or more additional web pages, wherein application of the one or more remediation code blocks manipulates the DOM, causing a correction or enhancement of the retrieved web page and the one or more additional web pages upon rendering; transmit, to the web browser the retrieved web page to which the one or more remediation code blocks have been applied; and cause the web browser to render the web page.
-
-
16. A system for form-based creation and deployment of remediations to one or more non-compliant web pages or user interfaces requested by a user web browser, the system comprising:
-
one or more remediation code databases configured to store one or more JavaScript quick-fix remediation codes and one or more accelerated remediation codes, wherein each of the one or more accelerated remediation codes is generated using a combination of at least one of the one or more JavaScript quick-fix remediation codes and one or more inputs provided by a system administrator, and wherein each of the one or more inputs comprises a required remediation type and a scope of a required remediation, the scope defined by a number of remediation instances and a number of remediation pages; a dynamic user interface comprising a web-based form comprising visual elements of the one or more non-compliant web pages or user interfaces, wherein the web-based form is configured to allow creation and application of the one or more accelerated remediation codes based at least in part on the one or more inputs provided by the system administrator into the web-based form; a JavaScript code database comprising one or more JavaScript codes for creating client-side interactivity with one or more web pages or user interfaces, the one or more web pages or user interfaces comprising a hypertext markup language (HTML) document object model (DOM), wherein the DOM comprises one or more nodes, the one or more nodes comprising visual elements tagged with alternative text descriptions organized into a DOM tree structure; one or more computer readable storage devices configured to store a plurality of computer executable instructions; and one or more hardware computer processors in communication with the one or more computer readable storage devices and configured to execute the plurality of computer executable instructions in order to cause the system to; cause display, through the dynamic user interface, the web-based form comprising the visual elements of the one or more non-compliant web pages or user interfaces; evaluate each of the one or more non-compliant web pages or user interfaces to identify one or more compliance issues, wherein the evaluation comprises loading each of the one or more non-compliant web pages or user interfaces in a headless browser, applying at least one of the JavaScript codes, and executing a series of compliance tests; receive, into the web-based form, an input corresponding to each identified one or more compliance issues, wherein the input is provided by the system administrator; submit the web-based form to a server infrastructure, wherein the submission of the web-based form causes programmatic generation of an accelerated remediation code for each of the identified one or more compliance issues by combining the input corresponding to each identified one or more compliance issues with at least one of the one or more JavaScript quick-fix remediation codes, and wherein each accelerated remediation code corresponding to an identical required remediation type is stored in a same remediation code database of the one or more remediation code databases; receive, from at least one of the one or more JavaScript codes, a request for the accelerated remediation code corresponding to each of the identified one or more compliance issues of each of the one or more non-compliant web pages or user interfaces accessed by the user web browser, wherein the at least one of the one or more JavaScript codes is embedded in the user web browser; access, from the one or more remediation code databases, the accelerated remediation code corresponding to each of the identified one or more compliance issues of each of the one or more non-compliant web pages or user interfaces requested by the user web browser; transmit, to the user web browser, the one or more accelerated remediation code blocks corresponding to each of the identified one or more compliance issues of each of the one or more non-compliant web pages or user interfaces requested accessed by the user web browser; and execute the accelerated remediation code corresponding to each of the identified one or more compliance issues of each of the one or more non-compliant web pages or user interfaces requested by the user web browser, blocks, wherein execution comprises modification of the DOM. - View Dependent Claims (17, 18)
-
-
19. A computer implemented method for identifying structural patterns across a plurality of web pages and determining a set of remediations that can be applied collectively to the plurality of web pages, the method comprising:
-
identifying, by a computer system, within a first document object model (DOM) corresponding to a first web page of the plurality of web pages, a first hierarchical hierarchal structure, wherein the first hierarchical structure comprises one or more hierarchies, and wherein each hierarchy of the first hierarchical structure comprises one or more first elements; identifying, by the computer system, within a first URL corresponding to the first web page, a first URL structure, the first URL structure comprising a specific path structure; evaluating, by the computer system, the first web page to identify one or more compliance issues, wherein the evaluation comprises loading the first web page in a headless browser, applying at least one JavaScript code embedded in the headless browser, and executing a series of compliance tests; determining, by the computer system, a first test result pattern, the first test result pattern comprising a first group of the one or more first elements of the first hierarchical structure that pass a first subset of the series of compliance tests and a second group of the one or more first elements of the first hierarchical structure that fail a second subset of the series of compliance tests; generating, by the computer system, a template based at least in part on the identified first hierarchical structure, the identified first URL structure, and the identified first test result pattern, wherein the generated template comprises one or more remediations to resolve the one or more identified compliance issues of the first web page; storing, by the computer system, the generated template comprising the one or more remediations in a remediation database; identifying, by the computer system, within a second document object model (DOM) corresponding to a second web page of the plurality of web pages, a second hierarchical structure, wherein the second hierarchical structure comprises one or more hierarchies, wherein each hierarchy of the second hierarchical structure comprises one or more second elements, and wherein the one or more second elements comprise commonalities to the one or more first elements of the first hierarchical structure in one or more of placement, class, or appearance, and wherein the second hierarchical structure comprises a substantially identical structural pattern to the first hierarchical structure; identifying, within a second URL corresponding to the second web page, a second URL structure, the second URL structure comprising the specific path structure of the first URL structure; evaluating, by the computer system, the second web page to identify one or more compliance issues, wherein the evaluation comprises loading the second web page in a headless browser, applying at least one JavaScript code embedded in the headless browser, and executing the series of compliance tests; determining, by the computer system, a second test result pattern, the second test result pattern comprising a first group of the one or more second elements of the second web page that pass the first subset of compliance tests and a second group of the one or more second elements of the second web page that fail the second subset of compliance tests, wherein the second test result pattern is substantially identical to the first test result pattern; and applying, by the computer system, the generated template comprising the one or more remediations to the second web page, wherein the computer system comprises a computer processor and an electronic non-transitory computer storage medium.
-
Specification