Is there a difference between the properties tag::
and topic::
?
If there is not, does that mean one can use whichever of the 2 one wants?
What makes them similar?
As far as I understand, all properties are like labels. Some, however, react differently, like e.g. icon::
, alias::
……
I don’t think page tag and topic react differently from one another, but I am not sure, hence my question: are they different, and if so, how?
Unless you have made property-related changes to file config.edn
, both tag::
and topic::
are common properties (i.e. not built-in). That means that they behave/react the same way, although remaining different to each-other. In contrast, property tags::
(plural) is a special built-in property similar to alias::
, in treating comma-separated values as separate page references (entry :property/separated-by-commas
in config.edn
). Likewise, special built-in property title::
is similar to icon::
.
OK, I had not picked up the tags::
and tag::
difference.
But when you say:
doesn’t that go for any property? After all, in config.edn it says:
By default, property value separated by commas will not be treated as
;; page references.
That does not suggest that behavior is limited to built-in properties.
For that reason I said “Unless you have made property-related changes to file config.edn
”, which is exactly for customizing the behavior beyond what is built-in.
Right, but you have not answered my question:
in what way does the built-in, non-changed tags::
behavior differ from topic::
?
I know how alias::
reacts differently from all others, but what about tags::
?
Have a look at the following thread:
The difference between [[page links]], #tags, and properties::
which gives an overall explanation. Section “Special Case: Page Tags” in particular describes what is special about property tags::
For reference, Built-in Properties in the docs.
OK, that makes it clear indeed.
This comment:
tells me that tags::
in effect acts like a simple query {{query (property tags tagname)}}
, right?
I would not say that tags::
is a query, rather that tags::
is used as input for a built-in query that runs on each page. I would suggest to create a temporary testing graph and add a few pages to see the behavior first-hand.
True. I did not say tags::
IS a query but acts like one; no property is set up as a query.
Anyway, thanks for your help and patience, I appreciate it. I will mark your comment with the link to Aryan’s page as the solution.