Skip to content

Resolve attributes as cross-references#115

Merged
mwoehlke merged 1 commit into
cps-org:masterfrom
mwoehlke:attributes-are-references
Jun 8, 2026
Merged

Resolve attributes as cross-references#115
mwoehlke merged 1 commit into
cps-org:masterfrom
mwoehlke:attributes-are-references

Conversation

@mwoehlke

Copy link
Copy Markdown
Member

Rewrite the attribute role to be a domain specific cross reference that is resolved against the actual collected attributes set. While our previous practice of creating attribute links using standard references was functional, it made it somewhat awkward to elide the object context for overloaded attributes, and resulted in inconsistency between linked and unlinked attribute references in both markup and visual rendering.

Generating the references ourself for improved consistency of visual presentation, as well as simplified and more standard mechanisms for specifying whether a reference to an overloaded attribute should be qualified. Additionally, resolving references against our internal attribute model (as compared to the previous behavior which effectively used only section targets) means that attributes can be qualified, whether or not they are overloaded, which makes resolution more robust.

@mwoehlke mwoehlke force-pushed the attributes-are-references branch 2 times, most recently from 856ddd8 to dae560d Compare May 28, 2026 15:21

@nickelpro nickelpro left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM

Rewrite the `attribute` role to be a domain specific cross reference
that is resolved against the actual collected attributes set. While our
previous practice of creating attribute links using standard references
was functional, it made it somewhat awkward to elide the object context
for overloaded attributes, and resulted in inconsistency between linked
and unlinked attribute references in both markup and visual rendering.

Generating the references ourself gives improved consistency of visual
presentation, as well as simplified and more standard mechanisms for
specifying whether a reference to an overloaded attribute should be
qualified. Additionally, resolving references against our internal
attribute model (as compared to the previous behavior which effectively
used only section targets) means that attributes can be qualified,
whether or not they are overloaded, which makes resolution more robust.
@mwoehlke mwoehlke force-pushed the attributes-are-references branch from dae560d to 1122f58 Compare June 8, 2026 14:40
@mwoehlke mwoehlke merged commit fad8035 into cps-org:master Jun 8, 2026
1 check passed
@mwoehlke mwoehlke deleted the attributes-are-references branch June 8, 2026 14:40
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants