US20070089052A1 - Systems, methods, and media for enforcing accessible content development - Google Patents

Systems, methods, and media for enforcing accessible content development Download PDF

Info

Publication number
US20070089052A1
US20070089052A1 US11/250,024 US25002405A US2007089052A1 US 20070089052 A1 US20070089052 A1 US 20070089052A1 US 25002405 A US25002405 A US 25002405A US 2007089052 A1 US2007089052 A1 US 2007089052A1
Authority
US
United States
Prior art keywords
tag
accessibility
sub
markup
elements
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Abandoned
Application number
US11/250,024
Inventor
Christopher Karle
Corinne Ryan
Richard Schwerdtfeger
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
International Business Machines Corp
Original Assignee
International Business Machines Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by International Business Machines Corp filed Critical International Business Machines Corp
Priority to US11/250,024 priority Critical patent/US20070089052A1/en
Assigned to CORPORATION, INTERNATIONAL BUSINESS MACHINES reassignment CORPORATION, INTERNATIONAL BUSINESS MACHINES ASSIGNMENT OF ASSIGNORS INTEREST (SEE DOCUMENT FOR DETAILS). Assignors: SCHWERDTFEGER, RICHARD S., KARLE, CHRISTOPHER J., RYAN, CORINNE M.
Publication of US20070089052A1 publication Critical patent/US20070089052A1/en
Priority to US12/058,324 priority patent/US8122342B2/en
Abandoned legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/958Organisation or management of web site content, e.g. publishing, maintaining pages or automatic linking
    • G06F16/986Document structures and storage, e.g. HTML extensions
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/10Text processing
    • G06F40/12Use of codes for handling textual entities
    • G06F40/14Tree-structured documents
    • G06F40/143Markup, e.g. Standard Generalized Markup Language [SGML] or Document Type Definition [DTD]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • G06F40/205Parsing
    • G06F40/226Validation

Definitions

  • the present invention is in the field of content development, such as web content development, for computer systems and networks. More particularly, the present invention relates to systems, methods and media for enforcing accessible content development.
  • Networks such as the Internet and intranets continue to increase in popularity as vehicles to disseminate information, provide content, encourage collaboration, or otherwise facilitate communication.
  • An integral part of content pages on these networks is the user interface for applications.
  • Many developers create content using web authoring tools that allow developers to create pages of content using the tool, after which the tool generates the appropriate code to use on the network.
  • Other developers write code manually, using markup tags as building blocks of the user interface for the application they are creating. Developers can utilize Hypertext Markup Language (HTML) markup tags, acquire third party tags from JavaServer Page (JSP)TM technology developers, or can develop their own markup tags.
  • HTML Hypertext Markup Language
  • JSP JavaServer Page
  • Markup tags are tags in an HTML document that instruct Web browser software on how and where to display the text or other content associated with the markup tag, create links between documents, etc.
  • JSP is a standard developed by SunTM Microsystems, Inc. (of Santa Clara, Calif.) to, for example, assist developers in building dynamic Web sites and accessing database information on a Web server.
  • Accessibility code provides, for example, a description of an image or a table so that users who cannot view the image or table because of a disability are instead provided its description. This allows those users to still access the content of the page (using text readers or other devices) even though they may not be able to see an image, table, or other content.
  • many customers of web or other content, such as governmental agencies often prefer or require that developers provide accessible code.
  • While accessible code provides a significant benefit, the cost of developing, testing, and troubleshooting accessible code can be very high.
  • Most content developers developing accessible code first create the code and then send their code to Quality Engineering (QE) or other groups for verification of the accessibility of code and the user interface. If there are any errors (i.e., some of the code is non-accessible), the code is sent back to the developer to fix the identified bugs. After the code has been fixed, it must then be retested by the QE group. Such a process can be time-consuming and expensive, requiring the expenditure of resources by a QE group and potentially large delays in testing and fixing the code.
  • QE Quality Engineering
  • These problems are exacerbated when using third party tag sets to generate the code, as most of the tag sets have not been configured to provide accessible code. Proper accessibility use of these tag sets is generally not enforced as many customers of these tag sets do not require accessible code.
  • One embodiment provides a method for enforcing accessible content development comprising accessing a tag library descriptor for each of a plurality of markup tags for web content authoring where the tag library descriptor notes one or more tag sub-elements required for accessibility.
  • the method may further include analyzing each markup tag in a piece of web content by comparing the tag library descriptor accessibility requirements to sub-elements included with each markup tag to determine whether all required accessibility sub-elements are present.
  • the method may further include generating an error message if all required accessibility sub-elements of a markup tag are not present.
  • the one or more tag sub-elements associated with accessibility may include alternate text for one or more of an image, table, label or graph.
  • Another embodiment provides a machine-accessible medium containing instructions effective, when executing in a data processing system, to cause the system to perform a series of operations for determining the location of a stylus for a portable electronic device.
  • the series of operations generally includes accessing a tag library descriptor for each of a plurality of markup tags for web content authoring where the tag library descriptor notes one or more tag sub-elements required for accessibility.
  • the series of operations may further include analyzing each markup tag in a piece of web content by comparing the tag library descriptor accessibility requirements to sub-elements included with each markup tag to determine whether all required accessibility sub-elements are present.
  • the series of operations may further include generating an error message if all required accessibility sub-elements of a markup tag are not present.
  • the one or more tag sub-elements associated with accessibility may include alternate text for one or more of an image, table, label or graph.
  • the system may generally include a markup tag library comprising a plurality of markup tags each associated with a tag library descriptor, where the tag library descriptor notes all markup tag sub-elements required for accessibility.
  • the system may also generally include a web authoring tool in communication with the markup tag library to compile code for a piece of web content based on the tag library descriptor and the markup tags, where the web authoring tools is adapted to generate an error message if all required sub-elements are not present.
  • FIG. 1 depicts a block diagram of a content authoring system with an accessibility altering module according to one embodiment
  • FIG. 2 depicts a block diagram of the web authoring tool of the content authoring system of FIG. 1 according to one embodiment
  • FIG. 3 depicts an example of a snippet of code from a TLD file of the content authoring system of FIG. 1 according to one embodiment
  • FIG. 4 depicts an example of a flow chart for enforcing accessibility requirements with a tag library descriptor file according to one embodiment
  • FIG. 5 depicts an example of a flow chart for modifying a tag library descriptor file to enforce accessibility requirements according to one embodiment
  • FIG. 6 depicts an example of a flow chart for enforcing accessibility requirements with a tag library descriptor file according to an alternative embodiment.
  • One embodiment provides a method for enforcing accessible content development comprising accessing a tag library descriptor for each of a plurality of markup tags for web content authoring where the tag library descriptor notes one or more tag sub-elements required for accessibility.
  • the method may further include analyzing each markup tag in a piece of web content by comparing the tag library descriptor accessibility requirements to sub-elements included with each markup tag to determine whether all required accessibility sub-elements are present.
  • the method may further include generating an error message if all required accessibility sub-elements of a markup tag are not present.
  • the one or more tag sub-elements associated with accessibility may include alternate text for one or more of an image, table, label or graph.
  • the use of accessible code in web content development may be automatically enforced during the development stage.
  • a developer may be prevented from compiling code using markup tags that do not meet accessibility standards.
  • the developer may then modify her code to add the accessibility features, potentially preventing wasteful and time-consuming testing and debugging between test groups and developers.
  • FIG. 1 depicts a block diagram of a content authoring system with an accessibility altering module according to one embodiment.
  • the content authoring system 100 of FIG. 1 includes a web authoring tool 102 , a user interface 104 , a markup tag library 106 , and an accessibility altering module 108 .
  • the markup tag library 106 may include a plurality of markup tags 110 and associated tag library descriptor (TLD) 112 files.
  • TLD tag library descriptor
  • a developer may generate accessible web content based on markup tag libraries.
  • the disclosed system may advantageously automatically enforce accessibility in generated web content code by modification of tag library descriptor files to require accessibility sub-elements to be present in markup tags 110 being used for web content development.
  • Web content may be any document or page adapted to be used on the Internet or an intranet utilizing HTML or other languages or protocols.
  • the content authoring system 100 may execute on a general or special purpose computer system such as one or more of a personal computer, workstation, server, mainframe computer, notebook or laptop computer, tablet PC, desktop computer, portable computer system, PDA, set-top box, mobile phone, wireless device, or the like.
  • a general or special purpose computer system such as one or more of a personal computer, workstation, server, mainframe computer, notebook or laptop computer, tablet PC, desktop computer, portable computer system, PDA, set-top box, mobile phone, wireless device, or the like.
  • the computer system may, in one embodiment, include a central processing unit (CPU) and associated volatile and non-volatile memory, including random access memory (RAM) and basic input/output system read only memory (BIOS ROM), a system monitor, a keyboard, one or more flexible diskette drives, a CD-ROM drive, a fixed disk storage drive (also known as a “hard drive” or “hard disk drive”), a pointing device such as a mouse, and an optional network interface adapter, all electrically connected using a motherboard or system planar to electrically connect these components together.
  • the content authoring system 100 may be implemented on an International Business Machine Corporation (IBM®) eServer or similar server having one or more processors, or threads of processors, executing software.
  • the content authoring system 100 (and its components) may optionally be in communication with other computer systems via a network or other data communications channels, such as the Internet, an intranet, a LAN, a WAN, an Ethernet network, wireless network, etc.
  • the web authoring tool 102 may facilitate the creation of web content by a user and is described in more detail in relation to FIG. 2 .
  • the web authoring tool 102 may access the markup tags 110 and TLD files 112 of the markup tag library 106 in generating the web content code for user interfaces.
  • the markup tags 110 (such as JSP tags) that are available to a developer using the web authoring tool 102 may be defined in a TLD file 112 , which also may define the tag inputs and their sub-elements or attributes.
  • the markup tag library 106 may include one or more tag libraries, each of which may include a TLD file 112 associated with one or more markup tags 110 .
  • the TLD file 112 may typically be an eXtensible Markup Language (XML) document describing a tag library and may contain information about the library as a whole as well as each tag contained in the library. Typically, a TLD file 112 will only require minimum required inputs for each markup tag 110 so that the TLD file 112 will cater to a larger audience. In the case of an image tag, for example, the TLD 112 may require the source location and file name of the image file, but other attributes such as height or width may be optional. When a developer uses the image tag of this example but omits the file name of the image, a compile error may result.
  • XML eXtensible Markup Language
  • a developer may access the markup tag library 106 manually without use of a web authoring tool 102 .
  • the TLD file 112 may have sub-elements associated with accessibility also be required so that attempting to compile the code without providing accessibility information results in an error.
  • the user interface 104 may facilitate receiving input to the content authoring system 100 from a user as well as providing output from the content authoring system 100 to a user.
  • the user interface 104 may include input devices such as keyboards, mouse, voice input, etc. and may also include output devices such as a display, speaker, printer, etc.
  • the user interface 104 may also utilize a graphical user interface (GUI) or other software to input and/or output to and from the user.
  • GUI graphical user interface
  • the accessibility altering module 108 of some embodiments may modify TLD files 112 to enforce accessibility of the result code.
  • the accessibility altering module 108 may access a TLD file 112 , modify the TLD file 112 by requiring accessibility sub-elements for different tags, and then saving or storing the modified TLD file 112 .
  • the accessibility altering module 108 may modify the TLD file 112 by switching or flipping definitions in the TLD file 112 to require attributes or sub-elements on tags that would make the resulting application accessible.
  • the accessibility altering module 108 may execute upon user request, automatically on all tag libraries or new tag libraries, or by other methodology. In other embodiments, a user may manually modify the TLD files 112 or the TLD files 112 may already be configured to enforce accessibility, making the accessibility altering module 108 unnecessary.
  • a content authoring system 100 may receive modified TLD files 112 from another source, such as third party tag libraries that are accessibility-friendly or from an organization development database where TLD files 112 have been modified and stored for use by an organization.
  • a content authorizing system 100 may also modify TLD files 112 itself, such as by use of the accessibility altering module 108 or manual edits by a developer.
  • FIG. 2 depicts a block diagram of the web authoring tool of the content authoring system of FIG. 1 according to one embodiment.
  • the web authoring tool 102 of FIG. 2 includes a content editor 202 , a compiler 204 , a TLD file analyzer 206 , and an accessibility altering module 108 .
  • a user may use content editor 202 to edit and prepare web content by inputting information, selecting tag libraries, choosing versions, etc.
  • the compiler 204 may, such as upon request of the user, analyze the prepared content resulting from the content editor and generate, or compile, executable code.
  • the compiler 204 checks for any required sub-elements (which may include JSP attributes) and, in the event a required feature is missing, the compiler 204 generates a compile error.
  • a compile error may prevent the creation of executable or usable code, necessitating the developer to fix the problem or problems that caused the compile error.
  • the compiler 204 may advantageously generate a compile error when a developer leaves out an accessibility-required feature (e.g., alternative text for an image) as defined in the TLD file 112 . When faced with such an error, the developer may then add the accessibility-required feature and then recompile.
  • the disclosed system may thus force a developer to make their code accessible by preventing the developer from compiling non-accessible code. This may save overall time and resources as testing for accessible code and correction of the code in response to bugs found in testing may both be eliminated. Making changes by adding features at the time of development may often take less time than making changes after bugs are reported, as errors must be interpreted, versions or software may change, the developer may have to refamiliarize themselves with the project again, etc.
  • the web authoring tool 102 may also include a TLD file analyzer 206 in some embodiments.
  • the TLD file analyzer 206 may access and analyze a TLD file 112 and/or markup tags 110 to determine whether all accessibility sub-elements or attributes are found. If all sub-elements are not found, the TLD file analyzer 206 may prompt the developer for the required accessibility sub-elements and then save the developer's response.
  • the TLD file analyzer 206 may thus allow developers to respond to prompts instead of having to manually review code, potentially saving significant amounts of time. This may be particularly useful for JSP tags which generate content using JavaScriptTm as the JavaScriptTm may produce accessible code if the required accessibility attributes are supplied. Examples of this may include content generated resulting from an onLoad event or a mouseover which renders content using style sheets.
  • the web authoring tool 102 may also include an accessibility altering module 108 in some embodiments, which may be in addition to or instead of the accessibility altering module 108 of the content authoring system 100 .
  • the accessibility altering module 108 may modify a TLD file 112 so that accessibility sub-elements are required for compilation.
  • An accessibility altering module 108 as part of a web authoring tool 102 may either automatically or upon user request modify TLD files 112 for accessibility purposes.
  • FIG. 3 depicts an example of a snippet of code from a TLD file of the content authoring system of FIG. 1 according to one embodiment.
  • the snippet of code 300 may represent a sample image tag from a TLD file 112 where an accessibility sub-element or attribute is being forced.
  • Snippet 300 includes a source file attribute 302 entitled ‘src’, which is the attribute used for the file name of the image.
  • the code ‘ ⁇ required>true ⁇ /required>’ defines the file name as required, so that code using snippet 300 will not compile without an identified file name.
  • Snippet 300 may also include an alternative text sub-element or attribute 304 entitled ‘altText’, which provides alternative text for accessibility purposes in the event the image cannot be displayed.
  • the ‘ ⁇ required>true ⁇ /required>’ defines the alternative text as required, so that code using snippet 300 will not compile without alternative text specified for an image. If a developer uses the image tag of snippet 300 without defining a value for ‘altText’ then a compile error will display in the user interface when the developer goes to view her work.
  • the disclosed system may provide for requiring table summaries to be included for any tables in order to compile code. As only screen readers are likely to use the table summary, as it typically has no presence in a visual user interface, setting the table summary attribute to ‘true’ may remind the developer that they need to include that feature for accessibility.
  • Other accessibility sub-elements attributes may include alternative text for labels or graphs.
  • FIG. 4 depicts an example of a flow chart for enforcing accessibility requirements with a tag library descriptor file according to one embodiment.
  • the content authoring system 100 or any of its components, alone or in combination, may perform the method of flow chart 400 .
  • Flow chart 400 begins with optional element 402 , storing a TLD file 112 for a group of markup tags 110 .
  • the content authoring system 100 may store a TLD file 112 that it received (such as part of a third party tag library) or that it modified (such as when a accessibility altering module 108 modified the TLD file 112 to enforce accessibility).
  • element 402 is not required and a TLD file 112 already stored on the content authoring system 100 may be used.
  • the method of flow chart 400 may then continue to element 404 , accessing a TLD file 112 associated with one or more markup tags 110 .
  • the content authoring system 100 may access a TLD file 112 stored at element 402 or previously stored.
  • the TLD file 112 may be stored remotely, such as over the Internet or other network connection.
  • the method of flow chart 400 may modify the TLD file 112 to help enforce accessibility of the resulting code.
  • the accessibility altering module 108 may determine if all accessibility sub-elements (e.g., alternative text for an image, summary text for a table, etc.) are marked as required in the TLD file 112 . If all accessibility sub-elements are marked as required, flow chart 400 continues to element 410 . If not all accessibility sub-elements are marked as required, flow chart 400 continues to element 408 , where the accessibility altering module 108 may modify the TLD file 112 for accessibility by switching the required value for accessibility sub-elements in the TLD file 112 to ‘true’.
  • all accessibility sub-elements e.g., alternative text for an image, summary text for a table, etc.
  • the web authoring tool 102 may next, at element 410 , analyze each markup tag 110 in a piece of content by comparing the TLD file 112 requirements to the included sub-elements. If each markup tag 110 has all of the required sub-elements at decision block 412 , the web authoring tool 102 and/or compiler 204 may successfully compile code based on the markup tags 110 , after which the flow chart terminates. If any markup tag 110 does not have all of the required accessibility sub-elements (or alternatively any of the required sub-elements), the web authoring tool 102 and/or compiler 204 may then generate an error message at element 414 , after which flow chart 400 terminates. Accordingly, only markup tags in a piece of content that meet accessibility requirements will be compiled and turned into working code. If accessibility features are missing, a developer may correct those deficiencies in response to the error message generated at element 414 .
  • FIG. 5 depicts an example of a flow chart for modifying a tag library descriptor file to enforce accessibility requirements according to one embodiment.
  • the content authoring system 100 or any of its components may perform the method of flow chart 500 .
  • the content authoring system 100 or its components may perform elements of flow chart 500 at any time, including when TLD files 112 are received as part of a tag library, upon a developer or other user request, or at another time.
  • Flow chart 500 may also represent an example embodiment of the optional modification at elements 406 and 408 of FIG. 4 .
  • Flow chart 500 begins with element 502 , accessing a TLD file 112 associated with one or more markup tags 110 .
  • the content authoring system 100 may access a TLD file 112 stored at element 402 or previously stored. In one embodiment, the TLD file 112 may be accessed remotely, such as over the Internet or other network connection.
  • the accessibility altering module 108 may modify next analyze the TLD file 112 for any accessibility sub-elements at element 504 to determine if any of the accessibility sub-elements are configured as not required.
  • the accessibility altering module 108 may modify any accessibility sub-elements determined to be configured as not required by making those sub-elements required.
  • the accessibility altering module 108 may determine if more accessibility sub-elements are still configured as ‘not required’and may return to element 504 to continue analysis and/or modification. After all accessibility sub-elements are marked as required in the TLD file 112 , the accessibility altering module 108 may store the modified TLD file 112 at element 510 , after which the flow chart terminates.
  • the disclosed methodology provides an effective mechanism for enforcing accessibility requirements during web content authoring.
  • the accessibility altering module 108 may perform its modifications at any time, such as when a TLD file 112 is received, first used, upon request, etc.
  • the accessibility altering module 108 may also perform flow chart 500 before the TLD file 112 is passed to developers, such as by the tag library authors or a centralized web content development machine.
  • FIG. 6 depicts an example of a flow chart for enforcing accessibility requirements with a tag library descriptor file according to an alternative embodiment.
  • the content authoring system 100 or any of its components, alone or in combination, may perform the method of flow chart 600 .
  • the method of flow chart 600 is an alternative embodiment to the method of flow chart 400 .
  • Flow chart 600 begins with element 602 , where a web authoring tool 102 (and/or its compiler 204 ) accesses a TLD file 112 associated with one or more markup tags 110 .
  • the web authoring tool 102 and/or its compiler 204 may next, at element 604 , analyze each markup tag 110 in a piece of content by comparing the TLD file 112 requirements to the included sub-elements.
  • each markup tag 110 has all of the required sub-elements at decision block 606 , the flow chart terminates and the web authoring tool 102 and/or compiler 204 may successfully compile code based on the markup tags 110 . If any markup tag 110 does not have all of the required accessibility sub-elements (or alternatively any of the required sub-elements), the TLD file analyzer 206 may then prompt a user for the missing accessibility sub-elements at element 608 , after which the flow chart terminates.
  • the method of flow chart 600 allows a developer to interactively correct accessibility deficiencies, substantially reducing the need for future testing or corrections. The disclosed method prompts the user for input instead of generating an error message as in element 414 of FIG. 4 .
  • routines executed to implement the embodiments of the invention may be part of an operating system or a specific application, component, program, module, object, or sequence of instructions.
  • the computer program of the present invention typically is comprised of a multitude of instructions that will be translated by the native computer into a machine-readable format and hence executable instructions.
  • programs are comprised of variables and data structures that either reside locally to the program or are found in memory or on storage devices.
  • various programs described hereinafter may be identified based upon the application for which they are implemented in a specific embodiment of the invention. However, it should be appreciated that any particular program nomenclature that follows is used merely for convenience, and thus the invention should not be limited to use solely in any specific application identified and/or implied by such nomenclature.

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Databases & Information Systems (AREA)
  • Health & Medical Sciences (AREA)
  • Artificial Intelligence (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Computational Linguistics (AREA)
  • General Health & Medical Sciences (AREA)
  • Data Mining & Analysis (AREA)
  • Stored Programmes (AREA)

Abstract

Systems, methods and media for enforcing accessible content development are disclosed. One embodiment provides a method for enforcing accessible content development comprising accessing a tag library descriptor for each of a plurality of markup tags for web content authoring where the tag library descriptor notes one or more tag sub-elements required for accessibility. The method may further include analyzing each markup tag in a piece of web content by comparing the tag library descriptor accessibility requirements to sub-elements included with each markup tag to determine whether all required accessibility sub-elements are present. The method may further include generating an error message if all required accessibility sub-elements of a markup tag are not present. The one or more tag sub-elements associated with accessibility may include alternate text for one or more of an image, table, label or graph. Other embodiments are disclosed and claimed.

Description

    FIELD OF INVENTION
  • The present invention is in the field of content development, such as web content development, for computer systems and networks. More particularly, the present invention relates to systems, methods and media for enforcing accessible content development.
  • BACKGROUND
  • Networks such as the Internet and intranets continue to increase in popularity as vehicles to disseminate information, provide content, encourage collaboration, or otherwise facilitate communication. An integral part of content pages on these networks is the user interface for applications. Many developers create content using web authoring tools that allow developers to create pages of content using the tool, after which the tool generates the appropriate code to use on the network. Other developers write code manually, using markup tags as building blocks of the user interface for the application they are creating. Developers can utilize Hypertext Markup Language (HTML) markup tags, acquire third party tags from JavaServer Page (JSP)™ technology developers, or can develop their own markup tags. Markup tags are tags in an HTML document that instruct Web browser software on how and where to display the text or other content associated with the markup tag, create links between documents, etc. JSP is a standard developed by Sun™ Microsystems, Inc. (of Santa Clara, Calif.) to, for example, assist developers in building dynamic Web sites and accessing database information on a Web server.
  • As more content becomes available on the Internet (or on intranets), the need to provide accessible content increases. Without accessible code underlying Internet or intranet pages, users with disabilities cannot properly access some of the visual indicators in the standard user interfaces. Accessibility code provides, for example, a description of an image or a table so that users who cannot view the image or table because of a disability are instead provided its description. This allows those users to still access the content of the page (using text readers or other devices) even though they may not be able to see an image, table, or other content. Content developers who desire to make their content available to as wide an audience as possible accordingly desire to have accessible code. Moreover, many customers of web or other content, such as governmental agencies, often prefer or require that developers provide accessible code.
  • While accessible code provides a significant benefit, the cost of developing, testing, and troubleshooting accessible code can be very high. Most content developers developing accessible code first create the code and then send their code to Quality Engineering (QE) or other groups for verification of the accessibility of code and the user interface. If there are any errors (i.e., some of the code is non-accessible), the code is sent back to the developer to fix the identified bugs. After the code has been fixed, it must then be retested by the QE group. Such a process can be time-consuming and expensive, requiring the expenditure of resources by a QE group and potentially large delays in testing and fixing the code. These problems are exacerbated when using third party tag sets to generate the code, as most of the tag sets have not been configured to provide accessible code. Proper accessibility use of these tag sets is generally not enforced as many customers of these tag sets do not require accessible code.
  • One solution to this problem is to utilize the accessibility checking feature of WebKing® by Parasoft® Corporation of Monrovia, Calif. Using WebKing®, a developer may check completed code for accessibility problems at runt-time after they have properly configured the tool. The developer manually selects each page to be analyzed, allowing the program to perform a run-time check of the completed code and to produce an error report that identifies accessibility issues. This solution, however, still results in significant delays in producing accessible code as the developer must run the program at the end of a code cycle and then go back to fix any errors. The time required for QE groups is reduced, but developers must instead test the code for accessibility themselves and then redirect their development resources to fixing any problems. Another problem with the solution is that WebKing® cannot process content created with JavaScript®, making the use of JavaScript generated accessibility information more difficult. There is a need, therefore, for an effective mechanism to ensure the accessibility of developed content.
  • SUMMARY
  • The problems identified above are in large part addressed by systems, methods and media for enforcing accessible content development. One embodiment provides a method for enforcing accessible content development comprising accessing a tag library descriptor for each of a plurality of markup tags for web content authoring where the tag library descriptor notes one or more tag sub-elements required for accessibility. The method may further include analyzing each markup tag in a piece of web content by comparing the tag library descriptor accessibility requirements to sub-elements included with each markup tag to determine whether all required accessibility sub-elements are present. The method may further include generating an error message if all required accessibility sub-elements of a markup tag are not present. The one or more tag sub-elements associated with accessibility may include alternate text for one or more of an image, table, label or graph.
  • Another embodiment provides a machine-accessible medium containing instructions effective, when executing in a data processing system, to cause the system to perform a series of operations for determining the location of a stylus for a portable electronic device. The series of operations generally includes accessing a tag library descriptor for each of a plurality of markup tags for web content authoring where the tag library descriptor notes one or more tag sub-elements required for accessibility. The series of operations may further include analyzing each markup tag in a piece of web content by comparing the tag library descriptor accessibility requirements to sub-elements included with each markup tag to determine whether all required accessibility sub-elements are present. The series of operations may further include generating an error message if all required accessibility sub-elements of a markup tag are not present. The one or more tag sub-elements associated with accessibility may include alternate text for one or more of an image, table, label or graph.
  • Another embodiment provides a content authoring system. The system may generally include a markup tag library comprising a plurality of markup tags each associated with a tag library descriptor, where the tag library descriptor notes all markup tag sub-elements required for accessibility. The system may also generally include a web authoring tool in communication with the markup tag library to compile code for a piece of web content based on the tag library descriptor and the markup tags, where the web authoring tools is adapted to generate an error message if all required sub-elements are not present.
  • BRIEF DESCRIPTION OF THE DRAWINGS
  • Other objects and advantages of the invention will become apparent upon reading the following detailed description and upon reference to the accompanying drawings in which, like references may indicate similar elements:
  • FIG. 1 depicts a block diagram of a content authoring system with an accessibility altering module according to one embodiment;
  • FIG. 2 depicts a block diagram of the web authoring tool of the content authoring system of FIG. 1 according to one embodiment;
  • FIG. 3 depicts an example of a snippet of code from a TLD file of the content authoring system of FIG. 1 according to one embodiment;
  • FIG. 4 depicts an example of a flow chart for enforcing accessibility requirements with a tag library descriptor file according to one embodiment;
  • FIG. 5 depicts an example of a flow chart for modifying a tag library descriptor file to enforce accessibility requirements according to one embodiment; and
  • FIG. 6 depicts an example of a flow chart for enforcing accessibility requirements with a tag library descriptor file according to an alternative embodiment.
  • DETAILED DESCRIPTION OF EMBODIMENTS
  • The following is a detailed description of example embodiments of the invention depicted in the accompanying drawings. The amount of detail offered is not intended to limit the anticipated variations of embodiments; but, on the contrary, the intention is to cover all modifications, equivalents, and alternatives falling within the spirit and scope of the present invention as defined by the appended claims. The detailed descriptions below are designed to make such embodiments obvious to a person of ordinary skill in the art.
  • Generally speaking, systems, methods and media for enforcing accessible content development are disclosed. One embodiment provides a method for enforcing accessible content development comprising accessing a tag library descriptor for each of a plurality of markup tags for web content authoring where the tag library descriptor notes one or more tag sub-elements required for accessibility. The method may further include analyzing each markup tag in a piece of web content by comparing the tag library descriptor accessibility requirements to sub-elements included with each markup tag to determine whether all required accessibility sub-elements are present. The method may further include generating an error message if all required accessibility sub-elements of a markup tag are not present. The one or more tag sub-elements associated with accessibility may include alternate text for one or more of an image, table, label or graph.
  • Using the disclosed system and methodologies, the use of accessible code in web content development may be automatically enforced during the development stage. By requiring accessibility-related sub-elements in a tag library descriptor file, a developer may be prevented from compiling code using markup tags that do not meet accessibility standards. The developer may then modify her code to add the accessibility features, potentially preventing wasteful and time-consuming testing and debugging between test groups and developers.
  • While specific embodiments will be described below with reference to particular configurations of hardware and/or software, those of skill in the art will realize that embodiments of the present invention may advantageously be implemented with other substantially equivalent hardware and/or software systems. Aspects of the invention described herein may be stored or distributed on computer-readable media, including magnetic and optically readable and removable computer disks, as well as distributed electronically over the Internet or over other networks, including wireless networks. Those skilled in the relevant art will recognize that portions of the invention may reside on a server computer system while corresponding portions may reside on a client computer system. Data structures and transmission of data (including wireless transmission) particular to aspects of the invention are also encompassed within the scope of the invention.
  • Turning now to the drawings, FIG. 1 depicts a block diagram of a content authoring system with an accessibility altering module according to one embodiment. The content authoring system 100 of FIG. 1 includes a web authoring tool 102, a user interface 104, a markup tag library 106, and an accessibility altering module 108. The markup tag library 106 may include a plurality of markup tags 110 and associated tag library descriptor (TLD) 112 files. Using the content authoring system 100 of the disclosed embodiments, a developer may generate accessible web content based on markup tag libraries. The disclosed system may advantageously automatically enforce accessibility in generated web content code by modification of tag library descriptor files to require accessibility sub-elements to be present in markup tags 110 being used for web content development. Web content may be any document or page adapted to be used on the Internet or an intranet utilizing HTML or other languages or protocols.
  • The content authoring system 100, and any or all of its components, may execute on a general or special purpose computer system such as one or more of a personal computer, workstation, server, mainframe computer, notebook or laptop computer, tablet PC, desktop computer, portable computer system, PDA, set-top box, mobile phone, wireless device, or the like. The computer system may, in one embodiment, include a central processing unit (CPU) and associated volatile and non-volatile memory, including random access memory (RAM) and basic input/output system read only memory (BIOS ROM), a system monitor, a keyboard, one or more flexible diskette drives, a CD-ROM drive, a fixed disk storage drive (also known as a “hard drive” or “hard disk drive”), a pointing device such as a mouse, and an optional network interface adapter, all electrically connected using a motherboard or system planar to electrically connect these components together. In one embodiment, the content authoring system 100 may be implemented on an International Business Machine Corporation (IBM®) eServer or similar server having one or more processors, or threads of processors, executing software. The content authoring system 100 (and its components) may optionally be in communication with other computer systems via a network or other data communications channels, such as the Internet, an intranet, a LAN, a WAN, an Ethernet network, wireless network, etc.
  • The web authoring tool 102 may facilitate the creation of web content by a user and is described in more detail in relation to FIG. 2. The web authoring tool 102 may access the markup tags 110 and TLD files 112 of the markup tag library 106 in generating the web content code for user interfaces. The markup tags 110 (such as JSP tags) that are available to a developer using the web authoring tool 102 may be defined in a TLD file 112, which also may define the tag inputs and their sub-elements or attributes. The markup tag library 106 may include one or more tag libraries, each of which may include a TLD file 112 associated with one or more markup tags 110. The TLD file 112 may typically be an eXtensible Markup Language (XML) document describing a tag library and may contain information about the library as a whole as well as each tag contained in the library. Typically, a TLD file 112 will only require minimum required inputs for each markup tag 110 so that the TLD file 112 will cater to a larger audience. In the case of an image tag, for example, the TLD 112 may require the source location and file name of the image file, but other attributes such as height or width may be optional. When a developer uses the image tag of this example but omits the file name of the image, a compile error may result. In an alternative embodiment, a developer may access the markup tag library 106 manually without use of a web authoring tool 102. In the disclosed system, however, the TLD file 112 may have sub-elements associated with accessibility also be required so that attempting to compile the code without providing accessibility information results in an error.
  • The user interface 104 may facilitate receiving input to the content authoring system 100 from a user as well as providing output from the content authoring system 100 to a user. The user interface 104 may include input devices such as keyboards, mouse, voice input, etc. and may also include output devices such as a display, speaker, printer, etc. The user interface 104 may also utilize a graphical user interface (GUI) or other software to input and/or output to and from the user.
  • The accessibility altering module 108 of some embodiments may modify TLD files 112 to enforce accessibility of the result code. In one embodiment, the accessibility altering module 108 may access a TLD file 112, modify the TLD file 112 by requiring accessibility sub-elements for different tags, and then saving or storing the modified TLD file 112. The accessibility altering module 108 may modify the TLD file 112 by switching or flipping definitions in the TLD file 112 to require attributes or sub-elements on tags that would make the resulting application accessible. The accessibility altering module 108 may execute upon user request, automatically on all tag libraries or new tag libraries, or by other methodology. In other embodiments, a user may manually modify the TLD files 112 or the TLD files 112 may already be configured to enforce accessibility, making the accessibility altering module 108 unnecessary.
  • As has been described, the modifications to a TLD file 112 requiring accessibility sub-elements may be accomplished in different fashions at different times. A content authoring system 100 may receive modified TLD files 112 from another source, such as third party tag libraries that are accessibility-friendly or from an organization development database where TLD files 112 have been modified and stored for use by an organization. A content authorizing system 100 may also modify TLD files 112 itself, such as by use of the accessibility altering module 108 or manual edits by a developer.
  • FIG. 2 depicts a block diagram of the web authoring tool of the content authoring system of FIG. 1 according to one embodiment. The web authoring tool 102 of FIG. 2 includes a content editor 202, a compiler 204, a TLD file analyzer 206, and an accessibility altering module 108. A user may use content editor 202 to edit and prepare web content by inputting information, selecting tag libraries, choosing versions, etc. The compiler 204 may, such as upon request of the user, analyze the prepared content resulting from the content editor and generate, or compile, executable code. The compiler 204 checks for any required sub-elements (which may include JSP attributes) and, in the event a required feature is missing, the compiler 204 generates a compile error. A compile error may prevent the creation of executable or usable code, necessitating the developer to fix the problem or problems that caused the compile error. In the disclosed system, the compiler 204 may advantageously generate a compile error when a developer leaves out an accessibility-required feature (e.g., alternative text for an image) as defined in the TLD file 112. When faced with such an error, the developer may then add the accessibility-required feature and then recompile. The disclosed system may thus force a developer to make their code accessible by preventing the developer from compiling non-accessible code. This may save overall time and resources as testing for accessible code and correction of the code in response to bugs found in testing may both be eliminated. Making changes by adding features at the time of development may often take less time than making changes after bugs are reported, as errors must be interpreted, versions or software may change, the developer may have to refamiliarize themselves with the project again, etc.
  • The web authoring tool 102 may also include a TLD file analyzer 206 in some embodiments. The TLD file analyzer 206 may access and analyze a TLD file 112 and/or markup tags 110 to determine whether all accessibility sub-elements or attributes are found. If all sub-elements are not found, the TLD file analyzer 206 may prompt the developer for the required accessibility sub-elements and then save the developer's response. The TLD file analyzer 206 may thus allow developers to respond to prompts instead of having to manually review code, potentially saving significant amounts of time. This may be particularly useful for JSP tags which generate content using JavaScriptTm as the JavaScriptTm may produce accessible code if the required accessibility attributes are supplied. Examples of this may include content generated resulting from an onLoad event or a mouseover which renders content using style sheets.
  • The web authoring tool 102 may also include an accessibility altering module 108 in some embodiments, which may be in addition to or instead of the accessibility altering module 108 of the content authoring system 100. As described previously, the accessibility altering module 108 may modify a TLD file 112 so that accessibility sub-elements are required for compilation. An accessibility altering module 108 as part of a web authoring tool 102 may either automatically or upon user request modify TLD files 112 for accessibility purposes.
  • FIG. 3 depicts an example of a snippet of code from a TLD file of the content authoring system of FIG. 1 according to one embodiment. The snippet of code 300 may represent a sample image tag from a TLD file 112 where an accessibility sub-element or attribute is being forced. Snippet 300 includes a source file attribute 302 entitled ‘src’, which is the attribute used for the file name of the image. The code ‘<required>true</required>’ defines the file name as required, so that code using snippet 300 will not compile without an identified file name. If a developer uses the image tag of snippet 300 without defining a value for ‘src’ then a compile error will display in the user interface when the developer goes to view her work. In an alternative embodiment, the snippet 300 may use ‘yes’ or other nomenclature instead of ‘true’ to represent an affirmative to the whether the attribute is required. In one embodiment, an example of a proper use of the image tag of FIG. 3 may include:
    <WidgetLibrary:img src=“images/check.jpg”/>
    to identify a source and name for the image file when using the ‘img’ (i.e., image) tag. Attributes may be considered to be a type of sub-element of a tag and may be used interchangeable throughout this document.
  • Snippet 300 may also include an alternative text sub-element or attribute 304 entitled ‘altText’, which provides alternative text for accessibility purposes in the event the image cannot be displayed. As for the source file attribute 302, the ‘<required>true</required>’ defines the alternative text as required, so that code using snippet 300 will not compile without alternative text specified for an image. If a developer uses the image tag of snippet 300 without defining a value for ‘altText’ then a compile error will display in the user interface when the developer goes to view her work. Accordingly, after the disclosed system switches the alternative text required to ‘true’ from ‘false’ or ‘no’, a developer will be notified by a compiler error that the tag was not used to produce accessible code. While an image tag with alternative text is disclosed, other accessibility attributes may also be used. For example, the disclosed system may provide for requiring table summaries to be included for any tables in order to compile code. As only screen readers are likely to use the table summary, as it typically has no presence in a visual user interface, setting the table summary attribute to ‘true’ may remind the developer that they need to include that feature for accessibility. Other accessibility sub-elements attributes may include alternative text for labels or graphs.
  • FIG. 4 depicts an example of a flow chart for enforcing accessibility requirements with a tag library descriptor file according to one embodiment. The content authoring system 100 or any of its components, alone or in combination, may perform the method of flow chart 400. Flow chart 400 begins with optional element 402, storing a TLD file 112 for a group of markup tags 110. At element 402, the content authoring system 100 may store a TLD file 112 that it received (such as part of a third party tag library) or that it modified (such as when a accessibility altering module 108 modified the TLD file 112 to enforce accessibility). Alternatively, element 402 is not required and a TLD file 112 already stored on the content authoring system 100 may be used. The method of flow chart 400 may then continue to element 404, accessing a TLD file 112 associated with one or more markup tags 110. The content authoring system 100 may access a TLD file 112 stored at element 402 or previously stored. In one embodiment, the TLD file 112 may be stored remotely, such as over the Internet or other network connection.
  • In some optional embodiments, the method of flow chart 400 may modify the TLD file 112 to help enforce accessibility of the resulting code. At decision block 406 of this optional embodiment, the accessibility altering module 108 may determine if all accessibility sub-elements (e.g., alternative text for an image, summary text for a table, etc.) are marked as required in the TLD file 112. If all accessibility sub-elements are marked as required, flow chart 400 continues to element 410. If not all accessibility sub-elements are marked as required, flow chart 400 continues to element 408, where the accessibility altering module 108 may modify the TLD file 112 for accessibility by switching the required value for accessibility sub-elements in the TLD file 112 to ‘true’.
  • The web authoring tool 102 (and/or its compiler 204) may next, at element 410, analyze each markup tag 110 in a piece of content by comparing the TLD file 112 requirements to the included sub-elements. If each markup tag 110 has all of the required sub-elements at decision block 412, the web authoring tool 102 and/or compiler 204 may successfully compile code based on the markup tags 110, after which the flow chart terminates. If any markup tag 110 does not have all of the required accessibility sub-elements (or alternatively any of the required sub-elements), the web authoring tool 102 and/or compiler 204 may then generate an error message at element 414, after which flow chart 400 terminates. Accordingly, only markup tags in a piece of content that meet accessibility requirements will be compiled and turned into working code. If accessibility features are missing, a developer may correct those deficiencies in response to the error message generated at element 414.
  • FIG. 5 depicts an example of a flow chart for modifying a tag library descriptor file to enforce accessibility requirements according to one embodiment. The content authoring system 100 or any of its components, alone or in combination, may perform the method of flow chart 500. The content authoring system 100 or its components may perform elements of flow chart 500 at any time, including when TLD files 112 are received as part of a tag library, upon a developer or other user request, or at another time. Flow chart 500 may also represent an example embodiment of the optional modification at elements 406 and 408 of FIG. 4. Flow chart 500 begins with element 502, accessing a TLD file 112 associated with one or more markup tags 110. The content authoring system 100 may access a TLD file 112 stored at element 402 or previously stored. In one embodiment, the TLD file 112 may be accessed remotely, such as over the Internet or other network connection.
  • The accessibility altering module 108 may modify next analyze the TLD file 112 for any accessibility sub-elements at element 504 to determine if any of the accessibility sub-elements are configured as not required. At element 506, the accessibility altering module 108 may modify any accessibility sub-elements determined to be configured as not required by making those sub-elements required. At decision block 508, the accessibility altering module 108 may determine if more accessibility sub-elements are still configured as ‘not required’and may return to element 504 to continue analysis and/or modification. After all accessibility sub-elements are marked as required in the TLD file 112, the accessibility altering module 108 may store the modified TLD file 112 at element 510, after which the flow chart terminates.
  • By modifying the TLD file 112 to require accessibility sub-elements, the disclosed methodology provides an effective mechanism for enforcing accessibility requirements during web content authoring. The accessibility altering module 108 may perform its modifications at any time, such as when a TLD file 112 is received, first used, upon request, etc. The accessibility altering module 108 may also perform flow chart 500 before the TLD file 112 is passed to developers, such as by the tag library authors or a centralized web content development machine.
  • FIG. 6 depicts an example of a flow chart for enforcing accessibility requirements with a tag library descriptor file according to an alternative embodiment. The content authoring system 100 or any of its components, alone or in combination, may perform the method of flow chart 600. The method of flow chart 600 is an alternative embodiment to the method of flow chart 400. Flow chart 600 begins with element 602, where a web authoring tool 102 (and/or its compiler 204) accesses a TLD file 112 associated with one or more markup tags 110. The web authoring tool 102 and/or its compiler 204 may next, at element 604, analyze each markup tag 110 in a piece of content by comparing the TLD file 112 requirements to the included sub-elements. If each markup tag 110 has all of the required sub-elements at decision block 606, the flow chart terminates and the web authoring tool 102 and/or compiler 204 may successfully compile code based on the markup tags 110. If any markup tag 110 does not have all of the required accessibility sub-elements (or alternatively any of the required sub-elements), the TLD file analyzer 206 may then prompt a user for the missing accessibility sub-elements at element 608, after which the flow chart terminates. The method of flow chart 600 allows a developer to interactively correct accessibility deficiencies, substantially reducing the need for future testing or corrections. The disclosed method prompts the user for input instead of generating an error message as in element 414 of FIG. 4.
  • In general, the routines executed to implement the embodiments of the invention, may be part of an operating system or a specific application, component, program, module, object, or sequence of instructions. The computer program of the present invention typically is comprised of a multitude of instructions that will be translated by the native computer into a machine-readable format and hence executable instructions. Also, programs are comprised of variables and data structures that either reside locally to the program or are found in memory or on storage devices. In addition, various programs described hereinafter may be identified based upon the application for which they are implemented in a specific embodiment of the invention. However, it should be appreciated that any particular program nomenclature that follows is used merely for convenience, and thus the invention should not be limited to use solely in any specific application identified and/or implied by such nomenclature.
  • It will be apparent to those skilled in the art having the benefit of this disclosure that the present invention contemplates methods, systems, and media for enforcing accessible content development. It is understood that the form of the invention shown and described in the detailed description and the drawings are to be taken merely as examples. It is intended that the following claims be interpreted broadly to embrace all the variations of the example embodiments disclosed.

Claims (20)

1. A method for enforcing accessible content development, the method comprising:
accessing a tag library descriptor for each of a plurality of markup tags for web content authoring, the tag library descriptor noting one or more tag sub-elements required for accessibility;
analyzing each markup tag in a piece of web content by comparing the tag library descriptor accessibility requirements to sub-elements included with each markup tag to determine whether all required accessibility sub-elements are present; and
generating an error message if all required accessibility sub-elements of a markup tag are not present.
2. The method of claim 1, further comprising storing the tag library descriptor.
3. The method of claim 1, further comprising modifying the tag library descriptor to require one or more markup tag sub-elements associated with accessibility.
4. The method of claim 1, further comprising prompting a user for information associated with a required accessibility tag sub-element.
5. The method of claim 1, wherein the one or more tag sub-elements associated with accessibility comprises alternate text for one or more of an image, table, label or graph.
6. The method of claim 1, wherein noting one or more tag sub-elements required for accessibility comprises requiring an accessibility attribute of a markup tag.
7. A machine-accessible medium containing instructions effective, when executing in a data processing system, to cause said data processing system to perform operations comprising:
accessing a tag library descriptor for each of a plurality of markup tags for web content authoring, the tag library descriptor noting one or more tag sub-elements required for accessibility;
analyzing each markup tag in a piece of web content by comparing the tag library descriptor accessibility requirements to sub-elements included with each markup tag to determine whether all required accessibility sub-elements are present; and
generating an error message if all required accessibility sub-elements of a markup tag are not present.
8. The machine-accessible medium of claim 7, further comprising storing the tag library descriptor.
9. The machine-accessible medium of claim 7, further comprising modifying the tag library descriptor to require one or more markup tag sub-elements associated with accessibility.
10. The machine-accessible medium of claim 7, further comprising prompting a user for information associated with a required accessibility tag sub-element.
11. The machine-accessible medium of claim 7, wherein the one or more tag sub-elements associated with accessibility comprises alternate text for one or more of an image, table, label or graph.
12. The machine-accessible medium of claim 7, wherein noting one or more tag sub-elements required for accessibility comprises requiring an accessibility attribute of a markup tag.
13. A content authoring system, the system comprising:
a markup tag library comprising a plurality of markup tags each associated with a tag library descriptor, the tag library descriptor noting all markup tag sub-elements required for accessibility; and
a web authoring tool in communication with the markup tag library to compile code for a piece of web content based on the tag library descriptor and the markup tags, the web authoring tool being adapted to generate an error message if all required sub-elements are not present.
14. The system of claim 13, further comprising a user interface to receive input from a user and to provide output to the user.
15. The system of claim 13, further comprising an accessibility altering module to modify the tag library descriptor to require one or more markup tag sub-elements associated with accessibility.
16. The system of claim 13, wherein the tag sub-elements required for accessibility comprises alternate text for one or more of an image, table, label or graph.
17. The system of claim 13, wherein the web authoring tool comprises a compiler to compile generated code based on the tag library descriptor and the markup tags.
18. The system of claim 13, wherein the web authoring tool comprises a tag library descriptor file analyzer to compare a markup tag with a tag library descriptor and to prompt a user for information relating to markup tag sub-element required for accessibility.
19. The system of claim 13, wherein the web authoring tool comprises an accessibility altering module to modify the tag library descriptor to require one or more markup tag sub-elements associated with accessibility.
20. The system of claim 13, wherein the web authoring tool and the markup tag library are in communication via a network.
US11/250,024 2005-10-13 2005-10-13 Systems, methods, and media for enforcing accessible content development Abandoned US20070089052A1 (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
US11/250,024 US20070089052A1 (en) 2005-10-13 2005-10-13 Systems, methods, and media for enforcing accessible content development
US12/058,324 US8122342B2 (en) 2005-10-13 2008-03-28 Enforcing accessible content development

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US11/250,024 US20070089052A1 (en) 2005-10-13 2005-10-13 Systems, methods, and media for enforcing accessible content development

Related Child Applications (1)

Application Number Title Priority Date Filing Date
US12/058,324 Continuation US8122342B2 (en) 2005-10-13 2008-03-28 Enforcing accessible content development

Publications (1)

Publication Number Publication Date
US20070089052A1 true US20070089052A1 (en) 2007-04-19

Family

ID=37949529

Family Applications (2)

Application Number Title Priority Date Filing Date
US11/250,024 Abandoned US20070089052A1 (en) 2005-10-13 2005-10-13 Systems, methods, and media for enforcing accessible content development
US12/058,324 Expired - Fee Related US8122342B2 (en) 2005-10-13 2008-03-28 Enforcing accessible content development

Family Applications After (1)

Application Number Title Priority Date Filing Date
US12/058,324 Expired - Fee Related US8122342B2 (en) 2005-10-13 2008-03-28 Enforcing accessible content development

Country Status (1)

Country Link
US (2) US20070089052A1 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20180018254A1 (en) * 2016-07-18 2018-01-18 International Business Machines Corporation Segmented accessibility testing in web-based applications

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9633309B2 (en) * 2014-06-19 2017-04-25 International Business Machines Corporation Displaying quality of question being asked a question answering system
US9740769B2 (en) 2014-07-17 2017-08-22 International Business Machines Corporation Interpreting and distinguishing lack of an answer in a question answering system
US10394421B2 (en) 2015-06-26 2019-08-27 International Business Machines Corporation Screen reader improvements
US10452231B2 (en) * 2015-06-26 2019-10-22 International Business Machines Corporation Usability improvements for visual interfaces
US10379840B2 (en) 2017-10-19 2019-08-13 International Business Machines Corporation Crowd sourcing accessibility rendering system for non-accessible applications

Citations (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20030020752A1 (en) * 2001-06-19 2003-01-30 Santiago Stanley P. Methods and systems for representing and accessing data
US20030105884A1 (en) * 2001-10-18 2003-06-05 Mitch Upton System and method for using Web services with an enterprise system
US20040003130A1 (en) * 2002-06-28 2004-01-01 International Business Machines Corporation Systems and methods for accessing web services using a tag library
US20040268312A1 (en) * 2003-05-30 2004-12-30 International Business Machines Corporation Application development support, component invocation monitoring, and data processing
US6948151B2 (en) * 2001-06-29 2005-09-20 International Business Machines Corporation System and method for dynamic packaging of component objects
US7000218B2 (en) * 2001-06-29 2006-02-14 International Business Machines Corporation System and method for developing custom programmable tags
US20060150082A1 (en) * 2004-12-30 2006-07-06 Samir Raiyani Multimodal markup language tags
US7076766B2 (en) * 2002-06-03 2006-07-11 Steve Wirts Software application development methods and framework
US7089330B1 (en) * 2000-09-28 2006-08-08 I2 Technologies Us, Inc. System and method for transforming custom content generation tags associated with web pages
US7219350B2 (en) * 2003-03-19 2007-05-15 International Business Machines Corporation Dynamic server page meta-engines with data sharing for dynamic content and non-JSP segments rendered through other engines
US7246134B1 (en) * 2004-03-04 2007-07-17 Sun Microsystems, Inc. System and methods for tag library generation
US7376660B2 (en) * 2004-09-29 2008-05-20 International Business Machines Corporation System and method for extensible java server page resource management

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US700218A (en) * 1901-02-27 1902-05-20 Samuel W Parsons Automatic fire-extinguisher.

Patent Citations (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7089330B1 (en) * 2000-09-28 2006-08-08 I2 Technologies Us, Inc. System and method for transforming custom content generation tags associated with web pages
US7096455B2 (en) * 2001-06-19 2006-08-22 Sun Microsystems, Inc. Method and system for representing and accessing data for computer software applications
US20030020752A1 (en) * 2001-06-19 2003-01-30 Santiago Stanley P. Methods and systems for representing and accessing data
US6948151B2 (en) * 2001-06-29 2005-09-20 International Business Machines Corporation System and method for dynamic packaging of component objects
US7000218B2 (en) * 2001-06-29 2006-02-14 International Business Machines Corporation System and method for developing custom programmable tags
US20030105884A1 (en) * 2001-10-18 2003-06-05 Mitch Upton System and method for using Web services with an enterprise system
US7076766B2 (en) * 2002-06-03 2006-07-11 Steve Wirts Software application development methods and framework
US20040003130A1 (en) * 2002-06-28 2004-01-01 International Business Machines Corporation Systems and methods for accessing web services using a tag library
US7219350B2 (en) * 2003-03-19 2007-05-15 International Business Machines Corporation Dynamic server page meta-engines with data sharing for dynamic content and non-JSP segments rendered through other engines
US20040268312A1 (en) * 2003-05-30 2004-12-30 International Business Machines Corporation Application development support, component invocation monitoring, and data processing
US7246134B1 (en) * 2004-03-04 2007-07-17 Sun Microsystems, Inc. System and methods for tag library generation
US7376660B2 (en) * 2004-09-29 2008-05-20 International Business Machines Corporation System and method for extensible java server page resource management
US20060150082A1 (en) * 2004-12-30 2006-07-06 Samir Raiyani Multimodal markup language tags

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20180018254A1 (en) * 2016-07-18 2018-01-18 International Business Machines Corporation Segmented accessibility testing in web-based applications
US20180074945A1 (en) * 2016-07-18 2018-03-15 International Business Machines Corporation Segmented accessibility testing in web-based applications
US10552303B2 (en) * 2016-07-18 2020-02-04 International Business Machines Corporation Segmented accessibility testing in web-based applications
US10613967B2 (en) * 2016-07-18 2020-04-07 International Business Machines Corporation Segmented accessibility testing in web-based applications

Also Published As

Publication number Publication date
US20080184104A1 (en) 2008-07-31
US8122342B2 (en) 2012-02-21

Similar Documents

Publication Publication Date Title
CA2684822C (en) Data transformation based on a technical design document
US7039898B2 (en) Computer system for performing reusable software application development from a set of declarative executable specifications
US8543379B1 (en) System and method for parsing a text buffer using a graphical user interface
US8281283B2 (en) Model-based integration of business logic implemented in enterprise javabeans into a UI framework
Leotta et al. Pesto: Automated migration of DOM‐based Web tests towards the visual approach
US7568184B1 (en) Software documentation generator
TWI453666B (en) Method and computer-readable storage medium for using collaborative development information in a team environment
Abou-Zahra Web accessibility evaluation
US8850392B2 (en) Method and computer system for document authoring
US8122342B2 (en) Enforcing accessible content development
US9141393B2 (en) Business content authoring and distribution
Arthorne et al. Official Eclipse 3.0 Faq (Eclipse Series)
US7293232B2 (en) Source code editor for editing multilanguage documents
Savitch Absolute Java
US20150106685A1 (en) Transforming a document into web application
Imtiaz et al. An automated model-based approach to repair test suites of evolving web applications
Anderson et al. Pro business applications with silverlight 4
Velasco et al. A web compliance engineering framework to support the development of accessible rich internet applications
Odijk et al. Discovering software resources in CLARIN
US11550990B2 (en) Machine first approach for identifying accessibility, non-compliances, remediation techniques and fixing at run-time
JP4630572B2 (en) Consistency check program and consistency check device
Freeman Pro Go
Kitiyakara Acceptance testing HTML
Downey Python as a first language: pre-conference workshop
Gupta et al. The software concordance: A user interface for advanced software documents

Legal Events

Date Code Title Description
AS Assignment

Owner name: CORPORATION, INTERNATIONAL BUSINESS MACHINES, NEW

Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNORS:KARLE, CHRISTOPHER J.;RYAN, CORINNE M.;SCHWERDTFEGER, RICHARD S.;REEL/FRAME:016845/0576;SIGNING DATES FROM 20051006 TO 20051007

STCB Information on status: application discontinuation

Free format text: ABANDONED -- FAILURE TO RESPOND TO AN OFFICE ACTION