Technial Functional Requirements

OneNet Editor Functional Requirements (DRAFT) by Mike Scott

Code

  • Automatically produce valid, semantically-correct HTML 5 code.

Headings

OneNet Code

  • Provide obvious help/instruction on why and how to use headings.
  • Provide an obvious means of selecting headings of levels 1-6.
  • Do not provide (or de-emphasize?) a means of selecting font style-based formatting.
  • Real-time check: When a heading is selected, check that it is of an appropriate level (less than or equal to previous heading level + 1); if not, provide explanation of error and means of selecting an appropriate heading level.
  • Real-time check: When an entire paragraph is bolded, provide explanation of possible error and means of selecting an appropriate heading level.
  • Manual check: Provide “heading check” showing headings (and bolded paragraphs?) in a nested list, identify headings of inappropriate level, and provide means of selecting appropriate heading levels.

Lists

  • Provide obvious help/instruction on why and how to use lists.
  • Provide an obvious means of selecting lists, including disc bullets, circle bullets, decimal, upper-alpha, lower-alpha, upper-roman, lower-roman, no bullets (and custom bullets?).
  • Real-time check: When user enters 3 (2?) or more items that appear to be a list, automatically format as a list.
  • Manual check: Provide “list check” showing items that appear to be formatted as lists and provide means of selecting an appropriate list format.

Links

  • Provide obvious help/instruction on why and how to use links.
  • Real-time check: When a user creates a link consisting of the link text “here”, “click here”, “more”, “more info”, “more information” (etc.), provide explanation of error and means of changing link text.
  • Real-time check: When a user creates a link using text of an existing link with a (significantly?) different href, provide explanation of error and means of changing link text and/or href.
  • Real-time check: When a user creates a link using href of an existing link with different link text, provide explanation of error and means of changing link text and/or href.
  • Manual check: Provide “link check” showing link text and hrefs, identify link text/href errors, and provide means of changing link text/hrefs.

Images

  • Provide obvious help/instruction on why and how to use images.
  • Prompt user to identify type of image: decorative, simple, or complex.
  • For decorative images, automatically use empty alt text.
  • For simple & complex images, prompt/instruct user to enter appropriate alt text.
  • For complex images, prompt/instruct user to enter full description.
  • Provide means of entering full descriptions as on-screen content, content accessed via on-screen link, or content accessed via link on image (with appropriate alt text).
  • Manual check: Provide “image check” showing images, type, alt text, and full description and provide means of changing.

Tables

  • Provide obvious help/instruction on why and how to use tables.
  • Automatically use table header cells in first column and first row.
  • Automatically add id and headers attributes when table cells are merged.
  • Provide “table check” to visualize and confirm header/cell associations.

Columns

  • Provide obvious help/instruction on why and how to use columns.
  • Provide means of creating columns using divs rather than tables.