Skip to content

Use cases

snidersd edited this page Aug 4, 2019 · 60 revisions

Background Information

This page is for creating use cases to test if different proposals for implementing the vocabularies to determine if they can work.

Each use case should have a description, link to the requirement or easy language requirement, and two code examples. Code examples should include the data-* attribute and an example using the minimum number of attributes possible.

Links:

Summary

  • A single attribute can be used for many tokens if they are able to be separated with whitespace. In real life, they have been shown to be confusing to implementors who may not read and understand every word in the specification when the context is not clear
  • a single attribute for may text values: would require a very complex data model if it is even possible - all the disadvantages of value pairs come into play
  • a single attribute for may URI values: would require a very complex data model if it is even possible- all the disadvantages of value pairs come into play

Stories

Easily Distracted / Overwhelmed

Someone who is either easily distracted or can be easily overwhelmed with too much information on a web page needs the ability to simplify the page to just the critical information and suppress anything that is not integral to the understanding and use of the page.

Example: You want to get the latest weather report for your city and go to the www.weather.com website. Finding the actual weather forecast is actually a little challenging even if you have no disabilities due to all the advertisements above, beside and below the information you actually want, there is also today's top stories, trending news, and social media to ignore. If you are easily overwhelmed or distracted getting the key information about today's weather is a challenge. Having the ability to personalize and strip away all but the key information (i.e. just the weather forecast for my city) is critical for this user.

In this example the author of this webpage would mark the <section>, <p>, or <div> that contains the actual weather report and any associated tools to manipulate the weather report (i.e. city search, hourly vs. 5 day forecast, etc.) as data-simplification=critical, and mark the other content as medium (default) or low.

For websites which rely on Advertisement revenue, this may be difficult to completely suppress but maybe there is a way to move the most critical sections of a website above anything that is a lower priority.

Difficulty understanding Numbers

Someone who has dyscalculia and therefore has difficulty understanding numbers which means they have a hard time understanding websites that use numbers to convey information. Therefore this numeric information must be provided in an alternative format that the user can understand.

Example: You want to get the latest weather report for your city and go to www.weather.com website. For today’s forecast, it shows a high of 95℉ and a low of 40℉, which is not helpful for this particular user. Allowing this numeric information to be presented instead as an image, symbol, or text would benefit the user (i.e. instead of 95℉, a picture of someone wearing shorts and a tee-shirt with the sun above or simply a text alternative of “Very warm”, and instead of 40℉ a picture of someone wearing a jacket with pants, or a text alternative of “Very cold”. Also for something like the humidity index of 90%, there could be a text alternative of “muggy”.

In this example, the author would have the numbers marked up using data-numberfree where the default would show the numeric value but for those needing an alternative representation for numbers would get an associated image or description to be presented instead.

It is important to note that people with dyscalculia are often very good with words, so long text can be better than short numbers.

Mild-Moderate Language Impairment / Learning Disability

Those who have a moderate Language Impairment / Learning Disability may have a limited vocabulary so they will only know terms that are in the core vocabulary that they have learned. They also use symbols to represent words and concepts.

So, they may know the word name or last name but have not learned the term "family name". learning new terms is very slow, requiring hours of work. Reading is also very slow so finding the right information can be a barrier. Symbols help people get to the section they need faster.

Solutions

  1. The ability to personalize a web page and present symbols instead can help users to easily understand the content being provided

Example: Marking up the Help button so the user agent can render a familiar term and present the symbol for help. E.g. <a data-action="help">support /</a> may be rendered as / ? help (possibly as a tool tip)

  1. Allow the author to add a simple language equivalent to complex but important text such as <h1 data-easylang="form to ask for money if you have a disability or if you are ill"> Disability claims under CD 356 / US `. In this example, the user agent replaces the complex text with the simple text or puts the simple text in a popup message if the easy text needs to be longer.

Note some people with language disabilities are good at numbers, so there could be times you want to replace a long string of text with a short number <span data-easylang=">90% of the time this happens"> normally this is expected </span> Note this is the opposite of the numberfree example.

  1. Because reading is so slow some users may also want less content and features on the web page, as per the above use cases.

Severe Language Impairment

Those who have a severe speech and physical impairment can use symbols to represent words is their primary means of communication for both consuming and producing information. Some users communicate through the use of symbols, rather than written text, as part of an Augmentative and Alternative Communication (AAC) system. Symbol users face a wide variety of barriers to accessing web content, but one of the main challenges is a lack of standard interoperability or a mechanism for translating the same concept in different symbol sets.

Examples include:

  • An assisted living home creates adult education course and life-skills content. For example, they have content on how to make dinner using a microwave, but they have people who read differing symbol sets. The assisted living home needs to provide content that works for all their users. In some cases, the symbols or pictures used are unique to a single user, such as the picture of an actual person, phone, or cup, etc.

  • People who know different symbol sets wish to talk to each other

  • A government agency that is making information sheets about human rights and patient rights. The agency wants to add symbols to accommodate the needs of lots of different users but they also want to ensure people who can read different symbols are able to read the information as well.

  • A large banking site wants people to be as autonomous as possible when they access their services so they include augmented symbol references onto their core services.

It should be noted that the users who depend primarily on symbols to obtain information may struggle the most with incorrect translations because they have severe language disabilities when trying to understand what is meant by the use of an incorrect symbol which makes it unachievable for many users. This rules out relying on machine learning until machine learning output is reliable and stops making errors.

The task force understands that making a scalable solution may, therefore, make a solution not useable for the earlier use cases. We may need a multi-phase solution so that the earlier use cases are supported sooner.

**Solutions for Symbol **

Map symbol libraries to common concepts, so that symbols can be accurately converted to text in any language and then presented to other users in their preferred symbol library. The ability to personalize a web page by presenting the user's preferred symbols can help symbol users to easily understand the content being provided.

Example: In this example the author would add data-symbol=”name space references for the image” <img data-symbol="http://blisssymbolics.org/refnumber/001" href="mysymb.bmp">

When there is more than one concept, multiple concepts can be referenced by separating them with white space. The order of multiple concepts should be subject predicate object. Both omissions and multiple triples are allowed.

Note that a UNICEF consortium is mapping the different open symbol libraries to a reference symbol (at Blisssymbolics) to enable this. See the implementations page.

Working Memory and Short-term Memory Impairment

Users may have differences in both working and short-term memory. For some users, the duration of working memory may be shorter than the average which is between 10-15 seconds. For some users, the duration of short-term memory may be shorter than the average which is between 15-30 seconds.

Example: Many processes consist of a sequence of separate steps or actions which must be performed by a user to complete a process or workflow. Users must be able to remember completed tasks in order to identify their location in a process. In addition, a user must be able to navigate to completed tasks to make modifications or corrections.

Solution: data-stepIndicator allows an author to define steps within a process or represent an entire user path outside of the context of a defined process, including steps between defined processes into breadcrumbs or linked steps that identify completed tasks. This allows the user to navigate back to completed steps and identify a user's current location in a path.

  • data-stepIndicator
  • data-step
  • data-stepLocation
  • data-stepStatus
  • data-stepNumber

Single issue Use Cases

Simplification

Use case: The user would prefer to see only the critical information and required fields to complete a task.

Original

<div>
  <form action="#" method="post"><br /> 
    <p>Enter your e-mail address to subscribe to our mailing list.</p><br /> 
    <label for="address">Enter email address:</label>
    <input type="text" id="address" name="address"/></p><br />
    <input type="submit" value="Subscribe" />
  </form>
</div>

data-* Attributes

<div>
  <form action="#" method="post"><br /> 
    <p>Note: [*]denotes mandatory field</p>
    <p>Enter your e-mail address to subscribe to our mailing list.</p><br /> 
    <label for="address">Enter email address:</label>
    <input type="text" id="address" name="address" data-purpose="email" data-simplification="critical" aria- 
    required="true"/>[*]</p><br />
    <input type="submit" data-simplification="critical" value="Subscribe" />
    <br /> 
  </form>
</div>

#Two token use cases

Simplification and field

Use case: The user would prefer to see only the critical information and required fields to complete a task.

Original b

<div>
  <button id="1">send</button>
  <button id="2">undo</button>
  <button id="3">lable</button>
  <button id="4">send later</button>
  <button id="5">mark urgent</button>
</div>

data-* Attributes - b

<div>
  <input type="submit" data-simplification="critical" data-action="send" value="send" />
  <button id="2" data-simplification="high" data-action="undo">undo</button>
  <button id="3" data-simplification="normal">lable</button>
  <button id="4" data-simplification="normal">send later</button>
  <button id="5" data-simplification="normal">mark urgent</button>
</div>

3 Attributes - b

<div>
  <input type="submit" context ="critical send" value="send" />
  <button id="2" context="high undo">undo</button>
  <button id="3" context="normal">lable</button>
  <button id="4" context="normal">send later</button>
  <button id="5" context="normal" >mark urgentr</button>
</div>

Content Filtering (inception)

User may have a sensitivity to certain words or topics; based on personal preference, culture or disability which are expressed on a page using text, images or video.

Given one or more strings representing a specified word or category, for example, content marked as explicit, violent, etc., hide or remove that string and associated elements from the DOM.

  • data-action = hide
  • URI = JSON file of words

Consideration: How are we bringing in data sets to support use cases that depend on external data, for example, symbols or simple language vocabularies? Is this through separate JS or is the vision to have that abstracted by the implementation.

Alternative (by lisa) data-triggers = list of words

at the user end the content will be hidden under a warning button if any of the words match a word identified as a tiger in the user preferences

for example data-triggers = "violent rape"


Two text field Use Cases

Numberfree and extrahelp

This example proved much harder to create than I expected. I will admit that I am still confused at how to create the examples and am not confident that these are correct. I also intended to have this be an example that needed two types of replacement but when I implemented it, I realized I could split it into two separate substitutions. becky

The user needs content that does not use numbers and needs extra help and information to complete a task.

Original

<div>
     7 out of 10 people order pizza with some kind of meat topping. 
     Select the toppings below in order of preference that you would 
     order on pizza.
</div>
<form>
  sophisticated form to select/rank pizza toppings in order of preference
</form>

3 Attributes

<div>
   <span context="numberfree" easylang="most people">
       7 out of 10 people
   </span> 
   order pizza with some kind of meat topping. 
   <span context="extrahelp" reference="href-to-simplifiedInstructions">
       Select the toppings below in order of preference that you would order on pizza.
   </span>
</div>

data-* Attributes

<div>
  <span data-numberfree="Most people">
     7 out of 10 people
  </span> 
  order pizza with some kind of meat topping. 
  <span data-extrahelp="href-to-simplifiedInstructions">
     Select the toppings below in order of preference that 
     you would order on pizza.
  </span>
</div>

Numberfree and easylang

Use case: The user prefers alternative text that does not use numerical concepts as well as content that is easier to read and understand.

Original

<p>
   Comparing the present clock-reported time which is 5 minutes
   after 09:00 AM with what we previously discussed 
   yesterday, and made an agreement about, 
   it seems that I myself may not be exactly on schedule
</p>

data-* Attributes

<div>
    <span easylang="I'm running late">
        Comparing the present clock-reported time which is 
        <span data-numberfree="midmorning">
           5 minutes after 09:00 AM
        </span> 
        with what we previously discussed 
        yesterday, and made an agreement about, it seems that 
        I myself may not be exactly on schedule
    </span>
</div>

Numberfree and easylang 2

Use case: we have two use cases

A. The user prefers alternative text that is easy to read and understand but is good with numbers (eg dyslexic)

Original 2.a

<p>
   Comparing the present clock-reported time 
   you many wish to come a bit later than the normal time.
</p>

data-* Attributes 2.a.1

<div>
  <span data-easylang="come to the meeting at 9:10">
       Comparing the present clock-reported time you many wish 
       to come a bit later then the normal time
  </span> 
</div>

three attribute 2.a.2

<div>
    <span data-easylang="come to the meeting at 9:10">
        Comparing the present clock-reported time 
        you many wish to come a bit later then the normal time
    </span> 
</div>

B: the user can understand words well but has dyscalculia and does not understand numbers

Original 2.b

<p>
  meeting is starting 10 minutes late
</p>

data-* Attributes 2.b.1

<div>
   <span data-easylang="come a bit later than the normal time - enough time for a cup of tea... ">
      meeting is starting 10 minutes late
   </span> 
</div>

three attribute 2.b.2

<div>
  <span data-easylang="come a bit later then the normal time - enough time for a cup of tea... " context="numbers">
     meeting is starting 10 minuets late
  </span> 
</div>

Three text fields use cases

feedback, explain and easy lang

Use case: The user needs

  • easy language and
  • a bit more information about how the interface works
  • what just happened - i.e. did they need to click something else, did it work?

In this example search criteria in one part of a page controls the results in anther region which shows the side effects of a drug. Other buttons may show dosage etc. in the results region

Original

<input  
  data-context ="critical" value="refresh" aria-controls="region2" 
/>

data-*

<input  data-simplification="critical"  
  data-feedback="the results now are for ibuprofen side effect" 
  value="refresh" 
  aria-controls="region2" 
  data-easyLang="get the side effects" 
  data-explain="press this button to see the side effects of a drug"  
/>

3 Attributes

I could not do this in three attributes. So I did what I could

<input  
   context="critical" 
   data-feedback="the results now are for ibuprofen side effect" 
   value="refresh" 
   aria-controls="region2" 
   data-easyLang="get the side effects" 
   data-explain="press this button to see the side effects of a drug"  
/>

more than one URI use case

symbol and extra help

Use case: The user needs

  • symbols
  • extra text and help

Original

<div>
  <strong>warning</strong> 
  in the event of a siren go to the designated protected area
</div>

data-*

<div>
  <strong region="warning">warning</strong> 
  <span data-symbol="blis.org/siren"> in the event of a siren </span>
  <span data-symbol="blis.org/goto"> go to </span>
  <span data-symbol="blis.org/shelter" 
    data-extrahelp=mysite/whatisashelter-easylang.html">the designated protected area
  </span>
</div>

three attributes

I could not do it in three

this is the best I can do

<div> 
  <strong  context="warning">warning</strong> 
  <span reference="blis.org/siren">in the event of a siren</span>   
  <span reference="blis.org/goto"> go to </span>
  <span reference="blis.org/shelter" extrahelp=mysite/whatisashelter-easylang.html">
    the designated protected area
  </span> 
</div>
Clone this wiki locally