MyST (CLI) uses myst: as the scheme for intersphinx references. Meanwhile, myst-parser uses inv:. On the face of it, I prefer inv: because intersphinx is something MyST supports, but is not first-class (i.e. we could do better). I believe @rowanc1 and I discussed this in a recent call.
If we're planning on improving upon intersphinx (let it be known that I don't fully conceive of what we would do here, it's just a possibility), then we might want to reserve myst: for this mechanism.
The problem as I see it is:
If we improve upon intersphinx, then users should be able to see a difference between intersphinx cross references and MyST-external cross references
If an external reference implements both kinds of reference, we might elect to prefer MyST over intersphinx.
If the logic to detect external reference types is flimsy e.g. subject to network effects, the build will not error but instead will fall back on intersphinx should the MyST lookup fail
The user will see a visually distinct result (see (1)) without any indication as to why.
Proposed solution
Therefore, I think we have the following sensible options:
Explicit intersphinx-like referencing at the scheme level:
Deprecate the myst: scheme until we've implemented it
Description
MyST (CLI) uses
myst:
as the scheme for intersphinx references. Meanwhile,myst-parser
usesinv:
. On the face of it, I preferinv:
because intersphinx is something MyST supports, but is not first-class (i.e. we could do better). I believe @rowanc1 and I discussed this in a recent call.If we're planning on improving upon intersphinx (let it be known that I don't fully conceive of what we would do here, it's just a possibility), then we might want to reserve
myst:
for this mechanism.The problem as I see it is:
Proposed solution
Therefore, I think we have the following sensible options:
myst:
scheme until we've implemented itinv:
schemereferences:
frontmatter keysphinx-references:
frontmatter keyreferences
items to be objects:Maybe this is too strict. Pinging @rowanc1 / @stevejpurves / @fwkoch on this.