# How to link or find a headline without ID?

**URL:** https://org-roam.discourse.group/t/how-to-link-or-find-a-headline-without-id/2055
**Category:** How To
**Created:** [September 24, 2021, 6:46am UTC](https://org-roam.discourse.group/t/how-to-link-or-find-a-headline-without-id/2055 "2021-09-24T06:46:02Z")
**Posts on this page:** 3
**Page:** 1

<div class="post-metadata">

### Author: ![acerphoenix](https://avatars.discourse-cdn.com/v4/letter/a/7c8e57/32.png) [@acerphoenix](https://org-roam.discourse.group/u/acerphoenix)
#### Post date: [September 24, 2021, 6:46am UTC](https://org-roam.discourse.group/t/how-to-link-or-find-a-headline-without-id/2055/1 "2021-09-24T06:46:02Z")

</div>

In Obsidian, I can link a normal head with[[]].  
In org-roam, I must `org-id-get-create` to give the headline a ID first, then `org-roam-node-insert` link it in other org file. It’s not so convenient.  
I hope When I want to link to a headline, roam list all headlines with or without ID, then org-roam create a ID on the headline i chose automatically.

---

<div class="post-metadata">

### Author: ![acerphoenix](https://avatars.discourse-cdn.com/v4/letter/a/7c8e57/32.png) [@acerphoenix](https://org-roam.discourse.group/u/acerphoenix)
#### Post date: [September 24, 2021, 6:54am UTC](https://org-roam.discourse.group/t/how-to-link-or-find-a-headline-without-id/2055/2 "2021-09-24T06:54:17Z")

</div>

And why org-roam create a ID drawer to identify a node? I think all the files and headlines could be cached as a node. org-roam use sqlite, it can process large data for a person.

---

<div class="post-metadata">

### Author: ![nobiot](https://yyz2.discourse-cdn.com/free1/user_avatar/org-roam.discourse.group/nobiot/32/159_2.png) [@nobiot](https://org-roam.discourse.group/u/nobiot)
#### Post date: [September 25, 2021, 8:01am UTC](https://org-roam.discourse.group/t/how-to-link-or-find-a-headline-without-id/2055/3 "2021-09-25T08:01:19Z")

</div>

One important benefit of an ID for a node is that you can move it around in different files and Org mode (not just Org-roam) can still keep track of the node – links to it will still work.

If you look up in the forum, there are people who want to create a new file from a heading in an original file, while keeping the network of ideas intact (no need to change existing links to it) – IDs can let you do this.

If you would like to know why Jethro (the author of Org-roam) has decided to use IDs, you can read his own account on his [blog post](https://blog.jethro.dev/posts/org_roam_v2/). For instance, this part:

> The key difference between v1 and v2 is that v2 makes no distinction between a file note and a headline note. In v2, Org-roam views notes in terms of nodes, where a node is _any headline or top-level file with an ID_ . This means that IDs are now compulsory.  
> This one requirement reduces a lot of overhead. We no longer need special hooks maintaining the validity of `file:` links, and no longer have to treat headline and file notes differently. Org-roam v2 removes 7000 lines of code while only re-adding about 4000, and even ships with a few more features than Org-roam v1.

* * *

> [@acerphoenix](#):
>
> I hope When I want to link to a headline, roam list all headlines with or without ID, then org-roam create a ID on the headline i chose automatically.

> [@acerphoenix](#):
>
> I think all the files and headlines could be cached as a node.

Yes, some people achieve effectively the same thing by generating an ID for **each and every** file and headline in `org-roam-directory`. I personally don’t use this approach, but that’s something you can try and see if you like for yourself.
