open-standards/aac/aac-rs/tools/symbols/people-review.md
Transaction Science 4f54a8cae0
All checks were successful
standards workspaces build + test / jouleclaw-rs (push) Successful in 2m58s
standards workspaces build + test / aac-rs (push) Successful in 1m3s
standards workspaces build + test / joule-code-rs (push) Successful in 1m9s
standards workspaces build + test / joulecontract-rs (push) Successful in 31s
standards workspaces build + test / map-rs (push) Successful in 33s
standards workspaces build + test / mesh-rs (push) Successful in 32s
standards workspaces build + test / openpay (push) Successful in 1m56s
no-vanity-metrics / Scan committed Markdown for vanity metrics (push) Successful in 3s
standards workspaces build + test / eoc-rs (push) Successful in 1m49s
standards workspaces build + test / jcp-rs (push) Successful in 1m18s
standards workspaces build + test / proof-rs (push) Successful in 1m13s
standards workspaces build + test / sandbox-rs (push) Successful in 2m8s
standards workspaces build + test / smart-byte-rs (push) Successful in 2m35s
standards workspaces build + test / arl-rs (push) Successful in 2m25s
standards workspaces build + test / joule-ui-rs (push) Successful in 2m45s
standards workspaces build + test / jouledesk-rs (push) Successful in 2m16s
standards workspaces build + test / joulehook-rs (push) Successful in 2m53s
standards workspaces build + test / sense-rs (push) Successful in 3m9s
standards workspaces build + test / macOS energy backend (jcp-energy) (push) Successful in 2m46s
feat(symbols): people drawn in no one's skin, gender or age by default
Pictograms must be international in how they show gender, ethnicity and
age. Following Unicode's emoji model (UTS #51):

- Skin. Every person in Mulberry and OpenMoji is drawn in a generic,
  non-realistic colour -- UTS #51's own example, #FFCC22 (OpenMoji's
  lemon would melt into Mulberry's lemon hair, clothes and objects) --
  or in the skin tone the person chooses: one of the five modifiers
  U+1F3FB-U+1F3FF, in OpenMoji's colours (aac_core:🔣:SkinTone).
  The build writes skin as the CSS custom property --aac-skin (OpenMoji's
  skin shadow as --aac-skin-shade) over a neutral fill, so a renderer
  without the style still draws a person neutral, never black.
  - Mulberry: its authors' aac-skin-fill markers where present; for the
    rest, a reviewed decision per symbol in people.toml (a cake's icing
    and a computer case share the skin colour). The build stops on a
    missing or stale decision.
  - OpenMoji: its skin layers, checked element by element against its
    own toned variants.
  A visual audit of all 397 mapped symbols with the skin colour shown as
  magenta, and an adversarial second look, confirmed every call;
  people-review.md lists every symbol that draws a person and how.
- Gender and age. Where Mulberry drew a man's face or a child for a word
  that names neither (the feelings, Speak, eat, drink, doctor, teacher,
  police, hi...), OpenMoji's emoji face (no gender, age or skin) or
  Unicode's gender-neutral person is used instead; police wears a cap
  worn worldwide, not a British helmet.
- Hair keeps its colour whatever the tone.
- App: Settings > Symbols > People in pictures, and the same choice in
  setup; kept with the symbol set and applied on the app root.
- SPEC 4.3 (proposed): people in symbols.

Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-09-30 08:35:11 -04:00

162 lines
12 KiB
Markdown

# People in symbols
Generated by `tools/symbols/build.py` — do not edit; change `people.toml` and rebuild.
A person is drawn in Unicode's generic, non-realistic colour (`#ffcc22`) unless the
person using the board chooses one of the five skin tones of the emoji modifiers
(`aac_core::symbols::people`). Every symbol below draws a person or part of one. A symbol
*in the chosen tone* has its skin — and in OpenMoji the skin's shadow, where its own toned
variants change it — written as the CSS custom properties `--aac-skin` and
`--aac-skin-shade`; one *as drawn* keeps the set's colours, for the reason given. Hair
keeps its colour whatever the tone.
Symbol names and emoji annotations quoted below come from Mulberry Symbols and OpenMoji
and are shared under CC BY-SA 4.0.
## Mulberry Symbols
99 in the chosen tone, 7 as drawn.
| concept(s) | symbol | drawn | why |
|---|---|---|---|
| `actions`, `verbs` | `verbs_collective` | chosen tone (skin) | reviewed: every area in the skin colour is skin |
| `aunt` | `aunt_maternal` | chosen tone (skin) | skin marked by Mulberry's authors |
| `baby` | `baby` | chosen tone (skin) | skin marked by Mulberry's authors |
| `back` | `back` | chosen tone (skin) | skin marked by Mulberry's authors |
| `bad` | `bad` | chosen tone (skin) | skin marked by Mulberry's authors |
| `birthday` | `birthday_cake` | as drawn | the cake's icing is drawn in the skin colour |
| `bring` | `bring_,_to` | chosen tone (skin) | reviewed: every area in the skin colour is skin |
| `brother` | `brother` | chosen tone (skin) | skin marked by Mulberry's authors |
| `build` | `build_,_to` | chosen tone (skin) | reviewed: every area in the skin colour is skin |
| `busy` | `busy` | chosen tone (skin) | skin marked by Mulberry's authors |
| `call` | `telephone_2_,_to` | chosen tone (skin) | reviewed: every area in the skin colour is skin |
| `carry` | `carry_,_to` | chosen tone (skin) | reviewed: every area in the skin colour is skin |
| `catch` | `catch_,_to` | chosen tone (skin) | reviewed: every area in the skin colour is skin |
| `class` | `class_room` | chosen tone (skin) | skin marked by Mulberry's authors |
| `climb` | `climb_up_,_to` | chosen tone (skin) | reviewed: every area in the skin colour is skin |
| `close` | `close_,_to` | chosen tone (skin) | reviewed: every area in the skin colour is skin |
| `come` | `come_,_to` | chosen tone (skin) | reviewed: every area in the skin colour is skin |
| `computer` | `computer_1` | as drawn | the computer's case is drawn in the skin colour |
| `cook` | `cook_,_to` | chosen tone (skin) | skin marked by Mulberry's authors |
| `cut` | `cut_,_to` | chosen tone (skin) | reviewed: every area in the skin colour is skin |
| `dad` | `dad_parent` | chosen tone (skin) | skin marked by Mulberry's authors |
| `dance` | `dance_,_to` | chosen tone (skin) | reviewed: every area in the skin colour is skin |
| `dentist` | `dentist_1a` | chosen tone (skin) | skin marked by Mulberry's authors |
| `draw` | `draw_,_to` | chosen tone (skin) | reviewed: every area in the skin colour is skin |
| `dress` | `get_dressed_,_to` | chosen tone (skin) | skin marked by Mulberry's authors |
| `drive` | `drive_,_to` | chosen tone (skin) | reviewed: every area in the skin colour is skin |
| `ear` | `ear` | chosen tone (skin) | skin marked by Mulberry's authors |
| `eye` | `eye` | chosen tone (skin) | skin marked by Mulberry's authors |
| `fast` | `fast_2` | chosen tone (skin) | skin marked by Mulberry's authors |
| `find` | `find_,_to` | chosen tone (skin) | reviewed: every area in the skin colour is skin |
| `foot` | `foot` | chosen tone (skin) | skin marked by Mulberry's authors |
| `get` | `get_,_to` | chosen tone (skin) | reviewed: every area in the skin colour is skin |
| `give` | `give_,_to` | chosen tone (skin) | reviewed: every area in the skin colour is skin |
| `go` | `go_,_to` | chosen tone (skin) | reviewed: every area in the skin colour is skin |
| `good` | `good` | chosen tone (skin) | skin marked by Mulberry's authors |
| `grandma` | `grandmother` | chosen tone (skin) | skin marked by Mulberry's authors |
| `grandpa` | `grandfather` | chosen tone (skin) | skin marked by Mulberry's authors |
| `hang` | `hang_,_to` | chosen tone (skin) | reviewed: every area in the skin colour is skin |
| `hat` | `hat_-_mans` | as drawn | the hat band is drawn in the skin colour |
| `head` | `head` | chosen tone (skin) | skin marked by Mulberry's authors |
| `hear`, `listen` | `hear_,_to` | chosen tone (skin) | skin marked by Mulberry's authors |
| `help` | `help_,_to` | chosen tone (skin) | reviewed: every area in the skin colour is skin |
| `hold` | `hold_,_to` | chosen tone (skin) | reviewed: every area in the skin colour is skin |
| `hug` | `hug_,_to` | chosen tone (skin) | reviewed: every area in the skin colour is skin |
| `hungry` | `hungry` | chosen tone (skin) | skin marked by Mulberry's authors |
| `itchy` | `itch` | chosen tone (skin) | skin marked by Mulberry's authors |
| `jealous` | `jealous_man` | chosen tone (skin) | skin marked by Mulberry's authors |
| `keep` | `keep_,_to` | chosen tone (skin) | reviewed: every area in the skin colour is skin |
| `look` | `look_,_to` | chosen tone (skin) | reviewed: every area in the skin colour is skin |
| `make` | `make_,_to` | chosen tone (skin) | reviewed: every area in the skin colour is skin |
| `mom` | `mum_parent` | chosen tone (skin) | skin marked by Mulberry's authors |
| `move` | `move_,_to` | chosen tone (skin) | reviewed: every area in the skin colour is skin |
| `nurse` | `nurse_1a` | chosen tone (skin) | skin marked by Mulberry's authors |
| `open` | `open_,_to` | chosen tone (skin) | reviewed: every area in the skin colour is skin |
| `outside` | `outside` | chosen tone (skin) | skin marked by Mulberry's authors |
| `paper` | `paper` | as drawn | the sheets of paper are drawn in the skin colour |
| `pencil` | `pencil` | as drawn | the pencil's wood is drawn in the skin colour |
| `play` | `play_,_to` | chosen tone (skin) | reviewed: every area in the skin colour is skin |
| `pull` | `pull_,_to` | chosen tone (skin) | reviewed: every area in the skin colour is skin |
| `push` | `push_,_to` | chosen tone (skin) | reviewed: every area in the skin colour is skin |
| `put` | `put_,_to` | chosen tone (skin) | reviewed: every area in the skin colour is skin |
| `read` | `read_,_to` | chosen tone (skin) | reviewed: every area in the skin colour is skin |
| `ready` | `ready` | chosen tone (skin) | skin marked by Mulberry's authors |
| `rest` | `rest_,_to` | chosen tone (skin) | reviewed: every area in the skin colour is skin |
| `restaurant` | `cafe` | chosen tone (skin) | skin marked by Mulberry's authors |
| `ride` | `ride_car_,_to` | chosen tone (skin) | reviewed: every area in the skin colour is skin |
| `run` | `run_,_to` | chosen tone (skin) | skin marked by Mulberry's authors |
| `salty` | `salty` | chosen tone (skin) | skin marked by Mulberry's authors |
| `scary` | `scary` | chosen tone (skin) | skin marked by Mulberry's authors |
| `school` | `school` | as drawn | the school's walls are drawn in the skin colour |
| `shoe`, `shoes` | `shoe_-_mans` | as drawn | the shoe's lining is drawn in the skin colour |
| `short` | `short` | chosen tone (skin) | skin marked by Mulberry's authors |
| `show` | `show_me_,_to` | chosen tone (skin) | reviewed: every area in the skin colour is skin |
| `sister` | `sister` | chosen tone (skin) | skin marked by Mulberry's authors |
| `sit` | `sit_,_to` | chosen tone (skin) | reviewed: every area in the skin colour is skin |
| `sleep` | `sleep_male_,_to` | chosen tone (skin) | reviewed: every area in the skin colour is skin |
| `smooth` | `smooth` | chosen tone (skin) | skin marked by Mulberry's authors |
| `soap` | `soap` | chosen tone (skin) | skin marked by Mulberry's authors |
| `sour` | `sour` | chosen tone (skin) | skin marked by Mulberry's authors |
| `spicy` | `spicy` | chosen tone (skin) | skin marked by Mulberry's authors |
| `stand` | `stand_,_to` | chosen tone (skin) | reviewed: every area in the skin colour is skin |
| `stomach` | `stomach` | chosen tone (skin) | skin marked by Mulberry's authors |
| `strong` | `strong` | chosen tone (skin) | skin marked by Mulberry's authors |
| `sweet` | `sweet_2` | chosen tone (skin) | skin marked by Mulberry's authors |
| `swim` | `swim_,_to` | chosen tone (skin) | skin marked by Mulberry's authors |
| `take` | `take_,_to` | chosen tone (skin) | reviewed: every area in the skin colour is skin |
| `tall` | `tall` | chosen tone (skin) | skin marked by Mulberry's authors |
| `test` | `test` | chosen tone (skin) | skin marked by Mulberry's authors |
| `therapist` | `speech_language_therapist_1a` | chosen tone (skin) | skin marked by Mulberry's authors |
| `thirsty` | `thirsty` | chosen tone (skin) | skin marked by Mulberry's authors |
| `touch` | `touch_,_to` | chosen tone (skin) | reviewed: every area in the skin colour is skin |
| `toy` | `toys` | chosen tone (skin) | every area in the skin colour is a doll's skin (two of its peg dolls are already brown and stay so) |
| `turn` | `turn_,_to` | chosen tone (skin) | reviewed: every area in the skin colour is skin |
| `ugly` | `ugly` | chosen tone (skin) | skin marked by Mulberry's authors |
| `uncle` | `uncle_maternal` | chosen tone (skin) | skin marked by Mulberry's authors |
| `visit` | `visit_,_to` | chosen tone (skin) | reviewed: every area in the skin colour is skin |
| `wait` | `wait_,_to` | chosen tone (skin) | reviewed: every area in the skin colour is skin |
| `wake up` | `wake_up_,_to` | chosen tone (skin) | reviewed: every area in the skin colour is skin |
| `walk` | `walk_,_to` | chosen tone (skin) | reviewed: every area in the skin colour is skin |
| `want` | `want_,_to` | chosen tone (skin) | reviewed: every area in the skin colour is skin |
| `wash` | `wash_hands_,_to` | chosen tone (skin) | skin marked by Mulberry's authors |
| `watch` | `watch_,_to` | chosen tone (skin) | reviewed: every area in the skin colour is skin |
| `who` | `who` | chosen tone (skin) | skin marked by Mulberry's authors |
| `work` | `work_,_to` | chosen tone (skin) | skin marked by Mulberry's authors |
| `write` | `write_,_to` | chosen tone (skin) | reviewed: every area in the skin colour is skin |
| `yucky` | `yucky` | chosen tone (skin) | skin marked by Mulberry's authors |
## OpenMoji
22 in the chosen tone, 6 as drawn.
| concept(s) | symbol | drawn | why |
|---|---|---|---|
| `action:speakall` | `1F5E3` | as drawn | no skin drawn |
| `baby` | `1F476` | chosen tone (skin) | |
| `bad` | `1F44E` | chosen tone (skin) | |
| `breathing` | `1FAC1` | as drawn | no skin drawn |
| `cook` | `1F9D1-200D-1F373` | chosen tone (skin) | |
| `doctor` | `1F9D1-200D-2695-FE0F` | chosen tone (skin) | |
| `ear` | `1F442` | chosen tone (skin, shade) | |
| `eye` | `1F441` | as drawn | no skin drawn |
| `foot` | `1F9B6` | chosen tone (skin, shade) | |
| `friend` | `1F9D1-200D-1F91D-200D-1F9D1` | chosen tone (skin) | |
| `good` | `1F44D` | chosen tone (skin) | |
| `grandma` | `1F475` | chosen tone (skin) | |
| `grandpa` | `1F474` | chosen tone (skin) | |
| `hi` | `1F44B` | chosen tone (skin) | |
| `hug` | `1FAC2` | chosen tone (skin) | Unicode defines no skin tones for it; its skin layer takes the chosen tone |
| `i don't know` | `1F937` | chosen tone (skin) | |
| `mouth` | `1F444` | as drawn | no skin drawn |
| `nose` | `1F443` | chosen tone (skin) | |
| `police` | `1F46E` | chosen tone (skin) | |
| `run` | `1F3C3` | chosen tone (skin) | |
| `stop` | `270B` | chosen tone (skin) | |
| `student` | `1F9D1-200D-1F393` | chosen tone (skin) | |
| `swim` | `1F3CA` | chosen tone (skin) | |
| `taste` | `1F445` | as drawn | no skin drawn |
| `teacher` | `1F9D1-200D-1F3EB` | chosen tone (skin) | |
| `teeth` | `1F9B7` | as drawn | no skin drawn |
| `walk` | `1F6B6` | chosen tone (skin) | |
| `write` | `270D` | chosen tone (skin) | |