<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Identifiers on Ghafoor's Personal Blog</title><link>https://ghafoorsblog.com/tags/identifiers/</link><description>Recent content in Identifiers on Ghafoor's Personal Blog</description><generator>Hugo</generator><language>en</language><managingEditor>hello@ghafoorsblog.com (AG Sayyed)</managingEditor><webMaster>hello@ghafoorsblog.com (AG Sayyed)</webMaster><copyright>Copyright © 2024-2026 AG Sayyed. All Rights Reserved.</copyright><lastBuildDate>Wed, 11 Nov 2026 17:40:03 +0000</lastBuildDate><atom:link href="https://ghafoorsblog.com/tags/identifiers/index.xml" rel="self" type="application/rss+xml"/><item><title>Node IDs Explained</title><link>https://ghafoorsblog.com/docs/graphify/04-reference/node-ids/</link><pubDate>Mon, 09 Nov 2026 00:00:00 +0000</pubDate><author>hello@ghafoorsblog.com (AG Sayyed)</author><guid>https://ghafoorsblog.com/docs/graphify/04-reference/node-ids/</guid><description>&lt;h2 id="node-ids-explained"&gt;Node IDs Explained&lt;/h2&gt;
&lt;p&gt;Understanding Graphify node identifiers — the keys to querying, explaining, and tracing your codebase.&lt;/p&gt;
&lt;h2 id="-what-is-a-node-id"&gt;🔑 What is a Node ID?&lt;/h2&gt;
&lt;p&gt;A &lt;strong&gt;Node ID&lt;/strong&gt; is a unique identifier for any node in the Graphify knowledge graph. Every file, function, class, variable, and symbol gets a Node ID.&lt;/p&gt;
&lt;hr&gt;
&lt;h2 id="-node-id-formats"&gt;📋 Node ID Formats&lt;/h2&gt;
&lt;table&gt;
 &lt;thead&gt;
 &lt;tr&gt;
 &lt;th&gt;Format&lt;/th&gt;
 &lt;th&gt;Example&lt;/th&gt;
 &lt;th&gt;Resolves To&lt;/th&gt;
 &lt;/tr&gt;
 &lt;/thead&gt;
 &lt;tbody&gt;
 &lt;tr&gt;
 &lt;td&gt;&lt;strong&gt;File path&lt;/strong&gt;&lt;/td&gt;
 &lt;td&gt;&lt;code&gt;scripts/dictionary/yt-to-content-v2.py&lt;/code&gt;&lt;/td&gt;
 &lt;td&gt;File node&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;&lt;strong&gt;File + line&lt;/strong&gt;&lt;/td&gt;
 &lt;td&gt;&lt;code&gt;scripts/dictionary/yt-to-content-v2.py:L100&lt;/code&gt;&lt;/td&gt;
 &lt;td&gt;Symbol at line 100&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;&lt;strong&gt;Symbol name&lt;/strong&gt;&lt;/td&gt;
 &lt;td&gt;&lt;code&gt;mergeParams&lt;/code&gt;&lt;/td&gt;
 &lt;td&gt;Function/class by name&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;&lt;strong&gt;Qualified symbol&lt;/strong&gt;&lt;/td&gt;
 &lt;td&gt;&lt;code&gt;scripts/dictionary/yt-to-content-v2.py:mergeParams&lt;/code&gt;&lt;/td&gt;
 &lt;td&gt;Specific symbol in file&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;&lt;strong&gt;Class.method&lt;/strong&gt;&lt;/td&gt;
 &lt;td&gt;&lt;code&gt;Config.load&lt;/code&gt;&lt;/td&gt;
 &lt;td&gt;Method on class&lt;/td&gt;
 &lt;/tr&gt;
 &lt;/tbody&gt;
&lt;/table&gt;
&lt;hr&gt;
&lt;h2 id="-usage-in-commands"&gt;🎯 Usage in Commands&lt;/h2&gt;
&lt;h3 id="graphify-explain"&gt;&lt;code&gt;graphify explain&lt;/code&gt;&lt;/h3&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-bash" data-lang="bash"&gt;&lt;span class="line"&gt;&lt;span class="ln"&gt; 1&lt;/span&gt;&lt;span class="cl"&gt;&lt;span class="c1"&gt;# File (shows all symbols, imports, structure)&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="ln"&gt; 2&lt;/span&gt;&lt;span class="cl"&gt;graphify explain scripts/dictionary/yt-to-content-v2.py
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="ln"&gt; 3&lt;/span&gt;&lt;span class="cl"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="ln"&gt; 4&lt;/span&gt;&lt;span class="cl"&gt;&lt;span class="c1"&gt;# Specific function&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="ln"&gt; 5&lt;/span&gt;&lt;span class="cl"&gt;graphify explain mergeParams
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="ln"&gt; 6&lt;/span&gt;&lt;span class="cl"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="ln"&gt; 7&lt;/span&gt;&lt;span class="cl"&gt;&lt;span class="c1"&gt;# Qualified (disambiguates same-name functions)&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="ln"&gt; 8&lt;/span&gt;&lt;span class="cl"&gt;graphify explain scripts/dictionary/yt-to-content-v2.py:mergeParams
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="ln"&gt; 9&lt;/span&gt;&lt;span class="cl"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="ln"&gt;10&lt;/span&gt;&lt;span class="cl"&gt;&lt;span class="c1"&gt;# Line-specific&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="ln"&gt;11&lt;/span&gt;&lt;span class="cl"&gt;graphify explain scripts/dictionary/yt-to-content-v2.py:L100
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;h3 id="graphify-path"&gt;&lt;code&gt;graphify path&lt;/code&gt;&lt;/h3&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-bash" data-lang="bash"&gt;&lt;span class="line"&gt;&lt;span class="ln"&gt;1&lt;/span&gt;&lt;span class="cl"&gt;&lt;span class="c1"&gt;# File to file&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="ln"&gt;2&lt;/span&gt;&lt;span class="cl"&gt;graphify path tasks/content.yaml scripts/dictionary/yt-to-content-v2.py
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="ln"&gt;3&lt;/span&gt;&lt;span class="cl"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="ln"&gt;4&lt;/span&gt;&lt;span class="cl"&gt;&lt;span class="c1"&gt;# Function to file&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="ln"&gt;5&lt;/span&gt;&lt;span class="cl"&gt;graphify path mergeParams scripts/dictionary/yt-to-content-v2.py
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="ln"&gt;6&lt;/span&gt;&lt;span class="cl"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="ln"&gt;7&lt;/span&gt;&lt;span class="cl"&gt;&lt;span class="c1"&gt;# Qualified to file&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="ln"&gt;8&lt;/span&gt;&lt;span class="cl"&gt;graphify path scripts/dictionary/yt-to-content-v2.py:mergeParams tasks/content.yaml
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;h3 id="graphify-query"&gt;&lt;code&gt;graphify query&lt;/code&gt;&lt;/h3&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-bash" data-lang="bash"&gt;&lt;span class="line"&gt;&lt;span class="ln"&gt;1&lt;/span&gt;&lt;span class="cl"&gt;&lt;span class="c1"&gt;# Natural language (Graphify resolves internally)&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="ln"&gt;2&lt;/span&gt;&lt;span class="cl"&gt;graphify query &lt;span class="s2"&gt;&amp;#34;explain the mergeParams function&amp;#34;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="ln"&gt;3&lt;/span&gt;&lt;span class="cl"&gt;graphify query &lt;span class="s2"&gt;&amp;#34;what does scripts/dictionary/yt-to-content-v2.py do?&amp;#34;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;hr&gt;
&lt;h2 id="-resolution-rules"&gt;🔍 Resolution Rules&lt;/h2&gt;
&lt;h3 id="exact-file-path"&gt;1. Exact File Path&lt;/h3&gt;
&lt;pre tabindex="0"&gt;&lt;code&gt;scripts/dictionary/yt-to-content-v2.py
&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;→ Resolves to file node if exists in graph.&lt;/p&gt;</description></item></channel></rss>