Suggest don't create backlink for parent namespace, or have a switch to close it

Problem:
In NoteA.md has a link

  • [[TestNamespace/TestTag]]

In the graph, logseq will create 3 backlink

My question is about the link between TestNamespace and NoteA

My scenario :
I will use namespace as system separation like Habit/GTD/PKM/Personal/Work …
I current situation, my graph shows a lot of big dots which is namespace.

What I excepted is:

Currently what I can do is

  1. Using [[TestNamespace - TestTag]]
  2. Inside [[TestNamespace - TestTag]] write a property namespace:: TestNamespace

Then the graph is totally clean. But this is not a namespace should looks like. For example if I want to change namespace name, then I need to change all of them one by one.

So my question is :
Is this reasonable to have that additional link?
If we want to see all nodes under a specific namespace, then we can use a query.
Or if Page graph support N level graph, then everything works fine.
Current method just create a lot of useless links in the graph and make the graph totally a mess.

Most scary thing:
If I use [[NS1/NS2/NS3/TestTag]], then logseq will create link like


Link with X means should not be created automically.

What you have experienced is expected. A Page is a node in the graph. Therefore NoteA will show.
By adding the namespace in the page, you implied that you want a relationship between the page and the namespace [[TestNamespace/TestTag]]. Therefore the graph will link them.
Every time there is / in a backlink, logseq will split it has namespace hierarchy. I hope this helps to confirm that it is working as intended.

1 Like

I understand what you expain~ Thanks a lot~

What I don’t understand is the meaning of the link between NoteA and TestNamespace.

NoteA is a page, which contains the namespace TestNamespace. The relationship is “contains” therefore the connection will be drawn between them. I hope that I am not confusing you :slight_smile:

1 Like

I think I would expect the same as @Raymon.
Could be an option/preference to only link to the ‘lowest level’ of the hierarchy.

I understand what you say, let’s define this question more clearly.

  1. If NodeA write a Line [[TagA]], then NodeA contain TagA, and a link should be created.
  2. If NodeA write a Line [[TestNamespace/TagA]], then
    • NodeA contain TestNamespace/TagA, then a link should be created between NodeA and TestNamespace/TagA. This is a strong relation
    • And the question is, does NodeA contains [[TestNamespace]]? This is a weak relation
      • Current logseq do not split strong and weak relation, and treate this question as TRUE. And this is why you say it’s expected.
      • My point is this should be false, or at least give a option to hide weak relation in the graph. Or Graph view will be totally a mess if one use namespace as classification method.
1 Like

I think @Raymon Is right. The namespace graph should look like a tree, not a circle. The note should not have a direct relation to the root node but belongs to the TestNamespace through TestTag.