From 92aef6abbe08bb6080b900f96c61a5c102da7f62 Mon Sep 17 00:00:00 2001
From: Leon van Kammen
aria-descriptions
, and its narration (Screenreader e.g.) can be skipped (via cycling href’s, see next rule)aria-descriptions
, and its narration (Screenreader e.g.) can be skipped (via 2-button navigation)back
command should navigate back to the previous URL (alias for browser-backbutton)forward
command should navigate back to the next URL (alias for browser-nextbutton)href
with a pos=
XR fragmentdo abc
command should navigate/execute https://.../...
in case a 3D node exist with name abc
and href
value https://.../...
For specific user-profiles, gyroscope/mouse/keyboard/audio/visuals will not be available.
+Therefore a 2-button navigation-interface is the bare minimum interface:
The only dynamic parts are W3C Media Fragments and URI Templates (RFC6570).
diff --git a/doc/RFC_XR_Fragments.md b/doc/RFC_XR_Fragments.md
index 295f80a..66f1a3f 100644
--- a/doc/RFC_XR_Fragments.md
+++ b/doc/RFC_XR_Fragments.md
@@ -1065,23 +1065,31 @@ Spec:
1. The enduser must be able to enable an accessibility-mode (which persists across application/webpage restarts)
2. Accessibility-mode must contain a text-input for the user to enter text
3. Accessibility-mode must contain a flexible textlog for the user to read (via screenreader, screen, or TTS e.g.)
-4. the textlog contains `aria-descriptions`, and its narration (Screenreader e.g.) can be skipped (via cycling href's, see next rule)
-5. href's can be cycled via tab (keyboard) or 'skip' command
-6. The `back` command should navigate back to the previous URL (alias for browser-backbutton)
-7. The `forward` command should navigate back to the next URL (alias for browser-nextbutton)
-8. A destination is a 3D node containing an `href` with a `pos=` XR fragment
-9. The `go` command should list all possible destinations
-10. The `go left` command should move the camera around 0.3 meters to the left
-11. The `go right` command should move the camera around 0.3 meters to the right
-12. The `go forward` command should move the camera 0.3 meters forward (direction of current rotation).
-13. The `rotate left` command should rotate the camera 0.3 to the left
-14. The `rotate left` command should rotate the camera 0.3 to the right
-15. The (dynamic) `go abc` command should navigate to `#pos=scene2` in case there's a 3D node with name `abc` and `href` value `#pos=scene2`
-16. The `look` command should give an (contextual) 3D-to-text transcript, by scanning the `aria-description` values of the current `pos=` value (including its children)
-17. The `do` command should list all possible `href` values which don't contain an `pos=` XR Fragment
-18. The (dynamic) `do abc` command should navigate/execute `https://.../...` in case a 3D node exist with name `abc` and `href` value `https://.../...`
+4. the textlog contains `aria-descriptions`, and its narration (Screenreader e.g.) can be skipped (via 2-button navigation)
+5. The `back` command should navigate back to the previous URL (alias for browser-backbutton)
+6. The `forward` command should navigate back to the next URL (alias for browser-nextbutton)
+7. A destination is a 3D node containing an `href` with a `pos=` XR fragment
+8. The `go` command should list all possible destinations
+9. The `go left` command should move the camera around 0.3 meters to the left
+10. The `go right` command should move the camera around 0.3 meters to the right
+11. The `go forward` command should move the camera 0.3 meters forward (direction of current rotation).
+12. The `rotate left` command should rotate the camera 0.3 to the left
+13. The `rotate left` command should rotate the camera 0.3 to the right
+14. The (dynamic) `go abc` command should navigate to `#pos=scene2` in case there's a 3D node with name `abc` and `href` value `#pos=scene2`
+15. The `look` command should give an (contextual) 3D-to-text transcript, by scanning the `aria-description` values of the current `pos=` value (including its children)
+16. The `do` command should list all possible `href` values which don't contain an `pos=` XR Fragment
+17. The (dynamic) `do abc` command should navigate/execute `https://.../...` in case a 3D node exist with name `abc` and `href` value `https://.../...`
+## Two-button navigation
+
+For specific user-profiles, gyroscope/mouse/keyboard/audio/visuals will not be available.
+Therefore a 2-button navigation-interface is the bare minimum interface:
+
+1. objects with href metadata can be cycled via a key (tab on a keyboard)
+2. objects with href metadata can be activated via a key (enter on a keyboard)
+3. the TTS reads the href-value (and/or aria-description if available)
+
# Security Considerations
The only dynamic parts are [W3C Media Fragments](https://www.w3.org/TR/media-frags/) and [URI Templates (RFC6570)](https://www.rfc-editor.org/rfc/rfc6570).
diff --git a/doc/RFC_XR_Fragments.txt b/doc/RFC_XR_Fragments.txt
index 0ce7700..1fecd4e 100644
--- a/doc/RFC_XR_Fragments.txt
+++ b/doc/RFC_XR_Fragments.txt
@@ -116,12 +116,13 @@ Internet-Draft XR Fragments June 2024
21. Additional scene metadata . . . . . . . . . . . . . . . . . . 35
22. Accessibility interface . . . . . . . . . . . . . . . . . . . 37
+ 22.1. Two-button navigation . . . . . . . . . . . . . . . . . 37
23. Security Considerations . . . . . . . . . . . . . . . . . . . 38
24. FAQ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38
- 25. authors . . . . . . . . . . . . . . . . . . . . . . . . . . . 38
+ 25. authors . . . . . . . . . . . . . . . . . . . . . . . . . . . 39
26. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 39
27. Acknowledgments . . . . . . . . . . . . . . . . . . . . . . . 39
- 28. Appendix: Definitions . . . . . . . . . . . . . . . . . . . . 39
+ 28. Appendix: Definitions . . . . . . . . . . . . . . . . . . . . 40
1. Introduction
@@ -164,7 +165,6 @@ Internet-Draft XR Fragments June 2024
-
van Kammen Expires 19 December 2024 [Page 3]
Internet-Draft XR Fragments June 2024
@@ -2032,40 +2032,40 @@ Internet-Draft XR Fragments June 2024
3. Accessibility-mode must contain a flexible textlog for the user
to read (via screenreader, screen, or TTS e.g.)
4. the textlog contains aria-descriptions, and its narration
- (Screenreader e.g.) can be skipped (via cycling href's, see next
- rule)
- 5. href's can be cycled via tab (keyboard) or 'skip' command
- 6. The back command should navigate back to the previous URL (alias
+ (Screenreader e.g.) can be skipped (via 2-button navigation)
+ 5. The back command should navigate back to the previous URL (alias
for browser-backbutton)
- 7. The forward command should navigate back to the next URL (alias
+ 6. The forward command should navigate back to the next URL (alias
for browser-nextbutton)
- 8. A destination is a 3D node containing an href with a pos= XR
+ 7. A destination is a 3D node containing an href with a pos= XR
fragment
- 9. The go command should list all possible destinations
- 10. The go left command should move the camera around 0.3 meters to
+ 8. The go command should list all possible destinations
+ 9. The go left command should move the camera around 0.3 meters to
the left
- 11. The go right command should move the camera around 0.3 meters to
+ 10. The go right command should move the camera around 0.3 meters to
the right
- 12. The go forward command should move the camera 0.3 meters forward
+ 11. The go forward command should move the camera 0.3 meters forward
(direction of current rotation).
- 13. The rotate left command should rotate the camera 0.3 to the left
- 14. The rotate left command should rotate the camera 0.3 to the
+ 12. The rotate left command should rotate the camera 0.3 to the left
+ 13. The rotate left command should rotate the camera 0.3 to the
right
- 15. The (dynamic) go abc command should navigate to #pos=scene2 in
+ 14. The (dynamic) go abc command should navigate to #pos=scene2 in
case there's a 3D node with name abc and href value #pos=scene2
- 16. The look command should give an (contextual) 3D-to-text
+ 15. The look command should give an (contextual) 3D-to-text
transcript, by scanning the aria-description values of the
current pos= value (including its children)
- 17. The do command should list all possible href values which don't
+ 16. The do command should list all possible href values which don't
contain an pos= XR Fragment
- 18. The (dynamic) do abc command should navigate/execute
+ 17. The (dynamic) do abc command should navigate/execute
https://.../... in case a 3D node exist with name abc and href
value https://.../...
+22.1. Two-button navigation
-
-
-
+ For specific user-profiles, gyroscope/mouse/keyboard/audio/visuals
+ will not be available.
+ Therefore a 2-button navigation-interface is the bare minimum
+ interface:
@@ -2074,6 +2074,13 @@ van Kammen Expires 19 December 2024 [Page 37]
Internet-Draft XR Fragments June 2024
+ 1. objects with href metadata can be cycled via a key (tab on a
+ keyboard)
+ 2. objects with href metadata can be activated via a key (enter on a
+ keyboard)
+ 3. the TTS reads the href-value (and/or aria-description if
+ available)
+
23. Security Considerations
The only dynamic parts are W3C Media Fragments
@@ -2093,6 +2100,36 @@ Internet-Draft XR Fragments June 2024
(for example, an XR Hypermedia browser can decide to support
POST/PUT/DELETE requests for embedded HTML thru src values)
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+van Kammen Expires 19 December 2024 [Page 38]
+
+Internet-Draft XR Fragments June 2024
+
+
*Q:* Why isn't there support for scripting, URI Template Fragments
are so limited compared to WASM & javascript *A:* This is out of
scope as it unhyperifies hypermedia, and this is up to XR hypermedia
@@ -2122,14 +2159,6 @@ Internet-Draft XR Fragments June 2024
* Leon van Kammen (@lvk@mastodon.online)
* Jens Finkhäuser (@jens@social.finkhaeuser.de)
-
-
-
-van Kammen Expires 19 December 2024 [Page 38]
-
-Internet-Draft XR Fragments June 2024
-
-
26. IANA Considerations
This document has no IANA actions.
@@ -2149,6 +2178,14 @@ Internet-Draft XR Fragments June 2024
* Brandel Zackernuk
* Mark Anderson
+
+
+
+van Kammen Expires 19 December 2024 [Page 39]
+
+Internet-Draft XR Fragments June 2024
+
+
28. Appendix: Definitions
+=================+=============================================+
@@ -2178,14 +2215,6 @@ Internet-Draft XR Fragments June 2024
| | Object(nodes), relevant to machines and a |
| | human minority (academics/developers) |
+-----------------+---------------------------------------------+
-
-
-
-van Kammen Expires 19 December 2024 [Page 39]
-
-Internet-Draft XR Fragments June 2024
-
-
| XR fragment | URI Fragment with spatial hints like |
| | #pos=0,0,0&t=1,100 e.g. |
+-----------------+---------------------------------------------+
@@ -2205,6 +2234,14 @@ Internet-Draft XR Fragments June 2024
| placeholder | a 3D object which with src-metadata (which |
| object | will be replaced by the src-data.) |
+-----------------+---------------------------------------------+
+
+
+
+van Kammen Expires 19 December 2024 [Page 40]
+
+Internet-Draft XR Fragments June 2024
+
+
| src | (HTML-piggybacked) metadata of a 3D object |
| | which instances content |
+-----------------+---------------------------------------------+
@@ -2234,14 +2271,6 @@ Internet-Draft XR Fragments June 2024
| extrospective | outward sensemaking ("I'm fairly sure John |
| | is a person who lives in oklahoma") |
+-----------------+---------------------------------------------+
-
-
-
-van Kammen Expires 19 December 2024 [Page 40]
-
-Internet-Draft XR Fragments June 2024
-
-
| ◻ | ascii representation of an 3D object/mesh |
+-----------------+---------------------------------------------+
| (un)obtrusive | obtrusive: wrapping human text/thought in |
@@ -2262,6 +2291,13 @@ Internet-Draft XR Fragments June 2024
| | XML |
+-----------------+---------------------------------------------+
+
+
+van Kammen Expires 19 December 2024 [Page 41]
+
+Internet-Draft XR Fragments June 2024
+
+
Table 14
@@ -2293,4 +2329,24 @@ Internet-Draft XR Fragments June 2024
-van Kammen Expires 19 December 2024 [Page 41]
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+van Kammen Expires 19 December 2024 [Page 42]
diff --git a/doc/RFC_XR_Fragments.xml b/doc/RFC_XR_Fragments.xml
index cf66180..456e46f 100644
--- a/doc/RFC_XR_Fragments.xml
+++ b/doc/RFC_XR_Fragments.xml
@@ -1439,8 +1439,7 @@ Spec: