Attribute syntax can contribute additional Metadata to various Objects, including:
The syntax is as follows:
[attributeName: value]
For Obsidian/LogSeq compatibility, you can also double the colon like this: [attributeName:: value]
Attribute names need to be alpha-numeric. Values are interpreted as YAML values. So here are some examples of valid attribute definitions:
Multiple attributes can be attached to a single entity, e.g. like so:
Depending on where these attributes appear, they attach to different things. For instance, this attaches an attribute to a page:
[pageAttribute: hello]
However, usually, Frontmatter is used for this purpose instead.
Example query:
${query from index.tag "page" where .name == editor.getCurrentPage() select {name=.name, pageAttribute=_.pageAttribute} select {name=.name, pageAttribute=.pageAttribute} )}
This attaches an attribute to an item:
Example query:
This attaches an attribute to a task:
Example query: