CARVIEW |
Personalization Semantics Content Module 1.0
W3C Working Draft
- This version:
- https://www.w3.org/TR/2018/WD-personalization-semantics-content-1.0-20180316/
- Latest published version:
- https://www.w3.org/TR/personalization-semantics-content-1.0/
- Latest editor's draft:
- https://w3c.github.io/personalization-semantics/content/
- Previous version:
- https://www.w3.org/TR/2018/WD-personalization-semantics-content-1.0-20180307/
- Editors:
- Lisa Seeman, lisa.seeman@zoho.com
- Charles LaPierre, Benetech, charlesl@benetech.org
- Rich Schwerdtfeger
- Michael Cooper, W3C, cooper@w3.org
- Roy Ran, W3C, ran@w3.org
Copyright © 2017-2018 W3C® (MIT, ERCIM, Keio, Beihang). W3C liability, trademark and document use rules apply.
Abstract
This document provides a vocabulary of terms that can be used to enhance web content with information about controls, symbols, and user interface elements. User agents use these semantics to augment or adapt content to the user scenario. This helps the user use and understand the content, and supports simplification and management of distractions.
Personalization Semantics Content Module is a part of Personalization Semantics, which is introduced in the Personalization Semantics Explainer 1.0 [personalization-semantics-1.0].
Status of This Document
This section describes the status of this document at the time of its publication. Other documents may supersede this document. A list of current W3C publications and the latest revision of this technical report can be found in the W3C technical reports index at https://www.w3.org/TR/.
This is a Working Draft of Personalization Semantics Content by the Accessible Rich Internet Applications (ARIA) Working Group. Personalization Semantics Content Module is a part of Personalization Semantics, which is introduced in the Personalization Semantics Explainer 1.0 [personalization-semantics-1.0]. This version removes aui prefixes from property names, changes some examples and adds some editor's note in the document.
To comment, file an issue in the W3C personalization semantics GitHub repository. If this is not feasible, send email to public-personalization-tf@w3.org (archives). Comments are requested by 13 April 2018. In-progress updates to the document may be viewed in the publicly visible editors' draft.
Publication as a Working Draft does not imply endorsement by the W3C Membership. This is a draft document and may be updated, replaced or obsoleted by other documents at any time. It is inappropriate to cite this document as other than work in progress.
This document was produced by a group operating under the W3C Patent Policy. W3C maintains a public list of any patent disclosures made in connection with the deliverables of the group; that page also includes instructions for disclosing a patent. An individual who has actual knowledge of a patent which the individual believes contains Essential Claim(s) must disclose the information in accordance with section 6 of the W3C Patent Policy.
This document is governed by the 1 February 2018 W3C Process Document.
1. Introduction
This section is non-normative.
This document is an extension of Personalization Semantics Explainer 1.0. it provided vocabularies that enables user agents to augment or adapt content to the user scenario and helps the user use and understand the content. It includes use cases and vocabularies for identifying the purpose of controls, symbols and user interface elements and supports simplification and distractions.
2. Use Cases
2.1 Simplification
Requirement: The user must be able to request a way to identify and differentiate between critical features, medium features and less important features. These need to be defined as important from a user perspective in the content. Typically, critical features may be used by many or most users, 90% of the time or more. High important features would be above 60% use. Medium important features would be 20% of users use it 20% of the time. Under 20% usage would be of low importance.
User experience: Based on personalization setting the user can see less options. A sample user experience is available at https://rawgit.com/ayelet-seeman/coga.personalisation/demo/conactUs.html
Relevant properties: simplification
2.2 Adding Context
Requirement: Having familiar terms and symbols is key to being able to use the web. However what is familiar for one user may be strange for another requiring them to learn new symbols. If a user agent or script knows the context of links, buttons, and other page elements then symbols and text used can be ones that the user understands. This can include:
- Symbols and graphics that they are familiar with
- Tooltips
- Language the use can understand
- Keyboard short cuts
For that we need to standardize supportive syntax and terms that can be linked to associated symbols, terms, translations and explanations, for the individual, via an attribute.
Example user experience: If an author gives to a button a role "send" then, without any work by the author, the button could be automatically rendered with a symbol, term, and/or tooltips that is understandable by a particular user. It could automatically imply F1 help that explains the send function in simple terms. It could be identified with a keyboard short cut that will always be used for send. In addition it could be identified as important and always rendered, or rendered as a large button. This would enable a consistent UI experience across applications and websites.
Relevant properties: action
, destination
, field
2.2.1 General Context
Requirement: One important factor in optimizing the personalization of a product or service is to ensure that the personalization is appropriate for the current context of use as well as what is relevant for the user. For example a female user with a cognitive disability may need less options, and options that are for men are less likely to be relevant for her and may be demoted to bellow the scroll or placed under a "more option" button.
Relevant properties: context
2.2.2 Interoperable Symbols
Requirement: We would like to create interoperable symbol sets for those with complex communication needs using Alternative and Augmentative Communication (AAC) systems. AAC systems designed for people who are non-verbal often use symbols with or without text. End-users tend to only learn one symbol set and cannot easily communicate with other symbol users in a written format or may struggle to understand different symbols used in different applications. Some symbols are subject to copyright and cannot be shared across applications. However, there are open symbol sets that can be shared and mapped against concepts, generating representative text. This text can be translated into different languages and even used to present a different set of symbols. If users' symbols are mapped to the same concepts then user agents can load the user understandable symbols and enable access to the web and other applications.
User experience: AAC users, those working with AAC users and others will be able to load symbols that they understand into different applications that have been made by a different provider.
Relevant properties: concept
3. Content
3.1 action
3.1.1 Description
The action
attribute provides the context of a button. It is typically used on a button element or element with role="button".
3.1.2 Example
The below example section show how action
used when coding.
For example: <button aui-action="undo" >Revert</button>
A personalization agent may add a symbol, replace the text with a more familiar term, or give it a specific presentation. Note that there is no default value.
3.1.3 Characteristics
Characteristic | Value |
---|---|
Related Concepts: | link types [HTML52] and HTML types [HTML5] |
Used in Roles: | All elements of the base markup |
Inherits into Roles: | Placeholder |
Value: | token |
The following could be supported values of action
for buttons. Note that The following items represent an option or control that allows you to perform the action. They do not represent page regions.
3.1.4 Values
Value | Description |
---|---|
compose | compose new item such as an email. (Implied simplification = "critical".) |
next | move to the next item in the series. (Implied simplification = "critical".) |
delete | delete current item, selected control or text |
previous | move to the previous item in the series. (Implied simplification = "critical".) |
toc | opens a table of content |
submit | submits the form data or request to the server. (Implied simplification = "critical".) |
confirm | confirms the form request to the server. For example, an "ok" button. (Implied simplification = "critical".) |
undo | revert to the state before the user's most recent changes |
cancel | closes the dialog and discards any changes the user may have made within that dialog. (Implied simplification = "critical".) |
reset | resets all the controls to their initial values |
label | add label to the selected item or the item at the current location. |
buy | buy the selected item or buy the item at the current location. Often involves adding the current item into a shopping cart. (Implied simplification = "critical".) |
checkout | proceed to the purchasing process. (Implied simplification = "critical".) |
add | add the selected item or the item at the current location to a list |
move | Changes the position of a selected item(s). Often used with left, right, begin, end, increase (up) or decrease (down) |
save | save the current content. (Implied simplification = "critical".) |
send | send a form, email or request. (Implied simplification = "critical".) |
close | close current dialog. (Implied simplification = "critical".) |
more | show more information |
print current page, selection or the item at the current location | |
received | open received folder |
sent | open sent folder |
edit | edit current item, selection or the item at the current location |
forward | forward to current item such as an email |
reply | reply to current item such as an email. (Implied simplification = "critical".) |
upload | upload file to the server |
download | download file from the server |
connect | connect a communication channel |
open | open item. (Implied simplification = "critical".) |
new | open new item. (Implied simplification= "critical".) |
settings | open settings and options |
mode | change the mode or functionality. (Implied simplification= "critical".) |
increase | increases the level of the relevant setting. (Implied simplification= "critical".) |
decrease | decreases the level of the relevant setting. (Implied simplification= "critical".) |
play | play a multimedia, audio or video element or object. (Implied simplification= "critical".) |
pause | pause a multimedia, audio or video element or object. (Implied simplification= "critical".) |
captions | show the settings for captions and subtitles. |
mute | mute or toggle the mute option. |
volume | change or show the settings for the volume. (Implied simplification = "critical".) |
channel | change or show the settings for the channel. (Implied simplification = "critical".) |
temperature | change or show the settings for the temperature. (Implied simplification = "critical".) |
brightness | change or show the settings for the brightness. |
profile | opens the user's profile page |
expand | expand or unexpand the current item |
refresh | manually refresh the current contents of the screen |
properties | shows the properties of the item |
help | opens a help function. (Implied simplification= "critical".) |
cut | removes the selected control, item or text and places it on the clipboard |
copy | copies the selected control, item or text onto the clipboard |
paste | paste the content from the clipboard to the current position |
color | opens a color picker |
date | opens a date control. (Implied simplification= "critical".) |
remove | remove an item from a list |
right | moves a selected item to the right to another column or list |
left | moves a selected item to the left to another column or list |
skip | skips the current step, typically used a in a sequence of steps |
scroll | advances the view. Often used with left, right, begin, end, increase (up) or decrease (down) |
escape | Typically used to abort, cancel or change what is currently being displayed on the screen. A common application of the the esc key is to leave full screen mode. |
voiceCommands | activate or deactivate voice commands. Often used with [aria-pressed = "true"] for on or [aria-pressed = "false"] for off. |
connect | connect to a communication channel, such as an FTP server or Voice over IP channel. Often used with [aria-pressed = "true"] for on or [aria-pressed = "false"] for off. |
drag | enables a dragged and dropped capabilities. Often used with [aria-pressed = "true"] for on or [aria-pressed = "false"] for off. |
re-size | increase or decrease font size. Often used with increase or decrease. |
order | Changes of the selected item position within list items, while each item in the list has a layer position Often used with increase (forward), decrease (back), first and end. |
mediaPosition | adjust the current playback position in the current media |
loop | plays the flow, presentation or a movie over and over again, once or without stopping. Often used with [aria-pressed = "true"] for on or [aria-pressed = "false"] for off. |
volume | adjust the volume of a multi media component. Often used with increase or decrease but is sometimes used alone as a menu name or item. |
channel | adjust the channel of a multi media component. Often used with increase or decrease but is sometimes used alone as a menu name or item. |
temperature | adjust the temperature. Often used with increase or decrease but is sometimes used alone as a menu name or item. |
brightness | adjust the screen or application brightness. Often used with increase or decrease but is sometimes used alone as a menu name or item. |
mediaPosition | Adjust the current playback position in the current media.
Editor's note At risk pending implemetions. |
loop | plays the flow, presentation or a movie over and over again, once or without stopping. Often used with [aria-pressed = "true"] for on or [aria-pressed = "false"] for off.
Editor's note At risk pending implemetions. |
volume | adjust the volume of a multi media component. Often used with increase or decrease but is sometimes used alone as a menu name or item.
Editor's note At risk pending implemetions. |
channel | adjust the channel of a multi media component. Often used with increase or decrease but is sometimes used alone as a menu name or item.
Editor's note At risk pending implemetions. |
temperature | adjust the temperature. Often used with increase or decrease but is sometimes used alone as a menu name or item.
Editor's note At risk pending implemetions. |
brightness | adjust the screen or application brightness. Often used with increase or decrease but is sometimes used alone as a menu name or item.
Editor's note At risk pending implemetions. |
3.2 destination
3.2.1 Description
The destination
term categorizes the target of a hyperlink.
A personalization agent or user agent may add additional familiar user interface features to help users understand the link and follow the right one easily. User agents might add a familiar customized icon to the link, or style the link in a customized way, or position the link on the page in a location that the user generally expects to find a link of the particular type.
3.2.2 Example
The below example section show how destination
used when coding.
<a href="home.html" aui-destination="home">our main page</a>
See the destination sample user experience.
3.2.3 Characteristics
Characteristic | Value |
---|---|
Related Concepts: | link types [HTML52] and HTML 5.2 autocomplete [HTML52] |
Used in Roles: | All elements of the base markup |
Inherits into Roles: | Placeholder |
Value: | token |
3.2.4 Values
Value | Description |
---|---|
home | initial or main page of a website or application |
contact | opens contact information for content owner or producer |
phone | phone content owner or producer |
email content owner or producer | |
sitemap | content containing a list of pages in a web site |
accessibilityStatement | information about the accessibility in a web site or web content |
help | a help function, support or instructions |
chat | Human help or a dialog help function such as a chat bot |
about | information about the content owner or producer |
terms | terms and conditions |
tools | available tools for the current content |
services | services available from the content provider |
products | products available from the content provider |
comment | submit a comment on the current item |
language | language options |
signin | sign in to current web site or application |
signout | sign out current web site or application |
register | register for the current web site or application |
social | content provider on social media. Note, that the specific name of the social media platform should be included in the accessible name.
Editor's note At risk pending implemetions. |
post | post current item. Item will be visible to other parties. |
begin | Changes the location to the beginning item from a list of items or redirects functionality to the first step in a sequence. |
end | Changes the location to the end item from a list of items or redirects functionality to the last step in a sequence. |
left | Changes the location of the selected item(s) to the left. |
right | Changes the location of the selected item(s) to the right. |
related | Adds a related item(s) to a pre-selected list of items. |
related | Adds a related item(s) to a pre-selected list of items. |
3.3 field
3.3.1 Description
field
provides the context of a text input field such as a text box. It is typically used on an input of type text, or element with a responding role.
A personalization agent may add a symbol, replace the text with a more familiar term, or give it a specific presentation. Note that there is no default value.
The user experience may include filling in the field and adding an icon.
field
values that would typically be on form controls and would have a user context - for example phone would relate to the user's phone. Note that there is no default value.
Note they can be more then one value for a field, such as aui-field="country postcode"
3.3.2 Example
The below example section show how field
used when coding.
<input type="text" name="telnum" aui-field="tel"/>
3.3.3 Characteristics
Characteristic | Value |
---|---|
Related Concepts: | link types [HTML52] and HTML types [HTML5] |
Used in Roles: | All elements of the base markup |
Inherits into Roles: | Placeholder |
Value: | token |
3.3.4 Values
Value | Description |
---|---|
name | full name |
honorificPrefix | prefix or title (Mr., Mrs. Dr., etc.) |
givenName | given or first name |
additionalName | additional or middle name |
additionalNameInitial | additional or middle name initial |
familyName | family name, surname, or last name |
honorificSuffix | suffix (Jr., II, etc.) |
nickname | nickname |
streetAddress | full street address condensed into one line |
addressLine1 | first line of street address |
addressLine2 | second line of street address |
addressLine3 | third line of street address |
city | locality or city |
area | administrative area, state, province, or region |
postalcode | postal or ZIP code |
country | country name |
fax | full fax number, including country code |
faxCountryCode | international country code |
faxNational | national fax number: full number minus country code |
faxAreaCode | area code |
faxLocal | local fax number: full number minus country and area codes |
faxExtension | fax extension number |
email address | |
tel | full phone number, including country code |
telCountryCode | international country code |
telNational | national phone number: full number minus country code |
telAreaCode | area code |
telLocal | local phone number: full number minus country and area codes |
telExtension | phone extension number |
ccName | full name, as it appears on credit card |
ccType | type of payment instrument (e.g. Visa). Note that there may be a change to allow for adding options. |
ccNumber | credit card number |
ccExpMonth | month of expiration of credit card |
ccExpYear | year of expiration of credit card |
ccExp | date of expiration of credit card |
ccCsc | credit card security code |
language | preferred language |
bday | birthday |
bdayYear | year of birthday |
bdayMonth | month of birthday |
bdayDay | day of birthday |
day of birthday | |
transactionCurrency | the monetary system being used for the transaction. Note that there may be a change to allow for adding options |
transactionAmount | the amount that the user is committing to for a transaction. (Often used when entering a bid or sale price.) |
topic | Topic for the form. Typically selected from a list of reserved words |
comment | comment section. Typically a free text field |
subject | form subject. Typically a free text field |
answer | answer to a section question |
org | company or organization |
position | user's position or title within company or organization |
sex | sex or gender |
gender | gender identity |
url | Website URL |
photo | photo or avatar |
section-***** | used to group forms together |
timeStart | Set the start time or the time of an event.
Note We may remove this or harmonize with other date time standards.Editor's note At risk pending implemetions. |
timeEnd | Set the end time of an event.
Note We may remove this or harmonize with other date time standards.Editor's note At risk pending implemetions. |
dateStart | Set the start date or the date of an event.
Note We may remove this or harmonize with other date time standards.Editor's note At risk pending implemetions. |
dateEnd | Set the end time of an event
Note We may remove this or harmonize with other date time standards.Editor's note At risk pending implemetions. |
3.4 simplification
3.4.1 Description
The simplification
attribute differentiates between critical features and less important features for simplification.
This allows simplified interfaces with less options or interfaces that emphasize critical features. Adaptations can be based on personalization settings.
This was formerly importance
. However different people may feel that sections that would be hidden in a simplified version are still very important, such as marketing content or legal terms.)
These semantics aid simplification. But what content is most useful to a user varies from user to user. For example, men may be more interested in mens clothing, and may not be interested in the more frequently use womens clothing option. For that reason we may add context for elements that will help the personalization agent select the most useful content for a given user (see the context attribute). This is also necessary for reminders (see bellow).
It is worth mentioning that a lot of this information is known for personalization of advertisements and content optimization.
3.4.2 Example
The below example section show how simplification
used when coding.
<input aui-simplification="critical" aria-function="submit" value="Submit" type="submit"/>
3.4.3 Characteristics
Characteristic | Value |
---|---|
Related Concepts: | SVG [SVG2] and DOM [DOM4] active |
Used in Roles: | All elements of the base markup |
Inherits into Roles: | Placeholder |
Value: | token |
3.4.4 Values
Value | Description |
---|---|
simplest | This setting should be used on:
Typically 3 links or buttons would be considered "simplest" |
medium (default) |
This setting should be used on:
|
low | This setting should be used on elements that are rarely used or only used by advanced users. (Example: The terms and services or the archive button for an email application.) |
3.5 distraction
3.5.1 Description
This attribute should be used on non essential, detracting content, so that people who have problems keeping focus can turn them off. An example user experiences would be to hide all distraction content.
Supported values: animations, auto-starting, moving, ad, message, chat , overlay, popup
Auto-changing (logs) third-party, offer ( includes suggestions).
Note that there is no default value.
Note that elements with the distraction
attribute should also have a label or accessible name.
3.5.2 Example
The below example section show how distraction
used when coding.
3.5.3 Characteristics
Characteristic | Value |
---|---|
Related Concepts: | SVG [SVG2] and DOM [DOM4] active |
Used in Roles: | All elements of the base markup |
Inherits into Roles: | Placeholder |
Value: | token list |
3.5.4 Values
Value | Description |
---|---|
ad | An advertisement or offer for a product, feature or service that is under the authors' control and is not part of an activity where it is essential. |
animations | computer-generated moving images. Animations are also autoUpdating. |
autoUpdating | Information that starts automatically and is presented in parallel with other content that updates frequently without user interaction unless the auto-updating is part of an activity where it is essential. |
autoStarting | Information that starts automatically without user interaction that is presented in parallel with other content. |
chat | An interface that allows real-time interaction of text-based messages between a sender and a receiver. |
message | communication sent to or left for the user |
moving | Elements that change locations on the screen without user interaction. |
overlay | A part of an application or content that is displayed over the top of the main content in the same window. |
popup | A child window that blocks user interaction to the parent window. |
thirdParty | Content that is not under the author’s control. |
3.6 symbol
3.6.1 Description
symbol
identifies the concept for symbols.
symbol
accepts the values of a URI or shortened URI. Note that namespaces are the only additional parsing that maybe required to identify the concept.
A personalization agent can then load alternative symbols that the user is familiar with and they do not have to learn new symbols for different applications.
To help this be interoperable without an RDF parser we recommend referencing the most commonly used ontologies and the highest level concept. (For example, reference "girl" and not "young girl" .)
We should have a note of common suggested terms and references. (Maybe with links to https://www.arasaac.org/)
3.6.2 Example
The below example section show how symbol
used when coding.
When there is more then 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.
3.6.3 Characteristics
Characteristic | Value |
---|---|
Related Concepts: | microdata [microdata], SKOS Core Guide [[SKOS Core Guide]] and RDFa [[RDFa 1.1 Primer]] |
Used in Roles: | All elements of the base markup |
Inherits into Roles: | Placeholder |
Value: | URI |
A. Vocabulary Implementations
The vocabulary implementations of this document is available at Personalization Explainer 1.0 Vocabulary Implementations section.
B. Acknowledgments
This section is non-normative.
The following people contributed to the development of this document.
B.1 Participants active in the Personalization TF at the time of publication
- Thaddeus Cambron (Invited Expert)
- Michael Cooper (W3C/MIT)
- John Foliot (Deque Systems, Inc.)
- Becky Gibson (Knowbility, Inc.)
- Charles LaPierre (Benetech)
- Roy Ran (W3C/Beihang)
- Richard Schwerdtfeger (IBM Corporation)
- Lisa Seeman (Invited Expert)
- Sharon Snider (IBM Corporation)
B.2 Other Personalization TF contributors, commenters, and previously active participants
- Joanmarie Diggs (Igalia)
- Jason White (Educational Testing Service)
B.3 Enabling funders
This publication has been funded in part with U.S. Federal funds from the Health and Human Services, National Institute on Disability, Independent Living, and Rehabilitation Research (NIDILRR) under contract number HHSP23301500054C. The content of this publication does not necessarily reflect the views or policies of the U.S. Department of Health and Human Services, nor does mention of trade names, commercial products, or organizations imply endorsement by the U.S. Government.
C. References
C.1 Informative references
- [DOM4]
- DOM Standard. Anne van Kesteren. WHATWG. Living Standard. URL: https://dom.spec.whatwg.org/
- [HTML5]
- HTML5. Ian Hickson; Robin Berjon; Steve Faulkner; Travis Leithead; Erika Doyle Navara; Theresa O'Connor; Silvia Pfeiffer. W3C. 28 October 2014. W3C Recommendation. URL: https://www.w3.org/TR/html5/
- [HTML52]
- HTML 5.2. Steve Faulkner; Arron Eicholz; Travis Leithead; Alex Danilo; Sangwhan Moon. W3C. 14 December 2017. W3C Recommendation. URL: https://www.w3.org/TR/html52/
- [microdata]
- HTML Microdata. Charles McCathie Nevile; Dan Brickley. W3C. 10 October 2017. W3C Working Draft. URL: https://www.w3.org/TR/microdata/
- [personalization-semantics-1.0]
- Personalization Semantics Explainer 1.0. Lisa Seeman-Kestenbaum; Charles LaPierre; Richard Schwerdtfeger; Michael Cooper; Ruoxi Ran. W3C. 13 February 2018. W3C Working Draft. URL: https://www.w3.org/TR/personalization-semantics-1.0/
- [SVG2]
- Scalable Vector Graphics (SVG) 2. Nikos Andronikos; Rossen Atanassov; Tavmjong Bah; Amelia Bellamy-Royds; Brian Birtles; Cyril Concolato; Erik Dahlström; Chris Lilley; Cameron McCormack; Doug Schepers; Dirk Schulze; Richard Schwerdtfeger; Satoru Takagi; Jonathan Watt et al. W3C. W3C Working Draft. URL: https://www.w3.org/TR/2015/WD-SVG2-20150915/