Skip to content

Commit d27ea07

Browse files
committed
Minor brush-ups and cleanup
1 parent 67635b0 commit d27ea07

File tree

1 file changed

+19
-16
lines changed

1 file changed

+19
-16
lines changed

proposals/2312-matrix-uri.md

Lines changed: 19 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -259,10 +259,10 @@ the room (see [MSC2695](https://github.com/matrix-org/matrix-doc/pull/2695) and
259259
change this).
260260

261261
Further MSCs may introduce navigation to more top-level as well as
262-
non-top-level objects; see "Further evolution" for some ideas. These new
263-
proposals SHOULD follow the generic grammar laid out above, adding new `type`
264-
and `nonid-segment` specifiers and/or allowing them in other levels, rather
265-
than introduce a new grammar. It is recommended to only use abbreviated
262+
non-top-level objects; see "Ideas for further evolution" to get inspired. These
263+
new proposals SHOULD follow the generic grammar laid out above, adding new
264+
`type` and `nonid-segment` specifiers and/or allowing them in other levels,
265+
rather than introduce a new grammar. It is recommended to only use abbreviated
266266
single-letter specifiers if they are expected to be user visible and convenient
267267
for type-in; if a URI for a given resource type is usually generated
268268
(e.g. because the corresponding identifier is not human-friendly), it's
@@ -484,7 +484,7 @@ liberty similar to that of matrix.to.
484484

485485
## Discussion and non-normative statements
486486

487-
### Further evolution
487+
### Ideas for further evolution
488488

489489
This MSC is obviously just the first step, keeping the door open for
490490
extensions. Here are a few ideas:
@@ -533,7 +533,12 @@ extensions. Here are a few ideas:
533533

534534
* As described in "Alternatives", a synonymous system can be introduced that
535535
uses Matrix identifiers with sigils by adding another path prefix (e.g.,
536-
`matrix:id/%23matrix:matrix.org`).
536+
`matrix:id/%23matrix:matrix.org`). However, such MSC would have to address
537+
the concerns of possible confusion arising from having two similar but
538+
distinct notations.
539+
540+
* Interoperability of Matrix URIs with
541+
[Linked Data](https://en.wikipedia.org/wiki/Linked_data).
537542

538543

539544
### Past discussion points and tradeoffs
@@ -574,9 +579,6 @@ further discussion should happen in GitHub comments.
574579
to offload that to the server. For that reason fragments, if/when ever
575580
employed in Matrix, only should be used to pinpoint a position within events
576581
and for similar strictly client-side operations.
577-
1. _Interoperability with
578-
[Linked Data](https://en.wikipedia.org/wiki/Linked_data)_ is out of
579-
scope of this MSC but worth being considered separately.
580582
1. _How does this MSC work with closed federations?_ ~~If you need to
581583
communicate a URI to the bigger world where you cannot expect
582584
the consumer to know in advance which federation they should use -
@@ -651,12 +653,11 @@ the type signifier?).
651653
Yet another alternative considered was to go "full REST" and structure
652654
URLs in a more traditional way with serverparts coming first, followed
653655
by type grouping (sic - not specifiers), and then by localparts,
654-
i.e. `matrix://example.org/rooms/roomalias`. This is even more
655-
difficult to comprehend for a Matrix user than the previous alternative
656-
and besides it conflates the notion of an authority server with
657-
that of a namespace (quite confusingly, `example.org` above is
658-
the _domain name_ - aka server part - of an alias, not a _host name_
659-
of a hypothetical homeserver that should be used to resolve the URI).
656+
i.e. `matrix://example.org/rooms/roomalias`. This is even more difficult
657+
to comprehend for a Matrix user than the previous alternative and besides it
658+
conflates the notion of an authority server with that of a namespace
659+
discriminator: clients would not connect to `example.org` to resolve the alias
660+
above, they would still connect to their own homeserver.
660661

661662
#### Minimal syntax
662663

@@ -667,6 +668,8 @@ URIs even though they look like ones: most URI parsers won't handle them
667668
correctly. As laid out in the beginning of this proposal, Matrix URIs are
668669
not striving to preempt Matrix identifiers; instead of trying to produce
669670
an equally readable string, one should just use identifiers where they work.
671+
Why Matrix identifiers look the way they look is way out of the MSC scope
672+
to discuss here.
670673

671674
#### Minimal syntax based on the path component and percent-encoding
672675

@@ -696,7 +699,7 @@ Putting the whole id to the URI fragment (`matrix:#id_with_sigil` or,
696699
following on the `matrix.to` tradition, `matrix:#/id_with_sigil` for
697700
readability) allows using `#` without encoding on many URI parsers. It is
698701
still not fully RFC-compliant and rules out using URIs by homeservers
699-
(see also "Past discussion points").
702+
(see also "Past discussion points" on using fragments to address events).
700703

701704
Regardless of the placement (the fragment or the path), one more consideration
702705
is that the character space for sigils is extremely limited and

0 commit comments

Comments
 (0)