Printable idea sheet
attribute_namespacing
reqlan rq/language/syntax.rq:352
Katz 0.129
A bracket link `attribute` targets one attribute of that idea.
The first name is the idea name.
The second name is the attribute name.
The grammar types that name as an attribute or an idea declaration.
`example` targets the `example` attribute of this idea.
The form `member` still targets an ideaset member.
See references_to_subidea.
The editor opens the attribute when the first name is an idea.
The editor reports an error when that idea has no attribute with the second name.
The link target is only that attribute on that idea.
HTML export uses the same link form.
The export link opens that attribute on the idea page.
See example.
Related: reference_brackets, attribute_marker, html_export_internal_links.
- example
- my subidea
- implementation
- reqlan.langium, lexer.rs, parser.rs, reqlan-scope.ts, reqlan-linker.ts, reqlan-attribute-links.ts, reqlan-references.ts, reqlan-reference-code-lens.ts, reqlan-document-link-provider.ts, reqlan-local-symbolic-links.ts, reqlan-outbound-presentation.ts, reqlan-semantic-token-provider.ts, extract.rs, html_utils.rs, mod.rs
- status
- done
- tests
- linking.test.ts:resolves an idea attribute link to that attribute, linking.test.ts:reports a missing idea attribute and does not open another idea, lexer.rs:bracket_attribute_link_lexes_a_dot_between_two_names, parser.rs:parses_idea_attribute_link_as_qualified_names, extract_parity.rs:idea_attribute_reference_targets_owner_not_a_same_named_idea, html_export.rs:attribute_link_opens_the_attribute_on_the_idea_page
Interactive page: attribute_namespacing