TiddlyWiki / TiddlyWiki5

A self-contained JavaScript wiki for the browser, Node.js, AWS Lambda etc.
https://tiddlywiki.com/
Other
7.97k stars 1.18k forks source link

[IDEA] Node Filter Operators and Backtags #8252

Open kookma opened 3 months ago

kookma commented 3 months ago

A node filter operator is one returns a form of nodes as below

These filter operators can be used to explorer nodes and construct a bidirectional map of information (ZettelKasten note taking).

Idea 1 Is it possible to add an alias for tagging? For consistency reason I propose the backtags. This way both tagging and backtags share the same code and acts as aliases for eachother.

The set of node filter operators then will be

Idea 2 Does it worth to add this terminology to official documentation?

kookma commented 3 months ago

@sobjornstad, @linonetwo As you both work with other note talking apps, is backtags a correct word here? or other apps use better word?

linonetwo commented 3 months ago

backtags is easy to remember. But we already have tagging Operator.

And if we want to create a graph visualization, these 1-level operators are not enought. Filter like https://github.com/tiddly-gittly/in-tagtree-of is needed, see

https://github.com/tiddly-gittly/intention-tower-knowledge-graph/blob/3ffc42b9cfe53bbb0d701e9cf17c6f443db3ee50/src/intention-tower-knowledge-graph/ViewTemplate/UnderIntention/ProjectsUnderThisIntentionFlowChartEcharts.tid#L9

tiddlerSource="[all[tiddlers]tag{$:/plugins/linonetwo/intention-tower-knowledge-graph/Config/intention-tag}in-tagtree-of:inclusive] :or[tagstree[]tag{$:/plugins/linonetwo/intention-tower-knowledge-graph/Config/intention-tag}]"

https://github.com/tiddly-gittly/intention-tower-knowledge-graph/blob/3ffc42b9cfe53bbb0d701e9cf17c6f443db3ee50/src/intention-tower-knowledge-graph/ViewTemplate/ProjectsOverview/AllProjectsFlowChartEchartsAddon.tid#L24-L35

Jermolene commented 3 months ago

Hi @kookma we have found that the "tag" and "tagging" operators are confusing for users, but I'm not sure that "backtags" would be any better. I do appreciate the symmetry with the other "back*" operators, and perhaps that is worth pointing out in the docs.

kookma commented 3 months ago

backtags is easy to remember. But we already have tagging Operator.

Can't we make backtags as alias for tagging? I mean to keep tagging but allow backtags refer to tagging?

sobjornstad commented 3 months ago

@kookma RemNote calls the items tagged “instances” of the tag, perhaps too technically. (In RemNote tags can also assign a type to the thing they tag, so the OOP metaphor makes sense.) I don't think this would be helpful in TW.

Otherwise I've only heard “tagging” or “tagged” here. I do find the tagging operator confusing – sometimes I have to look it up to remind myself of the difference between tagging and tags.

“Backtags” sounds kind of odd to me, but I like the idea of having it as an alias.

linonetwo commented 3 months ago

Well, why backlinks is OK but backtags is odd? But I'm not sure if other app also use backlinks as a term.

sobjornstad commented 3 months ago

Yeah I think that's why – “backlinks” is a well-established term used by almost every app that has this feature.

Jermolene commented 3 months ago

Can't we make backtags as alias for tagging? I mean to keep tagging but allow backtags refer to tagging?

I would caution against doing so because it adds significant cognitive overhead for users to have to know about both terms, and it would be necessary to know both terms if one was reading other peoples code.

kookma commented 3 months ago

Thank you all. Based on @Jermolene suggestion I add some explanation to official docs.