<?xml version="1.0" encoding="UTF-8"?><rss xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:atom="http://www.w3.org/2005/Atom" version="2.0" xmlns:itunes="http://www.itunes.com/dtds/podcast-1.0.dtd" xmlns:googleplay="http://www.google.com/schemas/play-podcasts/1.0"><channel><title><![CDATA[Link & Think]]></title><description><![CDATA[Notes on systems and technologies]]></description><link>https://www.linkandth.ink</link><image><url>https://substackcdn.com/image/fetch/$s_!TG-l!,w_256,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F72c7b012-7bdf-453b-b2dd-45863de29aca_500x500.png</url><title>Link &amp; Think</title><link>https://www.linkandth.ink</link></image><generator>Substack</generator><lastBuildDate>Wed, 08 Apr 2026 04:45:20 GMT</lastBuildDate><atom:link href="https://www.linkandth.ink/feed" rel="self" type="application/rss+xml"/><copyright><![CDATA[Ivo Velitchkov]]></copyright><language><![CDATA[en]]></language><webMaster><![CDATA[ivo@substack.com]]></webMaster><itunes:owner><itunes:email><![CDATA[ivo@substack.com]]></itunes:email><itunes:name><![CDATA[Ivo Velitchkov]]></itunes:name></itunes:owner><itunes:author><![CDATA[Ivo Velitchkov]]></itunes:author><googleplay:owner><![CDATA[ivo@substack.com]]></googleplay:owner><googleplay:email><![CDATA[ivo@substack.com]]></googleplay:email><googleplay:author><![CDATA[Ivo Velitchkov]]></googleplay:author><itunes:block><![CDATA[Yes]]></itunes:block><item><title><![CDATA[People, Ideas, and Quotes]]></title><description><![CDATA[Yet Another Serendipity Practice]]></description><link>https://www.linkandth.ink/p/people-ideas-and-quotes</link><guid isPermaLink="false">https://www.linkandth.ink/p/people-ideas-and-quotes</guid><dc:creator><![CDATA[Ivo Velitchkov]]></dc:creator><pubDate>Thu, 02 Apr 2026 12:40:22 GMT</pubDate><enclosure url="https://substack-post-media.s3.amazonaws.com/public/images/50bf3757-a020-4bf8-a1a8-403c4a303925_1024x863.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>At the PKM Summit earlier this month, I shared where I am on my journey towards serendipity protocols. The talk wasn&#8217;t recorded, but you can check <a href="https://kvistgaard.github.io/slides/serendipity/pkmsummit-2026/">the slides</a>. On some of the shared topics, there are write-ups in the <a href="https://www.linkandth.ink/p/serendipity-protocol-series">Serendipity series</a>. On others not yet. One of those, for which there was no write-up during the talk, was the <a href="https://www.linkandth.ink/p/glossary-of-serendipity-terms">glossary</a>, which I published right after. Others are some practices. Among them is a seven-year-old one, which I call <em>Today-is-later</em>, which I mentioned in some essays in the series, and a recent experiment, <em>Hot prompting</em>. Today, I&#8217;ll explain one of the newer practices, which I call PIQ (pronounced like &#8220;pick&#8221;). PIQ  stands for People, Ideas, Quotes.</p><h2>Come together</h2><p>The last entry in the <a href="https://www.linkandth.ink/p/glossary-of-serendipity-terms">Serendipity Glossary</a> is <em>thinging</em>. Material engagement with objects helps thinking and enables tinkering. It&#8217;s even more basic than that. According to <a href="https://iep.utm.edu/enactivism/">some school in cognitive science</a>, cognition is not something that happens in the brain but emerges from active engagement with the environment.</p><p>Thinging means objects are active participants in thinking.</p><p>Writing on paper is already thinging. Like with the potters described by Malafouris (see references in the glossary), the shape is learned into existence. It is a path made in walking, to cite the famous line from Machado&#8217;s poem, the <em>Wanderer</em>.</p><p>Notes are often locked in their medium.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!sUdu!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa162c93a-99bc-4e8b-a722-a6b3fb1e7979_1248x768.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!sUdu!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa162c93a-99bc-4e8b-a722-a6b3fb1e7979_1248x768.png 424w, https://substackcdn.com/image/fetch/$s_!sUdu!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa162c93a-99bc-4e8b-a722-a6b3fb1e7979_1248x768.png 848w, https://substackcdn.com/image/fetch/$s_!sUdu!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa162c93a-99bc-4e8b-a722-a6b3fb1e7979_1248x768.png 1272w, https://substackcdn.com/image/fetch/$s_!sUdu!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa162c93a-99bc-4e8b-a722-a6b3fb1e7979_1248x768.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!sUdu!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa162c93a-99bc-4e8b-a722-a6b3fb1e7979_1248x768.png" width="1248" height="768" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/a162c93a-99bc-4e8b-a722-a6b3fb1e7979_1248x768.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:768,&quot;width&quot;:1248,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:702271,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:&quot;https://www.linkandth.ink/i/192586650?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa162c93a-99bc-4e8b-a722-a6b3fb1e7979_1248x768.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!sUdu!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa162c93a-99bc-4e8b-a722-a6b3fb1e7979_1248x768.png 424w, https://substackcdn.com/image/fetch/$s_!sUdu!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa162c93a-99bc-4e8b-a722-a6b3fb1e7979_1248x768.png 848w, https://substackcdn.com/image/fetch/$s_!sUdu!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa162c93a-99bc-4e8b-a722-a6b3fb1e7979_1248x768.png 1272w, https://substackcdn.com/image/fetch/$s_!sUdu!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa162c93a-99bc-4e8b-a722-a6b3fb1e7979_1248x768.png 1456w" sizes="100vw" fetchpriority="high"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">Some of my recent handwritten notes</figcaption></figure></div><p>If there is a way to detach them, shrink them to palm size and print them on cardboard, we can play with them like with a deck of cards, shuffle them, draw several and put them side by side. These accidental neighbors can bring unexpected connections.</p><p>I haven&#8217;t done that yet, but I started <a href="https://kvistgaard.github.io/slides/serendipity/pkmsummit-2026/#/21">experimenting with an electronic version</a> of it. It&#8217;s too early to report results. What I&#8217;ll do instead is describe a similar practice, based on the same principle: unexpected neighbors occasionally trigger serendipitous events.</p><h2>People, Ideas, and Quotes</h2><p>What is common between <em><a href="http://127.0.0.1:5501/serendipity/pkmsummit-2026/index.html#/16/0/1">Today-is-later</a></em>, <em><a href="https://www.linkandth.ink/p/graph-pruning">Graph Pruning</a>,</em> and <em>PIQ</em> is that a random sample of a particular type of notes appears on the daily note on certain days. </p><div class="bluesky-wrap outer" style="height: auto; display: flex; margin-bottom: 24px;" data-attrs="{&quot;postId&quot;:&quot;3migaxv2kqc2k&quot;,&quot;authorDid&quot;:&quot;did:plc:ij6qgzlhgjg2fie4lgt4inmz&quot;,&quot;authorName&quot;:&quot;Ivo&quot;,&quot;authorHandle&quot;:&quot;velitchkov.eu&quot;,&quot;authorAvatarUrl&quot;:&quot;https://cdn.bsky.app/img/avatar/plain/did:plc:ij6qgzlhgjg2fie4lgt4inmz/bafkreidvnbdvmkl73hop3wbvmdx4up2t6ekljmffvts6sqkyfigstyf6ga&quot;,&quot;text&quot;:&quot;Inboxes are entropy disguised as order.&quot;,&quot;createdAt&quot;:&quot;2026-04-01T08:18:47.946Z&quot;,&quot;uri&quot;:&quot;at://did:plc:ij6qgzlhgjg2fie4lgt4inmz/app.bsky.feed.post/3migaxv2kqc2k&quot;,&quot;imageUrls&quot;:[]}" data-component-name="BlueskyCreateBlueskyEmbed"><iframe id="bluesky-3migaxv2kqc2k" data-bluesky-id="6564471062246442" src="https://embed.bsky.app/embed/did:plc:ij6qgzlhgjg2fie4lgt4inmz/app.bsky.feed.post/3migaxv2kqc2k?id=6564471062246442" width="100%" style="display: block; flex-grow: 1;" frameborder="0" scrolling="no"></iframe></div><p>But while the first two deal with accumulation and entropy, the third one brings together items that can be generative on their own and potentially even more so when they come together in unexpected combinations.</p><p>Bringing unexpected people has already shown some serendipity in the <em>Graph Pruning</em> practice. The set of random pages may contain a person's node. That might be somebody I have been out of touch with for a while who has now resurfaced, and I want to catch up with. I&#8217;m tagging such cases with the <a href="https://www.linkandth.ink/i/147366395/path">path pattern</a> to keep track. There have been sixteen such cases since July 2024, of which one (so far) has been an actual serendipitous episode. Not bad, but I thought I should make it more targeted and not on its own, but in combination with two other items: ideas and quotes.</p><p>And so, on certain days, an algorithm brings a PIQ block on my daily note, with a random sample of people, ideas and quotes pulled from my personal knowledge graph. Each item can trigger something on its own, but the greater potential comes when it appears alongside others in unexpected combinations. These combinations can occur in nine dimensions: three between same-type items, three between different items, and three more between each set and the context of the daily note on which it appears.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!Bhg4!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F625104dc-8089-4a04-8c2c-8d47a4bc20e1_2037x1418.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!Bhg4!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F625104dc-8089-4a04-8c2c-8d47a4bc20e1_2037x1418.png 424w, https://substackcdn.com/image/fetch/$s_!Bhg4!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F625104dc-8089-4a04-8c2c-8d47a4bc20e1_2037x1418.png 848w, https://substackcdn.com/image/fetch/$s_!Bhg4!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F625104dc-8089-4a04-8c2c-8d47a4bc20e1_2037x1418.png 1272w, https://substackcdn.com/image/fetch/$s_!Bhg4!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F625104dc-8089-4a04-8c2c-8d47a4bc20e1_2037x1418.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!Bhg4!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F625104dc-8089-4a04-8c2c-8d47a4bc20e1_2037x1418.png" width="1456" height="1014" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/625104dc-8089-4a04-8c2c-8d47a4bc20e1_2037x1418.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1014,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:156886,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://www.linkandth.ink/i/192586650?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F625104dc-8089-4a04-8c2c-8d47a4bc20e1_2037x1418.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!Bhg4!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F625104dc-8089-4a04-8c2c-8d47a4bc20e1_2037x1418.png 424w, https://substackcdn.com/image/fetch/$s_!Bhg4!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F625104dc-8089-4a04-8c2c-8d47a4bc20e1_2037x1418.png 848w, https://substackcdn.com/image/fetch/$s_!Bhg4!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F625104dc-8089-4a04-8c2c-8d47a4bc20e1_2037x1418.png 1272w, https://substackcdn.com/image/fetch/$s_!Bhg4!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F625104dc-8089-4a04-8c2c-8d47a4bc20e1_2037x1418.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>These sets of items appear naturally (I take care of their appearance on the page), but they are embedded query results, which means their context is a click away, and whatever they are connected to is just another degree further in the graph. The serendipity event an item may trigger may not come from the concrete one randomly pulled to my daily note, but from another item found in the exploratory journey that the pulled item invited me to take.</p><p>The potential for serendipity is high, but it doesn&#8217;t mean it will produce a happy accident every week or month. If there is one a month on average, that&#8217;s already a good result. But for this to work at all, it needs some critical mass. Currently, I have about 1500 people, 350 ideas and 4800 imported annotations. These numbers need some clarification.</p><p>From these 1500 people, I personally know less than a third. The rest appeared via Readwise, as authors of books, articles and papers I annotated. People I personally know are typed with a specific subtype, but for the PIQ practice, I prefer not to limit the pool only to them.</p><p>The pool of ideas in PIQ includes notes tagged as <em>idea</em>, <em>thought</em> or <em>capture</em> that have not been turned into anything else. Now I&#8217;m experimenting with adding those Bluesky posts and Substack notes, which I kept in my graph for resurfacing. This adds a few hundred blocks to the pool. More importantly, while other ideas would potentially trigger a serendipitous event of <a href="https://www.linkandth.ink/i/147366395/penny">Penny pattern</a>, the micro-posts also have the potential of <a href="https://www.linkandth.ink/i/147366395/path">Path</a>. Here&#8217;s why. A forgotten post appearing in the daily PIQ block may be linked to new ideas I came up with in the meantime or to other items from that day. The reposting of that post with the new idea will resurface it in a new context together with a fresh idea, which may trigger a different reaction from the social network (now in a new state!), potentially a happy accident. One can&#8217;t step twice in the same river. That&#8217;s why it is a combination of <em><a href="https://www.linkandth.ink/p/random-living-error">random</a></em><a href="https://www.linkandth.ink/p/random-living-error"> and </a><em><a href="https://www.linkandth.ink/p/random-living-error">living</a></em> patterns.</p><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://www.linkandth.ink/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe&quot;,&quot;language&quot;:&quot;en&quot;}" data-component-name="SubscribeWidgetToDOM"><div class="subscription-widget show-subscribe"><div class="preamble"><p class="cta-caption">Link &amp; Think is a reader-supported publication. To receive new posts and support my work, consider becoming a free or paid subscriber.</p></div><form class="subscription-widget-subscribe"><input type="email" class="email-input" name="email" placeholder="Type your email&#8230;" tabindex="-1"><input type="submit" class="button primary" value="Subscribe"><div class="fake-input-wrapper"><div class="fake-input"></div><div class="fake-button"></div></div></form></div></div><p>If you practice some flavor of the Zettelkasten method, PIQ can complement your ideas distillery practice. You can even extend the idea pools with your zettels.</p><p>In my case, the quotes are all annotations from Readwise. If you have a quote captured manually or from another pipeline, it would be good to add them in the pool. The bigger the better. While in PIQ, I call them <em>quotes</em>, they are often a combination of a highlight and my note about it, which makes it more potent, if not for serendipity, then at least for linking and distillation. </p><p>I&#8217;m still experimenting with the numbers and frequency, and unlike Graph Pruning, PIQ hasn&#8217;t stabilized. The current samples are five people, two ideas, and three quotes. It runs on Tuesdays and Thursdays, and on weekends. The weekend is often ignored. </p><p>In all cases, the PIQ block is automatically deleted after a couple of days, unless there was a logged serendipity event, which then remains as the only child block of PIQ. The quotes part of PIQ appears on its own under a different parent, <em>Today&#8217;s highlights</em> on Monday, Wednesday and Friday.</p><p>The technical implementation of PIQ is simple. Yet, if you want to give it a try, you need to find the best way for it to fit your tool and workflows. With so potent coding agents around, it won&#8217;t be any challenge. For those who use Roam Research, I have described my implementation in the next section.</p>
      <p>
          <a href="https://www.linkandth.ink/p/people-ideas-and-quotes">
              Read more
          </a>
      </p>
   ]]></content:encoded></item><item><title><![CDATA[Glossary of Serendipity Terms]]></title><description><![CDATA[The serendipity research has its own vocabulary.]]></description><link>https://www.linkandth.ink/p/glossary-of-serendipity-terms</link><guid isPermaLink="false">https://www.linkandth.ink/p/glossary-of-serendipity-terms</guid><dc:creator><![CDATA[Ivo Velitchkov]]></dc:creator><pubDate>Wed, 25 Mar 2026 14:35:42 GMT</pubDate><enclosure url="https://substack-post-media.s3.amazonaws.com/public/images/5b511ad4-58d6-4ca6-a6dd-df6e452fae33_1215x765.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>The serendipity research has its own vocabulary. I thought it was worth collecting those that stabilised so far in a glossary.</p><p><em>This is the seventh post in the <a href="https://www.linkandth.ink/p/serendipity-protocol-series">serendipity series</a>.</em>  </p><p>The glossary is structured like this. There are three bullets under each term. The first bullet is a definition, the second is about its origin, and the third is an example.</p><h3>Bisociation</h3><ul><li><p>Association of two (or more) apparently incompatible frames of thought.</p></li><li><p>Coined by Arthur Koestler to describe the functional basis of creative thinking.</p></li><li><p>Bernard Sadow bisociated the observation of an airport worker rolling a heavy machine on a wheeled skid with his own struggle of dragging heavy bags, leading to the invention of the rolling suitcase.</p></li></ul><h3>Epistemic Expectations</h3><ul><li><p>Internalised beliefs or community norms about where knowledge comes from, what kinds of discoveries are possible, and what results are likely to be produced by a specific method.</p></li><li><p>Introduced in the field of serendipity research by Samantha Copeland.</p></li><li><p>Lewis Thomas and Aaron Kellner both observed rabbit ears drooping after injections of the enzyme papain. Initially, they both ignored this anomaly due to their epistemic expectations of the scientific community regarding cartilage as inert and relatively uninteresting.</p></li></ul><h3>Generative Doubt</h3><ul><li><p>A motivated search for understanding, stimulated by the experience of not knowing.</p></li><li><p>A management concept, introduced by Cunha et al. in 2015, emphasizing doubt as a creative force.</p></li><li><p>Honda achieved success in the US market by not clinging to their original plan for large bikes and by responding to the unexpected popularity of their small delivery bikes.</p></li></ul><h3>Indwelling</h3><ul><li><p>A technique for cultivating an &#8220;art of locality&#8221; by immersing oneself deeply in a specific context or material environment.</p></li><li><p>Emphasized as a method for internalizing situational knowledge and cultivating <a href="https://www.linkandth.ink/i/190820425/metis">metis</a> by W. D. Holford (2020), linked to James Scott&#8217;s (1998) descriptions of the &#8220;art of locality&#8221; and &#8220;traditional cultivators&#8221; who develop complex techniques by dwelling within their specific environmental contingencies. It was formally applied to serendipity studies by Synne Frydenberg et al. (2019) in the context of design-driven field studies. The concept draws on Michael Polanyi&#8217;s work regarding the internalization of tacit knowledge.</p></li><li><p>Designers of arctic ship bridges stayed on a boat in harsh conditions to indwell with the crew, leading to &#8220;contextual wake-up calls&#8221; and unplanned improvements in their designs.</p></li></ul><h3>Managed Serendipity</h3><ul><li><p>An organisational strategy that utilises narrative methods to enable multiple and unexpected encounters with original anecdotal material. It prioritises natural learning processes and the synthesis of diverse stories over the rigid imposition of best practice, aiming to increase the probability of discovering emergent solutions rather than simply repeating past actions.</p></li><li><p>Coined by David Snowden in 2003, arguing that while best practice is useful for ordered systems, innovation in complex systems depends on the disruption of entrenched patterns of thinking.</p></li><li><p>A company implements a narrative database of uninterpreted stories from its staff, including retiring employees who share anecdotal wisdom. Instead of using directed keyword searches, a user runs abstract queries. This forces multiple encounters with original material that would otherwise be filtered out.</p></li></ul><h3>Metis</h3><ul><li><p>&#8220;Cunning wisdom&#8221;; a form of responsive reasoning that allows individuals to respond well to changing circumstances, ambiguity, and the unexpected.</p></li><li><p>Named after the Greek goddess Metis, the first wife of Zeus, who embodied shape-shifting and clever intelligence.</p></li><li><p>Captain &#8220;Sully&#8221; Sullenberger&#8217;s emergency landing of an Airbus on the Hudson River in 2009.</p></li></ul><h3>Microserendipity</h3><ul><li><p>Small-scale discovery occurring during mundane practice where an unintended observation triggers a break in one&#8217;s flow state, acting as a pivot event that forces an immediate reassessment of the agent&#8217;s creative intent or trajectory.</p></li><li><p>Primarily developed and refined by Wendy Ross and Fr&#233;d&#233;ric Vall&#233;e-Tourangeau to move serendipity research toward a granular, systematic analysis of creative action as it unfolds. Earlier iterations of the concept were explored by Beghetto (2013) in the context of classroom creativity and by Bogers and Bj&#246;rneborn (2013) to describe coincidences shared on digital platforms such as Twitter.</p></li><li><p>Researcher Ana Pi&#241;eyro experienced microserendipity when she overloaded a polymeric coil, creating a &#8220;mistake&#8221; that she noticed had unique aesthetic and heat-responsive qualities, pivoting her research.</p></li></ul><h3>Pseudo-serendipity</h3><ul><li><p>Discoveries that occur by accident and sagacity, but where the investigator was already actively in quest of that specific finding.</p></li><li><p>Coined by Royston Roberts (1989) to distinguish between pure serendipity and accidental solutions to known problems.</p></li><li><p>Charles Goodyear spent a decade searching for a way to stabilize rubber; he accidentally dropped a mixture on a hot stove, discovering vulcanization, a solution he sought, but found through an unplanned event.</p></li></ul><h3>Retrospective Coronation</h3><ul><li><p>The process of using hindsight to label a past accident as serendipitous only after a valuable outcome has been achieved and validated by personal or social judgment.</p></li><li><p>Formally introduced by philosopher Samantha Copeland to describe how the status of a discovery is not inherent in the moment of the accident but is bestowed post-factum by the scientific community.</p></li><li><p>Penicillin was only &#8220;coronated&#8221; as a serendipitous discovery years after the initial observation; at the time of the accident, Fleming simply found the mold funny rather than recognizing it as a legendary breakthrough.</p></li></ul><h3>Sagacity</h3><ul><li><p>Perceptive wisdom or the ability to sniff out value in accidental results that others might dismiss as errors or noise.</p></li><li><p>From the Latin <em>sagax</em> (of quick perception, acute).</p></li><li><p>Alexander Fleming&#8217;s sagacity lay in his complex recognition that a contaminant mold was actively killing bacteria, rather than simply viewing it as a ruined culture to be discarded.</p></li></ul><h3>Serendipity</h3><ul><li><p>Making discoveries by accident and sagacity of things which one is not in quest of.</p></li><li><p>Coined by Horace Walpole in 1754, inspired by the Persian fairy tale <em>The Three Princes of Serendip</em>.</p></li><li><p>Christopher Columbus<strong>,</strong> setting out for the Indies but stumbling upon the Americas, is considered a spectacular historical instance of the phenomenon.</p></li></ul><h3>Serendipity Filters</h3><ul><li><p>Internal or external pressures &#8212; such as preconceived notions, time constraints, or rigid goals &#8212; that cause a person to ignore a potentially valuable accidental connection.</p></li><li><p>Coined by Abigail McBirnie to characterize the situational pressures that cause potential discoveries to be lost and to explain the paradox of control in serendipitous processes.</p></li><li><p>Aaron Kellner observed the same floppy ears in rabbits as Lewis Thomas, but used the phenomenon only as a strength test, failing to follow up because of his narrow focus on cardiovascular muscle.</p></li></ul><h3>Strong Emergence</h3><ul><li><p>A phenomenon is strongly emergent if it cannot be deduced, even in principle, from the properties of the underlying components or the process from which it originates.</p></li><li><p>A technical term in philosophy and complexity sciences coined by David Chalmers.</p></li><li><p>The discovery of smallpox vaccination was a distributed process that emerged from folk knowledge, repeated witnessings by farmers, and the patronage of the scientific community.</p></li></ul><h3>Thinging</h3><ul><li><p>The conceptualisation of thinking as an active, distributed engagement with material objects, where things are not viewed as passive or immutable but as forcefields of continuous, active transition that participate in human cognitive life.</p></li><li><p>Originally coined by Martin Heidegger to denote the active nature of objects. It was later adapted and expanded by Lambros Malafouris as a core component of Material Engagement Theory (MET).</p></li><li><p>In pottery-making, the potter does not simply externalize a preconceived mental blueprint onto inert matter. Instead, as the hand and eye touch the clay, the specific form of a line or curve is learned into existence through a spontaneous dialogue with the material&#8217;s resistance.</p></li></ul><p>That&#8217;s it for now. There are also terms such as <em>bahramdipity, super-encounterers</em> and <em>zemblanity,</em> but they are not used frequently enough to make it to this glossary. </p><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://www.linkandth.ink/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe now&quot;,&quot;action&quot;:null,&quot;class&quot;:null}" data-component-name="ButtonCreateButton"><a class="button primary" href="https://www.linkandth.ink/subscribe?"><span>Subscribe now</span></a></p><div><hr></div><h3>References</h3><p>Barber, B., &amp; Fox, R. C. (1958). The Case of the Floppy-Eared Rabbits: An Instance of Serendipity Gained and Serendipity Lost. <em>American Journal of Sociology</em>, <em>64</em>(2), 128&#8211;136.</p><p>Chalmers, D. J. (2008). Strong and Weak Emergence. In P. Clayton &amp; P. Davies (Eds.), <em>The Re-Emergence of Emergence: The Emergentist Hypothesis from Science to Religion</em> (p. 0). Oxford University Press. <a href="https://doi.org/10.1093/acprof:oso/9780199544318.003.0011">https://doi.org/10.1093/acprof:oso/9780199544318.003.0011</a></p><p>Copeland, S. (2019). On serendipity in science: Discovery at the intersection of chance and wisdom. <em>Synthese</em>, <em>196</em>(6), 2385&#8211;2406.</p><p>Cunha, M. P. e, Rego, A., Clegg, S., &amp; Lindsay, G. (2015). The dialectics of serendipity. <em>European Management Journal</em>, <em>33</em>(1), 9&#8211;18. <a href="https://doi.org/10.1016/j.emj.2014.11.001">https://doi.org/10.1016/j.emj.2014.11.001</a></p><p>&#8220;Fleming Leapt on the Unusual like a Weasel on a Vole&#8221;: Challenging the Paradigms of Discovery in Science | Request PDF. (n.d.). <em>ResearchGate</em>. <a href="https://doi.org/10.1162/posc_a_00294">https://doi.org/10.1162/posc_a_00294</a></p><p>Koestler, A. (1964). <em>The Act of Creation</em>. One 70 Press. (Original work published 1964)</p><p>Malafouris, L. (2020). Thinking as &#8220;Thinging&#8221;: Psychology With Things. <em>Current Directions in Psychological Science</em>, <em>29</em>(1), 3&#8211;8. <a href="https://doi.org/10.1177/0963721419873349">https://doi.org/10.1177/0963721419873349</a></p><p>Martin Heidegger, M. (n.d.). <em>Being and Time</em>. Retrieved March 24, 2026, from <a href="https://sunypress.edu/Books/B/Being-and-Time2">https://sunypress.edu/Books/B/Being-and-Time2</a> (Original work published 1927)</p><p>McBirnie, A. (2008). Seeking serendipity: The paradox of control. <em>Aslib Proceedings</em>, <em>60</em>(6), 600&#8211;618. <a href="https://doi.org/10.1108/00012530810924294">https://doi.org/10.1108/00012530810924294</a></p><p>Roberts, R. M. M. (1989). <em>Serendipity: Accidental Discoveries in Science</em>. Wiley.</p><p>Snowden, D. (2003). Managing for Serendipity or why we should lay off &#8220;best practice&#8221; in KM. <em>International Journal of Knowledge Management - IJKM</em>, <em>6</em>.</p>]]></content:encoded></item><item><title><![CDATA[Three Engineers of Modernity]]></title><description><![CDATA[Two of which also contributed to the next world machine]]></description><link>https://www.linkandth.ink/p/three-engineers-of-modernity</link><guid isPermaLink="false">https://www.linkandth.ink/p/three-engineers-of-modernity</guid><dc:creator><![CDATA[Ivo Velitchkov]]></dc:creator><pubDate>Fri, 27 Feb 2026 17:46:40 GMT</pubDate><enclosure url="https://substack-post-media.s3.amazonaws.com/public/images/8fd3ec7d-7223-4517-810e-c54baf9bf546_1024x1024.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>Making sense of what&#8217;s happening in the world is hard. That&#8217;s not for the lack of theories and opinions about it. But they just contribute to the overwhelming amount of other stimuli.</p><p>One coping strategy is to step back (the world is a historical thing after all) and choose more carefully what to pay attention to (not always to follow historians' choices).</p><p>Such attempts may result in seemingly weird statements. In an <a href="https://www.linkandth.ink/p/voltaire-the-entrepreneur">earlier essay</a>, I proposed praising Voltaire not just as an Enlightenment philosopher and a playwright, but also as an entrepreneur. As such &#8212; and here I made an even weirder suggestion &#8212; he should be listed among other pre-industrial entrepreneurs, such as Jakob Fugger and Josiah Wedgwood. A staggeringly rich banker, interested solely in money-making above anything else, a potter who scaled through industrial innovation and influence branding, and a satirical writer who campaigned for social justice make an unlikely trio. Sounds like a joke: a German, an Englishman, and a Frenchman walk into a bar. </p><p>But they did enter, not into a bar but into the Modernity Machine and when they left, that machine was working differently.</p><p>So, these three were not just successful entrepreneurs. They are among the more significant engineers of modernity. Two of them also made an early contribution to the Divergence Machine that is replacing the Modernity Machine in our present day.</p><h2><strong>The Modernity Machine</strong></h2><p>At some point in history, there was a tremendous shift in how the world worked. For millennia, it was defined by bloodlines, a static sense of fate and divine mystery. And then it turned into a world defined by money, agency, measurement, and public opinion.</p><p>According to some, it happened suddenly. According to others, it took centuries. According to some, the main shift was towards secularisation of society, or what Max Weber called disenchantment. There are commentators who focus on the awakening of the arts, and others on the birth of modern science. For Bruno Latour, it was the start of pretending science and politics don&#8217;t mix, which allowed us to mix them more effectively.</p><p>Most accounts of modernity focus on one area of life, such as religion, economics, politics, or science. That gives a partial picture. In contrast, the Modernity Machine thesis is a systemic view that pays sufficient attention to the role of technology and to the evolution of class relations. Like Luhmann and Latour, it decenters humans.</p><p>Machine sounds mechanistic. The opposite of organic, some may say. But that&#8217;s a matter of interpretation. The best definition of life that I know of comes from the theory of autopoiesis. It treats the organism, the cell, and different levels of organisation, such as the nervous or immune systems, as autopoietic machines. And the embedding doesn&#8217;t stop at the level of the organism. In <em>Principles of Biological Autonomy</em>, Varela wrote:</p><blockquote><p>If one says that there is a machine &#119872; in which there is a feedback loop through the environment, so that the effects of its output affect its input, one is in fact talking about a larger machine &#119872;&#8242; which includes the environment and the feedback loop in its defining organization.</p></blockquote><p>If <em>machine</em> can be seen as equivalent to <em>system</em>, why not call it the <em>modernity system</em>? Well, the machine metaphor lends itself to useful engineering descriptions such as development, installation, configuration, upgrade, release, put into operation, phase-out, and so on. It also helps to see the characteristics and dynamics of an epoch as a civilization-scale contraption.</p><p>The Modernity Machine thesis was developed by <span class="mention-wrap" data-attrs="{&quot;name&quot;:&quot;Venkatesh Rao&quot;,&quot;id&quot;:2264734,&quot;type&quot;:&quot;user&quot;,&quot;url&quot;:null,&quot;photo_url&quot;:&quot;https://substackcdn.com/image/fetch/$s_!MJ9A!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F562e590a-9494-4f66-87f0-330c1be204c2_500x500.jpeg&quot;,&quot;uuid&quot;:&quot;54b54cc9-668d-42fe-b466-fd843094424b&quot;}" data-component-name="MentionToDOM"></span> in a series of essays starting with <a href="https://contraptions.venkateshrao.com/p/the-modernity-machine">this one</a>. It sees modernity as a machine, constructed between 1200 and 1600 (a few centuries earlier than the mainstream theory has it). The early machine operated in parallel while the medieval machine was phasing out, and it still works today on its final day, while a newer one is being turned on.</p><p>The Modernity Machine functions through restructuring the relations between four classes: the monarch, the oligarchy, the technocracy, and the workers. The balance of power shifts towards previously weaker parties. There are often setbacks, but the trend persists. The previously suppressed class gains persistent new agency. I tried to sketch that in my notebook:</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!U4JR!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1b375fd2-8c52-4425-8cce-90488ea2725c_1351x1920.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!U4JR!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1b375fd2-8c52-4425-8cce-90488ea2725c_1351x1920.png 424w, https://substackcdn.com/image/fetch/$s_!U4JR!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1b375fd2-8c52-4425-8cce-90488ea2725c_1351x1920.png 848w, https://substackcdn.com/image/fetch/$s_!U4JR!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1b375fd2-8c52-4425-8cce-90488ea2725c_1351x1920.png 1272w, https://substackcdn.com/image/fetch/$s_!U4JR!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1b375fd2-8c52-4425-8cce-90488ea2725c_1351x1920.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!U4JR!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1b375fd2-8c52-4425-8cce-90488ea2725c_1351x1920.png" width="1351" height="1920" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/1b375fd2-8c52-4425-8cce-90488ea2725c_1351x1920.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1920,&quot;width&quot;:1351,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:656942,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://www.linkandth.ink/i/188921151?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1b375fd2-8c52-4425-8cce-90488ea2725c_1351x1920.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!U4JR!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1b375fd2-8c52-4425-8cce-90488ea2725c_1351x1920.png 424w, https://substackcdn.com/image/fetch/$s_!U4JR!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1b375fd2-8c52-4425-8cce-90488ea2725c_1351x1920.png 848w, https://substackcdn.com/image/fetch/$s_!U4JR!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1b375fd2-8c52-4425-8cce-90488ea2725c_1351x1920.png 1272w, https://substackcdn.com/image/fetch/$s_!U4JR!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1b375fd2-8c52-4425-8cce-90488ea2725c_1351x1920.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>The Modernity Machine optimized for legibility. To control space, time, people, resources, goods and money, they had to be made readable.</p><h2><strong>The Power is Shifting</strong></h2><p>Jacob Fugger (1459-1525) was a merchant who pivoted from textiles to mining. At some point, he also added spices to his portfolio. But what made him rich and influential was his banking business.</p><p>How rich? His overall wealth reached 2% of GDP of Europe. Brought to our day, he would be richer than Musk and Bezos.</p><p>How influential? He influenced the elections of the emperors Maximilian I and Charles V. Being Maximilian&#8217;s main creditor for all his military operations, weddings and other projects, Fugger was in a position to influence European politics.</p><p>By his time, the Modernity Machine was already in development, and some upward social mobility was by then possible. Still, the society was strictly split into nobility, clergy, and commoners. Merchants were second-rate commoners, after patricians. For a commoner to become an oligarch solely through money was new. And Fugger went a big step further. He transformed the monarch-origarch relationship from one of divine right to a contractual relationship of creditor and debtor.</p><p>For Fugger, monarchs were not just debtors but partners in resource monopolization. He secured his loans by getting leasing rights to mine silver and copper. The demand for copper at that time increased due to other workings of the Modernity Machine: intensified trade (increased demand for coins) and the shift to artillery warfare (cannons were made of bronze, which contains mostly copper).</p><p>The oligarchy&#8217;s relationship with technocracy co-evolved with the latter&#8217;s changing composition. To manage his vast bank network, Fugger needed accountants, auditors, and lawyers. This way, Fugger and other merchants and bankers contributed to the proliferation of new roles in technocracy. It both reflected and accelerated the shift from military or theological knowledge to portable, codified knowledge.</p><p>Three centuries later, another pre-industrial entrepreneur, Josiah Wedgwood (1730 &#8211; 1795), turned pottery into an industry and pioneered modern marketing. Josiah Wedgwood transformed social relationships as a brander, taste-maker and disciplinarian.</p><p>By securing the title &#8220;Potter to Her Majesty,&#8221; which he used in his leaterhead he seduced oligarchy into buying his &#8220;Queen&#8217;s ware.&#8221; With this, a change in monarch-technocracy relations catalysed a change in oligarchy-technocracy relations.</p><p>Queen Charlotte wasn&#8217;t the only monarch whom Wedgewood targeted for influence marketing. The other was Catherine the Great of Russia. He made for her an <a href="https://www.londonceramiccircle.com/Documents/LCC%20Occasional%20Paper%20No%205.pdf">exquisite dinner and dessert service of 944 pieces</a>.</p><p>Once monarchs use such goods, they signal prestige, and nobles want a piece of that prestige too. Once nobles want it, wealthy merchants seek to signal that they share the same taste as the nobility. Wedgwood boosted consumer society through a cascade of desire. Masses bought, elites amassed. </p><p>The increased demand was caused by other societal changes, both in taste and in means. Regarding taste shift, one example should suffice. Once drinking tea became cool in the island, and the whole economy was on the rise, so more people could afford it, the demand increased so much that the tea imported from the East India company rose from &#163;14,000 in the early 1700s to near &#163;1 million in the 1760s, and then doubled by the end of the century.</p><p>Regarding the ability to afford it, the entire economy was growing, supported by and supporting the recently valued principles of hard work and the new tools for measurement and planning. Households shifted from provisioning for themselves to contributing to the marketplace. Wages increased. Women and children joined the workforce for the first time.</p><p>The third relation that Wedgwood shifted was that between technocracy and workers. He introduced the division of labour, which Henry Ford later refined. In this case, the shift was not towards reduced worker agency. Previously, one potter would make a pot from start to finish. Now every worker was specialized and replaceable.</p><p>Voltaire (1694 &#8211; 1778) brought a completely different transformation of monarch-technocrat relationships. With significant wealth, achieved through lottery hacking, business investments and money lending, he bought his independence so that he couldn&#8217;t be silenced or starved. He transformed the old model of the intellectual (monarch-technocracy relationship) from a subservient court pet to a negotiated celebrity. Importantly, while he could operate outside the patronage, he made sure to remain embedded in elite networks and exploit them.</p><p>Voltaire transformed the technocracy-oligarchy relationship in a similar way to the way Fugger transformed the oligarchy-monarch relationship: by becoming a creditor to the ruling class.</p><p>Voltaire influenced the transformation of the oligarchy-worker relationship by eventually supporting the Genevian natifs (initially siding with the patricians) and, through his&nbsp;<a href="https://www.linkandth.ink/p/voltaire-the-entrepreneur">Ferney enterprise,</a>&nbsp;providing them with&nbsp;a platform to grow as independent watchmakers.</p><p>His influence in increasing the agency of a previously weaker class is probably most pronounced in his campaigns for penal reform. Public opinion and secular reason started to hold the system accountable.</p><h2><strong>Legibility is Eating the World</strong></h2><p>The Modernity Machine optimized for legibility. To scale something, you need to control it. And to control it, you need to be able to read it, measure it, and order it.</p><p>Fugger was exceptionally well-informed. His life is a notable example of early data-driven decision-making in business. The data had to be reliable, timely, interoperable, and consolidated.</p><p>He made sure that the data is reliable in terms of capturing and accuracy. In every branch office, every transaction was monitored and diligently recorded. The recording system was first made reliable by using double-entry bookkeeping, which Fugger learned in Venice. Second, Fugger made it reliable by pioneering the use of auditors.</p><p>Fugger made sure the information was timely by creating his private information network. Often, he was informed before rivals and monarchs.</p><p>The practice of double-entry bookkeeping was closely related to another Italian innovation, virtual money transfer.  Fugger scaled up the new practice of transferring money by making corresponding entries in the respective branches, without physically moving money, which, apart from being faster, was also safer by avoiding the risk of road robberies. </p><p>And speaking of novel information management, he introduced something that could easily be seen as a precursor to today&#8217;s ERP and core banking software systems. Italian banks maintained separate statements for individual branches. A merchant could not survey their entire enterprise or know their total net worth at a glance. Fugger was the first to implement a consolidated financial statement from all his branches. </p><p>If Fugger was the master of financial legibility, Wedgwood advanced industrial legibility. Before him, the kiln was illegible and unpredictable. There was no way of knowing the temperature inside the kiln. Initially, he considered using the color change as a proxy, but it proved unreliable. He then started experimenting with measuring the relative shrinkage of a clay gauge. This Wedgood device was one of the first pyrometers.</p><p>Like Fugger, Wedgood understood the importance of diligent information capture. He meticulously recorded his experiments in commonplace books. For many of these recods he used codes to protect his findings.</p><p>Wedgeood rendered workers&#8217; time legible through a timetable and a primitive clock-in system.</p><p>He also made his brand and offering legible. Wedgeood was the first to use illustrated catalogues.</p><p>Like Fugger, Wedgewood understood the importance of financial legibility. By introducing a primitive cost accounting system, he realised that the effect of fixed costs can be reduced by producing high volumes.</p><p>By securing royal patronage, Wedgewood converted fashion into a legible market signal.</p><p>Voltaire and Wedgwood lived in the century following the Peace of Westphalia, which kicked off the formation of the modern nation-state. The state was busy making its contents manageable. It created legibility by implementing simplifications and standardizations that converted complex, diverse local practices into a uniform administrative grid. This project aimed to provide officials with a synoptic view from the centre to streamline taxation. The concrete measures were the creation of surnames, the standardization of weights and measures, and, most remarkably, the creation of a cadastre.  By linking a person to a piece of land, the state replaced complex ownership systems that had naturally evolved to deal with uncertainty with a simple one that made land ownership legible to the new bureaucracy.</p><p>And while the state was massively making people legible to the state, Voltaire took the first steps toward making the state legible to people. The French legal system was characterized by intense secrecy, with trial records often withheld from the public. Voltaire campaigned for justice reform both through direct requests for revealing the records and through fiction. He authored fictionalized yet factual narratives to expose procedural flaws in cases like the Calas affair.</p><p>Voltaire sought to render science legible to a wider audience by writing a book on Newton's theories, starting a tradition that dominates nonfiction today.</p><p>In a similar way as the printing press made knowledge reproducible independent of context, Voltaire made his own influence portable. Depending on how you define &#8220;celebrity,&#8221; you may put him as the third after Erasmus and Martin Luther. But if we define &#8220;celebrity&#8221; as someone whose private life, personal opinions, and physical likeness are consumed as a commodity by a broad public, then Voltaire was the first European celebrity.</p><h2><strong>Commits to the Divergence Machine</strong></h2><p>While all three engineered the Modernity Machine to a significant extent, Wedgewood and Voltaire did so after the machine was already switched on. So unlike Fugger, they also made some &#8212; if you allow me a Git metaphor &#8212; commits to the Divergence Machine. It wasn&#8217;t the start of its development. The first and most feature-bearing commits were made already by Spinoza. Now, in the century of Wedgwood and Voltaire, there were notable contributions and symptoms of a new world model, made quietly in the background of the noisy modernity machine.</p><p>The Divergence Machine (constructed 1600&#8211;2000) is a world machine that replaces the Modernity Machine. While the Modernity Machine optimised for legibility, homogeneity and convergence, the Divergent Machine spawns variety and proliferation. And to continue with the software development metaphor, treating bugs as features is its normal operating mode.</p><p>The Divergence Machine does not seek to subvert the Modernity Machine; instead, it brackets it, rendering centralised control irrelevant by creating civilizational space beyond its reach. This machine requires operators to live in ontological doubt, avoiding the modernist error of premature commitment to existing moral or ideological schemes. </p><p>While Josiah Wedgwood and Voltaire were engineers of the Modernity Machine, they also made notable contributions to the development of the Divergence Machine (especially Voltaire).</p><p>For Wedgwood, progress was a matter of tinkering. He relentlessly experimented. Although some of it directly contributed to his business, it shows an early sign of the shift from progress as material plenty to progress as growth of instrumental knowledge.</p><p>Wedgwood participated in the multi-disciplinary Lunar Society. As <a href="https://en.wikipedia.org/wiki/Richard_Lovell_Edgeworth">Lovell Edgeworth</a> put it (as cited by Tristram Hunt &#8212; see the reference at the end), they gathered to share &#8216;the first hints of discoveries, the current observations, and the mutual collision of ideas.&#8217; It was a dynamic pluralist discourse used to make sense of the expanding scope of experience.</p><p>Voltaire, on the other side, attacked dogma with absurdity.</p><p>In <em>Candide</em>, Voltaire mercilessly parodied Leibniz&#8217;s optimism, which argued that  this was the &#8220;best of all possible worlds.&#8221; By ridiculing the idea of a prefigured moral ideology, Voltaire shifted the understanding of progress from a theological certainty to an evolving argument grounded in messy reality.</p><p>His campaigns for tolerance were early steps in creating a civilisational space for plurality.</p><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://www.linkandth.ink/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe&quot;,&quot;language&quot;:&quot;en&quot;}" data-component-name="SubscribeWidgetToDOM"><div class="subscription-widget show-subscribe"><div class="preamble"><p class="cta-caption">Link &amp; Think is a reader-supported publication. To receive new posts and support my work, consider becoming a free or paid subscriber.</p></div><form class="subscription-widget-subscribe"><input type="email" class="email-input" name="email" placeholder="Type your email&#8230;" tabindex="-1"><input type="submit" class="button primary" value="Subscribe"><div class="fake-input-wrapper"><div class="fake-input"></div><div class="fake-button"></div></div></form></div></div><h3>P.S. In case I made them look like heroes</h3><p>The world-as-contraption thesis, featuring the Modernity Machine (aka Convergence Machine) and the Divergence Machine, is about evolving relations between humans and technology and how that shapes society, politics, and the economy, and about the roles of art, science, and philosophy in those dynamics. Essentially, it is not human-centric. Yet, when listing the contributions of three &#8220;engineers,&#8221; I might have inadvertently made them heroes. Let me fix this a bit.</p><p>First, it&#8217;s three engineers, among many, not <em>the</em> three engineers. These people made something notable, which attracted information-gathering, which, when published, increased their notability and attracted more work that further increased their notability &#8212; a reinforcement loop with a similar effect to preferential attachment in networks. There might have been bigger contributors who were not that lucky or were simply quieter.</p><p>And second, they were no saints, far from it. </p><p>Fugger was interested in money-making above all, and everything was just a means to make more money. The only social project was the Fuggarei, which is often cited as the first social housing project. But it was, in fact, Feudalism 2.0 at the dawn of capitalism. Today, we have the <a href="https://www.penguinrandomhouse.com/books/751443/technofeudalism-by-yanis-varoufakis/">techno-feudalism</a> of Amazon and Alibaba (what should that be, Feudalism 5.0?). </p><p>Fugger financed the bloody suppression of the German Peasants&#8217; War, an event that resulted in the deaths of 100,000 people.</p><p>Wedgwood became known as an abolitionist, especially for his famous anti-slavery medallion, yet his business depended on the production of sugar. The 18th century sugar economy was driven by the slave trade.</p><p>Voltaire often changed his public position to serve his personal interests. In a <a href="https://www.linkandth.ink/p/voltaire-the-entrepreneur">previous essay</a>, I already mentioned two such cases: his change in position regarding Turkey and taxation.  But there are more. To secure membership in the Acad&#233;mie Fran&#231;aise, he wrote letters to prominent churchmen (whom he usually mocked) claiming to be a &#8220;true Catholic&#8221; and asserting that his writings were &#8220;sanctified by religion.&#8221; He even performed a public Easter communion, admitting to friends that he did it to &#8220;edify&#8221; his neighbors, while they viewed it as blatant hypocrisy. Voltaire congratulated Frederick the Great on a treaty that abandoned France&#8217;s interests. When this provoked a scandal over his lack of patriotism, he tried to mend his reputation by offering himself to the French court as a diplomatic spy. After his humiliating fall from favour in Prussia, Voltaire replaced all the letters he had written to his niece with forged ones to dramatize his side of the story.</p><p>In short, people are complicated, and the world is messy. That messiness was a bug for the Modernity Machine but is a feature for the Divergence Machine.</p><div><hr></div><h2>References</h2><p>Steinmetz, G. (2015). <em>The Richest Man Who Ever Lived: The Life and Times of Jacob Fugger</em>. Simon &amp; Schuster.</p><p>Davidson, I. (2012). <em>Voltaire</em>. <a href="http://pegasusbooks.com/books/voltaire-9781605981192-hardcover">http://pegasusbooks.com/books/voltaire-9781605981192-hardcover</a></p><p>Hunt, T. (2023). <em>The Radical Potter</em>. <a href="https://www.penguin.co.uk/books/299911/the-radical-potter-by-hunt-tristram/9780141984629">https://www.penguin.co.uk/books/299911/the-radical-potter-by-hunt-tristram/9780141984629</a></p><p>Rao, V.  <em>The</em> <em>Modernity Machine</em> series: <a href="https://contraptions.venkateshrao.com/p/the-modernity-machine">Part 1</a>, <a href="https://contraptions.venkateshrao.com/p/the-divergence-machine-ii">Part 2</a>, <a href="https://contraptions.venkateshrao.com/p/the-modernity-machine-iii">Part 3</a></p><p>Rao, V.  <em>The</em> <em>Divergence Machine</em> series: <a href="https://contraptions.venkateshrao.com/p/the-divergence-machine">Part 1</a>, <a href="https://contraptions.venkateshrao.com/p/the-divergence-machine-ii">Part 2</a></p><p>Latour, B. (1993). <em>We Have Never Been Modern</em> (C. Porter, Tran.). Harvard University Press. <a href="https://www.hup.harvard.edu/books/9780674948396">https://www.hup.harvard.edu/books/9780674948396</a></p><p><em>Max Weber&#8217;s &#8220;Science as a Vocation.&#8221;</em> (n.d.). Routledge &amp; CRC Press. Retrieved February 24, 2026, from <a href="https://www.routledge.com/Max-Webers-Science-as-a-Vocation/Lassman-Velody-Martins/p/book/9781138980600">https://www.routledge.com/Max-Webers-Science-as-a-Vocation/Lassman-Velody-Martins/p/book/9781138980600</a></p><p>Luhmann, N. (2012). <em>Theory of Society, Volume 1</em> (R. Barrett, Tran.; 1st edition). Stanford University Press.</p><p>Varela, F. J. (2025). <em>Principles of Biological Autonomy</em> (E. A. D. Paolo &amp; E. Thompson, Eds.; a new annotated edition). MIT Press. <a href="https://mitpress.mit.edu/9780262551403/principles-of-biological-autonomy/">https://mitpress.mit.edu/9780262551403/principles-of-biological-autonomy/</a> (Original work published 1979)</p><p></p>]]></content:encoded></item><item><title><![CDATA[Rules on Graphs in Graphs of Rules, Part 3]]></title><description><![CDATA[Use cases and benefits]]></description><link>https://www.linkandth.ink/p/rules-on-graphs-in-graphs-of-rules-0d6</link><guid isPermaLink="false">https://www.linkandth.ink/p/rules-on-graphs-in-graphs-of-rules-0d6</guid><dc:creator><![CDATA[Ivo Velitchkov]]></dc:creator><pubDate>Tue, 17 Feb 2026 13:10:33 GMT</pubDate><enclosure url="https://images.unsplash.com/photo-1500741236341-1b7a0f91f1f6?fm=jpg&amp;q=60&amp;w=3000&amp;auto=format&amp;fit=crop&amp;ixlib=rb-4.1.0&amp;ixid=M3wxMjA3fDB8MHxwaG90by1wYWdlfHx8fGVufDB8fHx8fA%3D%3D" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p><em>This post is part of a mini-series on inference rules, which is part of a larger <a href="https://www.linkandth.ink/p/rules-series">series on rules</a>, which is part of an even larger series about <a href="https://www.linkandth.ink/p/autonomy-and-cohesion-series">autonomy and cohesion</a>.</em></p><p>The objective of the <a href="https://www.linkandth.ink/p/rules-on-graphs-in-graphs-of-rules">first essay</a> was to understand how inference rules work. The example used a small target graph that could be fully displayed in a diagram. The resulting graph had the same number of nodes but was denser after generating eight inferred relations. In the <a href="https://www.linkandth.ink/p/rules-on-graphs-in-graphs-of-rules-993?r=5xd5k">second part</a>, the inferred relations were similar in kind, but their number was tens of thousands. There, the inference was on a much bigger graph of millions of facts. More importantly, it was done using six different ways to express the same logic. We learned about the consequences of different design decisions, resulting in different systems along the autonomy-cohesion axis. </p><p>In both essays, some benefits were stated, others implied, or listed in a linked <a href="https://kvistgaard.github.io/slides/rules/cdlondon-2025/">slidedeck</a>, but overall, most likely you are still left with the question: Why bother?</p><p>That&#8217;s what the current post aims to answer.</p><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://www.linkandth.ink/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe&quot;,&quot;language&quot;:&quot;en&quot;}" data-component-name="SubscribeWidgetToDOM"><div class="subscription-widget show-subscribe"><div class="preamble"><p class="cta-caption">Link &amp; Think is a reader-supported publication. To receive new posts and support my work, consider becoming a free or paid subscriber.</p></div><form class="subscription-widget-subscribe"><input type="email" class="email-input" name="email" placeholder="Type your email&#8230;" tabindex="-1"><input type="submit" class="button primary" value="Subscribe"><div class="fake-input-wrapper"><div class="fake-input"></div><div class="fake-button"></div></div></form></div></div><p>The usual drivers for using inference rules are performance optimisation and the need for logical reasoning. But rules can also be used for entity reconciliation, analytics, and even for the primary task of generating knowledge graphs from heterogeneous data sources. </p><p>All of those will bring immediate benefits. But they would do so even if the rules are not themselves in a graph. And indeed, the common practice is to keep even declarative rules in the application layer. But the big long-term benefits of inference rules can come when they are kept not in the application layer but in the data layer. Such a shift is another contribution to data-application decoupling, with long-term benefits that improve adaptability by lowering the cost of change.</p><p>What follows is a quick review of the use cases and benefits of using rules on graphs, maintained in graphs of rules. </p><h2>Speed</h2><p>The most popular use case and immediate benefit is the query simplification and performance. </p><p>In the example from the previous post, if we want to count the number of uncles, we have to use the following SPARQL query:</p><pre><code>PREFIX wdt: &lt;http://www.wikidata.org/prop/direct/&gt;

SELECT (COUNT(DISTINCT ?uncle) AS ?totalUncles)
WHERE {
  {
    # Uncle via father's male sibling
    ?person wdt:P22 ?father .
    ?father wdt:P3373 ?uncle .
    ?uncle wdt:P21 wd:Q6581097 . # Male
  }
  UNION
  {
    # Uncle via mother's male sibling
    ?person wdt:P25 ?mother .
    ?mother wdt:P3373 ?uncle .
    ?uncle wdt:P21 wd:Q6581097 . # Male
  }
}</code></pre><p>The same query over the inferred graph looks like this:</p><pre><code>PREFIX s: &lt;http://velitchkov.eu/shapes/rules-post#&gt;

SELECT (COUNT (DISTINCT ?uncle)  AS ?uncleCount)
WHERE {?person s:hasUncle ?uncle .}</code></pre><p>It is not just way simpler. It is seven times faster.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://images.unsplash.com/photo-1500741236341-1b7a0f91f1f6?fm=jpg&amp;q=60&amp;w=3000&amp;auto=format&amp;fit=crop&amp;ixlib=rb-4.1.0&amp;ixid=M3wxMjA3fDB8MHxwaG90by1wYWdlfHx8fGVufDB8fHx8fA%3D%3D" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://images.unsplash.com/photo-1500741236341-1b7a0f91f1f6?fm=jpg&amp;q=60&amp;w=3000&amp;auto=format&amp;fit=crop&amp;ixlib=rb-4.1.0&amp;ixid=M3wxMjA3fDB8MHxwaG90by1wYWdlfHx8fGVufDB8fHx8fA%3D%3D 424w, https://images.unsplash.com/photo-1500741236341-1b7a0f91f1f6?fm=jpg&amp;q=60&amp;w=3000&amp;auto=format&amp;fit=crop&amp;ixlib=rb-4.1.0&amp;ixid=M3wxMjA3fDB8MHxwaG90by1wYWdlfHx8fGVufDB8fHx8fA%3D%3D 848w, https://images.unsplash.com/photo-1500741236341-1b7a0f91f1f6?fm=jpg&amp;q=60&amp;w=3000&amp;auto=format&amp;fit=crop&amp;ixlib=rb-4.1.0&amp;ixid=M3wxMjA3fDB8MHxwaG90by1wYWdlfHx8fGVufDB8fHx8fA%3D%3D 1272w, https://images.unsplash.com/photo-1500741236341-1b7a0f91f1f6?fm=jpg&amp;q=60&amp;w=3000&amp;auto=format&amp;fit=crop&amp;ixlib=rb-4.1.0&amp;ixid=M3wxMjA3fDB8MHxwaG90by1wYWdlfHx8fGVufDB8fHx8fA%3D%3D 1456w" sizes="100vw"><img src="https://images.unsplash.com/photo-1500741236341-1b7a0f91f1f6?fm=jpg&amp;q=60&amp;w=3000&amp;auto=format&amp;fit=crop&amp;ixlib=rb-4.1.0&amp;ixid=M3wxMjA3fDB8MHxwaG90by1wYWdlfHx8fGVufDB8fHx8fA%3D%3D" width="3000" height="2000" data-attrs="{&quot;src&quot;:&quot;https://images.unsplash.com/photo-1500741236341-1b7a0f91f1f6?fm=jpg&amp;q=60&amp;w=3000&amp;auto=format&amp;fit=crop&amp;ixlib=rb-4.1.0&amp;ixid=M3wxMjA3fDB8MHxwaG90by1wYWdlfHx8fGVufDB8fHx8fA%3D%3D&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:2000,&quot;width&quot;:3000,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:&quot;time lapse of cars on night time&quot;,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="time lapse of cars on night time" title="time lapse of cars on night time" srcset="https://images.unsplash.com/photo-1500741236341-1b7a0f91f1f6?fm=jpg&amp;q=60&amp;w=3000&amp;auto=format&amp;fit=crop&amp;ixlib=rb-4.1.0&amp;ixid=M3wxMjA3fDB8MHxwaG90by1wYWdlfHx8fGVufDB8fHx8fA%3D%3D 424w, https://images.unsplash.com/photo-1500741236341-1b7a0f91f1f6?fm=jpg&amp;q=60&amp;w=3000&amp;auto=format&amp;fit=crop&amp;ixlib=rb-4.1.0&amp;ixid=M3wxMjA3fDB8MHxwaG90by1wYWdlfHx8fGVufDB8fHx8fA%3D%3D 848w, https://images.unsplash.com/photo-1500741236341-1b7a0f91f1f6?fm=jpg&amp;q=60&amp;w=3000&amp;auto=format&amp;fit=crop&amp;ixlib=rb-4.1.0&amp;ixid=M3wxMjA3fDB8MHxwaG90by1wYWdlfHx8fGVufDB8fHx8fA%3D%3D 1272w, https://images.unsplash.com/photo-1500741236341-1b7a0f91f1f6?fm=jpg&amp;q=60&amp;w=3000&amp;auto=format&amp;fit=crop&amp;ixlib=rb-4.1.0&amp;ixid=M3wxMjA3fDB8MHxwaG90by1wYWdlfHx8fGVufDB8fHx8fA%3D%3D 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">Photo credit Sanjeevan SatheesKumar (Unsplash)</figcaption></figure></div><h2>Identity</h2><p>The same entity can appear with different global identifiers. This may be because the graph combines datasets from different publishers, each using its own identifiers. Or it could be that, when generating a knowledge graph from heterogeneous data structures, identifiers are missing and must be created from the content of a source file (such as JSON or XML). In cases like those, rules can infer triples that link all identifiers of the same entity. Sometimes the property <code>owl:sameAs</code> can be used, but there are <a href="https://www.youtube.com/watch?v=Q3R3Z9QEJtY">better ways</a>. </p><h2>Graph Generation</h2><p>Inference rules can be used to generate graphs from heterogeneous data structures. One reliable way is to use Fa&#231;ade-X to generate a raw RDF graph, then apply SHACL rules to that graph to enforce the desired identities and semantics. </p><p>Fa&#231;ade-X is a method for abstracting heterogeneous structures into an RDF graph. I have <a href="https://www.linkandth.ink/p/universal-data-facade-part-1">written a couple of essays</a> about it previously. Currently, Fa&#231;ade-X is supported by the open source tool <a href="https://sparql-anything.cc">SPARQL Anything</a>. Now, Fa&#231;ade-X is on its way to&nbsp;<a href="https://w3c-facade-x.github.io/facade-x-metamodel/">becoming a standard</a>, with more implementations to come. Some are already in development.</p><p>SPARQL Anything can now generate RDF graphs from XML, JSON, CSV, HTML, Excel, Text, Binary, EXIF, File System, Zip/Tar, Markdown, YAML, Bibtex, DOCx, and PPTX.</p><p>Once the raw graph is generated, SHACL rules can apply the desired approach of resource identifiers and the intended semantics for the target knowledge graph. Resource identifiers are minted by concatenating a namespace and a local name. The local name can reuse some identifier from the source data, or be constructed as a concatenation of several values, generated with a UUID algorithm or created as a hash. The last option makes this rule-based approach superior to some mainstream approaches, such as those using the RDF Mapping Language RML. RML does not support hash functions, while they are standard in SPARQL. Also, using RML requires a solid understanding of source formats and structures, whereas using Fa&#231;ade-X and SHACL rules requires only knowing SPARQL.</p><h2>Data Catalogues</h2><p>The approach described for generating knowledge graphs can be used to automatically catalogue data. What needs to be known is the data source and the target catalogue model. As long as there is a protocol to connect to the data store and read privileges, a Fa&#231;ade-X can generate the raw graph, and SPARQL (or other SHACL) rules can transform it into the desired catalogue shape. </p><h2>Data Quality</h2><p>The most popular use of SHACL is as an RDF validation language. A SHACL shapes graph is applied to a data graph by a SHACL engine, and the result is a validation report. The report tells us what and where the problems are, but the problems remain. </p><p>With inference rules, some of these problems can be fixed. A typical case is when a value is missing, but it can be calculated or substituted. Another occurs when a value, such as a date, is not in the required format but the error follows a consistent pattern. </p><p>Inference rules do a great job of solving issues with incomplete data. There can be a missing value, but for analytical purposes, another value is good enough, so it can be used.</p><p>What is important in all these cases is to have that change clearly recorded so that the provenance is clear and it is easy to tell what comes from the source data and what comes from data enrichments. This kind of provenance information can again be recorded using inference rules.</p><h2>Long-term benefits</h2><p>When business rules are not in the application layer but in the data layer, it contributes to application-data decoupling, reducing technical debt and the cost of change and integration. Let&#8217;s unpack this.</p><p>The corporate IT in a large organization is built with an application-centric mindset. It is a systemic problem arising from how IT investments are managed. Typical IT investments focus on immediate business needs, staking out accidental application boundaries that inevitably become silos. The chosen solutions are driven by risk aversion and comfort: either applications are purchased from large vendors or developed using technologies the teams are comfortable with. On top of that, there is a functional requirements bias that persists because demonstrable features satisfy decision-makers, while &#8220;unsexy&#8221; non-functional needs like interoperability are ignored. In project boards, &#8220;space&#8221; (the enterprise) and &#8220;time&#8221; (the future) are not represented. All this leads to fragmented data, high costs of change, and high costs of integration. I described all this in detail in </p><div class="digest-post-embed" data-attrs="{&quot;nodeId&quot;:&quot;f8be1641-89fc-4b88-a0b0-a068d9cd052a&quot;,&quot;caption&quot;:&quot;Information is not a first-class citizen in corporate information systems. Worse, it is neglected. Then why do we still call them information systems? We don't. We call them applications. And applications, quite appropriately, are built or purchased with an application-centric mindset. Consequently, data is broken into diverse fragments, tightly coupled&#8230;&quot;,&quot;cta&quot;:&quot;Read full story&quot;,&quot;showBylines&quot;:true,&quot;size&quot;:&quot;sm&quot;,&quot;isEditorNode&quot;:true,&quot;title&quot;:&quot;Apps Break Data&quot;,&quot;publishedBylines&quot;:[{&quot;id&quot;:9954776,&quot;name&quot;:&quot;Ivo Velitchkov&quot;,&quot;bio&quot;:&quot;Exploring socio&#8209;technical systems across scales &#8211; individuals, networks, organizations, society. Author of Essential Balances.&quot;,&quot;photo_url&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/c38bc74f-b4bc-474d-bc42-ff51ce6398b9_96x96.jpeg&quot;,&quot;is_guest&quot;:false,&quot;bestseller_tier&quot;:null}],&quot;post_date&quot;:&quot;2024-07-06T12:15:52.038Z&quot;,&quot;cover_image&quot;:&quot;https://substackcdn.com/image/fetch/$s_!kk7S!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3b9c10ea-7ab5-4408-b9d8-36f47babe2d4_1024x1024.jpeg&quot;,&quot;cover_image_alt&quot;:null,&quot;canonical_url&quot;:&quot;https://www.linkandth.ink/p/apps-break-data&quot;,&quot;section_name&quot;:null,&quot;video_upload_id&quot;:null,&quot;id&quot;:146132957,&quot;type&quot;:&quot;newsletter&quot;,&quot;reaction_count&quot;:9,&quot;comment_count&quot;:0,&quot;publication_id&quot;:2280477,&quot;publication_name&quot;:&quot;Link &amp; Think&quot;,&quot;publication_logo_url&quot;:&quot;https://substackcdn.com/image/fetch/$s_!TG-l!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F72c7b012-7bdf-453b-b2dd-45863de29aca_500x500.png&quot;,&quot;belowTheFold&quot;:true,&quot;youtube_url&quot;:null,&quot;show_links&quot;:null,&quot;feed_url&quot;:null}"></div><p>The way to resolve is, as I suggested there, <strong>to unify and decouple</strong> at the same time. To unify entities&#8217; identity through URIs, structure via RDF, and semantics through shared ontologies. And to decouple data from applications. When data is self-describing, applications become mere &#8220;visitors,&#8221; preventing them from owning &#8212; and ultimately breaking &#8212;the information they serve.</p><p>When we have inference rules working on RDF graphs, it&#8217;s halfway there. The other half is to keep these inference rules not in the application layer, but as RDF graphs themselves. This improves data governance (easier to add metadata and extend as needed), but the bigger benefit is that it contributes to the decoupling of data from applications, an architecture style also known as <a href="https://www.amazon.com/Data-Centric-Revolution-Restoring-Enterprise-Information/dp/1634625404">data-centicity</a>. </p><p></p>]]></content:encoded></item><item><title><![CDATA[Voltaire, the Entrepreneur]]></title><description><![CDATA[How Voltaire, at the age of 76 created a successful watchmaking enterprise]]></description><link>https://www.linkandth.ink/p/voltaire-the-entrepreneur</link><guid isPermaLink="false">https://www.linkandth.ink/p/voltaire-the-entrepreneur</guid><dc:creator><![CDATA[Ivo Velitchkov]]></dc:creator><pubDate>Fri, 06 Feb 2026 14:06:05 GMT</pubDate><enclosure url="https://substack-post-media.s3.amazonaws.com/public/images/1f57b856-a3f6-4939-bc65-b9050a8151cb_960x581.jpeg" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>Voltaire is often listed among the leading Enlightenment thinkers, alongside Montesquieu and Locke. Or he is mentioned among famous playwrights, such as Moli&#232;re and Racine. But it&#8217;s unlikely to see Voltaire listed among successful entrepreneurs.</p><p>Yet at 76, he founded a startup and turned it into a successful international business.</p><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://www.linkandth.ink/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe&quot;,&quot;language&quot;:&quot;en&quot;}" data-component-name="SubscribeWidgetToDOM"><div class="subscription-widget show-subscribe"><div class="preamble"><p class="cta-caption">Link &amp; Think is a reader-supported publication. To receive new posts and support my work, consider becoming a free or paid subscriber.</p></div><form class="subscription-widget-subscribe"><input type="email" class="email-input" name="email" placeholder="Type your email&#8230;" tabindex="-1"><input type="submit" class="button primary" value="Subscribe"><div class="fake-input-wrapper"><div class="fake-input"></div><div class="fake-button"></div></div></form></div></div><h2><strong>Background</strong></h2><p>Voltaire wasn&#8217;t planning to start a business, nor did he need to. His interests were in writing, theatre, and political causes such as penal reform. He had plenty of revenue streams;<a class="footnote-anchor" data-component-name="FootnoteAnchorToDOM" id="footnote-anchor-1" href="#footnote-1" target="_self">1</a> he didn&#8217;t need another. However, his experience in financial management and the circumstances under which the idea was born might make the endeavour less surprising than it first appears.</p><h3><strong>Prior investment experience</strong></h3><p>In 1729, with the help of his friend, the mathematician <a href="https://en.wikipedia.org/wiki/Charles_Marie_de_La_Condamine">Charles Marie de la Condamine</a>, Voltaire took advantage of a loophole in the state lottery system. The prize value was miscalculated, so it was much higher than the total price of the lottery tickets. Winners also had other benefits. If they held government bonds that were devalued at that time, they could be repaid at the original issue price. According to some estimates, Voltaire earned half a million livres from this chicanery.</p><p>Another successful financial operation that year was the speculation with shares issued by the duc de Lorraine. Since these particular shares can only be purchased by the citizens of Lorraine, Voltaire had to prove some lineage. His perseverance made up for the far-fetchedness of his proof. In a letter of September 1729, Voltaire wrote:</p><blockquote><p>After my pressing requests, they let me subscribe for fifty shares, which were delivered to me a week later. I immediately took advantage of the popularity of these new shares, and tripled my money. </p></blockquote><p>These two cases were followed by others.</p><p>Apart from speculative and business investments (e.g., he invested in a company that supplied the military), much of his steady income came from lending money at interest.</p><h3><strong>Other startups</strong></h3><p>The watchmaking wasn&#8217;t Voltaire's first manufacturing startup. A few years previously, he set up a small silk business. Since he was previously engaged in agriculture, literally cultivating his garden, a statement he famously ended <em>Candide</em> with, it seems he just moved to the <a href="https://youtu.be/nEtATZePGmg?si=k7cVPj1VdmI9IvgS">adjacent possible</a>. While he did so more out of a need for something to cheer him up (at that time, he separated from his niece for the first time in sixteen years) than out of necessity, his silk business, as the subsequent watchmaking, shows his affinity for vertical integration. Voltaire&#8217;s silk business started with raising silkworms, but did not stop at producing silk. He also produced silk stockings. </p><h3><strong>Circumstances</strong></h3><p>When Voltaire fell out of favour with the French court, he bought an estate at Ferney, on the French-Swiss border, not far from Geneva. </p><p>In eighteenth-century Geneva, power was held by patrician families. Ordinary citizens and artisans (<em>natifs</em>) had limited rights. This situation caused numerous conflicts and escalated in the 1760s. French intervention and a military blockade in 1767 temporarily resolved the issue. But the patricians later rescinded the agreement, leading to a wave of violence in early 1770.</p><p>At that time, Voltaire initiated the transformation of a nearby fishing village, Versoix, into a trading port to reduce his dependence on Geneva for his supplies. Such a project could also benefit France, for which he convinced the French Prime Minister, Duc de Choiseul, who promised to support it financially.</p><p>Voltaire believed that dissatisfied natifs would be willing to move there and build a life away from their oppressors in Geneva. And indeed, quite a few were ready to move, which further angered the Genevan patricians, who were already worried that their local trading and political dominance would be challenged by a new French trading port.</p><p>In the meantime, some protesters fled Geneva and were given French residence permits. Since they couldn&#8217;t move to Versoix &#8212; the project town was not yet built &#8212; many settled in Ferney and its surroundings.</p><p>It so happened that the French government was facing financial difficulties and couldn&#8217;t begin the promised investment in Versoix.</p><p>Voltaire realised that many of the emigrants were skilled craftsmen. So, while waiting for the Versoix to be built, he can help them start a business as independent watchmakers.</p><h2><strong>Watchmaking Business</strong></h2><p>That&#8217;s how the Ferney startup took off as something between a social enterprise and a business incubator. </p><p>Quick facts:</p><ul><li><p>Craftsmen: from 40 in 1770 to 600 in 1773</p></li><li><p>Revenue: from 450K (1775) to 600K (1776) livres</p></li><li><p>Markets: Spain, France, Russia, Turkey, Holland, Italy, Algeria, Tunisia</p></li></ul><p>Voltaire established the watchmaking business at Ferney as a social enterprise. Without losing its role as such, the startup grew into a successful business selling watches in more than eight markets and, at its peak in 1976, generated revenue of 600K livres annually, equivalent to ten million euros today.</p><blockquote><p>These extraordinary results were almost entirely due to Voltaire&#8217;s personal efforts, for he had reinvented himself in a protean variety of roles: not just the overall manager, co-ordinator and organiser but also the financier, the virtual bank manager, the sponsor, the builder of homes and factory space, the buyer of precious metals and other raw materials and the international sales manager.<a class="footnote-anchor" data-component-name="FootnoteAnchorToDOM" id="footnote-anchor-2" href="#footnote-2" target="_self">2</a></p></blockquote><p>Voltaire realised that businesses are most vulnerable at the outset and created the most favourable conditions for production: housing for watchmakers, tax exemptions, and interest-free financing, which he supplied himself.</p><p>He turned the theater in his house into a watchmaking workshop. In a letter to the marquis de Jaucourt, Voltaire wrote:</p><blockquote><p>Our theatre auditorium, which you remember, has been transformed into workshops. There, where we once recited verse, we are now melting gold and polishing cogs. We must build new houses for the emigrants. All the workers of Geneva would come here if we were in a position to house them. We must remember that everyone nowadays wants a gold watch, from Peking to Martinique, and that there used to be only three great manufacturing centres, London, Paris and Geneva. </p></blockquote><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!rihI!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F41cc176b-1d01-4e71-87cf-a4e47e8c1477_960x1280.jpeg" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!rihI!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F41cc176b-1d01-4e71-87cf-a4e47e8c1477_960x1280.jpeg 424w, https://substackcdn.com/image/fetch/$s_!rihI!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F41cc176b-1d01-4e71-87cf-a4e47e8c1477_960x1280.jpeg 848w, https://substackcdn.com/image/fetch/$s_!rihI!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F41cc176b-1d01-4e71-87cf-a4e47e8c1477_960x1280.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!rihI!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F41cc176b-1d01-4e71-87cf-a4e47e8c1477_960x1280.jpeg 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!rihI!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F41cc176b-1d01-4e71-87cf-a4e47e8c1477_960x1280.jpeg" width="960" height="1280" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/41cc176b-1d01-4e71-87cf-a4e47e8c1477_960x1280.jpeg&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1280,&quot;width&quot;:960,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!rihI!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F41cc176b-1d01-4e71-87cf-a4e47e8c1477_960x1280.jpeg 424w, https://substackcdn.com/image/fetch/$s_!rihI!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F41cc176b-1d01-4e71-87cf-a4e47e8c1477_960x1280.jpeg 848w, https://substackcdn.com/image/fetch/$s_!rihI!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F41cc176b-1d01-4e71-87cf-a4e47e8c1477_960x1280.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!rihI!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F41cc176b-1d01-4e71-87cf-a4e47e8c1477_960x1280.jpeg 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption"><a href="https://commons.wikimedia.org/wiki/File:Voltaire_in_Ferney_6.JPG">Voltaire in Ferney</a>, a statue by &#201;mile-Placide Lambert, Wikimedia Commons</figcaption></figure></div><p>In the same letter, he expressed pride in his religious tolerance achievements:</p><blockquote><p>Sensitive and tolerant souls will be happy to learn that sixty Huguenots live so well with my parishioners, that it would not be possible to guess that there are two religions here.</p></blockquote><p>Alongside his efforts to secure government protection and supplies, Voltaire began seeking customers through his social network. Given the high profiles of his contacts, he achieved good initial results. But he soon realised it wouldn&#8217;t scale and started looking for sales representatives. In some cases, like Spain, his efforts succeeded; in others, like Rome, they failed.</p><p>The sales situation in Russia and Turkey is particularly interesting. While the Russian market was a good example of strong sales volumes achieved by exploiting the admiration of a single, very rich fan, Catherine the Great, the business in Turkey was conducted through trade representation in Constantinople. The case is interesting as an example of how commercial interests prevail over ideology. While Voltaire had previously enthusiastically supported Catherine&#8217;s military operations against Turkey, the successful trade with Turkey now reversed his position.<a class="footnote-anchor" data-component-name="FootnoteAnchorToDOM" id="footnote-anchor-3" href="#footnote-3" target="_self">3</a></p><p>Voltaire&#8217;s change of position regarding Turkey is rather typical. There was a similar case with taxation. As mentioned earlier, to help the business, he lobbied and achieved a tax exemption. That was easier to defend when the business was growing, and its survival depended on it, but less so later, when it became profitable. Tax farmers, learning of the prosperity in Ferney, tried to get their share. For Voltaire, achieving tax exemption was relatively easy with the previous finance minister, who was his friend, but less so with the new one. And yet he managed to negotiate it. This time, however, tax farmers demanded compensation. </p><p>After some successful mediation, Voltaire helped secure an agreement. For the first year, he personally financed the agreed compensation. But then,  his reputation as an excellent mediator between the tax authorities and the local population led the Estates-General to appoint him as a tax advisor. Now, Vortaire, who had previously fought for tax exemptions for the watchmakers, proposed a progressive tax regime to finance future compensations, so the rich watchmakers would pay more than the poor peasants.</p><p>It&#8217;s worth noting that, despite his advanced age and his multiple roles in keeping his watchmaking enterprise running, Voltaire continued to write plays.</p><p>Regarding the Ferney watchmaking, it&#8217;s quite plausible that, like most entrepreneurs nowadays, Voltaire planned to sell it at some point. In a letter from 23 of December 1775, he wrote:</p><blockquote><p>I am convinced that our property will double in price within a year.</p></blockquote><p>The business reached its peak in the summer of 1776. Then it started to decline. The investment in building new houses to accommodate the growing colony started while the tax exemption was in effect. But now, there was a new finance minister, who restored both the suspended land tax and the required community labour for road maintenance. While this pushed some watchmakers away from Ferney, the business continued for a few decades after Voltaire's death in 1778.</p><h2>In the list of entrepreneurs</h2><p>If Voltaire has to be listed, not only among prominent Enlightenment figures and famous playwrights, but also among successful pre-industrial entrepreneurs, who else will belong to that list?</p><p>I would nominate Jakub Fugger and Josiah Wedgwood. Although the three of them differ in the size of their businesses, wealth, and business models, they are comparable in how they contributed to the development and operation of <a href="https://contraptions.venkateshrao.com/p/the-modernity-machine-ii">the modernity machine</a>. I&#8217;ll elaborate on this in <a href="https://www.linkandth.ink/p/three-engineers-of-modernity">another essay</a>.</p><div class="footnote" data-component-name="FootnoteToDOM"><a id="footnote-1" href="#footnote-anchor-1" class="footnote-number" contenteditable="false" target="_self">1</a><div class="footnote-content"><p>Writing royalties wasn&#8217;t one of them. Although he was a prolific and popular writer, Voltaire did not earn much from his literary output. The reasons for that include the lack of copyright laws, piracy, and censorship (many of his books were banned, and some were publicly burned). To bypass censorship, Voltaire had to publish anonymously or abroad. And in some cases, such as with the Com&#233;die-Fran&#231;aise, he simply stopped claiming his author&#8217;s rights.</p></div></div><div class="footnote" data-component-name="FootnoteToDOM"><a id="footnote-2" href="#footnote-anchor-2" class="footnote-number" contenteditable="false" target="_self">2</a><div class="footnote-content"><p>Davidson, I. (2012). <em>Voltaire</em>. <a href="http://pegasusbooks.com/books/voltaire-9781605981192-hardcover">http://pegasusbooks.com/books/voltaire-9781605981192-hardcover</a></p></div></div><div class="footnote" data-component-name="FootnoteToDOM"><a id="footnote-3" href="#footnote-anchor-3" class="footnote-number" contenteditable="false" target="_self">3</a><div class="footnote-content"><p>This reminds me of the Venetian Republic&#8217;s appeal to the Pope to trade with the Muslim world, made four centuries earlier.</p><p></p></div></div>]]></content:encoded></item><item><title><![CDATA[Rules on Graphs in Graphs of Rules, Part 2]]></title><description><![CDATA[Comparing six ways the express the same rule logic]]></description><link>https://www.linkandth.ink/p/rules-on-graphs-in-graphs-of-rules-993</link><guid isPermaLink="false">https://www.linkandth.ink/p/rules-on-graphs-in-graphs-of-rules-993</guid><dc:creator><![CDATA[Ivo Velitchkov]]></dc:creator><pubDate>Thu, 15 Jan 2026 18:04:39 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!rG--!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9fb87216-a2b4-47db-bea0-4ec452b0f461_660x501.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>Rules are in the air. The pandemic boosted the gig economy, where, in search of new forms of governance, the interest in <a href="https://yakcollective.substack.com/p/rules">rules</a> grew. At the same time, the second crypto boom occurred, which, in combination with increased social media power abuse, amplified interest in protocols; protocols are nothing more than rules that facilitate coordination. Since we can&#8217;t trust platforms (see what happened with Twitter), nor can we hope for special <a href="https://www.linkandth.ink/p/leader-platform-protocol">leaders to save us</a>, it&#8217;s more likely that we need <a href="https://protocolized.summerofprotocols.com/p/strange-new-rules">new rules</a>.</p><p>The limits of new AI, such as LLMs, have prompted renewed interest in older AI (<a href="https://en.wikipedia.org/wiki/GOFAI">GOFAI</a>), which was rule-based. The interest centers on how knowledge graphs support factual grounding, ontologies get a lot of new attention, but rules are rarely mentioned.</p><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://www.linkandth.ink/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe&quot;,&quot;language&quot;:&quot;en&quot;}" data-component-name="SubscribeWidgetToDOM"><div class="subscription-widget show-subscribe"><div class="preamble"><p class="cta-caption">Link &amp; Think is a reader-supported publication. To receive new posts and support my work, consider becoming a free or paid subscriber.</p></div><form class="subscription-widget-subscribe"><input type="email" class="email-input" name="email" placeholder="Type your email&#8230;" tabindex="-1"><input type="submit" class="button primary" value="Subscribe"><div class="fake-input-wrapper"><div class="fake-input"></div><div class="fake-button"></div></div></form></div></div><p>Rules help in dealing with various technical problems. Earlier this year, at a knowledge graph-based project, I proposed a solution to several <a href="https://kvistgaard.github.io/slides/rules/cdlondon-2025/#/13">challenges</a> based on inference rules. At the Connected Data Conference in London, I shared how this was progressing and the benefits. Here are the <a href="https://kvistgaard.github.io/slides/rules/cdlondon-2025">slides</a>. There is also a <a href="https://2025.connected-data.london/talks/rules-for-speed-simplicity-data-centricity/">recording</a>. I&#8217;ll touch upon some parts of that in the next part. </p><p><em>This post is part of a mini-series on inference rules, which is part of a larger <a href="https://www.linkandth.ink/p/rules-series">series on rules</a>, which is part of an even larger series about <a href="https://www.linkandth.ink/p/autonomy-and-cohesion-series">autonomy and cohesion</a>.</em></p><p>The focus of this mini-series is inference rules working on knowledge graphs, where the rules are also stored in knowledge graphs, more specifically, using the Shapes Constraint Language (SHACL). </p><p>In the <a href="https://www.linkandth.ink/p/rules-on-graphs-in-graphs-of-rules">previous part</a>, I used a ruleset of three rules attached to a single SHACL shape node to infer &#8220;has uncle&#8221; from &#8220;has parent&#8221; and &#8220;has brother&#8221;. That was done on a small example graph with nine nodes and eight edges. Now we are going to do it on a bigger graph, the represented relation in which are actual facts. We will also need one additional rule. More importantly, we&#8217;ll experiment with representing the same logic with different ruleset structures. From that, we can learn not only how to engineer SHACL-based rule graphs, but also that, even at this level, the dynamics between <a href="https://www.linkandth.ink/p/autonomy-and-cohesion">Autonomy and Cohesion</a> can be observed.</p><h2>Six different structures for the same logic</h2><p>To test the same logic modelled with different rule connectivity, we&#8217;ll use a subgraph of Wikidata, containing people, their parents, and the siblings of their parents. Ignoring reverse relations and non-English labels, this gives a graph of over four million triples, which is sufficient for our purposes. You can run <a href="https://qlever.dev/wikidata/1ftLs2">this query</a> to generate that graph yourself from Qlever. In the last section, I&#8217;ll explain how to reproduce the whole experiment, step by step, including how to materialize this graph and run the different configurations of the rules graph on it.</p><p>There are &#8220;mother&#8221; (P25) and &#8220;father&#8221; (P22) properties in Wikidata, which, to maintain the relational directionality, I&#8217;ll refer to as &#8220;has mother&#8221; and &#8220;has father.&#8221; There is no &#8220;has brother,&#8221; though, so we&#8217;ll need another rule in which to define &#8220;has brother&#8221; as any &#8220;sibling&#8221;(P3373) with &#8220;gender&#8221;(P21) &#8220;male&#8221; (Q6581097). That&#8217;s the additional rule I mentioned earlier. </p><p>There are more than a dozen ways to structure an SHACL graph with a ruleset that generates &#8220;has uncle&#8221; relations. I&#8217;ll pick six of them and will record the rule execution time so we can compare them.</p><h3>Four rules, one shape</h3><p>First, let&#8217;s start with a structure similar to the one used in the&nbsp;<a href="https://www.linkandth.ink/p/rules-on-graphs-in-graphs-of-rules">previous part</a>, but this time with a variation of the rule for constructing uncle relations. We&#8217;ll use a single node shape to generate all nodes on which the four attached rules will be applied.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!oHbx!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F88400dc7-0570-45ff-a342-1769c738725c_1922x3212.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!oHbx!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F88400dc7-0570-45ff-a342-1769c738725c_1922x3212.png 424w, https://substackcdn.com/image/fetch/$s_!oHbx!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F88400dc7-0570-45ff-a342-1769c738725c_1922x3212.png 848w, https://substackcdn.com/image/fetch/$s_!oHbx!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F88400dc7-0570-45ff-a342-1769c738725c_1922x3212.png 1272w, https://substackcdn.com/image/fetch/$s_!oHbx!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F88400dc7-0570-45ff-a342-1769c738725c_1922x3212.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!oHbx!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F88400dc7-0570-45ff-a342-1769c738725c_1922x3212.png" width="428" height="715.195054945055" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/88400dc7-0570-45ff-a342-1769c738725c_1922x3212.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:2433,&quot;width&quot;:1456,&quot;resizeWidth&quot;:428,&quot;bytes&quot;:645383,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://www.linkandth.ink/i/183563643?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F88400dc7-0570-45ff-a342-1769c738725c_1922x3212.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!oHbx!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F88400dc7-0570-45ff-a342-1769c738725c_1922x3212.png 424w, https://substackcdn.com/image/fetch/$s_!oHbx!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F88400dc7-0570-45ff-a342-1769c738725c_1922x3212.png 848w, https://substackcdn.com/image/fetch/$s_!oHbx!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F88400dc7-0570-45ff-a342-1769c738725c_1922x3212.png 1272w, https://substackcdn.com/image/fetch/$s_!oHbx!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F88400dc7-0570-45ff-a342-1769c738725c_1922x3212.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">A ruleset structure with one node shape, where the uncle rule (4) depends on relations inferred by rules (1), (2), and (3)</figcaption></figure></div><p>Since all rules are attached to one node shape, this node shape must specify the target nodes for all rules. The target nodes are the subjects of &#8220;has mother,&#8221; needed by the rule (1) to get &#8220;has parent,&#8221; the subject of &#8220;has father,&#8221; needed by the rule (2) to infer &#8220;has parent,&#8221; and the subject of &#8220;has sibling,&#8221; so that for those with gender male (Q6581097), it will construct &#8220;has brother&#8221; relations. During run time, these target declarations will produce the focus nodes that will be prebound to the <code>$this</code> variable in each  rule.</p><p>What is specific about this initial rules setup is that the uncle rule (4) uses the output of the other three rules as input. It needs triples with &#8220;has parent&#8221; predicate, which are constructed by rules (1) and (2), and triples with &#8220;has brother&#8221; predicate, which are constructed by rule (3).</p><p>The dashed arrows show the rule dependencies. The solid line shows the actual <code>sh:rule</code> property in the graph, linking a node shape to an instance of <code>sh:SPARQLrule</code>. All other properties are not shown in the diagram. Of them <code>sh:order</code> and <code>sh:deactivate</code> are quite important, as you&#8217;ll see in the last section. </p><p>Later in this article, as a shorthand for this configuration with a single node shape and a fully dependent uncle rule, I&#8217;ll use the following icon:</p><div class="captioned-image-container"><figure><a class="image-link image2" target="_blank" href="https://substackcdn.com/image/fetch/$s_!AU22!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff0a78dcf-174a-4ce1-83ec-8440ce4a53a5_319x318.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!AU22!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff0a78dcf-174a-4ce1-83ec-8440ce4a53a5_319x318.png 424w, https://substackcdn.com/image/fetch/$s_!AU22!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff0a78dcf-174a-4ce1-83ec-8440ce4a53a5_319x318.png 848w, https://substackcdn.com/image/fetch/$s_!AU22!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff0a78dcf-174a-4ce1-83ec-8440ce4a53a5_319x318.png 1272w, https://substackcdn.com/image/fetch/$s_!AU22!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff0a78dcf-174a-4ce1-83ec-8440ce4a53a5_319x318.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!AU22!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff0a78dcf-174a-4ce1-83ec-8440ce4a53a5_319x318.png" width="103" height="102.67711598746081" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/f0a78dcf-174a-4ce1-83ec-8440ce4a53a5_319x318.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:318,&quot;width&quot;:319,&quot;resizeWidth&quot;:103,&quot;bytes&quot;:27426,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://www.linkandth.ink/i/183563643?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff0a78dcf-174a-4ce1-83ec-8440ce4a53a5_319x318.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!AU22!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff0a78dcf-174a-4ce1-83ec-8440ce4a53a5_319x318.png 424w, https://substackcdn.com/image/fetch/$s_!AU22!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff0a78dcf-174a-4ce1-83ec-8440ce4a53a5_319x318.png 848w, https://substackcdn.com/image/fetch/$s_!AU22!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff0a78dcf-174a-4ce1-83ec-8440ce4a53a5_319x318.png 1272w, https://substackcdn.com/image/fetch/$s_!AU22!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff0a78dcf-174a-4ce1-83ec-8440ce4a53a5_319x318.png 1456w" sizes="100vw" loading="lazy"></picture><div></div></div></a></figure></div><p>The next configuration follows the same overall logic and will generate triples with identical quality and quantity. This time, however, the uncle rule doesn&#8217;t use parent relations. It depends only on inferred brother relations and computes uncles from the property chains &#8220;has mother&#8221;&#8212;&#8220;has brother&#8221; and &#8220;has father&#8221;&#8212;&#8220;has brother.&#8221;</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!N4HG!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6a716f2c-8114-4a3a-96f8-32f8e98d6a81_1813x3624.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!N4HG!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6a716f2c-8114-4a3a-96f8-32f8e98d6a81_1813x3624.png 424w, https://substackcdn.com/image/fetch/$s_!N4HG!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6a716f2c-8114-4a3a-96f8-32f8e98d6a81_1813x3624.png 848w, https://substackcdn.com/image/fetch/$s_!N4HG!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6a716f2c-8114-4a3a-96f8-32f8e98d6a81_1813x3624.png 1272w, https://substackcdn.com/image/fetch/$s_!N4HG!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6a716f2c-8114-4a3a-96f8-32f8e98d6a81_1813x3624.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!N4HG!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6a716f2c-8114-4a3a-96f8-32f8e98d6a81_1813x3624.png" width="446" height="891.3873626373627" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/6a716f2c-8114-4a3a-96f8-32f8e98d6a81_1813x3624.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:2910,&quot;width&quot;:1456,&quot;resizeWidth&quot;:446,&quot;bytes&quot;:689992,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://www.linkandth.ink/i/183563643?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6a716f2c-8114-4a3a-96f8-32f8e98d6a81_1813x3624.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!N4HG!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6a716f2c-8114-4a3a-96f8-32f8e98d6a81_1813x3624.png 424w, https://substackcdn.com/image/fetch/$s_!N4HG!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6a716f2c-8114-4a3a-96f8-32f8e98d6a81_1813x3624.png 848w, https://substackcdn.com/image/fetch/$s_!N4HG!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6a716f2c-8114-4a3a-96f8-32f8e98d6a81_1813x3624.png 1272w, https://substackcdn.com/image/fetch/$s_!N4HG!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6a716f2c-8114-4a3a-96f8-32f8e98d6a81_1813x3624.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">A ruleset structure with one node shape, where the uncle rule (5) depends only on the relations inferred by rules (3)</figcaption></figure></div><p>Another configuration can be such that the uncle rule computes &#8220;has brother&#8221; by itself but relies on rules (1) and (2) for &#8220;has parent.&#8221; As I wrote earlier, there are many possible ways to express the same rule logic. The point here was to pick one structure in which the uncle rule is neither fully dependent nor fully independent of the inferencing of the other rules.</p><p>Although the uncle rule no longer depends on the two parent rules, we keep them as they are. Why? First, they still provide useful shortcuts that speed up queries, and second, we need to maintain the same quantity and quality of inferred triples so we can compare the different structures of the rules graph.</p><p>As a shorthand for this configuration with a single node shape and an uncle rule, dependent on one of the other rules, I&#8217;ll use the following icon:</p><div class="captioned-image-container"><figure><a class="image-link image2" target="_blank" href="https://substackcdn.com/image/fetch/$s_!SMpI!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7780c8d7-c469-4346-8b58-067da237f38d_314x313.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!SMpI!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7780c8d7-c469-4346-8b58-067da237f38d_314x313.png 424w, https://substackcdn.com/image/fetch/$s_!SMpI!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7780c8d7-c469-4346-8b58-067da237f38d_314x313.png 848w, https://substackcdn.com/image/fetch/$s_!SMpI!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7780c8d7-c469-4346-8b58-067da237f38d_314x313.png 1272w, https://substackcdn.com/image/fetch/$s_!SMpI!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7780c8d7-c469-4346-8b58-067da237f38d_314x313.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!SMpI!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7780c8d7-c469-4346-8b58-067da237f38d_314x313.png" width="104" height="103.6687898089172" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/7780c8d7-c469-4346-8b58-067da237f38d_314x313.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:313,&quot;width&quot;:314,&quot;resizeWidth&quot;:104,&quot;bytes&quot;:25252,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://www.linkandth.ink/i/183563643?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7780c8d7-c469-4346-8b58-067da237f38d_314x313.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!SMpI!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7780c8d7-c469-4346-8b58-067da237f38d_314x313.png 424w, https://substackcdn.com/image/fetch/$s_!SMpI!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7780c8d7-c469-4346-8b58-067da237f38d_314x313.png 848w, https://substackcdn.com/image/fetch/$s_!SMpI!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7780c8d7-c469-4346-8b58-067da237f38d_314x313.png 1272w, https://substackcdn.com/image/fetch/$s_!SMpI!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7780c8d7-c469-4346-8b58-067da237f38d_314x313.png 1456w" sizes="100vw" loading="lazy"></picture><div></div></div></a></figure></div><p>In the last ruleset configuration with a single-node shape, the uncle rule (6) is independent of other rules. It doesn&#8217;t rely on inferred relations, only on asserted ones, and computes the uncle relationships by itself.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!HRbe!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Feaae8ebc-3ed2-4f01-af21-ae785059ca1e_1742x3746.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!HRbe!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Feaae8ebc-3ed2-4f01-af21-ae785059ca1e_1742x3746.png 424w, https://substackcdn.com/image/fetch/$s_!HRbe!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Feaae8ebc-3ed2-4f01-af21-ae785059ca1e_1742x3746.png 848w, https://substackcdn.com/image/fetch/$s_!HRbe!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Feaae8ebc-3ed2-4f01-af21-ae785059ca1e_1742x3746.png 1272w, https://substackcdn.com/image/fetch/$s_!HRbe!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Feaae8ebc-3ed2-4f01-af21-ae785059ca1e_1742x3746.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!HRbe!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Feaae8ebc-3ed2-4f01-af21-ae785059ca1e_1742x3746.png" width="410" height="881.6689560439561" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/eaae8ebc-3ed2-4f01-af21-ae785059ca1e_1742x3746.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:3131,&quot;width&quot;:1456,&quot;resizeWidth&quot;:410,&quot;bytes&quot;:740785,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://www.linkandth.ink/i/183563643?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Feaae8ebc-3ed2-4f01-af21-ae785059ca1e_1742x3746.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!HRbe!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Feaae8ebc-3ed2-4f01-af21-ae785059ca1e_1742x3746.png 424w, https://substackcdn.com/image/fetch/$s_!HRbe!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Feaae8ebc-3ed2-4f01-af21-ae785059ca1e_1742x3746.png 848w, https://substackcdn.com/image/fetch/$s_!HRbe!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Feaae8ebc-3ed2-4f01-af21-ae785059ca1e_1742x3746.png 1272w, https://substackcdn.com/image/fetch/$s_!HRbe!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Feaae8ebc-3ed2-4f01-af21-ae785059ca1e_1742x3746.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">A ruleset structure with one node shape, where the uncle rule (6) doesn&#8217;t depend on inferred triples</figcaption></figure></div><p>As a shorthand for this configuration with a single node shape and independent uncle rule, I&#8217;ll use the following icon:</p><div class="captioned-image-container"><figure><a class="image-link image2" target="_blank" href="https://substackcdn.com/image/fetch/$s_!UITG!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa99d6e53-40ce-4e49-9509-2a15c227efd0_324x323.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!UITG!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa99d6e53-40ce-4e49-9509-2a15c227efd0_324x323.png 424w, https://substackcdn.com/image/fetch/$s_!UITG!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa99d6e53-40ce-4e49-9509-2a15c227efd0_324x323.png 848w, https://substackcdn.com/image/fetch/$s_!UITG!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa99d6e53-40ce-4e49-9509-2a15c227efd0_324x323.png 1272w, https://substackcdn.com/image/fetch/$s_!UITG!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa99d6e53-40ce-4e49-9509-2a15c227efd0_324x323.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!UITG!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa99d6e53-40ce-4e49-9509-2a15c227efd0_324x323.png" width="106" height="105.67283950617283" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/a99d6e53-40ce-4e49-9509-2a15c227efd0_324x323.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:323,&quot;width&quot;:324,&quot;resizeWidth&quot;:106,&quot;bytes&quot;:25385,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://www.linkandth.ink/i/183563643?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa99d6e53-40ce-4e49-9509-2a15c227efd0_324x323.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!UITG!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa99d6e53-40ce-4e49-9509-2a15c227efd0_324x323.png 424w, https://substackcdn.com/image/fetch/$s_!UITG!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa99d6e53-40ce-4e49-9509-2a15c227efd0_324x323.png 848w, https://substackcdn.com/image/fetch/$s_!UITG!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa99d6e53-40ce-4e49-9509-2a15c227efd0_324x323.png 1272w, https://substackcdn.com/image/fetch/$s_!UITG!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa99d6e53-40ce-4e49-9509-2a15c227efd0_324x323.png 1456w" sizes="100vw" loading="lazy"></picture><div></div></div></a></figure></div><h3>Four rules, four shapes</h3><p>Now, let's see what happens when each rule has its own node shape and that node shape targets only the nodes needed by that rule. The rules will be the same, and the three configurations will be of the same kind, where the uncle rule is fully dependent on the other two, semi-dependent (using only &#8220;has brother&#8221;), and completely independent. The main difference is that, whereas in the first three configurations, all rules depend on centralized focus node generation, in the second set of three configurations, focus-node generation is decentralized.</p><p>Here&#8217;s the first configuration. Again, it is made up of rules (1), (2), (3) and (4), but each one with its own node shape.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!oldO!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F503d03b0-d3b8-49c7-8561-c2e497d236fa_2468x5239.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!oldO!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F503d03b0-d3b8-49c7-8561-c2e497d236fa_2468x5239.png 424w, https://substackcdn.com/image/fetch/$s_!oldO!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F503d03b0-d3b8-49c7-8561-c2e497d236fa_2468x5239.png 848w, https://substackcdn.com/image/fetch/$s_!oldO!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F503d03b0-d3b8-49c7-8561-c2e497d236fa_2468x5239.png 1272w, https://substackcdn.com/image/fetch/$s_!oldO!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F503d03b0-d3b8-49c7-8561-c2e497d236fa_2468x5239.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!oldO!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F503d03b0-d3b8-49c7-8561-c2e497d236fa_2468x5239.png" width="466" height="989.2898351648352" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/503d03b0-d3b8-49c7-8561-c2e497d236fa_2468x5239.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:3091,&quot;width&quot;:1456,&quot;resizeWidth&quot;:466,&quot;bytes&quot;:974593,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://www.linkandth.ink/i/183563643?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F503d03b0-d3b8-49c7-8561-c2e497d236fa_2468x5239.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!oldO!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F503d03b0-d3b8-49c7-8561-c2e497d236fa_2468x5239.png 424w, https://substackcdn.com/image/fetch/$s_!oldO!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F503d03b0-d3b8-49c7-8561-c2e497d236fa_2468x5239.png 848w, https://substackcdn.com/image/fetch/$s_!oldO!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F503d03b0-d3b8-49c7-8561-c2e497d236fa_2468x5239.png 1272w, https://substackcdn.com/image/fetch/$s_!oldO!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F503d03b0-d3b8-49c7-8561-c2e497d236fa_2468x5239.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">A ruleset structure with separate node shapes for each rule, where the uncle rule (4) depends on relations inferred by rules (1), (2), and (3)</figcaption></figure></div><p>Now all the rules are applied to all and only the nodes generated by their node shapes. The uncle rule (4), as in the previous ruleset series, depends on the other three rules. Its node specifies its targets along an inferred property, so the generation of focus nodes here also depends on rules (1) and (2). Unlike the uncle rule, the node shape target depends only on these two (still, a lot) and not on rule (3), which infers &#8220;has brother&#8221; triples.</p><p>Here I have placed the numbers on the node shape, since, as you&#8217;ll see in the last section, deactivation is done at the node level, not at the rule level. The idea is that, since each node shape only produces targets for its own rule, when the rules are not used, it&#8217;s better to switch off the whole thing.</p><p>As a shorthand for this configuration with separate node shapes for each rule and an uncle rule, dependent on all other rules, I&#8217;ll use the following icon:</p><div class="captioned-image-container"><figure><a class="image-link image2" target="_blank" href="https://substackcdn.com/image/fetch/$s_!wPEH!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8a0ac21b-6633-4e84-a372-7fe3a592e361_317x311.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!wPEH!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8a0ac21b-6633-4e84-a372-7fe3a592e361_317x311.png 424w, https://substackcdn.com/image/fetch/$s_!wPEH!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8a0ac21b-6633-4e84-a372-7fe3a592e361_317x311.png 848w, https://substackcdn.com/image/fetch/$s_!wPEH!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8a0ac21b-6633-4e84-a372-7fe3a592e361_317x311.png 1272w, https://substackcdn.com/image/fetch/$s_!wPEH!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8a0ac21b-6633-4e84-a372-7fe3a592e361_317x311.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!wPEH!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8a0ac21b-6633-4e84-a372-7fe3a592e361_317x311.png" width="105" height="103.01261829652996" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/8a0ac21b-6633-4e84-a372-7fe3a592e361_317x311.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:311,&quot;width&quot;:317,&quot;resizeWidth&quot;:105,&quot;bytes&quot;:31345,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://www.linkandth.ink/i/183563643?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8a0ac21b-6633-4e84-a372-7fe3a592e361_317x311.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!wPEH!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8a0ac21b-6633-4e84-a372-7fe3a592e361_317x311.png 424w, https://substackcdn.com/image/fetch/$s_!wPEH!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8a0ac21b-6633-4e84-a372-7fe3a592e361_317x311.png 848w, https://substackcdn.com/image/fetch/$s_!wPEH!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8a0ac21b-6633-4e84-a372-7fe3a592e361_317x311.png 1272w, https://substackcdn.com/image/fetch/$s_!wPEH!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8a0ac21b-6633-4e84-a372-7fe3a592e361_317x311.png 1456w" sizes="100vw" loading="lazy"></picture><div></div></div></a></figure></div><p>In the next configuration, we will use shape (5) to generate uncle relations. The rule of shape (5) depends only on the &#8220;has brother&#8221; triples inferred by rule (3).</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!yWIM!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe706e93c-6e44-41f6-9015-0379890e7b74_1859x5660.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!yWIM!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe706e93c-6e44-41f6-9015-0379890e7b74_1859x5660.png 424w, https://substackcdn.com/image/fetch/$s_!yWIM!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe706e93c-6e44-41f6-9015-0379890e7b74_1859x5660.png 848w, https://substackcdn.com/image/fetch/$s_!yWIM!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe706e93c-6e44-41f6-9015-0379890e7b74_1859x5660.png 1272w, https://substackcdn.com/image/fetch/$s_!yWIM!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe706e93c-6e44-41f6-9015-0379890e7b74_1859x5660.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!yWIM!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe706e93c-6e44-41f6-9015-0379890e7b74_1859x5660.png" width="401" height="1220.9017857142858" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/e706e93c-6e44-41f6-9015-0379890e7b74_1859x5660.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:4433,&quot;width&quot;:1456,&quot;resizeWidth&quot;:401,&quot;bytes&quot;:915973,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://www.linkandth.ink/i/183563643?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe706e93c-6e44-41f6-9015-0379890e7b74_1859x5660.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!yWIM!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe706e93c-6e44-41f6-9015-0379890e7b74_1859x5660.png 424w, https://substackcdn.com/image/fetch/$s_!yWIM!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe706e93c-6e44-41f6-9015-0379890e7b74_1859x5660.png 848w, https://substackcdn.com/image/fetch/$s_!yWIM!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe706e93c-6e44-41f6-9015-0379890e7b74_1859x5660.png 1272w, https://substackcdn.com/image/fetch/$s_!yWIM!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe706e93c-6e44-41f6-9015-0379890e7b74_1859x5660.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">A ruleset structure with separate node shapes for each rule, where the uncle rule (5) depends only on relations inferred by rule (3)</figcaption></figure></div><p>Here, the node with the uncle rule does not depend on inferred triples to generate focus nodes.</p><p>As a shorthand for this configuration with separate node shapes for each rule and an uncle rule, dependent on one of the other rules, I&#8217;ll use the following icon:</p><div class="captioned-image-container"><figure><a class="image-link image2" target="_blank" href="https://substackcdn.com/image/fetch/$s_!TUEW!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F403b6520-3ff2-4807-9903-e35af16d845c_310x305.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!TUEW!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F403b6520-3ff2-4807-9903-e35af16d845c_310x305.png 424w, https://substackcdn.com/image/fetch/$s_!TUEW!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F403b6520-3ff2-4807-9903-e35af16d845c_310x305.png 848w, https://substackcdn.com/image/fetch/$s_!TUEW!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F403b6520-3ff2-4807-9903-e35af16d845c_310x305.png 1272w, https://substackcdn.com/image/fetch/$s_!TUEW!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F403b6520-3ff2-4807-9903-e35af16d845c_310x305.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!TUEW!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F403b6520-3ff2-4807-9903-e35af16d845c_310x305.png" width="104" height="102.3225806451613" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/403b6520-3ff2-4807-9903-e35af16d845c_310x305.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:305,&quot;width&quot;:310,&quot;resizeWidth&quot;:104,&quot;bytes&quot;:27161,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://www.linkandth.ink/i/183563643?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F403b6520-3ff2-4807-9903-e35af16d845c_310x305.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!TUEW!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F403b6520-3ff2-4807-9903-e35af16d845c_310x305.png 424w, https://substackcdn.com/image/fetch/$s_!TUEW!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F403b6520-3ff2-4807-9903-e35af16d845c_310x305.png 848w, https://substackcdn.com/image/fetch/$s_!TUEW!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F403b6520-3ff2-4807-9903-e35af16d845c_310x305.png 1272w, https://substackcdn.com/image/fetch/$s_!TUEW!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F403b6520-3ff2-4807-9903-e35af16d845c_310x305.png 1456w" sizes="100vw" loading="lazy"></picture><div></div></div></a></figure></div><p>In the last configuration, node shape (6) shares the same target, but its rule is independent, making the entire unit completely independent in the graph (excluding the prefix declarations; more on that later). </p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!bE1g!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3dcf6eaf-bea3-4e4b-b787-256fae1a05ec_1847x5830.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!bE1g!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3dcf6eaf-bea3-4e4b-b787-256fae1a05ec_1847x5830.png 424w, https://substackcdn.com/image/fetch/$s_!bE1g!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3dcf6eaf-bea3-4e4b-b787-256fae1a05ec_1847x5830.png 848w, https://substackcdn.com/image/fetch/$s_!bE1g!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3dcf6eaf-bea3-4e4b-b787-256fae1a05ec_1847x5830.png 1272w, https://substackcdn.com/image/fetch/$s_!bE1g!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3dcf6eaf-bea3-4e4b-b787-256fae1a05ec_1847x5830.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!bE1g!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3dcf6eaf-bea3-4e4b-b787-256fae1a05ec_1847x5830.png" width="378" height="1193.1923076923076" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/3dcf6eaf-bea3-4e4b-b787-256fae1a05ec_1847x5830.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:4596,&quot;width&quot;:1456,&quot;resizeWidth&quot;:378,&quot;bytes&quot;:960793,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://www.linkandth.ink/i/183563643?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3dcf6eaf-bea3-4e4b-b787-256fae1a05ec_1847x5830.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!bE1g!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3dcf6eaf-bea3-4e4b-b787-256fae1a05ec_1847x5830.png 424w, https://substackcdn.com/image/fetch/$s_!bE1g!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3dcf6eaf-bea3-4e4b-b787-256fae1a05ec_1847x5830.png 848w, https://substackcdn.com/image/fetch/$s_!bE1g!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3dcf6eaf-bea3-4e4b-b787-256fae1a05ec_1847x5830.png 1272w, https://substackcdn.com/image/fetch/$s_!bE1g!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3dcf6eaf-bea3-4e4b-b787-256fae1a05ec_1847x5830.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">A ruleset structure with separate node shapes for each rule, where the uncle rule (6) doesn&#8217;t depend on inferred triples</figcaption></figure></div><p>As a shorthand for this configuration with separate node shapes for each rule and a fully independent uncle rule, I&#8217;ll use the following icon:</p><div class="captioned-image-container"><figure><a class="image-link image2" target="_blank" href="https://substackcdn.com/image/fetch/$s_!eWKS!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff709112a-4338-4b11-973b-828722257722_307x302.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!eWKS!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff709112a-4338-4b11-973b-828722257722_307x302.png 424w, https://substackcdn.com/image/fetch/$s_!eWKS!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff709112a-4338-4b11-973b-828722257722_307x302.png 848w, https://substackcdn.com/image/fetch/$s_!eWKS!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff709112a-4338-4b11-973b-828722257722_307x302.png 1272w, https://substackcdn.com/image/fetch/$s_!eWKS!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff709112a-4338-4b11-973b-828722257722_307x302.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!eWKS!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff709112a-4338-4b11-973b-828722257722_307x302.png" width="105" height="103.28990228013029" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/f709112a-4338-4b11-973b-828722257722_307x302.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:302,&quot;width&quot;:307,&quot;resizeWidth&quot;:105,&quot;bytes&quot;:25815,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://www.linkandth.ink/i/183563643?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff709112a-4338-4b11-973b-828722257722_307x302.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!eWKS!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff709112a-4338-4b11-973b-828722257722_307x302.png 424w, https://substackcdn.com/image/fetch/$s_!eWKS!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff709112a-4338-4b11-973b-828722257722_307x302.png 848w, https://substackcdn.com/image/fetch/$s_!eWKS!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff709112a-4338-4b11-973b-828722257722_307x302.png 1272w, https://substackcdn.com/image/fetch/$s_!eWKS!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff709112a-4338-4b11-973b-828722257722_307x302.png 1456w" sizes="100vw" loading="lazy"></picture><div></div></div></a></figure></div><p></p><h3>Autonomy and Cohesion</h3><p>Running all six configurations on the same graph produced the same number of triples, 192893, of which the same number of uncles, 19950 (if you decide to reproduce it, you may get different results, depending on when you run the query to extract the subgraph of Wikidata). </p><p>The result is basically a graph with &#8220;has parent,&#8221; &#8220;has brother,&#8221; and &#8220;has uncle&#8221; edges. Here&#8217;s one cluster of it:</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!rG--!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9fb87216-a2b4-47db-bea0-4ec452b0f461_660x501.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!rG--!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9fb87216-a2b4-47db-bea0-4ec452b0f461_660x501.png 424w, https://substackcdn.com/image/fetch/$s_!rG--!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9fb87216-a2b4-47db-bea0-4ec452b0f461_660x501.png 848w, https://substackcdn.com/image/fetch/$s_!rG--!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9fb87216-a2b4-47db-bea0-4ec452b0f461_660x501.png 1272w, https://substackcdn.com/image/fetch/$s_!rG--!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9fb87216-a2b4-47db-bea0-4ec452b0f461_660x501.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!rG--!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9fb87216-a2b4-47db-bea0-4ec452b0f461_660x501.png" width="536" height="406.8727272727273" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/9fb87216-a2b4-47db-bea0-4ec452b0f461_660x501.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:501,&quot;width&quot;:660,&quot;resizeWidth&quot;:536,&quot;bytes&quot;:null,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!rG--!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9fb87216-a2b4-47db-bea0-4ec452b0f461_660x501.png 424w, https://substackcdn.com/image/fetch/$s_!rG--!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9fb87216-a2b4-47db-bea0-4ec452b0f461_660x501.png 848w, https://substackcdn.com/image/fetch/$s_!rG--!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9fb87216-a2b4-47db-bea0-4ec452b0f461_660x501.png 1272w, https://substackcdn.com/image/fetch/$s_!rG--!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9fb87216-a2b4-47db-bea0-4ec452b0f461_660x501.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>The number of parents, brothers, and uncles triples is the same, but because of the different structure and dependencies, it took a different time.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!vVri!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa7acf912-bf60-42f2-bed6-ba7fc775d4fa_3167x1409.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!vVri!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa7acf912-bf60-42f2-bed6-ba7fc775d4fa_3167x1409.png 424w, https://substackcdn.com/image/fetch/$s_!vVri!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa7acf912-bf60-42f2-bed6-ba7fc775d4fa_3167x1409.png 848w, https://substackcdn.com/image/fetch/$s_!vVri!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa7acf912-bf60-42f2-bed6-ba7fc775d4fa_3167x1409.png 1272w, https://substackcdn.com/image/fetch/$s_!vVri!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa7acf912-bf60-42f2-bed6-ba7fc775d4fa_3167x1409.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!vVri!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa7acf912-bf60-42f2-bed6-ba7fc775d4fa_3167x1409.png" width="1456" height="648" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/a7acf912-bf60-42f2-bed6-ba7fc775d4fa_3167x1409.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:648,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:363782,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://www.linkandth.ink/i/183563643?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa7acf912-bf60-42f2-bed6-ba7fc775d4fa_3167x1409.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!vVri!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa7acf912-bf60-42f2-bed6-ba7fc775d4fa_3167x1409.png 424w, https://substackcdn.com/image/fetch/$s_!vVri!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa7acf912-bf60-42f2-bed6-ba7fc775d4fa_3167x1409.png 848w, https://substackcdn.com/image/fetch/$s_!vVri!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa7acf912-bf60-42f2-bed6-ba7fc775d4fa_3167x1409.png 1272w, https://substackcdn.com/image/fetch/$s_!vVri!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa7acf912-bf60-42f2-bed6-ba7fc775d4fa_3167x1409.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">Rule execution time. (For details, see the section <em>Step by Step)</em></figcaption></figure></div><p>These results are interesting not only for what we can learn about SHACL-based rules graphs, but also for system engineering in general. To have a more useful comparison, apart from the performance perspective, or short-term efficiency, we need to add at least two long-term perspectives: cost of change and fault tolerance.</p><p>If we compare the two columns, we see that configurations with separate node shapes are consistently faster than configurations with a common node shape. From a SHACL-perspective, the reason is that the common node shape produces focus nodes for all the rules, so every rule is applied to a lot of targets, which, from the perspective of the rule conditions, are irrelevant. In contrast, the configuration with separate node shapes produces only the focus nodes, which are relevant to their rules. </p><p>From a wider system perspective, the common node shape with rules 1-2-3-4 is imbalanced towards cohesion. Some of the cohesion results from extreme centralization. All rules depend on one node shape for their target nodes. The rules dependencies add even more cohesion: the uncle rule depends on the inferred triples generated by the other three rules. This makes the system vulnerable. A single bug in the targeting declaration will make the whole system collapse (manifested in this case in either giving an error or inferring zero triples). On top of that, if there is an error in any of the first three rules, the uncle rule will not work.</p><p>The 1-2-3-4 common shape node configuration needs to be excluded as an implementation option due to excessive cohesion (both structural and logical). The configuration 1-2-3-6 with separate node shapes also needs to be excluded for excessive &#8220;autonomy.&#8221; (I put autonomy in quotation marks, since in purely technical systems we can speak of &#8220;autonomy&#8221; only metaphorically as a proxy for degrees of freedom and decoupling, as discussed in <a href="https://www.linkandth.ink/p/decoupling">another essay</a>.)</p><p>The best-performing shape is the multi-shape 1-2-3-4 configuration, which produced all inferred triples in 2135ms (top-right cell in the table above). Not surprisingly, it&#8217;s one of those configurations where autonomy and cohesion are well balanced. There are separate node shapes for each rule (autonomy), but there is a lot of logical cohesion bringing efficiency. Once rules 1, 2, and 3 have run, the search space for rule 4 is highly optimized. </p><p>Apart from rule 4, depending on the output of the other three rules, its shape also depends on two of the rules, since there are no &#8220;has parent&#8221; subjects to target unless rules 1 and 2 are executed. So there is still more cohesion than necessary. This can be fixed by targeting the subjects of &#8220;has mother&#8221; and &#8220;has father&#8221;. The execution time is now 2514ms (not shown in the table). As expected, reducing this dependency has a performance cost. But that's probably a low price to pay for the increase in fault tolerance. </p><p>Yet, the multi-shape configuration with rules 1-2-3-5 has very good performance, second best, and very high fault tolerance. If the rules 1 and 2 don&#8217;t work because of an internal error or bad targeting of their node shapes, the uncle rule will still produce all uncle inferences. </p><p>What about the cost of change?</p><p>An easy way to measure it is to add two new requirements: include foster parents and infer also aunts, besides uncles. In both cases, the multi-shape 1-2-3-4 configuration will require minimal or no change to the uncle rule, whereas the multi-shape 1-2-3-5 configuration will require significant changes to the uncle rule, effectively duplicating other changes, such as adding new rules and modifying existing ones.</p><p>The final choice will depend on whether you prioritise modifiability (low cost of change), performance or resilience.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!Y-vz!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0a94f86d-ae35-4355-9bca-794761a38330_4072x1751.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!Y-vz!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0a94f86d-ae35-4355-9bca-794761a38330_4072x1751.png 424w, https://substackcdn.com/image/fetch/$s_!Y-vz!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0a94f86d-ae35-4355-9bca-794761a38330_4072x1751.png 848w, https://substackcdn.com/image/fetch/$s_!Y-vz!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0a94f86d-ae35-4355-9bca-794761a38330_4072x1751.png 1272w, https://substackcdn.com/image/fetch/$s_!Y-vz!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0a94f86d-ae35-4355-9bca-794761a38330_4072x1751.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!Y-vz!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0a94f86d-ae35-4355-9bca-794761a38330_4072x1751.png" width="1456" height="626" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/0a94f86d-ae35-4355-9bca-794761a38330_4072x1751.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:626,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:405756,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://www.linkandth.ink/i/183563643?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0a94f86d-ae35-4355-9bca-794761a38330_4072x1751.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!Y-vz!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0a94f86d-ae35-4355-9bca-794761a38330_4072x1751.png 424w, https://substackcdn.com/image/fetch/$s_!Y-vz!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0a94f86d-ae35-4355-9bca-794761a38330_4072x1751.png 848w, https://substackcdn.com/image/fetch/$s_!Y-vz!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0a94f86d-ae35-4355-9bca-794761a38330_4072x1751.png 1272w, https://substackcdn.com/image/fetch/$s_!Y-vz!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0a94f86d-ae35-4355-9bca-794761a38330_4072x1751.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">Multi-dimensional comparison of the six rule graph configurations</figcaption></figure></div><p>Fault tolerance generally increases with autonomy, at the cost of redundancy, in an approximately linear manner. The cost of change is not directly proportional to the increase in redundancy and depends on other factors. Yet in both series of configurations, those with rule 6 have a higher cost of change than those with rule 5, which have a higher cost of change than those with rule 4. But compared across the series, it&#8217;s not that straightforward. For example, the cost of some configuration changes with a single-node shape and rule 6 will be cheaper than implementing the same changes in a separate shape per rule and using rule 5 for uncles. For others, the cost of change will be lower in the multi-shape system. </p><p>Different ways of achieving cohesion bring different results. Some improve efficiency but make the system brittle, as is with the system in the left-most position on top. It may also introduce inefficiency. In the case of a SHACL system, such inefficiency may be manifested in the over-production of focus nodes, which increases the search space of SPARQL rules.  But that is easily observed also in socio-technical systems, where the economy of scale is reduced by paying for a fat and inefficient bureaucracy. </p><p>Simply put, there is bad cohesion and <a href="https://www.linkandth.ink/p/cohesion-via-standards-and-protocols">good cohesion</a>, and there is bad inefficiency and <a href="https://www.linkandth.ink/p/requisite-inefficiency">requisite inefficiency</a>. </p><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://www.linkandth.ink/p/rules-on-graphs-in-graphs-of-rules-993?utm_source=substack&utm_medium=email&utm_content=share&action=share&quot;,&quot;text&quot;:&quot;Share&quot;,&quot;action&quot;:null,&quot;class&quot;:null}" data-component-name="ButtonCreateButton"><a class="button primary" href="https://www.linkandth.ink/p/rules-on-graphs-in-graphs-of-rules-993?utm_source=substack&utm_medium=email&utm_content=share&action=share"><span>Share</span></a></p><p>The focus of this part was on comparing different ways of structuring the graph of rules. In the next one, I&#8217;ll review some use cases and benefits.</p><p>Now, as promised, a step-by-step guide, including all the code used in this and the previous post.</p><h2>Step by Step</h2><p>Here&#8217;s how to reproduce the whole experiment.</p><h4>Step 0: Tool</h4><p>There are several open source tools you can use to run SHACL rules: the <a href="https://github.com/topquadrant/shacl">TopBraid SHACL API</a>, its <a href="https://github.com/SHACL-X/shacl-x">extended version</a>, or <a href="https://github.com/RDFLib/pySHACL">pySHACL</a>. Yet another open source SHACL tool, <a href="https://github.com/DataTreehouse/maplib">maplib</a>, is currently adding SHACL rules.</p><p>For these two posts, I used TopBraid Composer Free Edition. It was discontinued in 2018, but the latest version is still available for download. I keep using it for training courses and workshops, since it has a GUI that makes it easy to run different experiments. </p>
      <p>
          <a href="https://www.linkandth.ink/p/rules-on-graphs-in-graphs-of-rules-993">
              Read more
          </a>
      </p>
   ]]></content:encoded></item><item><title><![CDATA[Rules on Graphs in Graphs of Rules, Part 1]]></title><description><![CDATA[Inference rules are useful. They bring declarative expressivity &#8212; stating what follows from facts rather than how to compute it. But for users, their most salient feature is that they make queries simpler and faster.]]></description><link>https://www.linkandth.ink/p/rules-on-graphs-in-graphs-of-rules</link><guid isPermaLink="false">https://www.linkandth.ink/p/rules-on-graphs-in-graphs-of-rules</guid><dc:creator><![CDATA[Ivo Velitchkov]]></dc:creator><pubDate>Tue, 30 Dec 2025 13:51:46 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!XVZy!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F71d61a0d-5689-4fa9-b08f-f1b2b74653ab_1841x1827.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>In the <a href="https://www.linkandth.ink/p/ruleful-world">previous post</a>, we saw how inference rules illustrate the different meanings of rules. Some of them, like paradigm, model and straightedge, were lost in history in favor of algorithm and regulation.</p><p>Inference rules are useful. They bring declarative expressivity &#8212; stating what follows from facts rather than how to compute it. But for users, their most salient feature is that they make queries simpler and faster.</p><p><em>This post is part of the <a href="https://www.linkandth.ink/p/rules-series">Rules series</a>.</em></p><p>I use rules daily in my personal knowledge graph. The most frequent pattern used in queries is linking a block with a page referred to in it. The standard path in Roam is to go to the page reference via <code>:block/refs</code> and then to specify the page via its title using <code>:node/title</code>.</p><p>Just like in the example from the previous post &#8220;has uncle&#8221; makes a shortcut from X to Z, instead of going along &#8220;has uncle&#8221; and &#8220;has brother,&#8221; in a similar way the <code>refs-page </code>rule is replacing the route pattern </p><p><code>:block/refs</code> &#8594; <code>?page</code> &#8594; <code>:node/title</code>.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!EH1j!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3ca4a375-80a2-43e4-a1cd-fe6f116c13ed_1652x1010.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!EH1j!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3ca4a375-80a2-43e4-a1cd-fe6f116c13ed_1652x1010.png 424w, https://substackcdn.com/image/fetch/$s_!EH1j!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3ca4a375-80a2-43e4-a1cd-fe6f116c13ed_1652x1010.png 848w, https://substackcdn.com/image/fetch/$s_!EH1j!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3ca4a375-80a2-43e4-a1cd-fe6f116c13ed_1652x1010.png 1272w, https://substackcdn.com/image/fetch/$s_!EH1j!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3ca4a375-80a2-43e4-a1cd-fe6f116c13ed_1652x1010.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!EH1j!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3ca4a375-80a2-43e4-a1cd-fe6f116c13ed_1652x1010.png" width="526" height="321.52472527472526" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/3ca4a375-80a2-43e4-a1cd-fe6f116c13ed_1652x1010.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:890,&quot;width&quot;:1456,&quot;resizeWidth&quot;:526,&quot;bytes&quot;:null,&quot;alt&quot;:&quot;&quot;,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" title="" srcset="https://substackcdn.com/image/fetch/$s_!EH1j!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3ca4a375-80a2-43e4-a1cd-fe6f116c13ed_1652x1010.png 424w, https://substackcdn.com/image/fetch/$s_!EH1j!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3ca4a375-80a2-43e4-a1cd-fe6f116c13ed_1652x1010.png 848w, https://substackcdn.com/image/fetch/$s_!EH1j!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3ca4a375-80a2-43e4-a1cd-fe6f116c13ed_1652x1010.png 1272w, https://substackcdn.com/image/fetch/$s_!EH1j!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3ca4a375-80a2-43e4-a1cd-fe6f116c13ed_1652x1010.png 1456w" sizes="100vw" fetchpriority="high"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>In the essay <a href="https://www.linkandth.ink/p/graph-pruning-part-2">Graph Pruning</a>, for example, both queries for counting typed (in the sense of having a type) pages can be simplified by this rule, making them shorter and faster. The simpler query for typed pages will look just like this:</p><pre><code><code>[:find  (count ?page). 
 :where
  (refs-page "is a" ?isA)
 [?isA :block/page ?page]
]
</code></code></pre><p>This is a Datalog rule but in Datomic syntax, so instead of using <code>:-</code> to distinguish the rule head from the rule body, the rule head is put in parentheses. In other words, the rule is a list of lists, the first list being the rule head distinguished with the syntax for grouping and the rest is using the brackets for vectors. The rule for the ref page looks like this:</p><pre><code><code>[
(refs-page ?page-title ?page)
  [?block :block/refs ?page]
  [?page :node/title ?page-title]
]</code></code></pre><p>The refs-page rule simplifies and speeds up the queries. For example, using it will halve the size of the query for the number of words I shared in <a href="https://www.linkandth.ink/p/writing-with-roam">Writing with Roam</a>.</p><p>An important feature of such rules is that they separate domain logic from application code. When rules are themselves nodes in the graph, they are easy to access and inspect. If the graph is based on interoperable standards, the rules can also be fully decoupled from any specific applications and have independent governance. In corporate settings, this becomes critical when organizations need to integrate new data sources, respond to changing business requirements or legislation, or replace a vendor. I will return to this point in the next post. </p><p>Now, let&#8217;s see how these rules work.</p><p>Let&#8217;s extend the graph of relations from the previous post with a few more.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!wGlX!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8a7dab4c-c085-4634-a3d4-927a8ea00028_1841x1855.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!wGlX!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8a7dab4c-c085-4634-a3d4-927a8ea00028_1841x1855.png 424w, https://substackcdn.com/image/fetch/$s_!wGlX!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8a7dab4c-c085-4634-a3d4-927a8ea00028_1841x1855.png 848w, https://substackcdn.com/image/fetch/$s_!wGlX!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8a7dab4c-c085-4634-a3d4-927a8ea00028_1841x1855.png 1272w, https://substackcdn.com/image/fetch/$s_!wGlX!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8a7dab4c-c085-4634-a3d4-927a8ea00028_1841x1855.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!wGlX!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8a7dab4c-c085-4634-a3d4-927a8ea00028_1841x1855.png" width="564" height="568.260989010989" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/8a7dab4c-c085-4634-a3d4-927a8ea00028_1841x1855.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1467,&quot;width&quot;:1456,&quot;resizeWidth&quot;:564,&quot;bytes&quot;:null,&quot;alt&quot;:&quot;&quot;,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" title="" srcset="https://substackcdn.com/image/fetch/$s_!wGlX!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8a7dab4c-c085-4634-a3d4-927a8ea00028_1841x1855.png 424w, https://substackcdn.com/image/fetch/$s_!wGlX!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8a7dab4c-c085-4634-a3d4-927a8ea00028_1841x1855.png 848w, https://substackcdn.com/image/fetch/$s_!wGlX!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8a7dab4c-c085-4634-a3d4-927a8ea00028_1841x1855.png 1272w, https://substackcdn.com/image/fetch/$s_!wGlX!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8a7dab4c-c085-4634-a3d4-927a8ea00028_1841x1855.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>If this is an RDF graph, we can define Datalog rules for parent and uncle and use open source tools like <a href="https://github.com/DataTreehouse/maplib">Maplib</a> or commercial tools like RDFox and materialize these inferred relations. And that&#8217;s how, for example, the personal knowledge graph in the latest <a href="https://ceur-ws.org/Vol-4085/paper5.pdf">Samsung phones work</a>.</p><p>But if we want to manage these rules as part of the graph, then we need to either use <a href="http://link https://w3c.github.io/N3/spec/#n3rules">N3 rules</a> or <a href="https://w3c.github.io/shacl/shacl-af/#rules">SHACL rules</a>. SHACL has broader tool support and allows more sophisticated rules than N3. It also has the benefit of expressing the rules with <a href="https://www.w3.org/TR/sparql12-query/">SPARQL</a>. This way, SPARQL, apart from querying and graph manipulation, can also be used for graph generation from heterogeneous data sources, as shown in <a href="https://www.linkandth.ink/p/universal-data-facade-part-1">the post about facade-X</a>, and for expressing rules. Since SPARQL is not as good for recursive rules as Datalog, the next version of SHACL will either allow Datalog rules in SHACL shape graphs or enhance the SHACL rules so that they overcome these limitations.</p><p>SHACL rules are either triple rules or SPARQL rules linked to a node shape (SHACL can be extended to include other ways of expressing rules). The node shapes declare the target nodes, which are the computed subset of the nodes in the graph on which the rules are applied. As such, the target node declaration is also an implicit rule.</p><p>In this post, I&#8217;ll show the graph of rules just as a diagram so that it&#8217;s easier to follow. At the end of the next part, I&#8217;ll include all the code and the instructions needed to reproduce the examples.</p><p>In SHACL, node shapes define the target nodes on which the validation constraints or the rules are applied. A common approach is to target instances of a class. But I want to focus only on relations here and not depend on whether the nodes linked with such relations are declared or inferred as instances of some classes. That&#8217;s why I&#8217;ll define the target nodes with no reference to any classes but only to properties. </p><p>There are plenty of ways to express the rules to produce parent and uncle relations. The same set of rules structured differently creates a system with different efficiency, robustness and maintainability. That&#8217;s interesting to study and will do so, on a much bigger dataset and one representing actual family relations. Comparing different rule graph structures is useful for finding the best way to use SHACL depending on the context, but more importantly, it demonstrates how the balance between<a href="https://www.linkandth.ink/p/autonomy-and-cohesion?r=5xd5k"> Autonomy and Cohesion</a> plays out even in simple technical systems. All that in the next part.</p><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://www.linkandth.ink/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe&quot;,&quot;language&quot;:&quot;en&quot;}" data-component-name="SubscribeWidgetToDOM"><div class="subscription-widget show-subscribe"><div class="preamble"><p class="cta-caption">Link &amp; Think is a reader-supported publication. To receive new posts and support my work, consider becoming a free or paid subscriber.</p></div><form class="subscription-widget-subscribe"><input type="email" class="email-input" name="email" placeholder="Type your email&#8230;" tabindex="-1"><input type="submit" class="button primary" value="Subscribe"><div class="fake-input-wrapper"><div class="fake-input"></div><div class="fake-button"></div></div></form></div></div><p>For the purposes of this post, I&#8217;ll use only one node shape and link all rules to it. To make sure all rules have the right set of focus nodes (that&#8217;s how the targeted nodes are called during run time), the targeted nodes declared as  the union of subjects of the relations &#8220;has mother&#8221; and &#8220;has father.&#8221; Here, <em>subjects</em> is used in reference to the triple structure subject-predicate-object, &#8220;has mother,&#8221; &#8220;has father,&#8221; &#8220;has parent,&#8221; and &#8220;has uncle,&#8221; being the predicates we&#8217;ll focus on. </p><p>The node shape node is linked to each rule with the predicate <code>sh:rule</code> which is shown in the diagram below without a prefix. There are statements for prefix declarations, order of execution, and activation switches, which we&#8217;ll skip for now but will look into in the next part.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!O_Mz!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa0bc0889-e90a-41b7-b1fd-93235ab1c82d_1919x2430.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!O_Mz!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa0bc0889-e90a-41b7-b1fd-93235ab1c82d_1919x2430.png 424w, https://substackcdn.com/image/fetch/$s_!O_Mz!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa0bc0889-e90a-41b7-b1fd-93235ab1c82d_1919x2430.png 848w, https://substackcdn.com/image/fetch/$s_!O_Mz!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa0bc0889-e90a-41b7-b1fd-93235ab1c82d_1919x2430.png 1272w, https://substackcdn.com/image/fetch/$s_!O_Mz!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa0bc0889-e90a-41b7-b1fd-93235ab1c82d_1919x2430.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!O_Mz!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa0bc0889-e90a-41b7-b1fd-93235ab1c82d_1919x2430.png" width="598" height="757.3571428571429" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/a0bc0889-e90a-41b7-b1fd-93235ab1c82d_1919x2430.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1844,&quot;width&quot;:1456,&quot;resizeWidth&quot;:598,&quot;bytes&quot;:null,&quot;alt&quot;:&quot;&quot;,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" title="" srcset="https://substackcdn.com/image/fetch/$s_!O_Mz!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa0bc0889-e90a-41b7-b1fd-93235ab1c82d_1919x2430.png 424w, https://substackcdn.com/image/fetch/$s_!O_Mz!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa0bc0889-e90a-41b7-b1fd-93235ab1c82d_1919x2430.png 848w, https://substackcdn.com/image/fetch/$s_!O_Mz!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa0bc0889-e90a-41b7-b1fd-93235ab1c82d_1919x2430.png 1272w, https://substackcdn.com/image/fetch/$s_!O_Mz!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa0bc0889-e90a-41b7-b1fd-93235ab1c82d_1919x2430.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>The diagram shows the four main nodes with their type, Node Shape and SPARQL rule, respectively. The dashed arrows represent rule dependencies: the third rule uses &#8220;has parent&#8221; relation, which can only be produced by the first and the second rule, when their conditions are satisfied.</p><p>The target declaration in the nodes shape will make three focus nodes: Mai, Sophie, and Pierre, since these are the only nodes in the graph which are subjects of &#8220;has mother&#8221; and &#8220;has father&#8221;.</p><p>Once &#8220;has parent&#8221; relations are available, the third rule, focusing on the subjects of &#8220;has mother&#8221; and &#8220;has father&#8221; relations, to which <code>$this</code> will be bound, will produce &#8220;has uncle&#8221; relations between the nodes linked along the path &#8220;has parent&#8221;-&#8221;has brother&#8221;. This will be the resulting graph, shown in green:</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!XVZy!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F71d61a0d-5689-4fa9-b08f-f1b2b74653ab_1841x1827.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!XVZy!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F71d61a0d-5689-4fa9-b08f-f1b2b74653ab_1841x1827.png 424w, https://substackcdn.com/image/fetch/$s_!XVZy!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F71d61a0d-5689-4fa9-b08f-f1b2b74653ab_1841x1827.png 848w, https://substackcdn.com/image/fetch/$s_!XVZy!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F71d61a0d-5689-4fa9-b08f-f1b2b74653ab_1841x1827.png 1272w, https://substackcdn.com/image/fetch/$s_!XVZy!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F71d61a0d-5689-4fa9-b08f-f1b2b74653ab_1841x1827.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!XVZy!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F71d61a0d-5689-4fa9-b08f-f1b2b74653ab_1841x1827.png" width="728" height="722.5" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/71d61a0d-5689-4fa9-b08f-f1b2b74653ab_1841x1827.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1445,&quot;width&quot;:1456,&quot;resizeWidth&quot;:728,&quot;bytes&quot;:null,&quot;alt&quot;:&quot;&quot;,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" title="" srcset="https://substackcdn.com/image/fetch/$s_!XVZy!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F71d61a0d-5689-4fa9-b08f-f1b2b74653ab_1841x1827.png 424w, https://substackcdn.com/image/fetch/$s_!XVZy!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F71d61a0d-5689-4fa9-b08f-f1b2b74653ab_1841x1827.png 848w, https://substackcdn.com/image/fetch/$s_!XVZy!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F71d61a0d-5689-4fa9-b08f-f1b2b74653ab_1841x1827.png 1272w, https://substackcdn.com/image/fetch/$s_!XVZy!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F71d61a0d-5689-4fa9-b08f-f1b2b74653ab_1841x1827.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>What will happen if the third rule is made in a way that uses only asserted relations and is independent of any other rules? And what if each rule is in a separate node shape? Stay tuned for the <a href="https://www.linkandth.ink/p/rules-on-graphs-in-graphs-of-rules-993">next part</a>, where we&#8217;ll see the answer t&#1086; these and other questions using a dataset from Wikidata to generate twenty thousand uncles.</p>]]></content:encoded></item><item><title><![CDATA[Rules (series)]]></title><description><![CDATA[A sub-series on rules, part of the series Autonomy and Cohesion.]]></description><link>https://www.linkandth.ink/p/rules-series</link><guid isPermaLink="false">https://www.linkandth.ink/p/rules-series</guid><dc:creator><![CDATA[Ivo Velitchkov]]></dc:creator><pubDate>Tue, 30 Dec 2025 13:28:04 GMT</pubDate><enclosure url="https://substack-post-media.s3.amazonaws.com/public/images/92eb7b32-1a9d-46b5-b257-9e9791366b83_1536x1024.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>A sub-series on rules, part of the series <a href="https://www.linkandth.ink/p/autonomy-and-cohesion-series">Autonomy and Cohesion</a>.<br><br></p><div class="digest-post-embed" data-attrs="{&quot;nodeId&quot;:&quot;38d6a63e-38d9-499d-b180-6d7ef8326ec2&quot;,&quot;caption&quot;:&quot;Around the year 530 AD, Benedict of Nursia, later known as Saint Benedict, wrote one of the most influential books in the Christian world, The Rule of Saint Benedict (Regula Sancti Benedicti). This book of precepts regulating monastic life has been used by Benedictines for 15 centuries.&quot;,&quot;cta&quot;:&quot;Read full story&quot;,&quot;showBylines&quot;:true,&quot;size&quot;:&quot;sm&quot;,&quot;isEditorNode&quot;:true,&quot;title&quot;:&quot;The Four Powers of Norms&quot;,&quot;publishedBylines&quot;:[{&quot;id&quot;:9954776,&quot;name&quot;:&quot;Ivo Velitchkov&quot;,&quot;bio&quot;:&quot;Exploring socio&#8209;technical systems across scales &#8211; individuals, networks, organizations, society. Author of Essential Balances.&quot;,&quot;photo_url&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/c38bc74f-b4bc-474d-bc42-ff51ce6398b9_96x96.jpeg&quot;,&quot;is_guest&quot;:false,&quot;bestseller_tier&quot;:null}],&quot;post_date&quot;:&quot;2025-11-30T14:24:54.252Z&quot;,&quot;cover_image&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/2bdfbd36-f401-4e1c-9771-794a92082b92_1024x910.png&quot;,&quot;cover_image_alt&quot;:null,&quot;canonical_url&quot;:&quot;https://www.linkandth.ink/p/the-four-powers-of-norms&quot;,&quot;section_name&quot;:null,&quot;video_upload_id&quot;:null,&quot;id&quot;:180306472,&quot;type&quot;:&quot;newsletter&quot;,&quot;reaction_count&quot;:4,&quot;comment_count&quot;:0,&quot;publication_id&quot;:2280477,&quot;publication_name&quot;:&quot;Link &amp; Think&quot;,&quot;publication_logo_url&quot;:&quot;https://substackcdn.com/image/fetch/$s_!TG-l!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F72c7b012-7bdf-453b-b2dd-45863de29aca_500x500.png&quot;,&quot;belowTheFold&quot;:false,&quot;youtube_url&quot;:null,&quot;show_links&quot;:null,&quot;feed_url&quot;:null}"></div><div class="digest-post-embed" data-attrs="{&quot;nodeId&quot;:&quot;8c3a4379-fa67-49db-bda4-3c07e24072b5&quot;,&quot;caption&quot;:&quot;Rules rule our lives. Rules tell us on which side of the plate the fork must go and on which side of the road the car must go. Rules tell us where a bicycle must wait at a red light and where a plane must wait on the taxiway. Rules tell us which items count as hand luggage on a plane and which bottles count as a returnable deposit at the supermarket. Ru&#8230;&quot;,&quot;cta&quot;:&quot;Read full story&quot;,&quot;showBylines&quot;:true,&quot;size&quot;:&quot;sm&quot;,&quot;isEditorNode&quot;:true,&quot;title&quot;:&quot;Ruleful World&quot;,&quot;publishedBylines&quot;:[{&quot;id&quot;:9954776,&quot;name&quot;:&quot;Ivo Velitchkov&quot;,&quot;bio&quot;:&quot;Exploring socio&#8209;technical systems across scales &#8211; individuals, networks, organizations, society. Author of Essential Balances.&quot;,&quot;photo_url&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/c38bc74f-b4bc-474d-bc42-ff51ce6398b9_96x96.jpeg&quot;,&quot;is_guest&quot;:false,&quot;bestseller_tier&quot;:null}],&quot;post_date&quot;:&quot;2025-12-09T16:07:50.893Z&quot;,&quot;cover_image&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/6db1b0f4-3194-4b16-aa4d-9131c76a7962_1721x1736.jpeg&quot;,&quot;cover_image_alt&quot;:null,&quot;canonical_url&quot;:&quot;https://www.linkandth.ink/p/ruleful-world&quot;,&quot;section_name&quot;:null,&quot;video_upload_id&quot;:null,&quot;id&quot;:181027463,&quot;type&quot;:&quot;newsletter&quot;,&quot;reaction_count&quot;:5,&quot;comment_count&quot;:0,&quot;publication_id&quot;:2280477,&quot;publication_name&quot;:&quot;Link &amp; Think&quot;,&quot;publication_logo_url&quot;:&quot;https://substackcdn.com/image/fetch/$s_!TG-l!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F72c7b012-7bdf-453b-b2dd-45863de29aca_500x500.png&quot;,&quot;belowTheFold&quot;:false,&quot;youtube_url&quot;:null,&quot;show_links&quot;:null,&quot;feed_url&quot;:null}"></div><div class="digest-post-embed" data-attrs="{&quot;nodeId&quot;:&quot;f213ddbc-dc58-40f1-afa2-8dc191e9dc16&quot;,&quot;caption&quot;:&quot;In the previous post, we saw how inference rules illustrate the different meanings of rules. Some of them, like paradigm, model and straightedge, were lost in history in favor of algorithm and regulation.&quot;,&quot;cta&quot;:&quot;Read full story&quot;,&quot;showBylines&quot;:true,&quot;size&quot;:&quot;sm&quot;,&quot;isEditorNode&quot;:true,&quot;title&quot;:&quot;Rules on Graphs in Graphs of Rules, Part 1&quot;,&quot;publishedBylines&quot;:[{&quot;id&quot;:9954776,&quot;name&quot;:&quot;Ivo Velitchkov&quot;,&quot;bio&quot;:&quot;Exploring socio&#8209;technical systems across scales &#8211; individuals, networks, organizations, society. Author of Essential Balances.&quot;,&quot;photo_url&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/c38bc74f-b4bc-474d-bc42-ff51ce6398b9_96x96.jpeg&quot;,&quot;is_guest&quot;:false,&quot;bestseller_tier&quot;:null}],&quot;post_date&quot;:&quot;2025-12-30T13:51:46.693Z&quot;,&quot;cover_image&quot;:&quot;https://substackcdn.com/image/fetch/$s_!XVZy!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F71d61a0d-5689-4fa9-b08f-f1b2b74653ab_1841x1827.png&quot;,&quot;cover_image_alt&quot;:null,&quot;canonical_url&quot;:&quot;https://www.linkandth.ink/p/rules-on-graphs-in-graphs-of-rules&quot;,&quot;section_name&quot;:null,&quot;video_upload_id&quot;:null,&quot;id&quot;:182415839,&quot;type&quot;:&quot;newsletter&quot;,&quot;reaction_count&quot;:0,&quot;comment_count&quot;:0,&quot;publication_id&quot;:2280477,&quot;publication_name&quot;:&quot;Link &amp; Think&quot;,&quot;publication_logo_url&quot;:&quot;https://substackcdn.com/image/fetch/$s_!TG-l!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F72c7b012-7bdf-453b-b2dd-45863de29aca_500x500.png&quot;,&quot;belowTheFold&quot;:false,&quot;youtube_url&quot;:null,&quot;show_links&quot;:null,&quot;feed_url&quot;:null}"></div><div class="digest-post-embed" data-attrs="{&quot;nodeId&quot;:&quot;94a7c801-0e54-4df5-9144-6e0d859e770b&quot;,&quot;caption&quot;:&quot;Rules are in the air. The pandemic boosted the gig economy, where, in search of new forms of governance, the interest in rules grew. At the same time, the second crypto boom occurred, which, in combination with increased social media power abuse, amplified interest in protocols; protocols are nothing more than rules that facilitate coordination. Since we can&#8217;t trust platforms (see what happened with Twitter), nor can we hope for special&quot;,&quot;cta&quot;:&quot;Read full story&quot;,&quot;showBylines&quot;:true,&quot;size&quot;:&quot;sm&quot;,&quot;isEditorNode&quot;:true,&quot;title&quot;:&quot;Rules on Graphs in Graphs of Rules, Part 2&quot;,&quot;publishedBylines&quot;:[{&quot;id&quot;:9954776,&quot;name&quot;:&quot;Ivo Velitchkov&quot;,&quot;bio&quot;:&quot;Exploring socio&#8209;technical systems across scales &#8211; individuals, networks, organizations, society. Author of Essential Balances.&quot;,&quot;photo_url&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/c38bc74f-b4bc-474d-bc42-ff51ce6398b9_96x96.jpeg&quot;,&quot;is_guest&quot;:false,&quot;bestseller_tier&quot;:null}],&quot;post_date&quot;:&quot;2026-01-15T18:04:39.683Z&quot;,&quot;cover_image&quot;:&quot;https://substackcdn.com/image/fetch/$s_!rG--!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9fb87216-a2b4-47db-bea0-4ec452b0f461_660x501.png&quot;,&quot;cover_image_alt&quot;:null,&quot;canonical_url&quot;:&quot;https://www.linkandth.ink/p/rules-on-graphs-in-graphs-of-rules-993&quot;,&quot;section_name&quot;:null,&quot;video_upload_id&quot;:null,&quot;id&quot;:183563643,&quot;type&quot;:&quot;newsletter&quot;,&quot;reaction_count&quot;:0,&quot;comment_count&quot;:0,&quot;publication_id&quot;:2280477,&quot;publication_name&quot;:&quot;Link &amp; Think&quot;,&quot;publication_logo_url&quot;:&quot;https://substackcdn.com/image/fetch/$s_!TG-l!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F72c7b012-7bdf-453b-b2dd-45863de29aca_500x500.png&quot;,&quot;belowTheFold&quot;:false,&quot;youtube_url&quot;:null,&quot;show_links&quot;:null,&quot;feed_url&quot;:null}"></div><div class="digest-post-embed" data-attrs="{&quot;nodeId&quot;:&quot;17317d8f-012b-47f0-8e34-06df6143474b&quot;,&quot;caption&quot;:&quot;This post is part of a mini-series on inference rules, which is part of a larger series on rules, which is part of an even larger series about autonomy and cohesion.&quot;,&quot;cta&quot;:&quot;Read full story&quot;,&quot;showBylines&quot;:true,&quot;size&quot;:&quot;sm&quot;,&quot;isEditorNode&quot;:true,&quot;title&quot;:&quot;Rules on Graphs in Graphs of Rules, Part 3&quot;,&quot;publishedBylines&quot;:[{&quot;id&quot;:9954776,&quot;name&quot;:&quot;Ivo Velitchkov&quot;,&quot;bio&quot;:&quot;Exploring socio&#8209;technical systems across scales &#8211; individuals, networks, organizations, society. Author of Essential Balances.&quot;,&quot;photo_url&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/c38bc74f-b4bc-474d-bc42-ff51ce6398b9_96x96.jpeg&quot;,&quot;is_guest&quot;:false,&quot;bestseller_tier&quot;:null}],&quot;post_date&quot;:&quot;2026-02-17T13:10:33.202Z&quot;,&quot;cover_image&quot;:&quot;https://images.unsplash.com/photo-1500741236341-1b7a0f91f1f6?fm=jpg&amp;q=60&amp;w=3000&amp;auto=format&amp;fit=crop&amp;ixlib=rb-4.1.0&amp;ixid=M3wxMjA3fDB8MHxwaG90by1wYWdlfHx8fGVufDB8fHx8fA%3D%3D&quot;,&quot;cover_image_alt&quot;:null,&quot;canonical_url&quot;:&quot;https://www.linkandth.ink/p/rules-on-graphs-in-graphs-of-rules-0d6&quot;,&quot;section_name&quot;:null,&quot;video_upload_id&quot;:null,&quot;id&quot;:185823514,&quot;type&quot;:&quot;newsletter&quot;,&quot;reaction_count&quot;:0,&quot;comment_count&quot;:0,&quot;publication_id&quot;:2280477,&quot;publication_name&quot;:&quot;Link &amp; Think&quot;,&quot;publication_logo_url&quot;:&quot;https://substackcdn.com/image/fetch/$s_!TG-l!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F72c7b012-7bdf-453b-b2dd-45863de29aca_500x500.png&quot;,&quot;belowTheFold&quot;:false,&quot;youtube_url&quot;:null,&quot;show_links&quot;:null,&quot;feed_url&quot;:null}"></div>]]></content:encoded></item><item><title><![CDATA[Ruleful World]]></title><description><![CDATA[How pervasive constraints create cohesion and meaning]]></description><link>https://www.linkandth.ink/p/ruleful-world</link><guid isPermaLink="false">https://www.linkandth.ink/p/ruleful-world</guid><dc:creator><![CDATA[Ivo Velitchkov]]></dc:creator><pubDate>Tue, 09 Dec 2025 16:07:50 GMT</pubDate><enclosure url="https://substack-post-media.s3.amazonaws.com/public/images/6db1b0f4-3194-4b16-aa4d-9131c76a7962_1721x1736.jpeg" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>Rules rule our lives. Rules tell us on which side of the plate the fork must go and on which side of the road the car must go. Rules tell us where a bicycle must wait at a red light and where a plane must wait on the taxiway. Rules tell us which items count as hand luggage on a plane and which bottles count as a returnable deposit at the supermarket. Rules tell us how loudly we may speak in a library, and how loudly we may play music after 10 pm.</p><p>Rules define even their opposites. There is a general ordering that is the norm, and we can only communicate an alternative as deviating from it. To say external rules do not govern us, we say we are <em>autonomous</em> (self-law) or that we are <em>privileged</em> (private-law). Governance implies so strongly the notion of a ruler that an alternative form of governance, <em>anarchy</em>, can only be named in relation to it: &#8220;without ruler.&#8221;</p><p><em>This essay is part of the <a href="https://www.linkandth.ink/p/autonomy-and-cohesion-series">Autonomy and Cohesion series</a> and the sub-series about rules.</em></p><h2>Cohesion</h2><p>Rules are a cohesion tool. They reduce interactional uncertainty. By constraining choices and making behaviour predictable, rules allow multiple autonomous agents to coordinate. We learn these qualities of rules from an early age. Make-believe play is random and boring without rules. Coming up with rules and strictly following them is what makes play fun until it exhausts their potential and begs for new rules.</p><p>Rules standardize practices (measurements, recipes, spelling, ways of moving) so people can rely on others&#8217; behaviour and build higher-order institutions on top of that reliability. Rules vary in their flexibility and generality, but all perform the cohesion work of aligning expectations across contexts.</p><p>When cohesion is understood as both making a whole and working as a whole, two concrete dynamics matter most for rules to enable cohesion. First, rules compress the space of interactions, so coordination costs fall, and then coordination can scale. Second, rules create repeatable patterns that become objects of learning, audit and repair; they turn episodic agreements into <a href="https://www.linkandth.ink/p/leader-platform-protocol">durable protocols</a>.</p><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://www.linkandth.ink/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe&quot;,&quot;language&quot;:&quot;en&quot;}" data-component-name="SubscribeWidgetToDOM"><div class="subscription-widget show-subscribe"><div class="preamble"><p class="cta-caption">Link &amp; Think is a reader-supported publication. To receive new posts and support my work, consider becoming a free or paid subscriber.</p></div><form class="subscription-widget-subscribe"><input type="email" class="email-input" name="email" placeholder="Type your email&#8230;" tabindex="-1"><input type="submit" class="button primary" value="Subscribe"><div class="fake-input-wrapper"><div class="fake-input"></div><div class="fake-button"></div></div></form></div></div><h2>Determination</h2><p>Rules restrict behavior, structure and meaning.</p><p>In traffic, stop at red, restricts motion. In dieting, fast for 12 hours restricts eating time. In boxing, do not hit below the belt restricts physical targeting. All these are restrictions on behavior.</p><p>A Haiku must have a 5-7-5 syllable structure. A password must contain at least one capital letter, a number, and a special symbol. A major chord must consist of a root, major third, and perfect fifth. All these are restrictions on structure.</p><p>A marathon winner is the one who crosses the finishing line first. A person under 18 is a Minor. An uncle is a parent&#8217;s brother. All these are restrictions on meaning.</p><p>But on closer examination, the rules restricting structure can easily be seen as restricting meaning. We define Haiku as a poem with a 5-7-5 syllable structure. An allowed-for-this-app password is one that contains at least one capital letter, a number, and a special symbol. A major chord is a chord consisting of a root, major third, and perfect fifth.</p><p>Rules may be all about restricting meaning, but they were historically unruly when restricting their own. Rules originated as construction instruments to ensure that columns were erected vertically, beams were straight, and angles were right. Then, after variation on correctness and measuring, their meaning shifted to model and paradigm, which nowadays, when rules are related to algorithms and regulations, seem rather strange.</p><p>We keep talking about &#8220;meaning&#8221; when discussing computational rules. But only humans are meaning-makers. If we bracket this intentionality, then all three kinds of restriction, on behaviour, structure and meaning, collapse into one, determination of a status.</p><p>Behavior rules determine the status of an action, for example, is the action permitted. Structure rules determine the status of a structure, for example, is a string well-formed. Meaning rules determine the status of a fact or entity, for example, is this person elected.</p><p>Determination is nothing more than a computed distinction, a distinction applied to itself. In the Rule of Saint Benedict, all rules can be changed at the discretion of the abbot. Discretion comes from <em>discretio</em>, drawing distinction. So both applying and bending rules is a matter of drawing a distinction. George Spencer-Brown was right, <a href="https://www.linkandth.ink/p/perfect-continence">distinction is the perfect continence</a>.</p><h2>Computation</h2><p>Nowadays, the formal expressions of rules looks like this:</p><pre><code>Consequence &#8592; Conditions.</code></pre><p>The left side follows when the right side holds. The left-pointing arrow can be read from left to right as &#8220;if.&#8221; Let&#8217;s take one of the earlier examples:</p><pre><code>Uncle is a bother of a parent.</code></pre><p>Sounds like it was taken from a dictionary, and that&#8217;s not surprising. Rules restrict meaning. All definitions are rules.</p><p>A more formal expression will look like this:</p><pre><code>hasUncle(X, Z) :- hasParent(X, Y), hasBrother(Y, Z).</code></pre><p>The relationships link pairs of nodes: X to Y, Y to Z, and X to Z. The left-pointing arrow is replaced with<code>:-</code> but it can still be read as &#8220;if&#8221;. The comma is the logical <em>and,</em> meaning that both conditions on the right side must be true for the conclusion on the left to follow.</p><p>This rule is an algorithm to generate <em>hasUncle</em> relationships. If Mei has father Hao, then his brother Wei is her uncle. Replacing the variables X, Y, and Z with the constants Mei, Hai and Wei produces a new relationship, <em>hasUncle</em>, between Mei and Wei.</p><p>This rule defines the meaning of &#8220;uncle,&#8221; but it also illustrates the multiple meanings of the word &#8220;rule,&#8221; which historically shifted from straightedge to model to algorithm. </p><p>First, this rule is an algorithm, where the input of data into the conditions hasParent(X, Y), hasBrother(Y, Z), produces hasUncle relations between X and Z.</p><p>Second, this rule also serves as a template for producing such relationships. As such, it illustrates the lost meaning of rule-as-model, which Lorraine Daston is chasing in a big part of her <a href="https://press.princeton.edu/books/hardcover/9780691156989/rules">book on the history of rules</a>. That&#8217;s also true for rule-as-paradigm since paradigm comes from <em>paradeigma</em> (pattern, example).</p><p>And third, even the most ancient meaning of rule as straightedge can be illustrated, if we draw it.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!nqSV!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F213399ea-222c-4795-ab84-9dba45982a5d_1475x837.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!nqSV!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F213399ea-222c-4795-ab84-9dba45982a5d_1475x837.png 424w, https://substackcdn.com/image/fetch/$s_!nqSV!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F213399ea-222c-4795-ab84-9dba45982a5d_1475x837.png 848w, https://substackcdn.com/image/fetch/$s_!nqSV!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F213399ea-222c-4795-ab84-9dba45982a5d_1475x837.png 1272w, https://substackcdn.com/image/fetch/$s_!nqSV!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F213399ea-222c-4795-ab84-9dba45982a5d_1475x837.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!nqSV!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F213399ea-222c-4795-ab84-9dba45982a5d_1475x837.png" width="518" height="293.86538461538464" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/213399ea-222c-4795-ab84-9dba45982a5d_1475x837.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:826,&quot;width&quot;:1456,&quot;resizeWidth&quot;:518,&quot;bytes&quot;:null,&quot;alt&quot;:&quot;&quot;,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" title="" srcset="https://substackcdn.com/image/fetch/$s_!nqSV!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F213399ea-222c-4795-ab84-9dba45982a5d_1475x837.png 424w, https://substackcdn.com/image/fetch/$s_!nqSV!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F213399ea-222c-4795-ab84-9dba45982a5d_1475x837.png 848w, https://substackcdn.com/image/fetch/$s_!nqSV!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F213399ea-222c-4795-ab84-9dba45982a5d_1475x837.png 1272w, https://substackcdn.com/image/fetch/$s_!nqSV!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F213399ea-222c-4795-ab84-9dba45982a5d_1475x837.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>Let&#8217;s look at this as a map. If you want to go from X to Z, it&#8217;s better to take the &#8220;has uncle&#8221; route than the &#8220;has parent...has brother&#8221; route. Via &#8220;has uncle,&#8221; you can go <em>straight</em> to Z. It is simpler and usually faster. And speed is one of the main reasons to use inference rules, as we&#8217;ll see in the next post.</p>]]></content:encoded></item><item><title><![CDATA[The Four Powers of Norms]]></title><description><![CDATA[And how they harden or soften rules]]></description><link>https://www.linkandth.ink/p/the-four-powers-of-norms</link><guid isPermaLink="false">https://www.linkandth.ink/p/the-four-powers-of-norms</guid><dc:creator><![CDATA[Ivo Velitchkov]]></dc:creator><pubDate>Sun, 30 Nov 2025 14:24:54 GMT</pubDate><enclosure url="https://substack-post-media.s3.amazonaws.com/public/images/2bdfbd36-f401-4e1c-9771-794a92082b92_1024x910.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>Around the year 530 AD, Benedict of Nursia, later known as Saint Benedict, wrote one of the most influential books in the Christian world, <em>The Rule of Saint Benedict</em> (<em>Regula Sancti Benedicti</em>). This book of precepts regulating monastic life has been used by Benedictines for 15 centuries.</p><p>The book has 73 chapters containing rules about the necessary qualifications, rights and obligations of the abbot, the tools of the spiritual craft, what monks should do in each part of the day, the order of prayers, rules about meals, supplies, works, sleeping, and how to treat guests, the young, the sick, and the old.</p><p>Chapters 39 and 40 are about meals. Each monk is allowed two daily meals, both of which include two cooked dishes. If that doesn&#8217;t correspond to your understanding of ascetic life, wait till you hear the severity of the punishment if one is late for a meal.</p><p><em>This is a post in the <a href="https://www.linkandth.ink/p/autonomy-and-cohesion-series">Autonomy and Cohesion series</a>. It doesn&#8217;t depend on all previous in the series. I even tried to make it self-sufficient. Yet, if you need more context, checking the first two posts in the series will be enough.</em></p><p>Each monk is permitted one hemina of wine (270ml) at every meal. That means the first hemina of wine is given most days of the year on the sixth hour, which is around noon.</p><p>If a monk is late for a meal, he receives a warning, and on the second offense, a severe punishment: he is deprived of his portion of wine (Chapter 43).</p><p>You may wonder why wine was allowed in the first place, and already at noon. I wondered too. And St Benedict provided a clear explanation. Before reviewing that explanation, let&#8217;s first see why the Rule of St Benedict is an interesting text for understanding the <a href="https://www.linkandth.ink/p/autonomy-and-cohesion">Autonomy-Cohesion balance</a> and, more particularly, for the intricacies of some cohesion mechanisms.</p><h2><strong>Cohesion Mechanisms</strong></h2><p>All socio-technical systems need to maintain the balance between autonomy and cohesion to remain viable.</p><p>The order of St Benedict did that well. At first glance, Benedictines maintained high internal cohesion and high external autonomy, the former enabling the latter. But a closer look reveals a balance both within and between monasteries. </p><p>The tools for the internal cohesion were the Rule, the clock (horarium) and the abbot. Still, there was a balance between autonomy and cohesion. The abbots were elected by the monks. Important decisions were taken collectively. Furthermore, the monk&#8217;s spiritual journey is highly individual. And the balance is already in the Rule, which provides a middle ground between individual zeal and institutional constraints. That middle ground is what made the order so popular and long-lasting.</p><p>Unlike the Jesuits or Dominicans, who operate with high central cohesion, Benedictine houses were very autonomous. Yet, they were well coordinated and maintained remarkable cohesion, although monasteries were hundreds or thousands miles apart.</p><p>In the <em><a href="https://www.linkandth.ink/p/cohesion-forces-and-tools">Cohesion Forces and Tools</a></em>, I provided an overview of the main cohesion mechanisms.</p><p>Some of them act at a personal level, like the need for safety, to belong, to reduce uncertainty, and to increase self-esteem.</p><p>Others act at the social level. Without distinguishing between forces and tools, the social cohesion list includes: social identity, compassion, loyalty, empathy, language, rituals, norms, rules, standards, laws, protocols, uniforms, goals, plans, decisions, reports, meetings, and coordination tools. Most of these work in any kind of organization, together with operational dependencies, social identity, and efficiency pressures. In social networks, shared interests, shared aversions, memes, and <a href="https://www.penguinrandomhouse.com/books/776856/algospeak-by-adam-aleksic/">algospeak</a> are the main mechanisms of cohesion, complementing the forces at play at the personal level.</p><p>All cohesion forces and tools provide constraints. In this essay, the focus is on two of them, rules and norms.</p><p>Rules are tools of codification, establishing explicit boundaries that achieve unity through compulsion. Norms operate as organic forces, relying on internalization to guide behavior.</p><p>But norms are even more special than that.</p><h2><strong>Norms Are a Special Species</strong></h2><p>Now back to the Rule of St Benedict, and why wine was allowed, not only that, but a good portion of it, and already at noon? St Benedict explains:</p><blockquote><p>[W]ine is by no means a drink for monks; but since the monks of our day cannot be persuaded of this, let us at least agree to drink sparingly and not to satiety</p></blockquote><p>Now, in the spectrum from no-wine to wine according to the discretion of the friar, the expected potential rule &#8220;no-wine&#8221; as emphasized by St. Benedict with &#8220;wine is by no means a drink for monks&#8221; is reduced as severity to &#8220;one hemina per meal&#8221;, because of the norm &#8220;the monks of our day cannot be persuaded of this.&#8221;</p><p>It turns out that, while both rules and norms restrict autonomy, norms can also enable autonomy, support or be converted to rules, and, as the example above shows, reduce the severity of a rule.</p><p>It&#8217;s worth looking at these four cases individually.</p><ol><li><p><strong>Norms restrict autonomy.</strong> Unlike rules, they don&#8217;t do that through codified punishment, but through social friction. We join the back of a queue not because a guard is present to make sure we do, but because a fair waiting norm and a queuing protocol restrict our autonomy to walk straight to the counter. The norm and the protocol act as coordination mechanisms.</p></li><li><p><strong>Norms enable autonomy</strong>. The norm &#8220;to improvise&#8221; enables the autonomy of the soloing jazz musician, but that only works because of the constraints of the tempo, key, chord progression and turn-taking. </p></li><li><p><strong>Norms make rules work by enhancing them</strong>. The library rule to be quiet is weak on its own unless enforced by the collective glare one receives when their phone rings. It is similar to the traffic. No police force will be sufficient to ensure rule-following if the rules are not massively internalized as norms.</p></li><li><p><strong>Norms make rules work by softening them</strong>. After the pandemic, working from home was no longer supported by the force of the global crisis, but since it was turned into a norm, it brought hybrid office rules.</p></li></ol><p>That last one was similar to the way the norm, &#8220;the monks of our day cannot be persuaded of this,&#8221; pushed the default rule of no wine to one hemina of wine. By doing so, the norm did not just make the rule acceptable. Although rules are listed as tools for cohesion, they are not such by themselves. In the case of the one-hemina-per-meal rule, it was only the balancing act of the norm that made it a cohesive tool.</p><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://www.linkandth.ink/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe&quot;,&quot;language&quot;:&quot;en&quot;}" data-component-name="SubscribeWidgetToDOM"><div class="subscription-widget show-subscribe"><div class="preamble"><p class="cta-caption">Link &amp; Think is a reader-supported publication. To receive new posts and support my work, consider becoming a free or paid subscriber.</p></div><form class="subscription-widget-subscribe"><input type="email" class="email-input" name="email" placeholder="Type your email&#8230;" tabindex="-1"><input type="submit" class="button primary" value="Subscribe"><div class="fake-input-wrapper"><div class="fake-input"></div><div class="fake-button"></div></div></form></div></div><p></p>]]></content:encoded></item><item><title><![CDATA[The Claims Matrix]]></title><description><![CDATA[God, Beauty, and the Attribution Paradox]]></description><link>https://www.linkandth.ink/p/the-claims-matrix</link><guid isPermaLink="false">https://www.linkandth.ink/p/the-claims-matrix</guid><dc:creator><![CDATA[Ivo Velitchkov]]></dc:creator><pubDate>Sun, 09 Nov 2025 14:51:05 GMT</pubDate><enclosure url="https://substack-post-media.s3.amazonaws.com/public/images/f25715ac-1f98-45ae-9800-6503a040b375_1024x1024.jpeg" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>Every non-fiction publication makes a claim. Or rather, three claims. There is the core claim. It says that something is the case. There might be several such core claims. Then there is the support claim, which cites others&#8217; claims in support of the core claim. Both the core and support claims have an implicit or explicit meta-claim.</p><h2><strong>Claims and Biases</strong></h2><p>Claims are biased. There is a self-serving bias that often influences all three claims. It can lead to exaggerating the importance of the main claim and/or the meta-claim of its originality, or the strength of the support claims. If they are accepted, this can benefit the author with money or prestige. The value can also come in the form of tenure, grants, speaking invitations, or psychological benefits like recognition, perceived influence, and ideological validation.</p><p>The core claim is mainly prone to confirmation bias. Confirmation bias filters not only the data selected but also how the question is framed. Evidence is more likely to be searched, interpreted, and cited if it aligns with what the author expects or believes.</p><p>The supporting claim is prone to appeal-to-authority bias. In its lightest form, this is the casual name-drop &#8212; Stephen Hawking said it, so it must be right. In scholarly writing, it manifests as citation pathologies.</p><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://www.linkandth.ink/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe&quot;,&quot;language&quot;:&quot;en&quot;}" data-component-name="SubscribeWidgetToDOM"><div class="subscription-widget show-subscribe"><div class="preamble"><p class="cta-caption">Link &amp; Think is a reader-supported publication. To receive new posts and support my work, consider becoming a free or paid subscriber.</p></div><form class="subscription-widget-subscribe"><input type="email" class="email-input" name="email" placeholder="Type your email&#8230;" tabindex="-1"><input type="submit" class="button primary" value="Subscribe"><div class="fake-input-wrapper"><div class="fake-input"></div><div class="fake-button"></div></div></form></div></div><p>A lesser-known bias is something which I call the elegance bias. This is the tendency to prefer ideas that are simple, symmetric, or mathematically beautiful &#8212; even when the world is not. In physics, for example, elegance bias has led researchers to favor unified theories or supersymmetry models not because data support them, but because of their elegance. As Sabine Hossenfelder puts it, when physicists judge the promise of a newly invented but untested theory, they &#8220;draw upon the concepts of naturalness, simplicity or elegance, and beauty.&#8221; This aesthetic filtering can push certain research directions while marginalizing others.</p><p>The confirmation bias I mentioned earlier is indeed the most popular one, in the sense of being the most common <em>and</em> the most talked about. But there is a bias that is even more frequent, yet few talk about it. That is the God&#8217;s-eye-view bias. It is typical of all religious texts (and maybe it shouldn&#8217;t be called bias there), but it is equally present in all scientific books and papers (the exceptions are so few that we can safely ignore them). It&#8217;s again a God&#8217;s-eye view, but it might be more recognizable if it is called objectivity bias. It is so much in <a href="https://direct.mit.edu/books/book/5740/The-Blind-SpotWhy-Science-Cannot-Ignore-Human">the blind spot</a> of science that what I call <em>bias</em>, most will call <em>duty</em>. The duty of a good scientist is to be objective.</p><p>The God&#8217;s-eye-view bias is based on the belief that there is reality out there which is perfectly knowable and independent of our minds and actions. Such a stance assumes the observer can be removed from the observation, an idea increasingly challenged in both physics and philosophy. <a href="https://en.wikipedia.org/wiki/Quantum_Bayesianism">QBism</a> and other participatory interpretations of quantum mechanics argue the opposite: that all measurement is relational, and no fact exists without an agent&#8217;s involvement.</p><p>When the Gods-eye-view bias is baked into the meta-claim &#8212; &#8220;this is how it is, not just how I see it&#8221; &#8212; the claim resists challenge. It pretends to speak from outside all contexts. In this sense, scientific writing often inherits not only the rhetorical habits of theology but also its authority structure.</p><p>One experimental tool to resist this bias is E-prime &#8212; a version of English without any form of the verb &#8220;to be.&#8221; By removing &#8220;is&#8221; and &#8220;are&#8221;, writers are forced to rephrase claims with reference to context or perception: &#8220;this appears to me as&#8230;&#8221; instead of &#8220;this is&#8230;&#8221; While E-prime was suggested as a way to improve clarity, and the motive for introducing it was not related to the God&#8217;s-eye-view bias, I find that it has this nice side effect: by applying it, we can see how deeply this bias is embedded in language itself.</p><p>Sometimes I think that small doses of elegance bias can cancel out some of the God&#8217;s-eye-view bias. Like beauty can twist the truth, truth-chasing may be counterproductive based on a narrow view of beauty. <span class="mention-wrap" data-attrs="{&quot;name&quot;:&quot;Evan Thompson&quot;,&quot;id&quot;:63989389,&quot;type&quot;:&quot;user&quot;,&quot;url&quot;:null,&quot;photo_url&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/917110ee-e4f9-4352-87a6-ac955b87c4f4_144x144.png&quot;,&quot;uuid&quot;:&quot;c579d515-b1ce-475e-876f-913b7b834a29&quot;}" data-component-name="MentionToDOM"></span>:</p><blockquote><p>there&#8217;s a way of talking about truth, where it&#8217;s very easy to think of truth as different from the beautiful, say, and that&#8217;s because we think of truth in terms of the correctness of propositions and we have an idea of correctness or of correspondence. But from a phenomenological perspective, that actually is a secondary sense of truth, and the primary sense of truth is disclosure or presence, or, to be you know, technical in the way that Husserl uses the terminology the you know, the evidencing of something. So evidencing is the you know, we use evidence as a noun in English we think here&#8217;s a piece of evidence, but that another languages evidencing has this verbal sense where you disclose something, you uncover it, you reveal it, it comes to presence.</p></blockquote><p>While the elegance bias primarily arises from a search for beauty in mathematical expressions, if that search shifts to human experience, we might reduce both the elegance bias and the God&#8217;s-eye-view bias.</p><h2><strong>Attributions, IP, and AI</strong></h2><p>The main meta-claims are about attribution. The meta-claim for the core claim can be that it is an original idea of the author, while that might not be the case. Or that it is not the original idea of the author, while that might be the case. For instance, several Arabic texts from the 9th to 13th centuries were attributed to Aristotle to boost their authority, even though the actual ideas were Neoplatonic or newly developed by the translator-authors. Other Islamic philosophers attributed their own ideas to classical sources, masking their originality, not so much to increase credibility but as to follow a convention in Islamic philosophy to state that one is repeating the wisdom of the past.</p><p>In the modern world, attribution is bound to the machinery of intellectual property: originality becomes not just a virtue but a legal condition. In some cultures, especially modern Western ones, originality means ownership, and ownership implies rights. But that was not always the case, and in some places it still isn&#8217;t. In medieval China, the emphasis on individual authorship and ownership, as understood in the West, was often secondary to collective or anonymous forms. Even today, Chinese IP law retains traces of this collective orientation, emphasizing utility and shared benefit over originality for its own sake. Similarly, many traditional knowledge systems &#8212; from Andean farming techniques to West African music &#8212; treat knowledge as a communal inheritance rather than an individual asset.</p><p>The strong Western sensitivity to intellectual property is strangely inverted by the very institution that most profitably exploits it: academic publishing. It celebrates the sanctity of authorship and originality while operating on a model that strips both of their substance. As <span class="mention-wrap" data-attrs="{&quot;name&quot;:&quot;Dan Davies&quot;,&quot;id&quot;:971013,&quot;type&quot;:&quot;user&quot;,&quot;url&quot;:null,&quot;photo_url&quot;:&quot;https://substackcdn.com/image/fetch/$s_!S8iI!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3fab90fe-ebdc-41b1-9bbf-567d3cdb362b_75x80.png&quot;,&quot;uuid&quot;:&quot;7952580c-8e42-49dc-9686-03e7d094e3c1&quot;}" data-component-name="MentionToDOM"></span> notes, scholars have become both the unpaid workforce and the paying customers of a system that feeds on their own production.</p><blockquote><p>A not-wholly-unfair analysis of academic publishing would be that it is an industry in which academics compete against one another for the privilege of providing free labour for a profitmaking company, which then sells the results back to them at monopoly prices.</p></blockquote><p>The paradox extends beyond academia: citizens, through public taxes, already fund most research, only to be asked again to purchase access to its results &#8212; sometimes at the price of an expensive book for a seven-page paper. What is defended as the protection of intellectual property thus becomes a mechanism for its expropriation. The system rewards not the creation of knowledge, but its circulation within a closed economy of prestige and metrics.</p><p>Academic publishing is a medium that aggregates, validates, and redistributes knowledge within institutional boundaries. Artificial intelligence extends this logic to a planetary scale. The largest investment wave in history now rests on a technology that similarly feeds on existing knowledge, yet without even the pretense of attribution. Its disregard for intellectual property stems not from cultural specifics, as with China, or from a commons-based ethos, as with open source projects, but from pragmatic erosion. The IP is highly valued again, but its meaning has shifted to <em>Infrastructural Property</em> amid global meaning drift.</p><p>On the other hand, the AI synthesis is natural, just the scale and speed look overwhelming from the perspective of a single human. But single humans, depending on when they wrote what they wrote, had different possibilities for knowledge synthesis too. <span class="mention-wrap" data-attrs="{&quot;name&quot;:&quot;Henrik Karlsson&quot;,&quot;id&quot;:850764,&quot;type&quot;:&quot;user&quot;,&quot;url&quot;:null,&quot;photo_url&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/cbfe66be-195d-4794-97db-126fa3d19735_1345x1345.jpeg&quot;,&quot;uuid&quot;:&quot;6183e225-71ba-4606-93a7-7248cb7b00b9&quot;}" data-component-name="MentionToDOM"></span>:</p><blockquote><p>Modern authors have the advantage that they have access to more data. But I find their opinions easier to predict, so I often prefer older authors since they surprise me and therefore expand my worldview more.</p></blockquote><p>It seems LLMs continue on that same path; it&#8217;s just the ability to access more data and quicker than a single human could, which makes it look inhuman, but, as I wrote <a href="https://www.linkandth.ink/p/trusticion-is-all-you-need">elsewhere</a>,  it&#8217;s natural.</p><p>The agent, human or not, is the medium, just like <a href="https://www.linkandth.ink/p/the-medium-is-the-agent">the medium is the agent</a>.</p><p>The only meta-claim that holds in all cases, then, is that of knowledge synthesis.</p>]]></content:encoded></item><item><title><![CDATA[Universal Data Façade (Part 2)]]></title><description><![CDATA[Some more complex structures now]]></description><link>https://www.linkandth.ink/p/universal-data-facade-part-2</link><guid isPermaLink="false">https://www.linkandth.ink/p/universal-data-facade-part-2</guid><dc:creator><![CDATA[Ivo Velitchkov]]></dc:creator><pubDate>Tue, 28 Oct 2025 12:11:51 GMT</pubDate><enclosure url="https://substack-post-media.s3.amazonaws.com/public/images/8bcfff33-d4e8-4f19-a32d-d37d39f3f161_1546x1459.jpeg" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>Fa&#231;ade-X is a way to represent any data source as an RDF graph. What all data structures share is that they can be seen as nested containers. The reference implementation of Fa&#231;ade-X is called <a href="https://sparql-anything.cc">SPARQL Anything</a>. To query or transform any source structure, all you need is to know SPARQL. Once you do, you can SPARQL anything.</p><p>SPARQL is easier than you think. Thinking in containers helps there as well, as I showed <a href="https://www.strategicstructures.com/?p=1889">elsewhere</a> . And if you are not interested to learn it, lazy, or in a hurry, LLMs know SPARQL, so they can help you.</p><p>Fa&#231;ade-X can be (and is) used to unify the files you work with, so you can get a powerful <a href="https://personalknowledgegraphs.com">personal knowledge graph</a>. It can be (and is) used at the corporate and multi-organizational level to unify and integrate data, and unlike proprietary alternatives, without creating technical debt and at no cost.</p><p>It has now been four years since <a href="https://www.researchgate.net/publication/354393838_Facade-X_An_Opinionated_Approach_to_SPARQL_Anything">the paper introducing X-Fa&#231;ade</a> was published. In the meantime, the reference implementation SPARQL Anything, built by the leading authors of that paper, Enrico Daga and Luigi Asprino, is already capable of applying Fa&#231;ade-X on over a dozen different file formats.</p><p>This is the second part on Fa&#231;ade-X (and the 5th post in the <a href="https://www.linkandth.ink/p/containment-series">Containment series</a> ). In the <a href="https://www.linkandth.ink/p/universal-data-facade-part-1">previous part</a>, I went through several examples to show how different structures are interpreted in a unified way.</p><p>It turns out that every data structure is a container that holds one or more containers, which can be optionally ordered and typed. Each container indicates an optionally typed boundary and can contain zero or more nested containers of the same kind. The deepest level contains one or more literals.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!IS0t!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4c6f5f7a-41c1-456d-80b8-6fc79b42b5c2_1024x1024.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!IS0t!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4c6f5f7a-41c1-456d-80b8-6fc79b42b5c2_1024x1024.png 424w, https://substackcdn.com/image/fetch/$s_!IS0t!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4c6f5f7a-41c1-456d-80b8-6fc79b42b5c2_1024x1024.png 848w, https://substackcdn.com/image/fetch/$s_!IS0t!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4c6f5f7a-41c1-456d-80b8-6fc79b42b5c2_1024x1024.png 1272w, https://substackcdn.com/image/fetch/$s_!IS0t!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4c6f5f7a-41c1-456d-80b8-6fc79b42b5c2_1024x1024.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!IS0t!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4c6f5f7a-41c1-456d-80b8-6fc79b42b5c2_1024x1024.png" width="280" height="280" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/4c6f5f7a-41c1-456d-80b8-6fc79b42b5c2_1024x1024.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1024,&quot;width&quot;:1024,&quot;resizeWidth&quot;:280,&quot;bytes&quot;:null,&quot;alt&quot;:&quot;&quot;,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" title="" srcset="https://substackcdn.com/image/fetch/$s_!IS0t!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4c6f5f7a-41c1-456d-80b8-6fc79b42b5c2_1024x1024.png 424w, https://substackcdn.com/image/fetch/$s_!IS0t!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4c6f5f7a-41c1-456d-80b8-6fc79b42b5c2_1024x1024.png 848w, https://substackcdn.com/image/fetch/$s_!IS0t!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4c6f5f7a-41c1-456d-80b8-6fc79b42b5c2_1024x1024.png 1272w, https://substackcdn.com/image/fetch/$s_!IS0t!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4c6f5f7a-41c1-456d-80b8-6fc79b42b5c2_1024x1024.png 1456w" sizes="100vw" fetchpriority="high"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>The examples in the previous post were with CSV, XML, and JSON. These are formats for structured data. But about unstructured data? </p><p>Most of the unstructured data today is published as HTML. If Fa&#231;ade-X can unify it, then mixing data from CSV, XML, and JSON would be trivial.</p><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://www.linkandth.ink/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe&quot;,&quot;language&quot;:&quot;en&quot;}" data-component-name="SubscribeWidgetToDOM"><div class="subscription-widget show-subscribe"><div class="preamble"><p class="cta-caption">Link &amp; Think is a reader-supported publication. To receive new posts and support my work, consider becoming a free or paid subscriber.</p></div><form class="subscription-widget-subscribe"><input type="email" class="email-input" name="email" placeholder="Type your email&#8230;" tabindex="-1"><input type="submit" class="button primary" value="Subscribe"><div class="fake-input-wrapper"><div class="fake-input"></div><div class="fake-button"></div></div></form></div></div><h2><strong>The Graph Fa&#231;ade of HTML</strong></h2><p>Recently, I published <a href="https://kvistgaard.github.io/slides/">a simple HTML page</a> with links to my slide decks, scattered in different places. I&#8217;ll use this page as an example.</p><p>Running this generic construction query on it</p><pre><code><code>PREFIX fx: &lt;http://sparql.xyz/facade-x/ns/&gt;

CONSTRUCT {?s ?p ?o}
WHERE {
  SERVICE &lt;x-sparql-anything:&gt; {
        fx:properties fx:location &#8220;https://kvistgaard.github.io/slides/&#8221; ;
        fx:media-type &#8220;text/html&#8221;           .
        ?s ?p ?o
  }
}
</code></code></pre><p>will generate a graph of 241 triples, which looks like this</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!LFG9!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4c75f8a0-5d87-498e-937f-c2c412fc5b75_2038x2195.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!LFG9!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4c75f8a0-5d87-498e-937f-c2c412fc5b75_2038x2195.png 424w, https://substackcdn.com/image/fetch/$s_!LFG9!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4c75f8a0-5d87-498e-937f-c2c412fc5b75_2038x2195.png 848w, https://substackcdn.com/image/fetch/$s_!LFG9!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4c75f8a0-5d87-498e-937f-c2c412fc5b75_2038x2195.png 1272w, https://substackcdn.com/image/fetch/$s_!LFG9!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4c75f8a0-5d87-498e-937f-c2c412fc5b75_2038x2195.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!LFG9!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4c75f8a0-5d87-498e-937f-c2c412fc5b75_2038x2195.png" width="1456" height="1568" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/4c75f8a0-5d87-498e-937f-c2c412fc5b75_2038x2195.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1568,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:&quot;&quot;,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" title="" srcset="https://substackcdn.com/image/fetch/$s_!LFG9!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4c75f8a0-5d87-498e-937f-c2c412fc5b75_2038x2195.png 424w, https://substackcdn.com/image/fetch/$s_!LFG9!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4c75f8a0-5d87-498e-937f-c2c412fc5b75_2038x2195.png 848w, https://substackcdn.com/image/fetch/$s_!LFG9!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4c75f8a0-5d87-498e-937f-c2c412fc5b75_2038x2195.png 1272w, https://substackcdn.com/image/fetch/$s_!LFG9!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4c75f8a0-5d87-498e-937f-c2c412fc5b75_2038x2195.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>How come an HTML of less than 30 visible lines of hypertext produces so many triples? Well, it turns all elements into a graph and there are plenty, even in this small page. </p><p>Let&#8217;s see how many types of containers there are and their instances.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!6dQC!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F943bbe9a-55e9-4c4d-8a9f-64b3acc5a1ba_1589x2126.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!6dQC!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F943bbe9a-55e9-4c4d-8a9f-64b3acc5a1ba_1589x2126.png 424w, https://substackcdn.com/image/fetch/$s_!6dQC!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F943bbe9a-55e9-4c4d-8a9f-64b3acc5a1ba_1589x2126.png 848w, https://substackcdn.com/image/fetch/$s_!6dQC!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F943bbe9a-55e9-4c4d-8a9f-64b3acc5a1ba_1589x2126.png 1272w, https://substackcdn.com/image/fetch/$s_!6dQC!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F943bbe9a-55e9-4c4d-8a9f-64b3acc5a1ba_1589x2126.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!6dQC!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F943bbe9a-55e9-4c4d-8a9f-64b3acc5a1ba_1589x2126.png" width="1456" height="1948" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/943bbe9a-55e9-4c4d-8a9f-64b3acc5a1ba_1589x2126.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1948,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:&quot;&quot;,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" title="" srcset="https://substackcdn.com/image/fetch/$s_!6dQC!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F943bbe9a-55e9-4c4d-8a9f-64b3acc5a1ba_1589x2126.png 424w, https://substackcdn.com/image/fetch/$s_!6dQC!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F943bbe9a-55e9-4c4d-8a9f-64b3acc5a1ba_1589x2126.png 848w, https://substackcdn.com/image/fetch/$s_!6dQC!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F943bbe9a-55e9-4c4d-8a9f-64b3acc5a1ba_1589x2126.png 1272w, https://substackcdn.com/image/fetch/$s_!6dQC!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F943bbe9a-55e9-4c4d-8a9f-64b3acc5a1ba_1589x2126.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>So there is one Heading1, two Heading2, three Heading 3, 16 paragraphs and 17 hyperlinks. </p><p>Now we can ask all kinds of questions. As an illustration of one such question, let&#8217;s get all the visible content ordered, with the format type, paragraph or heading, and all hyperlinks.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!hFnk!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1db4ffa5-1c4c-4ab0-95c2-35c275cefb9e_1677x1517.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!hFnk!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1db4ffa5-1c4c-4ab0-95c2-35c275cefb9e_1677x1517.png 424w, https://substackcdn.com/image/fetch/$s_!hFnk!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1db4ffa5-1c4c-4ab0-95c2-35c275cefb9e_1677x1517.png 848w, https://substackcdn.com/image/fetch/$s_!hFnk!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1db4ffa5-1c4c-4ab0-95c2-35c275cefb9e_1677x1517.png 1272w, https://substackcdn.com/image/fetch/$s_!hFnk!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1db4ffa5-1c4c-4ab0-95c2-35c275cefb9e_1677x1517.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!hFnk!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1db4ffa5-1c4c-4ab0-95c2-35c275cefb9e_1677x1517.png" width="1456" height="1317" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/1db4ffa5-1c4c-4ab0-95c2-35c275cefb9e_1677x1517.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1317,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:&quot;&quot;,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" title="" srcset="https://substackcdn.com/image/fetch/$s_!hFnk!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1db4ffa5-1c4c-4ab0-95c2-35c275cefb9e_1677x1517.png 424w, https://substackcdn.com/image/fetch/$s_!hFnk!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1db4ffa5-1c4c-4ab0-95c2-35c275cefb9e_1677x1517.png 848w, https://substackcdn.com/image/fetch/$s_!hFnk!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1db4ffa5-1c4c-4ab0-95c2-35c275cefb9e_1677x1517.png 1272w, https://substackcdn.com/image/fetch/$s_!hFnk!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1db4ffa5-1c4c-4ab0-95c2-35c275cefb9e_1677x1517.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>This query is a bit more sophisticated because it uses relative hyperlinks, as some of the slide decks are HTML pages stored in the same repository as the page with the collection of links. At the end of the post, there will be a section with step by step guidance for those who want to reproduce these examples.</p><p>So far, we used CSV, XML, JSON and HTML. All these formats are different, and yet they have something in common: they are open standards. Sadly, a lot of information is locked in proprietary formats. And the majority of those happen to be formats of Microsoft. Can Fa&#231;ade-X help there?</p><h2><strong>Modelling the Mazes of Microsoft</strong></h2><p>To start with, Excel is an obvious choice. First, in case this needs reminding, there is a global dependence on Excel.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!W5yt!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa193c250-dcdf-453a-b674-2ebb3cfe2ffa_821x1384.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!W5yt!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa193c250-dcdf-453a-b674-2ebb3cfe2ffa_821x1384.png 424w, https://substackcdn.com/image/fetch/$s_!W5yt!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa193c250-dcdf-453a-b674-2ebb3cfe2ffa_821x1384.png 848w, https://substackcdn.com/image/fetch/$s_!W5yt!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa193c250-dcdf-453a-b674-2ebb3cfe2ffa_821x1384.png 1272w, https://substackcdn.com/image/fetch/$s_!W5yt!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa193c250-dcdf-453a-b674-2ebb3cfe2ffa_821x1384.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!W5yt!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa193c250-dcdf-453a-b674-2ebb3cfe2ffa_821x1384.png" width="296" height="498.9817295980512" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/a193c250-dcdf-453a-b674-2ebb3cfe2ffa_821x1384.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1384,&quot;width&quot;:821,&quot;resizeWidth&quot;:296,&quot;bytes&quot;:null,&quot;alt&quot;:&quot;&quot;,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" title="" srcset="https://substackcdn.com/image/fetch/$s_!W5yt!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa193c250-dcdf-453a-b674-2ebb3cfe2ffa_821x1384.png 424w, https://substackcdn.com/image/fetch/$s_!W5yt!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa193c250-dcdf-453a-b674-2ebb3cfe2ffa_821x1384.png 848w, https://substackcdn.com/image/fetch/$s_!W5yt!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa193c250-dcdf-453a-b674-2ebb3cfe2ffa_821x1384.png 1272w, https://substackcdn.com/image/fetch/$s_!W5yt!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa193c250-dcdf-453a-b674-2ebb3cfe2ffa_821x1384.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>And second, it will be easy to compare with the CSV, XML and JSON examples from the previous part.</p><p>The example data there was not random. All these people are polymaths. The other thing they have in common is that they are all known mathematicians. Some of them are also known for their work as philosophers, and others as artists. They are now all in one Excel workbook, in two separate worksheets</p><div class="captioned-image-container"><figure><a class="image-link image2" target="_blank" href="https://substackcdn.com/image/fetch/$s_!1uxh!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F38ad0ad6-846a-4528-bee1-a2df8d2e5578_2097x383.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!1uxh!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F38ad0ad6-846a-4528-bee1-a2df8d2e5578_2097x383.png 424w, https://substackcdn.com/image/fetch/$s_!1uxh!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F38ad0ad6-846a-4528-bee1-a2df8d2e5578_2097x383.png 848w, https://substackcdn.com/image/fetch/$s_!1uxh!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F38ad0ad6-846a-4528-bee1-a2df8d2e5578_2097x383.png 1272w, https://substackcdn.com/image/fetch/$s_!1uxh!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F38ad0ad6-846a-4528-bee1-a2df8d2e5578_2097x383.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!1uxh!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F38ad0ad6-846a-4528-bee1-a2df8d2e5578_2097x383.png" width="1456" height="266" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/38ad0ad6-846a-4528-bee1-a2df8d2e5578_2097x383.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:266,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:&quot;&quot;,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" title="" srcset="https://substackcdn.com/image/fetch/$s_!1uxh!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F38ad0ad6-846a-4528-bee1-a2df8d2e5578_2097x383.png 424w, https://substackcdn.com/image/fetch/$s_!1uxh!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F38ad0ad6-846a-4528-bee1-a2df8d2e5578_2097x383.png 848w, https://substackcdn.com/image/fetch/$s_!1uxh!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F38ad0ad6-846a-4528-bee1-a2df8d2e5578_2097x383.png 1272w, https://substackcdn.com/image/fetch/$s_!1uxh!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F38ad0ad6-846a-4528-bee1-a2df8d2e5578_2097x383.png 1456w" sizes="100vw" loading="lazy"></picture><div></div></div></a></figure></div><p>Fa&#231;ade-X distinguishes between a resource and a data source. A resource contains a data source, which contains one root container. In all previous cases, we had the file name as the resource. Fa&#231;ade-X turns that file name into a named graph identifier, containing the data source, the root container, containing everything else. If we look at what is generated not as triples but as quads, then the fourth element of each quad will be the named graph. If we take the first CSV and ask for the graph, we&#8217;ll get this:</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!Mrji!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe532f3dc-425f-4eb4-86fe-de12fba51e4a_1584x1271.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!Mrji!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe532f3dc-425f-4eb4-86fe-de12fba51e4a_1584x1271.png 424w, https://substackcdn.com/image/fetch/$s_!Mrji!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe532f3dc-425f-4eb4-86fe-de12fba51e4a_1584x1271.png 848w, https://substackcdn.com/image/fetch/$s_!Mrji!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe532f3dc-425f-4eb4-86fe-de12fba51e4a_1584x1271.png 1272w, https://substackcdn.com/image/fetch/$s_!Mrji!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe532f3dc-425f-4eb4-86fe-de12fba51e4a_1584x1271.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!Mrji!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe532f3dc-425f-4eb4-86fe-de12fba51e4a_1584x1271.png" width="1456" height="1168" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/e532f3dc-425f-4eb4-86fe-de12fba51e4a_1584x1271.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1168,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:&quot;&quot;,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" title="" srcset="https://substackcdn.com/image/fetch/$s_!Mrji!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe532f3dc-425f-4eb4-86fe-de12fba51e4a_1584x1271.png 424w, https://substackcdn.com/image/fetch/$s_!Mrji!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe532f3dc-425f-4eb4-86fe-de12fba51e4a_1584x1271.png 848w, https://substackcdn.com/image/fetch/$s_!Mrji!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe532f3dc-425f-4eb4-86fe-de12fba51e4a_1584x1271.png 1272w, https://substackcdn.com/image/fetch/$s_!Mrji!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe532f3dc-425f-4eb4-86fe-de12fba51e4a_1584x1271.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>It can be read as: subject-predicate-object-context.</p><p>But if we do that on an Excel workbook, we get something more interesting.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!W3O_!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F48e8c976-cb2e-4446-b9c3-4ef888b84bd9_2271x2386.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!W3O_!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F48e8c976-cb2e-4446-b9c3-4ef888b84bd9_2271x2386.png 424w, https://substackcdn.com/image/fetch/$s_!W3O_!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F48e8c976-cb2e-4446-b9c3-4ef888b84bd9_2271x2386.png 848w, https://substackcdn.com/image/fetch/$s_!W3O_!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F48e8c976-cb2e-4446-b9c3-4ef888b84bd9_2271x2386.png 1272w, https://substackcdn.com/image/fetch/$s_!W3O_!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F48e8c976-cb2e-4446-b9c3-4ef888b84bd9_2271x2386.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!W3O_!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F48e8c976-cb2e-4446-b9c3-4ef888b84bd9_2271x2386.png" width="1456" height="1530" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/48e8c976-cb2e-4446-b9c3-4ef888b84bd9_2271x2386.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1530,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:&quot;&quot;,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" title="" srcset="https://substackcdn.com/image/fetch/$s_!W3O_!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F48e8c976-cb2e-4446-b9c3-4ef888b84bd9_2271x2386.png 424w, https://substackcdn.com/image/fetch/$s_!W3O_!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F48e8c976-cb2e-4446-b9c3-4ef888b84bd9_2271x2386.png 848w, https://substackcdn.com/image/fetch/$s_!W3O_!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F48e8c976-cb2e-4446-b9c3-4ef888b84bd9_2271x2386.png 1272w, https://substackcdn.com/image/fetch/$s_!W3O_!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F48e8c976-cb2e-4446-b9c3-4ef888b84bd9_2271x2386.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>The resource we query is partitioned into two resources, which Fa&#231;ade-X will interpret as two named graphs. Each of them contains a data source &#8212; the root &#8212; which contains the triplified content of each spreadsheet. Here is the resulting graph TriG format, where the containment structure will be easier to see:</p><pre><code><code>@prefix xyz:  &lt;http://sparql.xyz/facade-x/data/&gt; .
@prefix rdf:  &lt;http://www.w3.org/1999/02/22-rdf-syntax-ns#&gt; .
@prefix fx:   &lt;http://sparql.xyz/facade-x/ns/&gt; .
@prefix xsd:  &lt;http://www.w3.org/2001/XMLSchema#&gt; .

&lt;file:///C:/example-datasets/mathematicians.xlsx#artists&gt; {
  [ rdf:type fx:root .
    rdf:_1 [ xyz:birthYear &#8220;1404&#8221;^^xsd:int ; 
             xyz:name &#8220;Leon Battista Alberti&#8221; ] ;
    rdf:_2 [ xyz:birthYear &#8220;1471&#8221;^^xsd:int ; 
             xyz:name &#8220;Albrecht D&#252;rer&#8221; ] ;
    rdf:_3 [ xyz:birthYear &#8220;1930&#8221;^^xsd:int ; 
             xyz:name &#8220;Anthony Hill&#8221; ] ;
  ]
}

&lt;file:///C:/example-datasets/mathematicians.xlsx#philosophers&gt; {
  [ rdf:type fx:root .
    rdf:_1 [ xyz:birthYear &#8220;1861&#8221;^^xsd:int ; 
             xyz:name &#8220;Alfred North Whitehead&#8221; ] ;
    rdf:_2 [ xyz:birthYear &#8220;1596&#8221;^^xsd:int ; 
             xyz:name &#8220;Ren&#233; Descartes&#8221; ] ;
    rdf:_3 [ xyz:birthYear &#8220;1623&#8221;^^xsd:int ; 
             xyz:name &#8220;Blaise Pascal&#8221; ] ;
  ]
}
</code></code></pre><p>We got this containment pattern: { [ [ ][ ][ ] ] }. </p><p>Next up is Word. Similar to HTML, it contains a sequence of headings, paragraphs and other elements such as bullets and tables. </p><p>What is more interesting, and sets MS Word apart, are the comments. Interestingly, MS Word has been notoriously bad at extracting comments, and I often use SPARQL Anything to get them out.</p><p>Fa&#231;ade-X sees each comment as a container, containing containers with the comment author, the comment text, and the thread number. In the last section, I&#8217;ll share the query that will get the comment, the text of the comment, and the comment author.</p><p>Next up is PowerPoint. A PowerPoint slide-deck contains sections (optionally), containing slides, with their title and other content. I&#8217;m rarely using PowerPoint for workshops and conference presentations anymore, but I still use it for my training courses. These course materials are full of hyperlinks. And getting them together with their slide and what object they were on, used to be a challenge. PowerPoint itself offered no help for that. And today, in 2025, there is no out-of-the-box way to do that.</p><p>You may ask, what about Copilot? It&#8217;s useless so far.<a class="footnote-anchor" data-component-name="FootnoteAnchorToDOM" id="footnote-anchor-1" href="#footnote-1" target="_self">1</a></p><div class="bluesky-wrap outer" style="height: auto; display: flex; margin-bottom: 24px;" data-attrs="{&quot;postId&quot;:&quot;3li5cdo24nk2l&quot;,&quot;authorDid&quot;:&quot;did:plc:ij6qgzlhgjg2fie4lgt4inmz&quot;,&quot;authorName&quot;:&quot;Ivo&quot;,&quot;authorHandle&quot;:&quot;velitchkov.eu&quot;,&quot;authorAvatarUrl&quot;:&quot;https://cdn.bsky.app/img/avatar/plain/did:plc:ij6qgzlhgjg2fie4lgt4inmz/bafkreidvnbdvmkl73hop3wbvmdx4up2t6ekljmffvts6sqkyfigstyf6ga@jpeg&quot;,&quot;text&quot;:&quot;Who am I to argue?\n\n(I mean, seriously, it's your Copilot working inside your tool Powerpoint. How hard can it be? And it's not for the lack of investments or experience)&quot;,&quot;createdAt&quot;:&quot;2025-02-14T13:23:07.228Z&quot;,&quot;uri&quot;:&quot;at://did:plc:ij6qgzlhgjg2fie4lgt4inmz/app.bsky.feed.post/3li5cdo24nk2l&quot;,&quot;imageUrls&quot;:[&quot;https://cdn.bsky.app/img/feed_thumbnail/plain/did:plc:ij6qgzlhgjg2fie4lgt4inmz/bafkreicroh3lkkm7cyoq6lg2zzgafrbcezaelzi6oaxdp55djpefq5iy4e@jpeg&quot;]}" data-component-name="BlueskyCreateBlueskyEmbed"><iframe id="bluesky-3li5cdo24nk2l" data-bluesky-id="811834471881915" src="https://embed.bsky.app/embed/did:plc:ij6qgzlhgjg2fie4lgt4inmz/app.bsky.feed.post/3li5cdo24nk2l?id=811834471881915" width="100%" style="display: block; flex-grow: 1;" frameborder="0" scrolling="no"></iframe></div><p>And what about Claude Code? I tried today to get the links with it. The initial answer was wrong. After some minutes and tokens spent and kWh energy consumed, it finally got it right, and produced a CSV listing the hyperlinks and on which slide or speaker note they are.</p><p>Yet, SPARQL Anything does it right away, reliably, efficiently and even the query needed is very short.<a class="footnote-anchor" data-component-name="FootnoteAnchorToDOM" id="footnote-anchor-2" href="#footnote-2" target="_self">2</a> </p><h2><strong>One query, many quarries</strong></h2><p>SPARQL queries RDF graphs exposed via a SPARQL endpoint. But importantly, one query can get and combine data from several independent endpoints. SPARQL Anything extends the use of the SERVICE clause so that the address of each resource becomes an endpoint that can be queried, be that in your file system, or somewhere on the web. </p><p>But what about REST APIs?</p><p>Here&#8217;s an example of a query getting the issues from one the repositories of the Model Content Protocol using the GitHub API:</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!z2lP!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8dffab16-be37-415c-baa5-459f74295122_2774x1651.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!z2lP!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8dffab16-be37-415c-baa5-459f74295122_2774x1651.png 424w, https://substackcdn.com/image/fetch/$s_!z2lP!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8dffab16-be37-415c-baa5-459f74295122_2774x1651.png 848w, https://substackcdn.com/image/fetch/$s_!z2lP!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8dffab16-be37-415c-baa5-459f74295122_2774x1651.png 1272w, https://substackcdn.com/image/fetch/$s_!z2lP!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8dffab16-be37-415c-baa5-459f74295122_2774x1651.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!z2lP!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8dffab16-be37-415c-baa5-459f74295122_2774x1651.png" width="1456" height="867" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/8dffab16-be37-415c-baa5-459f74295122_2774x1651.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:867,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:&quot;&quot;,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" title="" srcset="https://substackcdn.com/image/fetch/$s_!z2lP!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8dffab16-be37-415c-baa5-459f74295122_2774x1651.png 424w, https://substackcdn.com/image/fetch/$s_!z2lP!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8dffab16-be37-415c-baa5-459f74295122_2774x1651.png 848w, https://substackcdn.com/image/fetch/$s_!z2lP!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8dffab16-be37-415c-baa5-459f74295122_2774x1651.png 1272w, https://substackcdn.com/image/fetch/$s_!z2lP!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8dffab16-be37-415c-baa5-459f74295122_2774x1651.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>So, going back to what I started with in Part 1:</p><blockquote><p>The problem comes when you need to answer a question, where parts of the answer are scattered across heterogeneous data sources. One part of the answer may happen to be in a JSON file, served from an API, another is in an Excel workbook, stored in your drive, and yet others are in Microsoft Word, CSV and XML.</p></blockquote><p>Now, in one query, one SERVICE clause can direct part of the query to a local MS Word file, another to a CSV file on the web and a third, to some API, not even counting the trivial case of querying conventional SPARQL endpoints.</p><p>One real use case when SPARQL Anything saved me lot of time was when I was reviewing a project deliverable with data quality rules, each based on a property from a domain ontology that gave semantics to the graph the rules were designed for. </p><p>These rules were put in a table, and tables can be neatly triplified by constructing a property from the column literal. The subject is the row, the predicate is the constructed URI from the column label, and the object is whatever is in the respective cell.</p><p>Here&#8217;s a generalized version of that federated query:</p><pre><code><code>SELECT DISTINCT ?ep 
WHERE {
    SERVICE &lt;x-sparql-anything:&gt; # calls the remote ontology file
            { fx:properties
                        fx:location    &#8220;http://example.org/ontology.ttl&#8221;;
                        fx:media-type  &#8220;text/turtle&#8221; .
      { ?ep rdf:type owl:ObjectProperty .  } UNION
      { ?ep rdf:type owl:DatatypeProperty .  }
    }

  FILTER NOT EXISTS {       
    SERVICE &lt;x-sparql-anything:&gt; #calls the local MS Word file
            { fx:properties
                        fx:location &#8220;file:///C:/example.docx&#8221; ;
                        fx:media-type  &#8220;application/vnd.openxmlformats-officedocument.wordprocessingml.document&#8221; ;
                        fx:docs.table-headers true ; #tells the engine to cretae proeprties from the table headers
                        .
          ?s ?p [xyz:Property ?epQ] # In case the column of interest is with header &#8220;Property&#8221;

          }
 FILTER CONTAINS (STR(?epQ), STR(?ep))
   }
}
</code></code></pre><h2><strong>The future of Fa&#231;ade-X</strong></h2><p>At the moment of writing, SPARQL Anything, the reference implementation of Fa&#231;ade-X, can support the following formats: XML, JSON, CSV, HTML, Excel, Text, Binary, EXIF, File System, Zip/Tar, Markdown, YAML, Bibtex, DOCx, PPTX. <a href="https://github.com/SPARQL-Anything/sparql.anything#supported-formats">Here</a> you can check out the documentation of each format. One data source still not officially supported is SQL, but that will come in the future. Until then, there is a <a href="https://github.com/justin2004/weblog/blob/master/relational_as_graph/README.md">workaround</a>.</p><p>Recently, a <a href="https://www.w3.org/groups/cg/facade-x/">W3C community group</a> for Data Fa&#231;ades was created, to standardize and further develop the Fa&#231;ade-X and allow for other implementations besides the current SPARQL Anything.</p><h2><strong>A step-by-step tutorial</strong></h2><p>There are already some good tutorials on the website of SPARQL Anything. But if you&#8217;d like to reproduce the examples from these two posts, here&#8217;s a step-by-step guide which you can follow without knowing SPARQL.</p>
      <p>
          <a href="https://www.linkandth.ink/p/universal-data-facade-part-2">
              Read more
          </a>
      </p>
   ]]></content:encoded></item><item><title><![CDATA[Universal Data Façade (Part 1)]]></title><description><![CDATA[Containment as the Grammar of Data Structure]]></description><link>https://www.linkandth.ink/p/universal-data-facade-part-1</link><guid isPermaLink="false">https://www.linkandth.ink/p/universal-data-facade-part-1</guid><dc:creator><![CDATA[Ivo Velitchkov]]></dc:creator><pubDate>Tue, 21 Oct 2025 11:15:20 GMT</pubDate><enclosure url="https://substack-post-media.s3.amazonaws.com/public/images/ff8f9891-b4c2-4a8d-bee9-644eb01ce82b_1024x1024.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>Data formats evolve as solutions to specific problems. They combine structure and semantics in their own unique way. That&#8217;s how we now have many different species of data formats. Each has its strengths and weaknesses. None is universally good, and none is bad in all application cases.</p><p>The problem comes when you need to answer a question, where parts of the answer are scattered across heterogeneous data sources.  One part of the answer may happen to be in a JSON file, served from an API, another is in an Excel workbook, stored in your drive, and yet others are in Microsoft Word, CSV and XML. This is challenging even when all the files are with the same format, but structured differently.</p><p>The problem then is, how to unify structure and semantics from heterogeneous data sources.</p><p>This question wraps two other questions: Which universal representation can best carry the information coming from diverse sources, and how to transform different data formats into it?</p><p><em>This is the fourth post in the <a href="https://www.linkandth.ink/p/containment-series">Containment series</a>.</em></p><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://www.linkandth.ink/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe&quot;,&quot;language&quot;:&quot;en&quot;}" data-component-name="SubscribeWidgetToDOM"><div class="subscription-widget show-subscribe"><div class="preamble"><p class="cta-caption">Link &amp; Think is a reader-supported publication. To receive new posts and support my work, consider becoming a free or paid subscriber.</p></div><form class="subscription-widget-subscribe"><input type="email" class="email-input" name="email" placeholder="Type your email&#8230;" tabindex="-1"><input type="submit" class="button primary" value="Subscribe"><div class="fake-input-wrapper"><div class="fake-input"></div><div class="fake-button"></div></div></form></div></div><p>The answer to the first question is easy: RDF. That&#8217;s the only interoperable way of representing data where the semantics do not depend on the structure. Any meaning can be represented with a structure that is always the same: a triple. Unlike tables, for example, where adding another column changes the structure, in RDF, adding a new characteristic about an existing entity or a new entity with a fact about it, is always done by adding a triple. You can&#8217;t add just a single entity or a single value. The atomic unit is the triple.</p><p>This makes triples are similar to containment. In the same way containment is defined as unity of outside-boundary-inside, a triple is defined by its subject-predicate-object combination. </p><p>Bringing several graphs together creates another valid graph. And the use of global identifiers makes RDF graphs self-assembling structures. There are other important benefits of RDF, which I explored in <a href="https://www.linkandth.ink/p/liberating-cohesion-via-rdf">another essay</a>.</p><p>The answer to the second question is not so easy. Or at least it wasn&#8217;t until recently.</p><p>Transforming from a non-RDF to RDF source involves three transformations: transforming identities (from local to URIs), unifying structures (from whatever to a triple), and applying domain semantics (mapping properties and classes from shared ontologies). Initially, all approaches did all three transformations in one stage.</p><h2><strong>A Brief History of RDFizing</strong></h2><p>Early transformations began with XSLT in the late 1990s. XSLT is designed to transform one XML structure into another. Though not RDF-specific, it was soon used to convert XML data into RDF/XML by encoding triples within templates. XSLT&#8217;s power lies in precise control of XML trees, but it lacks native RDF semantics and becomes cumbersome for complex mappings.</p><p>R2RML (W3C Recommendation from 2012) marked the first standard specifically for relational-to-RDF transformation. It defines mappings from relational databases to RDF graphs via declarative rules expressed in RDF itself. Each logical table, column, or join is mapped to RDF subjects, predicates, and objects. R2RML offered formal grounding and interoperability, but it is limited to relational data.</p><p>To generalize R2RML&#8217;s logic beyond relational sources, the RDF Mapping Language (RML) emerged in 2014 as a community-driven extension. RML extended R2RML, adding support for CSV, XML, and JSON. However, RML can be verbose and performance-heavy for large or dynamic datasets. It requires good knowledge of the data sources and the technologies needed to query them. At the same time, it lacks hash functions, which are essential for constructing deterministic and reliable identifiers.</p><p>Around 2017, SPARQL Generate appeared. It extends SPARQL with <code>GENERATE</code>, <code>SOURCE</code>, and <code>ITERATOR</code> clauses to create RDF from diverse input formats such as JSON, CSV, XML, or HTML. Its logic unifies querying and transformation within a single syntax, offering strong expressive power and dynamic control, yet relying on custom extensions not part of the SPARQL standard.</p><p>All these approaches perform the transformation of identity, structure and semantics in one stage.</p><p>In 2018, OTTR (Reasonable Ontology Templates) shifted focus from mapping to portable templating. It defines parameterized RDF graph templates that can be expanded into concrete RDF structures. Rather than linking to input formats, OTTR standardizes reusable RDF pattern generation, promoting consistency, maintainability, and reusability. It does not handle data extraction directly (works on RDF), but the tools that support it do that, and in this way, separate the stage of generic identity and structure creation from applying domain semantics.</p><p>Then in 2021 SPARQL Anything appeared. It introduced a minimalistic model Fa&#231;ade-X, that presents any data structure as RDF, which can then be manipulated with native SPARQL. Importantly, it does so without extending SPARQL and without requiring experience with the source structure. </p><p>Fa&#231;ade-X demonstrates that what is common to all structures is, yes, you guessed it, containment.</p><h2><strong>All data is structured as nested containers</strong></h2><p>A Word document contains headings containing paragraphs, bullets, tables and images. An Excel workbook contains spreadsheets containing cells. A PowerPoint slidedeck contains slides, containing titles, text, bullets, hyperlinks and images. An XML file contains elements containing attributes, text nodes, and other nested elements, forming a hierarchical tree structure defined by tags. A JSON file contains objects containing key&#8211;value pairs and arrays, which in turn contain other objects, arrays, or primitive values such as strings and numbers.</p><p>Fa&#231;ade-X interprets every data source as a container, containing key-value pairs. The keys are either generic containment relations or specific RDF properties. The values are either other containers or literals (strings, numbers, dates etc).</p><p>Let&#8217;s start with the primitive case, a CSV consisting of a single row with the following values: mathematician, philosopher, logician, physicist.</p><p>Fa&#231;ade-X will see it as a container, containing one key value pair, the value of which is another container, containing four key-value pairs, the values being the four words. All keys in this case will only indicate order.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!FWcc!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F100c31c1-fb3f-439e-b8ee-e31a06380205_617x405.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!FWcc!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F100c31c1-fb3f-439e-b8ee-e31a06380205_617x405.png 424w, https://substackcdn.com/image/fetch/$s_!FWcc!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F100c31c1-fb3f-439e-b8ee-e31a06380205_617x405.png 848w, https://substackcdn.com/image/fetch/$s_!FWcc!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F100c31c1-fb3f-439e-b8ee-e31a06380205_617x405.png 1272w, https://substackcdn.com/image/fetch/$s_!FWcc!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F100c31c1-fb3f-439e-b8ee-e31a06380205_617x405.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!FWcc!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F100c31c1-fb3f-439e-b8ee-e31a06380205_617x405.png" width="421" height="276.3452188006483" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/100c31c1-fb3f-439e-b8ee-e31a06380205_617x405.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:405,&quot;width&quot;:617,&quot;resizeWidth&quot;:421,&quot;bytes&quot;:null,&quot;alt&quot;:&quot;&quot;,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" title="" srcset="https://substackcdn.com/image/fetch/$s_!FWcc!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F100c31c1-fb3f-439e-b8ee-e31a06380205_617x405.png 424w, https://substackcdn.com/image/fetch/$s_!FWcc!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F100c31c1-fb3f-439e-b8ee-e31a06380205_617x405.png 848w, https://substackcdn.com/image/fetch/$s_!FWcc!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F100c31c1-fb3f-439e-b8ee-e31a06380205_617x405.png 1272w, https://substackcdn.com/image/fetch/$s_!FWcc!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F100c31c1-fb3f-439e-b8ee-e31a06380205_617x405.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>Next, a more complicated CSV:</p><pre><code><code>name,birthYear
Albrecht D&#252;rer,1471
Anthony Hill,1930
</code></code></pre><p>Every CSV file is an ordered sequence of records where each record is an ordered sequence of values. The first record in this example contains headers. Fa&#231;ade-X (SPARQL Anything) has a parameter telling it if the table has headers. Then it will see this CSV as a container containing two containers, each containing key-value pairs with keys, constructed from the headers and values, the respective fields. Here&#8217;s how this looks:</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!ofWj!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F459768a0-36f3-44bc-91a4-82c0124a4976_880x755.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!ofWj!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F459768a0-36f3-44bc-91a4-82c0124a4976_880x755.png 424w, https://substackcdn.com/image/fetch/$s_!ofWj!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F459768a0-36f3-44bc-91a4-82c0124a4976_880x755.png 848w, https://substackcdn.com/image/fetch/$s_!ofWj!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F459768a0-36f3-44bc-91a4-82c0124a4976_880x755.png 1272w, https://substackcdn.com/image/fetch/$s_!ofWj!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F459768a0-36f3-44bc-91a4-82c0124a4976_880x755.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!ofWj!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F459768a0-36f3-44bc-91a4-82c0124a4976_880x755.png" width="386" height="331.17045454545456" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/459768a0-36f3-44bc-91a4-82c0124a4976_880x755.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:755,&quot;width&quot;:880,&quot;resizeWidth&quot;:386,&quot;bytes&quot;:null,&quot;alt&quot;:&quot;&quot;,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" title="" srcset="https://substackcdn.com/image/fetch/$s_!ofWj!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F459768a0-36f3-44bc-91a4-82c0124a4976_880x755.png 424w, https://substackcdn.com/image/fetch/$s_!ofWj!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F459768a0-36f3-44bc-91a4-82c0124a4976_880x755.png 848w, https://substackcdn.com/image/fetch/$s_!ofWj!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F459768a0-36f3-44bc-91a4-82c0124a4976_880x755.png 1272w, https://substackcdn.com/image/fetch/$s_!ofWj!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F459768a0-36f3-44bc-91a4-82c0124a4976_880x755.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>Now let&#8217;s have a similar structure, in XML, but a bit more expressive:</p><div class="highlighted_code_block" data-attrs="{&quot;language&quot;:&quot;xml&quot;,&quot;nodeId&quot;:null}" data-component-name="HighlightedCodeBlockToDOM"><pre class="shiki"><code class="language-xml">&lt;people&gt;
  &lt;person&gt;
    &lt;name&gt;Ren&#233; Descartes&lt;/name&gt;
    &lt;birthYear&gt;1596&lt;/birthYear&gt;
  &lt;/person&gt;
  &lt;person&gt;
    &lt;name&gt;Blaise Pascal&lt;/name&gt;
    &lt;birthYear&gt;1623&lt;/birthYear&gt;
  &lt;/person&gt;
&lt;/people&gt;</code></pre></div><p>Fa&#231;ade-X will see this as the following RDF</p><pre><code><code>@prefix xyz:  &lt;http://sparql.xyz/facade-x/data/&gt; .
@prefix rdf:  &lt;http://www.w3.org/1999/02/22-rdf-syntax-ns#&gt; .
@prefix fx:   &lt;http://sparql.xyz/facade-x/ns/&gt; .
@prefix rdfs: &lt;http://www.w3.org/2000/01/rdf-schema#&gt; .

[
  rdf:type fx:root ;
  rdf:type fx:people ;
  rdf:_1 [rdf:type xyz:person ;
          rdf:_1 [rdf:type xyz:name ;
                  rdf:_1 &#8220;Ren&#233; Descartes&#8221;] ;
          rdf:_2 [rdf:type xyz:birthYear ;
                  rdf:_1 &#8220;1596&#8221;]
        ] ;
  rdf:_2 [rdf:type xyz:person ;
          rdf:_1 [rdf:type xyz:name ;
                  rdf:_1 &#8220;Blaise Pascal&#8221;] ;
          rdf:_2 [rdf:type xyz:birthYear ;
                  rdf:_1 &#8220;1623&#8221;]
        ]
] .
</code></code></pre><p>Using blank nodes is optional, but the square brackets beautifully show the containers and how they are nested. There is one outer container. To distinguish it from the rest it is typed <code>fx:root</code>. In this case it is also typed as <code>fx:people</code>, an URI constructed from label of the respective source XML container.</p><p>Now we have three levels of nested containers, all of them typed.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!clua!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Feb43c95d-a10d-4424-8956-cacca0ce6504_1016x740.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!clua!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Feb43c95d-a10d-4424-8956-cacca0ce6504_1016x740.png 424w, https://substackcdn.com/image/fetch/$s_!clua!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Feb43c95d-a10d-4424-8956-cacca0ce6504_1016x740.png 848w, https://substackcdn.com/image/fetch/$s_!clua!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Feb43c95d-a10d-4424-8956-cacca0ce6504_1016x740.png 1272w, https://substackcdn.com/image/fetch/$s_!clua!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Feb43c95d-a10d-4424-8956-cacca0ce6504_1016x740.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!clua!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Feb43c95d-a10d-4424-8956-cacca0ce6504_1016x740.png" width="524" height="381.65354330708664" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/eb43c95d-a10d-4424-8956-cacca0ce6504_1016x740.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:740,&quot;width&quot;:1016,&quot;resizeWidth&quot;:524,&quot;bytes&quot;:null,&quot;alt&quot;:&quot;&quot;,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" title="" srcset="https://substackcdn.com/image/fetch/$s_!clua!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Feb43c95d-a10d-4424-8956-cacca0ce6504_1016x740.png 424w, https://substackcdn.com/image/fetch/$s_!clua!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Feb43c95d-a10d-4424-8956-cacca0ce6504_1016x740.png 848w, https://substackcdn.com/image/fetch/$s_!clua!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Feb43c95d-a10d-4424-8956-cacca0ce6504_1016x740.png 1272w, https://substackcdn.com/image/fetch/$s_!clua!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Feb43c95d-a10d-4424-8956-cacca0ce6504_1016x740.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>Let&#8217;s use the list we started with and include it in the structure. This time, let&#8217;s render that in JSON.</p><div class="highlighted_code_block" data-attrs="{&quot;language&quot;:&quot;json&quot;,&quot;nodeId&quot;:null}" data-component-name="HighlightedCodeBlockToDOM"><pre class="shiki"><code class="language-json">[
  {
    &#8220;name&#8221;: &#8220;Alfred North Whitehead&#8221;,
    &#8220;occupations&#8221;: [&#8221;mathematician&#8221;, &#8220;philosopher&#8221;, &#8220;logician&#8221;, &#8220;physicist&#8221;],
    &#8220;birthYear&#8221;: 1861
  },
  {
    &#8220;name&#8221;: &#8220;Anthony Hill&#8221;,
    &#8220;occupations&#8221;: [&#8221;artist&#8221;, &#8220;mathematician&#8221;],
    &#8220;birthYear&#8221;: 1930
  }
]</code></pre></div><p>From this input, Fa&#231;ade-X, with the help of SPARQL Anything, will produce the following RDF:</p><pre><code><code>@prefix xyz:  &lt;http://sparql.xyz/facade-x/data/&gt; .
@prefix rdf:  &lt;http://www.w3.org/1999/02/22-rdf-syntax-ns#&gt; .
@prefix fx:   &lt;http://sparql.xyz/facade-x/ns/&gt; .
@prefix rdfs: &lt;http://www.w3.org/2000/01/rdf-schema#&gt; .

[
  rdf:type fx:root ;
  rdf:_1 [xyz:name      &#8220;Alfred North Whitehead&#8221; ;
          xyz:birthYear &#8220;1861&#8221;^^&lt;http://www.w3.org/2001/XMLSchema#int&gt; ;
          xyz:occupations [rdf:_1 &#8220;mathematician&#8221; ;
                           rdf:_2 &#8220;philosopher&#8221; ;
                           rdf:_3 &#8220;logician&#8221; ;
                           rdf:_4 &#8220;physicist&#8221;]
        ] ;
  rdf:_2 [xyz:name      &#8220;Anthony Hill&#8221; ;
          xyz:birthYear &#8220;1930&#8221;^^&lt;http://www.w3.org/2001/XMLSchema#int&gt; ;
          xyz:occupations [rdf:_1 &#8220;artist&#8221; ;
                           rdf:_2 &#8220;mathematician&#8221;
                          ]
          ] .
]
</code></code></pre><p>Which, as a visual graph, looks like this:</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!Ewqg!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F40caf7ee-affa-47e6-a401-f4514bd4aaea_2791x1834.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!Ewqg!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F40caf7ee-affa-47e6-a401-f4514bd4aaea_2791x1834.png 424w, https://substackcdn.com/image/fetch/$s_!Ewqg!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F40caf7ee-affa-47e6-a401-f4514bd4aaea_2791x1834.png 848w, https://substackcdn.com/image/fetch/$s_!Ewqg!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F40caf7ee-affa-47e6-a401-f4514bd4aaea_2791x1834.png 1272w, https://substackcdn.com/image/fetch/$s_!Ewqg!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F40caf7ee-affa-47e6-a401-f4514bd4aaea_2791x1834.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!Ewqg!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F40caf7ee-affa-47e6-a401-f4514bd4aaea_2791x1834.png" width="1456" height="957" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/40caf7ee-affa-47e6-a401-f4514bd4aaea_2791x1834.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:957,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:&quot;&quot;,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" title="" srcset="https://substackcdn.com/image/fetch/$s_!Ewqg!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F40caf7ee-affa-47e6-a401-f4514bd4aaea_2791x1834.png 424w, https://substackcdn.com/image/fetch/$s_!Ewqg!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F40caf7ee-affa-47e6-a401-f4514bd4aaea_2791x1834.png 848w, https://substackcdn.com/image/fetch/$s_!Ewqg!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F40caf7ee-affa-47e6-a401-f4514bd4aaea_2791x1834.png 1272w, https://substackcdn.com/image/fetch/$s_!Ewqg!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F40caf7ee-affa-47e6-a401-f4514bd4aaea_2791x1834.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>where _:b1 to _:b5 are local densifiers of the same blank nodes, which in Turtle are represented with <code>[ ]</code>. The same structure, shown as nested containers, will look like this:</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!HKii!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8d1e4817-5f6e-4cae-a9ea-0eed0497fc24_1007x1213.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!HKii!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8d1e4817-5f6e-4cae-a9ea-0eed0497fc24_1007x1213.png 424w, https://substackcdn.com/image/fetch/$s_!HKii!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8d1e4817-5f6e-4cae-a9ea-0eed0497fc24_1007x1213.png 848w, https://substackcdn.com/image/fetch/$s_!HKii!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8d1e4817-5f6e-4cae-a9ea-0eed0497fc24_1007x1213.png 1272w, https://substackcdn.com/image/fetch/$s_!HKii!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8d1e4817-5f6e-4cae-a9ea-0eed0497fc24_1007x1213.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!HKii!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8d1e4817-5f6e-4cae-a9ea-0eed0497fc24_1007x1213.png" width="548" height="660.1032770605759" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/8d1e4817-5f6e-4cae-a9ea-0eed0497fc24_1007x1213.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1213,&quot;width&quot;:1007,&quot;resizeWidth&quot;:548,&quot;bytes&quot;:null,&quot;alt&quot;:&quot;&quot;,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" title="" srcset="https://substackcdn.com/image/fetch/$s_!HKii!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8d1e4817-5f6e-4cae-a9ea-0eed0497fc24_1007x1213.png 424w, https://substackcdn.com/image/fetch/$s_!HKii!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8d1e4817-5f6e-4cae-a9ea-0eed0497fc24_1007x1213.png 848w, https://substackcdn.com/image/fetch/$s_!HKii!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8d1e4817-5f6e-4cae-a9ea-0eed0497fc24_1007x1213.png 1272w, https://substackcdn.com/image/fetch/$s_!HKii!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8d1e4817-5f6e-4cae-a9ea-0eed0497fc24_1007x1213.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>It turns out that every data structure is a container that holds one or more containers, which can be optionally ordered and typed. Each container indicates an optionally typed boundary and can contain zero or more nested containers of the same kind. The deepest level contains one or more literals.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!4cza!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F78945769-fd3a-4c6d-9d25-70a69a6b0972_1024x1024.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!4cza!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F78945769-fd3a-4c6d-9d25-70a69a6b0972_1024x1024.png 424w, https://substackcdn.com/image/fetch/$s_!4cza!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F78945769-fd3a-4c6d-9d25-70a69a6b0972_1024x1024.png 848w, https://substackcdn.com/image/fetch/$s_!4cza!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F78945769-fd3a-4c6d-9d25-70a69a6b0972_1024x1024.png 1272w, https://substackcdn.com/image/fetch/$s_!4cza!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F78945769-fd3a-4c6d-9d25-70a69a6b0972_1024x1024.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!4cza!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F78945769-fd3a-4c6d-9d25-70a69a6b0972_1024x1024.png" width="340" height="340" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/78945769-fd3a-4c6d-9d25-70a69a6b0972_1024x1024.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1024,&quot;width&quot;:1024,&quot;resizeWidth&quot;:340,&quot;bytes&quot;:1764432,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://www.linkandth.ink/i/176497688?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F78945769-fd3a-4c6d-9d25-70a69a6b0972_1024x1024.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!4cza!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F78945769-fd3a-4c6d-9d25-70a69a6b0972_1024x1024.png 424w, https://substackcdn.com/image/fetch/$s_!4cza!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F78945769-fd3a-4c6d-9d25-70a69a6b0972_1024x1024.png 848w, https://substackcdn.com/image/fetch/$s_!4cza!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F78945769-fd3a-4c6d-9d25-70a69a6b0972_1024x1024.png 1272w, https://substackcdn.com/image/fetch/$s_!4cza!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F78945769-fd3a-4c6d-9d25-70a69a6b0972_1024x1024.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>Will that hold for all structures? So far, it has worked with CSV, XML and JSON. But what about HTML or MS Word? Or PowerPoint. We&#8217;ll see that in <a href="https://www.linkandth.ink/p/universal-data-facade-part-2">Part 2</a>. </p>]]></content:encoded></item><item><title><![CDATA[Boundary Logic]]></title><description><![CDATA[If you could design math and computing from scratch, what would it look like?]]></description><link>https://www.linkandth.ink/p/boundary-logic</link><guid isPermaLink="false">https://www.linkandth.ink/p/boundary-logic</guid><dc:creator><![CDATA[Ivo Velitchkov]]></dc:creator><pubDate>Tue, 14 Oct 2025 14:25:25 GMT</pubDate><enclosure url="https://substack-post-media.s3.amazonaws.com/public/images/81ac82bb-1b9c-4e65-8f7f-4012cb71a37f_1024x1024.jpeg" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>If you could design math and computing from scratch and without assumptions, what would it look like?</p><p>Here&#8217;s one recipe: move away from abstract symbols and use one relation, that of containment. That&#8217;s what boundary math, logic, and unary computing based on them do.</p><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://www.linkandth.ink/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe now&quot;,&quot;action&quot;:null,&quot;class&quot;:null}" data-component-name="ButtonCreateButton"><a class="button primary" href="https://www.linkandth.ink/subscribe?"><span>Subscribe now</span></a></p><p><em>This is the third post in the <a href="https://www.linkandth.ink/p/containment-series">Containment series</a>. Containment, besides being the very architecture of our material world, is a fundamental organizing principle of life, language, and thought. <a href="https://www.linkandth.ink/p/containers-all-the-way-down">The first essay</a> reviews all kinds of containers, from the biological cell to the physical and metaphorical containers we create. It ends with a review of containment in philosophy and logic. The final part is expanded in the <a href="https://www.linkandth.ink/p/perfect-continence">second essay</a>, delving into the Calculus of Indications by George Spencer-Brown, as described in his book Laws of Form. That book has inspired people across various fields: mathematics, biology, psychology, cybernetics, philosophy, music, cognitive sciences, computer science, and social sciences. One prominent non-symbolic system for rigorous thinking, heavily influenced by Laws of Form, is the Boundary Math. This current post, third in the series, provides a glimpse at that system. The Boundary Math (aka Iconic Math) was developed by William Bricken with contributions from Jeffrey James and Louis Kauffman.</em></p><p>What is Boundary Math (aka Iconic Math)? William Bricken explains:</p><blockquote><p>Iconic math is rigorous thinking that looks and feels like what it is intended to mean. Postsymbolic thought is embodied experience. Our topic for the moment then is the deconstruction of common arithmetic based on the formal principles first developed by Spencer Brown, with the American philosopher Charles S. Peirce laying the groundwork at the turn of the twentieth century, and with our nomadic ancestors over 30,000 years ago providing tallies as the original substance from which numbers sprang.</p></blockquote><p>The remaining part of the post presents some features of this system.</p><h2><strong>Arithmetic</strong></h2><p>When addition is thought of in embodied terms, then it is simply about putting things together. Or, in boundary terms, that is the action of removing a shared boundary.</p><p>&#10222;&#9679;&#9679;&#9679;&#10223;&#10222;&#9679;&#9679;&#9679;&#9679;&#10223; &#8658; &#10222;&#9679;&#9679;&#9679;&#9679;&#9679;&#9679;&#9679;&#10223;</p><p>It can be done with any number of ensembles.</p><p>&#10222;&#9679;&#9679;&#9679;&#10223;&#10222;&#9679;&#9679;&#9679;&#9679;&#9679;&#10223;&#10222;&#9679;&#10223; &#8658; &#10222;&#9679;&#9679;&#9679;&#9679;&#9679;&#9679;&#9679;&#9679;&#9679;&#10223;</p><p>Symbolic addition imposes sequence. For the example above, it will be either first 3 + 5 and then add 1, or 3 + 1 and then add 5, or 5 + 1 and then add 3. With boundary arithmetic, the removal of all boundaries can be done in parallel.</p><p>This boundary deletion can be expressed as a void-based transformation:</p><p>&#10223;&#10222; &#8658;</p><p>When &#10223;&#10222; is transformed into nothing, ensembles get fused.</p><p>The polarity of an ensemble can be changed by putting it in angle brackets. On such a basis, subtracting two ensembles is done by matching the magnitude of positive and negative forms.</p><p>&#10222;&#9679;&#9679;&#9679;&#9679; &lt;&#9679;&#9679;&#9679;&gt;&#10223; &#8658; &#10222;&#9679;&#10223;</p><p>The next important operation in boundary arithmetic is substitution. Substitution is powerful. It is used, for example, for what in conventional arithmetic we call multiplication and division. I experienced an aha-moment when I saw how multiplication and division are just specific cases of substitution.</p><p>Substitution is expressed with a special container like this one:</p><p>&#10220;A C E&#10221;</p><p>which is the instruction to substitute A for C in E. This instruction can be represented in the following way:</p><p>&#10220;PUT FOR INTO&#10221;</p><p>&#10220;A C E&#10221; can be translated as (A&#215;E)/C. This makes it easy to see that multiplication is the special case in which C is one, so we have:</p><p>&#10220;&#10222;&#9679;&#9679;&#9679;&#10223; &#9679; &#10222;&#9679;&#9679;&#10223;&#10221; = &#10222;&#9679;&#9679;&#9679;&#9679;&#9679;&#9679;&#10223;</p><p>The multiplication principle is that every unit from one ensemble interacts with every unit from another ensemble. Once represented visually, we can realize how intuitive it is.</p><div class="captioned-image-container"><figure><a class="image-link image2" target="_blank" href="https://substackcdn.com/image/fetch/$s_!zIhs!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0ffa5ef9-b291-42de-a757-6b60fbba7fa8_559x521.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!zIhs!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0ffa5ef9-b291-42de-a757-6b60fbba7fa8_559x521.png 424w, https://substackcdn.com/image/fetch/$s_!zIhs!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0ffa5ef9-b291-42de-a757-6b60fbba7fa8_559x521.png 848w, https://substackcdn.com/image/fetch/$s_!zIhs!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0ffa5ef9-b291-42de-a757-6b60fbba7fa8_559x521.png 1272w, https://substackcdn.com/image/fetch/$s_!zIhs!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0ffa5ef9-b291-42de-a757-6b60fbba7fa8_559x521.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!zIhs!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0ffa5ef9-b291-42de-a757-6b60fbba7fa8_559x521.png" width="245" height="228.345259391771" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/0ffa5ef9-b291-42de-a757-6b60fbba7fa8_559x521.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:521,&quot;width&quot;:559,&quot;resizeWidth&quot;:245,&quot;bytes&quot;:null,&quot;alt&quot;:&quot;&quot;,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" title="" srcset="https://substackcdn.com/image/fetch/$s_!zIhs!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0ffa5ef9-b291-42de-a757-6b60fbba7fa8_559x521.png 424w, https://substackcdn.com/image/fetch/$s_!zIhs!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0ffa5ef9-b291-42de-a757-6b60fbba7fa8_559x521.png 848w, https://substackcdn.com/image/fetch/$s_!zIhs!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0ffa5ef9-b291-42de-a757-6b60fbba7fa8_559x521.png 1272w, https://substackcdn.com/image/fetch/$s_!zIhs!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0ffa5ef9-b291-42de-a757-6b60fbba7fa8_559x521.png 1456w" sizes="100vw" loading="lazy"></picture><div></div></div></a></figure></div><p>Division is a special case of substitution, where</p><p>&#10220;&#9679; C E&#10221; &#8658; substitute &#9679; for every C in E</p><p>Substitution includes structural identities such as global substitution:</p><p>&#10220;A E E &#10221; = A,</p><p>self-substitution:</p><p>&#10220;A  E  E &#10221; = A, and two void-substitions:</p><p>&#10220;    C  E &#10221; = A &#8658; delete C from E</p><p>&#10220;A      E &#10221; = A &#8658; construct A within E,</p><p>where in the first case there is nothing in the &#8220;PUT&#8221; position and in the second in the &#8220;FOR&#8221; position.</p><p>The natural question now is how to deal with large numbers. </p><p>The solution is depth-value. Crossing the boundary outward changes the value of one order of magnitude. The magnitude will depend on the base. In the case of 10-base, that crossing will increase the value by 10. Now all digits can be reused except 0. Then, 2025 can be drawn like this</p><div class="captioned-image-container"><figure><a class="image-link image2" target="_blank" href="https://substackcdn.com/image/fetch/$s_!jM7T!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7f902f21-5ae1-4f5b-b4af-4659614130fb_625x381.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!jM7T!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7f902f21-5ae1-4f5b-b4af-4659614130fb_625x381.png 424w, https://substackcdn.com/image/fetch/$s_!jM7T!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7f902f21-5ae1-4f5b-b4af-4659614130fb_625x381.png 848w, https://substackcdn.com/image/fetch/$s_!jM7T!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7f902f21-5ae1-4f5b-b4af-4659614130fb_625x381.png 1272w, https://substackcdn.com/image/fetch/$s_!jM7T!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7f902f21-5ae1-4f5b-b4af-4659614130fb_625x381.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!jM7T!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7f902f21-5ae1-4f5b-b4af-4659614130fb_625x381.png" width="341" height="207.8736" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/7f902f21-5ae1-4f5b-b4af-4659614130fb_625x381.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:381,&quot;width&quot;:625,&quot;resizeWidth&quot;:341,&quot;bytes&quot;:null,&quot;alt&quot;:&quot;&quot;,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" title="" srcset="https://substackcdn.com/image/fetch/$s_!jM7T!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7f902f21-5ae1-4f5b-b4af-4659614130fb_625x381.png 424w, https://substackcdn.com/image/fetch/$s_!jM7T!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7f902f21-5ae1-4f5b-b4af-4659614130fb_625x381.png 848w, https://substackcdn.com/image/fetch/$s_!jM7T!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7f902f21-5ae1-4f5b-b4af-4659614130fb_625x381.png 1272w, https://substackcdn.com/image/fetch/$s_!jM7T!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7f902f21-5ae1-4f5b-b4af-4659614130fb_625x381.png 1456w" sizes="100vw" loading="lazy"></picture><div></div></div></a></figure></div><p>The calculation of depth value forms involves natural operations such as put, merge and cancel. See chapter 3 of <a href="https://iconicmath.com/new/iconicarithmeticvolume1/">Iconic Arithmetic</a> for details.</p><h2><strong>Logic</strong></h2><p>What is Boundary Logic? William Bricken explains:</p><blockquote><p>Boundary logic replaces truth by existence, deduction by deletion, logical connectives by patterns of containment, and sequential inference by concurrent substitutions, <em>without losing any of the capabilities of symbolic logic</em>.</p></blockquote><p>Boundary logic is based on the concept of physical containment, defined as the gestalt between inside, outside and boundary. Unlike Western conventional logic, there is no duality, no true and false, just a single concept for existence.</p><p>There are other differences. Boundary logic is iconic, rather than symbolic. Icons maintain structural resemblance to their meaning. Boundary logic is based on information, which is contextual, rather than on truth, which is an absolute value.</p><p>Boundary logic reuses the law of crossing:</p><p><code>(())</code> =</p><p>However, the law of calling does not show where the marks are contained. In such a way, it sort of introduces another relation that can be called &#8220;taken together.&#8221; When the unwritten cross is added, the result is again nothing:</p><p><code>(()())</code> =</p><p>That&#8217;s how the boundary logic allows only containment and is fully void-based.</p><p>This last form may seem strange. It will become clearer when the concept of pervasion is introduced.</p><p>Boundary logic has three axioms, for which only one variable is used. Unlike Laws of Form, it doesn&#8217;t include transposition, which can be looked at as another operation, a rearrangement, which is not containment. Here are the three axioms of Boundary Logic:</p><p>Occlusion: (() A ) =</p><p>Involution: <code>((A))</code> = A</p><p>Pervasion (A &#8942; A &#8942; ) = (A &#8942; &#8942; ),</p><p>Where <code>&#8942;</code> stands for any boundaries, including none.</p><p>Pervasion treats boundaries as semi-permeable. Replicas are created inwards and deleted outwards.</p><p>Now we can see how pervasion is replacing the law of calling with void-based equivalence</p><div class="captioned-image-container"><figure><a class="image-link image2" target="_blank" href="https://substackcdn.com/image/fetch/$s_!kPv5!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa734e185-0344-4e54-ae5a-4f50c831a3e8_1765x341.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!kPv5!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa734e185-0344-4e54-ae5a-4f50c831a3e8_1765x341.png 424w, https://substackcdn.com/image/fetch/$s_!kPv5!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa734e185-0344-4e54-ae5a-4f50c831a3e8_1765x341.png 848w, https://substackcdn.com/image/fetch/$s_!kPv5!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa734e185-0344-4e54-ae5a-4f50c831a3e8_1765x341.png 1272w, https://substackcdn.com/image/fetch/$s_!kPv5!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa734e185-0344-4e54-ae5a-4f50c831a3e8_1765x341.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!kPv5!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa734e185-0344-4e54-ae5a-4f50c831a3e8_1765x341.png" width="1456" height="281" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/a734e185-0344-4e54-ae5a-4f50c831a3e8_1765x341.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:281,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:&quot;&quot;,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" title="" srcset="https://substackcdn.com/image/fetch/$s_!kPv5!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa734e185-0344-4e54-ae5a-4f50c831a3e8_1765x341.png 424w, https://substackcdn.com/image/fetch/$s_!kPv5!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa734e185-0344-4e54-ae5a-4f50c831a3e8_1765x341.png 848w, https://substackcdn.com/image/fetch/$s_!kPv5!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa734e185-0344-4e54-ae5a-4f50c831a3e8_1765x341.png 1272w, https://substackcdn.com/image/fetch/$s_!kPv5!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa734e185-0344-4e54-ae5a-4f50c831a3e8_1765x341.png 1456w" sizes="100vw" loading="lazy"></picture><div></div></div></a></figure></div><p>So, if we have this initial form:</p><p><code>(()(()))</code></p><p>then the deepest mark can be deleted, so we get: <code>(()()),</code> but since <code>&#8942;</code> also works in case of no boundaries, we get</p><p><code>(()())</code> = <code>(())</code> =</p><p>If you want to learn more, here&#8217;s a video that provides a detailed explanation and demonstration of the axioms of Boundary logic</p><div id="vimeo-1040314440" class="vimeo-wrap" data-attrs="{&quot;videoId&quot;:&quot;1040314440&quot;,&quot;videoKey&quot;:&quot;&quot;,&quot;belowTheFold&quot;:true}" data-component-name="VimeoToDOM"><div class="vimeo-inner"><iframe src="https://player.vimeo.com/video/1040314440?autoplay=0" frameborder="0" gesture="media" allow="autoplay; fullscreen" allowautoplay="true" allowfullscreen="true" loading="lazy"></iframe></div></div><h2><strong>Computing</strong></h2><p>If you could rebuild computation from scratch without any concern for backward compatibility, what would you do? That&#8217;s the question the Natural Computing project started with and achieved some remarkable results. Watch here, William Bricken, tell the story</p><div id="youtube2-vhTZYrWe4Xo" class="youtube-wrap" data-attrs="{&quot;videoId&quot;:&quot;vhTZYrWe4Xo&quot;,&quot;startTime&quot;:null,&quot;endTime&quot;:null}" data-component-name="Youtube2ToDOM"><div class="youtube-inner"><iframe src="https://www.youtube-nocookie.com/embed/vhTZYrWe4Xo?rel=0&amp;autoplay=0&amp;showinfo=0&amp;enablejsapi=0" frameborder="0" loading="lazy" gesture="media" allow="autoplay; fullscreen" allowautoplay="true" allowfullscreen="true" width="728" height="409"></iframe></div></div>]]></content:encoded></item><item><title><![CDATA[Containment (series)]]></title><description><![CDATA[Containment, besides being the very architecture of our material world, is a fundamental organizing principle of life, language, and thought.]]></description><link>https://www.linkandth.ink/p/containment-series</link><guid isPermaLink="false">https://www.linkandth.ink/p/containment-series</guid><dc:creator><![CDATA[Ivo Velitchkov]]></dc:creator><pubDate>Tue, 30 Sep 2025 08:43:20 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!2bWr!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa3e4e6e1-ccc6-4dc0-892b-bd5db5d06e38_1024x1024.jpeg" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>Containment, besides being the very architecture of our material world, is a fundamental organizing principle of life, language, and thought.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!2bWr!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa3e4e6e1-ccc6-4dc0-892b-bd5db5d06e38_1024x1024.jpeg" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!2bWr!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa3e4e6e1-ccc6-4dc0-892b-bd5db5d06e38_1024x1024.jpeg 424w, https://substackcdn.com/image/fetch/$s_!2bWr!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa3e4e6e1-ccc6-4dc0-892b-bd5db5d06e38_1024x1024.jpeg 848w, https://substackcdn.com/image/fetch/$s_!2bWr!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa3e4e6e1-ccc6-4dc0-892b-bd5db5d06e38_1024x1024.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!2bWr!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa3e4e6e1-ccc6-4dc0-892b-bd5db5d06e38_1024x1024.jpeg 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!2bWr!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa3e4e6e1-ccc6-4dc0-892b-bd5db5d06e38_1024x1024.jpeg" width="1024" height="1024" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/a3e4e6e1-ccc6-4dc0-892b-bd5db5d06e38_1024x1024.jpeg&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1024,&quot;width&quot;:1024,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:174011,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/jpeg&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:&quot;https://www.linkandth.ink/i/174908227?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa3e4e6e1-ccc6-4dc0-892b-bd5db5d06e38_1024x1024.jpeg&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!2bWr!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa3e4e6e1-ccc6-4dc0-892b-bd5db5d06e38_1024x1024.jpeg 424w, https://substackcdn.com/image/fetch/$s_!2bWr!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa3e4e6e1-ccc6-4dc0-892b-bd5db5d06e38_1024x1024.jpeg 848w, https://substackcdn.com/image/fetch/$s_!2bWr!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa3e4e6e1-ccc6-4dc0-892b-bd5db5d06e38_1024x1024.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!2bWr!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa3e4e6e1-ccc6-4dc0-892b-bd5db5d06e38_1024x1024.jpeg 1456w" sizes="100vw" fetchpriority="high"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>This series reveals the power of containment in an attempt to bring attention to some qualities concealed by the dominant symbolic representations in math, science and technology.</p><div class="digest-post-embed" data-attrs="{&quot;nodeId&quot;:&quot;4146564a-7667-41bf-883d-dc4a93f162f9&quot;,&quot;caption&quot;:&quot;Shape clay into a vessel;&quot;,&quot;cta&quot;:&quot;Read full story&quot;,&quot;showBylines&quot;:true,&quot;size&quot;:&quot;md&quot;,&quot;isEditorNode&quot;:true,&quot;title&quot;:&quot;Containers All the Way Down&quot;,&quot;publishedBylines&quot;:[{&quot;id&quot;:9954776,&quot;name&quot;:&quot;Ivo Velitchkov&quot;,&quot;bio&quot;:&quot;Exploring socio&#8209;technical systems across scales &#8211; individuals, networks, organizations, society. Author of Essential Balances.&quot;,&quot;photo_url&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/c38bc74f-b4bc-474d-bc42-ff51ce6398b9_96x96.jpeg&quot;,&quot;is_guest&quot;:false,&quot;bestseller_tier&quot;:null}],&quot;post_date&quot;:&quot;2025-08-26T12:43:36.201Z&quot;,&quot;cover_image&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/c715d555-b9ba-4236-90c8-c850206ee0bc_1024x1024.jpeg&quot;,&quot;cover_image_alt&quot;:null,&quot;canonical_url&quot;:&quot;https://www.linkandth.ink/p/containers-all-the-way-down&quot;,&quot;section_name&quot;:null,&quot;video_upload_id&quot;:null,&quot;id&quot;:171867202,&quot;type&quot;:&quot;newsletter&quot;,&quot;reaction_count&quot;:8,&quot;comment_count&quot;:1,&quot;publication_id&quot;:2280477,&quot;publication_name&quot;:&quot;Link &amp; Think&quot;,&quot;publication_logo_url&quot;:&quot;https://substackcdn.com/image/fetch/$s_!TG-l!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F72c7b012-7bdf-453b-b2dd-45863de29aca_500x500.png&quot;,&quot;belowTheFold&quot;:false,&quot;youtube_url&quot;:null,&quot;show_links&quot;:null,&quot;feed_url&quot;:null}"></div><p>This first essay explores all kinds of containers, from the biological cell to the physical and metaphorical containers we create. It concludes with a review of containment in philosophy and logic, a theme to be expanded in future posts.</p><div class="digest-post-embed" data-attrs="{&quot;nodeId&quot;:&quot;efddac33-0dcc-4feb-a830-e02a26ff9f42&quot;,&quot;caption&quot;:&quot;We learn about numbers in school. Nobody tells us what numbers are, except that they represent quantity or position. Instead, we are asked to memorize symbols and combinations of symbols for each number.&quot;,&quot;cta&quot;:&quot;Read full story&quot;,&quot;showBylines&quot;:true,&quot;size&quot;:&quot;md&quot;,&quot;isEditorNode&quot;:true,&quot;title&quot;:&quot;Perfect Continence&quot;,&quot;publishedBylines&quot;:[{&quot;id&quot;:9954776,&quot;name&quot;:&quot;Ivo Velitchkov&quot;,&quot;bio&quot;:&quot;Exploring socio&#8209;technical systems across scales &#8211; individuals, networks, organizations, society. Author of Essential Balances.&quot;,&quot;photo_url&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/c38bc74f-b4bc-474d-bc42-ff51ce6398b9_96x96.jpeg&quot;,&quot;is_guest&quot;:false,&quot;bestseller_tier&quot;:null}],&quot;post_date&quot;:&quot;2025-09-29T15:27:47.353Z&quot;,&quot;cover_image&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/c310442c-2f85-4053-b56f-59e5323074ed_1514x1228.png&quot;,&quot;cover_image_alt&quot;:null,&quot;canonical_url&quot;:&quot;https://www.linkandth.ink/p/perfect-continence&quot;,&quot;section_name&quot;:null,&quot;video_upload_id&quot;:null,&quot;id&quot;:174227134,&quot;type&quot;:&quot;newsletter&quot;,&quot;reaction_count&quot;:0,&quot;comment_count&quot;:0,&quot;publication_id&quot;:2280477,&quot;publication_name&quot;:&quot;Link &amp; Think&quot;,&quot;publication_logo_url&quot;:&quot;https://substackcdn.com/image/fetch/$s_!TG-l!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F72c7b012-7bdf-453b-b2dd-45863de29aca_500x500.png&quot;,&quot;belowTheFold&quot;:false,&quot;youtube_url&quot;:null,&quot;show_links&quot;:null,&quot;feed_url&quot;:null}"></div><p>The second one is about mathematical and philosophical foundations, based on a single relationship, that of containment. This is the Calculus of Indications of George Spencer-Brown, presented in his book Laws of Form (1969). Over half a century since the publication, his work is mostly unknown, misunderstood and underappreciated. William Bricken explains:</p><blockquote><p>His text is notorious. The academic analysis, enthusiasm, controversy and rejection of Spencer Brown&#8217;s work is widely based on a severe misunderstanding that Laws of Form describes conventional logic, which it does not. The text becomes much more controversial when it is taken for what it actually is: a postsymbolic foundation for rigorous thinking.</p></blockquote><p>This essay is another attempt to present this foundation, trying out some new ways of explaining and adding some new perspectives.</p><div class="digest-post-embed" data-attrs="{&quot;nodeId&quot;:&quot;ba6ca6bd-895c-4f35-9353-dd0a82e72373&quot;,&quot;caption&quot;:&quot;If you could design math and computing from scratch and without assumptions, what would it look like?&quot;,&quot;cta&quot;:&quot;Read full story&quot;,&quot;showBylines&quot;:true,&quot;size&quot;:&quot;md&quot;,&quot;isEditorNode&quot;:true,&quot;title&quot;:&quot;Boundary Logic&quot;,&quot;publishedBylines&quot;:[{&quot;id&quot;:9954776,&quot;name&quot;:&quot;Ivo Velitchkov&quot;,&quot;bio&quot;:&quot;Exploring socio&#8209;technical systems across scales &#8211; individuals, networks, organizations, society. Author of Essential Balances.&quot;,&quot;photo_url&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/c38bc74f-b4bc-474d-bc42-ff51ce6398b9_96x96.jpeg&quot;,&quot;is_guest&quot;:false,&quot;bestseller_tier&quot;:null}],&quot;post_date&quot;:&quot;2025-10-14T14:25:25.219Z&quot;,&quot;cover_image&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/81ac82bb-1b9c-4e65-8f7f-4012cb71a37f_1024x1024.jpeg&quot;,&quot;cover_image_alt&quot;:null,&quot;canonical_url&quot;:&quot;https://www.linkandth.ink/p/boundary-logic&quot;,&quot;section_name&quot;:null,&quot;video_upload_id&quot;:null,&quot;id&quot;:175945771,&quot;type&quot;:&quot;newsletter&quot;,&quot;reaction_count&quot;:0,&quot;comment_count&quot;:0,&quot;publication_id&quot;:2280477,&quot;publication_name&quot;:&quot;Link &amp; Think&quot;,&quot;publication_logo_url&quot;:&quot;https://substackcdn.com/image/fetch/$s_!TG-l!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F72c7b012-7bdf-453b-b2dd-45863de29aca_500x500.png&quot;,&quot;belowTheFold&quot;:true,&quot;youtube_url&quot;:null,&quot;show_links&quot;:null,&quot;feed_url&quot;:null}"></div><p>Building on <em>Laws of Form, </em>Boundary Logic is even more extreme in not allowing anything other than containment. It eliminates the cases that imply other relations than containment. Boundary logic adds the operation of pervasion. Pervasion treats boundaries as semi-permeable. Replicas are created inwards and deleted outwards. </p><p>Boundary logic forms the foundation of unary computing, developed within the Natural Computing Project. Based on void-equivalence and allowing parallel operations, unary computing demonstrated advantages over binary computing.</p><div class="digest-post-embed" data-attrs="{&quot;nodeId&quot;:&quot;a76369e1-fe2b-4be1-8b34-3eee15469964&quot;,&quot;caption&quot;:&quot;Data formats evolve as solutions to specific problems. They combine structure and semantics in their own unique way. That&#8217;s how we now have many different species of data formats. Each has its strengths and weaknesses. None is universally good, and none is bad in all application cases.&quot;,&quot;cta&quot;:&quot;Read full story&quot;,&quot;showBylines&quot;:true,&quot;size&quot;:&quot;md&quot;,&quot;isEditorNode&quot;:true,&quot;title&quot;:&quot;Universal Data Fa&#231;ade (Part 1)&quot;,&quot;publishedBylines&quot;:[{&quot;id&quot;:9954776,&quot;name&quot;:&quot;Ivo Velitchkov&quot;,&quot;bio&quot;:&quot;Exploring socio&#8209;technical systems across scales &#8211; individuals, networks, organizations, society. Author of Essential Balances.&quot;,&quot;photo_url&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/c38bc74f-b4bc-474d-bc42-ff51ce6398b9_96x96.jpeg&quot;,&quot;is_guest&quot;:false,&quot;bestseller_tier&quot;:null}],&quot;post_date&quot;:&quot;2025-10-21T11:15:20.650Z&quot;,&quot;cover_image&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/ff8f9891-b4c2-4a8d-bee9-644eb01ce82b_1024x1024.png&quot;,&quot;cover_image_alt&quot;:null,&quot;canonical_url&quot;:&quot;https://www.linkandth.ink/p/universal-data-facade-part-1&quot;,&quot;section_name&quot;:null,&quot;video_upload_id&quot;:null,&quot;id&quot;:176497688,&quot;type&quot;:&quot;newsletter&quot;,&quot;reaction_count&quot;:2,&quot;comment_count&quot;:0,&quot;publication_id&quot;:2280477,&quot;publication_name&quot;:&quot;Link &amp; Think&quot;,&quot;publication_logo_url&quot;:&quot;https://substackcdn.com/image/fetch/$s_!TG-l!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F72c7b012-7bdf-453b-b2dd-45863de29aca_500x500.png&quot;,&quot;belowTheFold&quot;:true,&quot;youtube_url&quot;:null,&quot;show_links&quot;:null,&quot;feed_url&quot;:null}"></div><p>What is common between all data structures? Yes, containment. Word documents contain paragraphs, bullets, tables and images. Excel workbooks contain spreadsheets containing cells. PowerPoint slide decks contain slides, containing titles, text, bullets, hyperlinks and images. XML files contain elements containing attributes, text nodes, and other nested elements, forming a hierarchical tree structure defined by tags. JSON files contain objects containing key&#8211;value pairs and arrays, which in turn contain other objects, arrays, or primitive values such as strings and numbers.</p><p>Fa&#231;ade-X presents homogeneously heterogeneous data structures using the relation of containment. </p><div class="digest-post-embed" data-attrs="{&quot;nodeId&quot;:&quot;e78c3cff-2372-4053-baa6-8c3b7b0c2d7e&quot;,&quot;caption&quot;:&quot;Fa&#231;ade-X is a way to represent any data source as an RDF graph. What all data structures share is that they can be seen as nested containers. The reference implementation of Fa&#231;ade-X is called SPARQL Anything. To query or transform any source structure, all you need is to know SPARQL. Once you do, you can SPARQL anything.&quot;,&quot;cta&quot;:&quot;Read full story&quot;,&quot;showBylines&quot;:true,&quot;size&quot;:&quot;md&quot;,&quot;isEditorNode&quot;:true,&quot;title&quot;:&quot;Universal Data Fa&#231;ade (Part 2)&quot;,&quot;publishedBylines&quot;:[{&quot;id&quot;:9954776,&quot;name&quot;:&quot;Ivo Velitchkov&quot;,&quot;bio&quot;:&quot;Exploring socio&#8209;technical systems across scales &#8211; individuals, networks, organizations, society. Author of Essential Balances.&quot;,&quot;photo_url&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/c38bc74f-b4bc-474d-bc42-ff51ce6398b9_96x96.jpeg&quot;,&quot;is_guest&quot;:false,&quot;bestseller_tier&quot;:null}],&quot;post_date&quot;:&quot;2025-10-28T12:11:51.255Z&quot;,&quot;cover_image&quot;:&quot;https://substackcdn.com/image/fetch/$s_!LFG9!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4c75f8a0-5d87-498e-937f-c2c412fc5b75_2038x2195.png&quot;,&quot;cover_image_alt&quot;:null,&quot;canonical_url&quot;:&quot;https://www.linkandth.ink/p/universal-data-facade-part-2&quot;,&quot;section_name&quot;:null,&quot;video_upload_id&quot;:null,&quot;id&quot;:177242786,&quot;type&quot;:&quot;newsletter&quot;,&quot;reaction_count&quot;:0,&quot;comment_count&quot;:0,&quot;publication_id&quot;:2280477,&quot;publication_name&quot;:&quot;Link &amp; Think&quot;,&quot;publication_logo_url&quot;:&quot;https://substackcdn.com/image/fetch/$s_!TG-l!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F72c7b012-7bdf-453b-b2dd-45863de29aca_500x500.png&quot;,&quot;belowTheFold&quot;:true,&quot;youtube_url&quot;:null,&quot;show_links&quot;:null,&quot;feed_url&quot;:null}"></div><p></p><div><hr></div><p></p><h2>Other series</h2><p></p><div class="digest-post-embed" data-attrs="{&quot;nodeId&quot;:&quot;d621ab4e-31e9-4b59-9ceb-9be655fc4a89&quot;,&quot;caption&quot;:&quot;In this series, I will share some perspectives, patterns and practices on serendipity. This work should lead to the fourth p, protocols.&quot;,&quot;cta&quot;:&quot;Read full story&quot;,&quot;showBylines&quot;:true,&quot;size&quot;:&quot;md&quot;,&quot;isEditorNode&quot;:true,&quot;title&quot;:&quot;Serendipity Protocol (series)&quot;,&quot;publishedBylines&quot;:[{&quot;id&quot;:9954776,&quot;name&quot;:&quot;Ivo Velitchkov&quot;,&quot;bio&quot;:&quot;Exploring socio&#8209;technical systems across scales &#8211; individuals, networks, organizations, society. Author of Essential Balances.&quot;,&quot;photo_url&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/c38bc74f-b4bc-474d-bc42-ff51ce6398b9_96x96.jpeg&quot;,&quot;is_guest&quot;:false,&quot;bestseller_tier&quot;:null}],&quot;post_date&quot;:&quot;2024-08-12T14:04:13.525Z&quot;,&quot;cover_image&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/75a876eb-38ce-4990-802e-90074084c79b_1024x1024.jpeg&quot;,&quot;cover_image_alt&quot;:null,&quot;canonical_url&quot;:&quot;https://www.linkandth.ink/p/serendipity-protocol-series&quot;,&quot;section_name&quot;:null,&quot;video_upload_id&quot;:null,&quot;id&quot;:147615979,&quot;type&quot;:&quot;newsletter&quot;,&quot;reaction_count&quot;:5,&quot;comment_count&quot;:0,&quot;publication_id&quot;:2280477,&quot;publication_name&quot;:&quot;Link &amp; Think&quot;,&quot;publication_logo_url&quot;:&quot;https://substackcdn.com/image/fetch/$s_!TG-l!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F72c7b012-7bdf-453b-b2dd-45863de29aca_500x500.png&quot;,&quot;belowTheFold&quot;:true,&quot;youtube_url&quot;:null,&quot;show_links&quot;:null,&quot;feed_url&quot;:null}"></div><div class="digest-post-embed" data-attrs="{&quot;nodeId&quot;:&quot;d033037a-23bb-407d-ad41-b08426c113dc&quot;,&quot;caption&quot;:&quot;The Autonomy and Cohesion balance is an essential dynamic that determines the viability and welfare of all socio-technical systems, including organizations, biological systems, and networks.&quot;,&quot;cta&quot;:&quot;Read full story&quot;,&quot;showBylines&quot;:true,&quot;size&quot;:&quot;md&quot;,&quot;isEditorNode&quot;:true,&quot;title&quot;:&quot;Autonomy and Cohesion (series)&quot;,&quot;publishedBylines&quot;:[{&quot;id&quot;:9954776,&quot;name&quot;:&quot;Ivo Velitchkov&quot;,&quot;bio&quot;:&quot;Exploring socio&#8209;technical systems across scales &#8211; individuals, networks, organizations, society. Author of Essential Balances.&quot;,&quot;photo_url&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/c38bc74f-b4bc-474d-bc42-ff51ce6398b9_96x96.jpeg&quot;,&quot;is_guest&quot;:false,&quot;bestseller_tier&quot;:null}],&quot;post_date&quot;:&quot;2024-02-14T09:04:00.000Z&quot;,&quot;cover_image&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/db7015e0-4e13-45f3-9331-ca2eaa3270e2_1046x1024.png&quot;,&quot;cover_image_alt&quot;:null,&quot;canonical_url&quot;:&quot;https://www.linkandth.ink/p/autonomy-and-cohesion-series&quot;,&quot;section_name&quot;:null,&quot;video_upload_id&quot;:null,&quot;id&quot;:142571215,&quot;type&quot;:&quot;newsletter&quot;,&quot;reaction_count&quot;:1,&quot;comment_count&quot;:0,&quot;publication_id&quot;:2280477,&quot;publication_name&quot;:&quot;Link &amp; Think&quot;,&quot;publication_logo_url&quot;:&quot;https://substackcdn.com/image/fetch/$s_!TG-l!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F72c7b012-7bdf-453b-b2dd-45863de29aca_500x500.png&quot;,&quot;belowTheFold&quot;:true,&quot;youtube_url&quot;:null,&quot;show_links&quot;:null,&quot;feed_url&quot;:null}"></div>]]></content:encoded></item><item><title><![CDATA[Perfect Continence]]></title><description><![CDATA[Recalling the Laws of Form]]></description><link>https://www.linkandth.ink/p/perfect-continence</link><guid isPermaLink="false">https://www.linkandth.ink/p/perfect-continence</guid><dc:creator><![CDATA[Ivo Velitchkov]]></dc:creator><pubDate>Mon, 29 Sep 2025 15:27:47 GMT</pubDate><enclosure url="https://substack-post-media.s3.amazonaws.com/public/images/c310442c-2f85-4053-b56f-59e5323074ed_1514x1228.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>We learn about numbers in school. Nobody tells us what numbers are, except that they represent quantity or position. Instead, we are asked to memorize symbols and combinations of symbols for each number.</p><p>There are some strange symbols like zero. We are told it stands for nothing. That's hard to believe. It doesn't look like nothing. It looks like something, and it does things. When put after a different number, a zero magically makes it 10 times bigger. In fact, we can only know what 10 stands for if we memorize that trick.</p><p>Then we learn to perform operations with numbers. That, they tell us, is called &#8220;arithmetic.&#8221;</p><p>Later, when a number is not known, that is &#8220;algebra.&#8221;</p><p>We get this layer of magic &#8220;for free,&#8221; and then all mathematics and science are built on top of it. What it stands on is never questioned.</p><p>Almost never.</p><p>George Spencer-Brown questioned it in 1969 in his book <em>Laws of Form</em> (LoF). He started earlier, with no assumptions, and went further, in the forbidden territory of self-reference.</p><p>He started from nothing. If there is anything different from nothing, that difference can be made by somebody able to make a distinction. Once a distinction is made and indicated, nothing more is required. Distinction is the only constant. Relations of constants are all it takes to make an arithmetic but here it&#8217;s even simpler because the constant is also the only relation.</p><p>And that relation is containment.</p><p><em>This is the second post in the <a href="https://www.linkandth.ink/p/containment-series">containment series</a>. You may want to check the <a href="https://www.linkandth.ink/p/containers-all-the-way-down">previous</a> first, but you don't have to. You can start wherever you want</em>.</p><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://www.linkandth.ink/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe now&quot;,&quot;action&quot;:null,&quot;class&quot;:null}" data-component-name="ButtonCreateButton"><a class="button primary" href="https://www.linkandth.ink/subscribe?"><span>Subscribe now</span></a></p><p>Once somebody makes a distinction, that is also the only unique operation. All the rest is repeating: re-calling, re-crossing, re-entering.</p><p>The first distinction creates space and invites crossing. The space is a primitive one, without any distance. You can go only from one state to another.</p><p>If we indicate a distinction and look at it as both the only constant and the only operation, that's all it takes to have an arithmetic. No numbers, memorization of symbols, magic tricks and taking so many arbitrary things as given.</p><p>And, just think about it. Is there a more basic cognitive operation than making a distinction?</p><h2><strong>Distinction is perfect continence</strong></h2><p>In the Western tradition, we have the idea of true and false values to judge a proposition. It takes for granted what a proposition is, that it can be understood, evaluated, that there are only two possibilities, true and false, and that they can be distinguished. That's from Aristotle on and didn't change much to this day.</p><p>When George Boole created an algebra on this basis, he did not consider the possibility of more than two values, nor what it means for something to have value, before asking what those values might be. To ask what it means for something to have value would already require asking: value for <em>whom</em>? That was not a common question in his time (and it is still rarely asked today). In any case, he created a beautiful, non-numeric algebra. This algebra, however, contained no arithmetic.</p><p>George Spencer-Brown attempted to supply the missing arithmetic. He did so without assumptions, grounding it in the most primitive cognitive act: making a distinction. A distinction can only be made by someone, and if what is distinguished is of value, it can be indicated. Out of this, the arithmetic of <em>Laws of Form</em> (LoF) was born. From there, it generated its own algebra. The algebra of Boole, and others, appear only as special cases derivable from it.</p><p>The only things that LoF accepts as given are the ideas of distinction and indication. Then, to introduce the laws of form, it needs just one definition:</p><blockquote><p>Distinction is perfect continence.</p></blockquote><p>Making a distinction means drawing a boundary. Like making a circle on a plane, that boundary clearly separates two distinct spaces. In the case of a circle (or a rectangle), we call them <em>inside</em> and <em>outside</em>. One of the meanings of &#8220;perfect continence&#8221; is that there is no ambiguity when it comes to indication. There cannot be a point on the boundary. It will always be either inside or outside.</p><p>The original notation for distinction is what Spencer-Brows calls a mark or a cross, and it looks like that:</p><div class="captioned-image-container"><figure><a class="image-link image2" target="_blank" href="https://substackcdn.com/image/fetch/$s_!Swma!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F26ee807e-f18c-442e-8a8c-6e98d26e26c7_108x108.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!Swma!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F26ee807e-f18c-442e-8a8c-6e98d26e26c7_108x108.png 424w, https://substackcdn.com/image/fetch/$s_!Swma!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F26ee807e-f18c-442e-8a8c-6e98d26e26c7_108x108.png 848w, https://substackcdn.com/image/fetch/$s_!Swma!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F26ee807e-f18c-442e-8a8c-6e98d26e26c7_108x108.png 1272w, https://substackcdn.com/image/fetch/$s_!Swma!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F26ee807e-f18c-442e-8a8c-6e98d26e26c7_108x108.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!Swma!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F26ee807e-f18c-442e-8a8c-6e98d26e26c7_108x108.png" width="108" height="108" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/26ee807e-f18c-442e-8a8c-6e98d26e26c7_108x108.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:108,&quot;width&quot;:108,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:611,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://www.linkandth.ink/i/174227134?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F26ee807e-f18c-442e-8a8c-6e98d26e26c7_108x108.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!Swma!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F26ee807e-f18c-442e-8a8c-6e98d26e26c7_108x108.png 424w, https://substackcdn.com/image/fetch/$s_!Swma!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F26ee807e-f18c-442e-8a8c-6e98d26e26c7_108x108.png 848w, https://substackcdn.com/image/fetch/$s_!Swma!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F26ee807e-f18c-442e-8a8c-6e98d26e26c7_108x108.png 1272w, https://substackcdn.com/image/fetch/$s_!Swma!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F26ee807e-f18c-442e-8a8c-6e98d26e26c7_108x108.png 1456w" sizes="100vw" loading="lazy"></picture><div></div></div></a></figure></div><p>In many places, even in the <a href="https://en.wikipedia.org/wiki/Laws_of_Form">Wikipedia article</a>, it is called a symbol. It's not. Symbols don't illustrate their meaning. The mark does. You can see it as a half-box:</p><div class="captioned-image-container"><figure><a class="image-link image2" target="_blank" href="https://substackcdn.com/image/fetch/$s_!U9bH!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffdd9657d-f1b9-43d8-9fdc-49fb2e0f620b_3374x1455.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!U9bH!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffdd9657d-f1b9-43d8-9fdc-49fb2e0f620b_3374x1455.png 424w, https://substackcdn.com/image/fetch/$s_!U9bH!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffdd9657d-f1b9-43d8-9fdc-49fb2e0f620b_3374x1455.png 848w, https://substackcdn.com/image/fetch/$s_!U9bH!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffdd9657d-f1b9-43d8-9fdc-49fb2e0f620b_3374x1455.png 1272w, https://substackcdn.com/image/fetch/$s_!U9bH!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffdd9657d-f1b9-43d8-9fdc-49fb2e0f620b_3374x1455.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!U9bH!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffdd9657d-f1b9-43d8-9fdc-49fb2e0f620b_3374x1455.png" width="324" height="139.74725274725276" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/fdd9657d-f1b9-43d8-9fdc-49fb2e0f620b_3374x1455.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:628,&quot;width&quot;:1456,&quot;resizeWidth&quot;:324,&quot;bytes&quot;:164769,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://www.linkandth.ink/i/174227134?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffdd9657d-f1b9-43d8-9fdc-49fb2e0f620b_3374x1455.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!U9bH!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffdd9657d-f1b9-43d8-9fdc-49fb2e0f620b_3374x1455.png 424w, https://substackcdn.com/image/fetch/$s_!U9bH!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffdd9657d-f1b9-43d8-9fdc-49fb2e0f620b_3374x1455.png 848w, https://substackcdn.com/image/fetch/$s_!U9bH!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffdd9657d-f1b9-43d8-9fdc-49fb2e0f620b_3374x1455.png 1272w, https://substackcdn.com/image/fetch/$s_!U9bH!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffdd9657d-f1b9-43d8-9fdc-49fb2e0f620b_3374x1455.png 1456w" sizes="100vw" loading="lazy"></picture><div></div></div></a></figure></div><p>It shows inside and outside, the boundary, and &#8212; now with some knowledge about its intent &#8212; an invitation to cross that boundary. This is an important and not-so-obvious difference. I&#8217;ll be coming back to it a couple of times in what follows. </p><p>The distinction is both an operator and an operand, and the only relation in the mathematics of forms: containment.</p><p>The distinction is an operator by inviting to cross from one state to the other, and is an operand by being an indication of a state. This action/value duality has important mathematical and philosophical implications.</p><p>Distinction is the act of creating something from nothing. From void. </p><p>Void is often imagined as empty space. But that is already something: space. If there is space, that's not nothing. Space is what the first distinction creates. Not a space with the notion of distance; more primitive than that. A space where the only &#8220;distance&#8221; that can be traveled is from a marked space to an unmarked space and back.</p><h2><strong>Re-calling (condensation)</strong></h2><p>Axioms are premises that are given. They are not questioned. They cannot be experienced or demonstrated. </p><p>The axioms of the calculus of indications, in contrast, are open to examination. These axioms are the two laws of form that give the book its name.</p><p>The first axiom is the law of calling.</p><blockquote><p>The value of a call made again is the value of the call.</p></blockquote><p>In other words, to recall is to call.</p><p>In the original notation, the expression of that axiom looks like this:<a class="footnote-anchor" data-component-name="FootnoteAnchorToDOM" id="footnote-anchor-1" href="#footnote-1" target="_self">1</a></p><div class="captioned-image-container"><figure><a class="image-link image2" target="_blank" href="https://substackcdn.com/image/fetch/$s_!CrGp!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4b0765a2-2acb-4a4d-9577-43c03c04c49e_664x216.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!CrGp!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4b0765a2-2acb-4a4d-9577-43c03c04c49e_664x216.png 424w, https://substackcdn.com/image/fetch/$s_!CrGp!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4b0765a2-2acb-4a4d-9577-43c03c04c49e_664x216.png 848w, https://substackcdn.com/image/fetch/$s_!CrGp!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4b0765a2-2acb-4a4d-9577-43c03c04c49e_664x216.png 1272w, https://substackcdn.com/image/fetch/$s_!CrGp!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4b0765a2-2acb-4a4d-9577-43c03c04c49e_664x216.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!CrGp!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4b0765a2-2acb-4a4d-9577-43c03c04c49e_664x216.png" width="254" height="82.62650602409639" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/4b0765a2-2acb-4a4d-9577-43c03c04c49e_664x216.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:216,&quot;width&quot;:664,&quot;resizeWidth&quot;:254,&quot;bytes&quot;:5004,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://www.linkandth.ink/i/174227134?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4b0765a2-2acb-4a4d-9577-43c03c04c49e_664x216.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!CrGp!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4b0765a2-2acb-4a4d-9577-43c03c04c49e_664x216.png 424w, https://substackcdn.com/image/fetch/$s_!CrGp!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4b0765a2-2acb-4a4d-9577-43c03c04c49e_664x216.png 848w, https://substackcdn.com/image/fetch/$s_!CrGp!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4b0765a2-2acb-4a4d-9577-43c03c04c49e_664x216.png 1272w, https://substackcdn.com/image/fetch/$s_!CrGp!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4b0765a2-2acb-4a4d-9577-43c03c04c49e_664x216.png 1456w" sizes="100vw" loading="lazy"></picture><div></div></div></a></figure></div><p>This is the form of condensation.</p><p>Our keyboards don't have this sign. Even if they did, nesting would be challenging. An alternative way to write such expression is by using parentheses (or any other brackets). The law of calling, then, would look like this:</p><div class="latex-rendered" data-attrs="{&quot;persistentExpression&quot;:&quot;(  )(  )=(  ) &quot;,&quot;id&quot;:&quot;GUOKPTSDRE&quot;}" data-component-name="LatexBlockToDOM"></div><p>This is convenient but comes at the cost of imposing sequence. That&#8217;s a limitation. William Bricken explains:</p><blockquote><p>Symbolic notation imposes sequence, suppressing the inherent parallelism of containment structures. Given suf&#64257;cient processors we can access any number of containers all at the same time, but we cannot read a page of words all at the same time.<a class="footnote-anchor" data-component-name="FootnoteAnchorToDOM" id="footnote-anchor-2" href="#footnote-2" target="_self">2</a></p></blockquote><p>Back to the axiom: to recall is to call. Two (or more marks) next to one another (not nested) condense into one.</p><p>How can you imagine the logic of that?</p><p>One simple way to see it, is to switch on your writing assistant like Grammarly, QuillBot, Scribendi or whatever you are using. Then,</p><div class="captioned-image-container"><figure><a class="image-link image2" target="_blank" href="https://substackcdn.com/image/fetch/$s_!aXu3!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F68074b80-0ba0-46f9-a228-373d313c4594_707x280.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!aXu3!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F68074b80-0ba0-46f9-a228-373d313c4594_707x280.png 424w, https://substackcdn.com/image/fetch/$s_!aXu3!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F68074b80-0ba0-46f9-a228-373d313c4594_707x280.png 848w, https://substackcdn.com/image/fetch/$s_!aXu3!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F68074b80-0ba0-46f9-a228-373d313c4594_707x280.png 1272w, https://substackcdn.com/image/fetch/$s_!aXu3!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F68074b80-0ba0-46f9-a228-373d313c4594_707x280.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!aXu3!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F68074b80-0ba0-46f9-a228-373d313c4594_707x280.png" width="479" height="189.7029702970297" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/68074b80-0ba0-46f9-a228-373d313c4594_707x280.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:280,&quot;width&quot;:707,&quot;resizeWidth&quot;:479,&quot;bytes&quot;:27281,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://www.linkandth.ink/i/174227134?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F68074b80-0ba0-46f9-a228-373d313c4594_707x280.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!aXu3!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F68074b80-0ba0-46f9-a228-373d313c4594_707x280.png 424w, https://substackcdn.com/image/fetch/$s_!aXu3!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F68074b80-0ba0-46f9-a228-373d313c4594_707x280.png 848w, https://substackcdn.com/image/fetch/$s_!aXu3!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F68074b80-0ba0-46f9-a228-373d313c4594_707x280.png 1272w, https://substackcdn.com/image/fetch/$s_!aXu3!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F68074b80-0ba0-46f9-a228-373d313c4594_707x280.png 1456w" sizes="100vw" loading="lazy"></picture><div></div></div></a></figure></div><p>The two calls &#8220;sentence&#8221; have the same value, so you are invited to condense them into one.</p><p>That is not the case with &#8220;he said that that book was the best,&#8221; because each <em>that</em> makes a different indication. The first one indicates the statement and the second indicates the book the statement is about. Or &#8220;this is the second post in the series; check out the first first,&#8221; where the first <em>first</em> indicates the order of writing and the second <em>first</em>, the order of reading.</p><p>Another way to imagine it is highlighting. If you highlight some text and if you then highlight it again, you'll have the same number of highlights, one.</p><p>This axiom is also the first initial of the primary arithmetic. Since it can be used in both directions, it can be written like this:</p><div class="latex-rendered" data-attrs="{&quot;persistentExpression&quot;:&quot;( ) ( ) &#8652; ( )&quot;,&quot;id&quot;:&quot;PETCEHCDFP&quot;}" data-component-name="LatexBlockToDOM"></div><p>Going from left to right is to <em>condense</em>, and from right to left is to <em>confirm</em>.</p><p>The sign <code>&#8640;</code> represents a step and means &#8220;is changed to.&#8221;</p><h2><strong>Re-crossing (cancellation)</strong></h2><p>The second axiom is the law of crossing. It states the following</p><blockquote><p>The value of a crossing made again is not the value of the crossing.</p></blockquote><p>In other words, to re-cross is not to cross.</p><p>In the original notation, it looks like this:</p><div class="captioned-image-container"><figure><a class="image-link image2" target="_blank" href="https://substackcdn.com/image/fetch/$s_!aPi4!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1964eb45-ef6a-49fe-8b7f-59f3d9d3983a_392x256.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!aPi4!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1964eb45-ef6a-49fe-8b7f-59f3d9d3983a_392x256.png 424w, https://substackcdn.com/image/fetch/$s_!aPi4!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1964eb45-ef6a-49fe-8b7f-59f3d9d3983a_392x256.png 848w, https://substackcdn.com/image/fetch/$s_!aPi4!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1964eb45-ef6a-49fe-8b7f-59f3d9d3983a_392x256.png 1272w, https://substackcdn.com/image/fetch/$s_!aPi4!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1964eb45-ef6a-49fe-8b7f-59f3d9d3983a_392x256.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!aPi4!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1964eb45-ef6a-49fe-8b7f-59f3d9d3983a_392x256.png" width="134" height="87.51020408163265" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/1964eb45-ef6a-49fe-8b7f-59f3d9d3983a_392x256.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:256,&quot;width&quot;:392,&quot;resizeWidth&quot;:134,&quot;bytes&quot;:3984,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://www.linkandth.ink/i/174227134?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1964eb45-ef6a-49fe-8b7f-59f3d9d3983a_392x256.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!aPi4!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1964eb45-ef6a-49fe-8b7f-59f3d9d3983a_392x256.png 424w, https://substackcdn.com/image/fetch/$s_!aPi4!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1964eb45-ef6a-49fe-8b7f-59f3d9d3983a_392x256.png 848w, https://substackcdn.com/image/fetch/$s_!aPi4!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1964eb45-ef6a-49fe-8b7f-59f3d9d3983a_392x256.png 1272w, https://substackcdn.com/image/fetch/$s_!aPi4!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1964eb45-ef6a-49fe-8b7f-59f3d9d3983a_392x256.png 1456w" sizes="100vw" loading="lazy"></picture><div></div></div></a></figure></div><p>This is the form of cancellation. Two tested crosses are equal to none.</p><p>Using parentheses, it can be written like this:</p><div class="latex-rendered" data-attrs="{&quot;persistentExpression&quot;:&quot;(()) =&quot;,&quot;id&quot;:&quot;TDJHPPQSMC&quot;}" data-component-name="LatexBlockToDOM"></div><p>The expression is not unfinished. Simply the right side equals to nothing and that is why there is nothing written on the right side.</p><p>One way to imagine it is by being outside of a plot, entirely surrounded by a fence. Only two states are of value: you being inside or outside. If you jump over the fence, your state is changed. You are inside. That's the first crossing. If you cross the fence again, no matter where, you'll get outside. You were outside before the crossing and after making two crossings. So, making two crossings, when it comes to distinguishing only being outside versus being inside, is the same as having made no crossing.</p><p>Here's another way to see this. Let's have one circle drawn inside another.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!U3VX!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6fb89141-c533-4948-bba6-58d3ba2bcc76_569x569.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!U3VX!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6fb89141-c533-4948-bba6-58d3ba2bcc76_569x569.png 424w, https://substackcdn.com/image/fetch/$s_!U3VX!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6fb89141-c533-4948-bba6-58d3ba2bcc76_569x569.png 848w, https://substackcdn.com/image/fetch/$s_!U3VX!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6fb89141-c533-4948-bba6-58d3ba2bcc76_569x569.png 1272w, https://substackcdn.com/image/fetch/$s_!U3VX!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6fb89141-c533-4948-bba6-58d3ba2bcc76_569x569.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!U3VX!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6fb89141-c533-4948-bba6-58d3ba2bcc76_569x569.png" width="247" height="247" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/6fb89141-c533-4948-bba6-58d3ba2bcc76_569x569.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:569,&quot;width&quot;:569,&quot;resizeWidth&quot;:247,&quot;bytes&quot;:30658,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://www.linkandth.ink/i/174227134?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6fb89141-c533-4948-bba6-58d3ba2bcc76_569x569.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!U3VX!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6fb89141-c533-4948-bba6-58d3ba2bcc76_569x569.png 424w, https://substackcdn.com/image/fetch/$s_!U3VX!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6fb89141-c533-4948-bba6-58d3ba2bcc76_569x569.png 848w, https://substackcdn.com/image/fetch/$s_!U3VX!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6fb89141-c533-4948-bba6-58d3ba2bcc76_569x569.png 1272w, https://substackcdn.com/image/fetch/$s_!U3VX!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6fb89141-c533-4948-bba6-58d3ba2bcc76_569x569.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>Let's indicate the outside of the outer circle with <strong>m</strong> for &#8220;marked.&#8221; </p><p>If we cross it, we'll go to the unmarked space. Let's indicate that with <strong>n</strong>. And if we then cross the inner circle, that will be again a change of state and the inner area will be marked.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!6-cO!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7313ad3f-53cd-4d89-902e-027c7307a245_654x569.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!6-cO!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7313ad3f-53cd-4d89-902e-027c7307a245_654x569.png 424w, https://substackcdn.com/image/fetch/$s_!6-cO!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7313ad3f-53cd-4d89-902e-027c7307a245_654x569.png 848w, https://substackcdn.com/image/fetch/$s_!6-cO!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7313ad3f-53cd-4d89-902e-027c7307a245_654x569.png 1272w, https://substackcdn.com/image/fetch/$s_!6-cO!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7313ad3f-53cd-4d89-902e-027c7307a245_654x569.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!6-cO!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7313ad3f-53cd-4d89-902e-027c7307a245_654x569.png" width="328" height="285.37003058103977" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/7313ad3f-53cd-4d89-902e-027c7307a245_654x569.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:569,&quot;width&quot;:654,&quot;resizeWidth&quot;:328,&quot;bytes&quot;:33830,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://www.linkandth.ink/i/174227134?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7313ad3f-53cd-4d89-902e-027c7307a245_654x569.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!6-cO!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7313ad3f-53cd-4d89-902e-027c7307a245_654x569.png 424w, https://substackcdn.com/image/fetch/$s_!6-cO!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7313ad3f-53cd-4d89-902e-027c7307a245_654x569.png 848w, https://substackcdn.com/image/fetch/$s_!6-cO!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7313ad3f-53cd-4d89-902e-027c7307a245_654x569.png 1272w, https://substackcdn.com/image/fetch/$s_!6-cO!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7313ad3f-53cd-4d89-902e-027c7307a245_654x569.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>There are four possible trajectories for making two crossings starting for a marked space, indicated with <strong>a</strong>, <strong>b</strong>, <strong>c</strong>, and <strong>d</strong>. Trajectory <strong>a</strong> is for going from outside the outer circle and crossing the inner. Trajectory <strong>b</strong> is when the second crossing is of the same outer circle. </p><p>Then from the inner marked space, <strong>c</strong>, is for crossing the two circles from the inside of the smaller one, and <strong>d</strong> is for crossing once and a second time back.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!liE-!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6fcd0b62-6372-472b-b4be-f30191da5035_760x613.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!liE-!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6fcd0b62-6372-472b-b4be-f30191da5035_760x613.png 424w, https://substackcdn.com/image/fetch/$s_!liE-!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6fcd0b62-6372-472b-b4be-f30191da5035_760x613.png 848w, https://substackcdn.com/image/fetch/$s_!liE-!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6fcd0b62-6372-472b-b4be-f30191da5035_760x613.png 1272w, https://substackcdn.com/image/fetch/$s_!liE-!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6fcd0b62-6372-472b-b4be-f30191da5035_760x613.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!liE-!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6fcd0b62-6372-472b-b4be-f30191da5035_760x613.png" width="434" height="350.05526315789473" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/6fcd0b62-6372-472b-b4be-f30191da5035_760x613.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:613,&quot;width&quot;:760,&quot;resizeWidth&quot;:434,&quot;bytes&quot;:62950,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://www.linkandth.ink/i/174227134?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6fcd0b62-6372-472b-b4be-f30191da5035_760x613.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!liE-!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6fcd0b62-6372-472b-b4be-f30191da5035_760x613.png 424w, https://substackcdn.com/image/fetch/$s_!liE-!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6fcd0b62-6372-472b-b4be-f30191da5035_760x613.png 848w, https://substackcdn.com/image/fetch/$s_!liE-!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6fcd0b62-6372-472b-b4be-f30191da5035_760x613.png 1272w, https://substackcdn.com/image/fetch/$s_!liE-!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6fcd0b62-6372-472b-b4be-f30191da5035_760x613.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>For a point in the unmarked state, there are two possibilities: crossing outside and back (<strong>e</strong>), and crossing inside and back (<strong>f</strong>).</p><p>In all six cases, double crossing is the same as no crossing; the initial state is unchanged.</p><p>The second axiom is also the second initial of the primary arithmetic. Since it can be used in both directions, it can be expressed like this:</p><div class="latex-rendered" data-attrs="{&quot;persistentExpression&quot;:&quot;(( )) &#8652; &quot;,&quot;id&quot;:&quot;QVVZSPOSPV&quot;}" data-component-name="LatexBlockToDOM"></div><p>Going from left to right is to <em>cancel</em>, and going from right to left is to <em>compensate</em>.</p><p>With these two axioms, every arrangement has a unique simplification, which is either the marked or unmarked state. A form like this, for example</p><div class="captioned-image-container"><figure><a class="image-link image2" target="_blank" href="https://substackcdn.com/image/fetch/$s_!tv7X!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9d3ff600-4da0-427e-a284-f2eb2b7bd445_984x376.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!tv7X!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9d3ff600-4da0-427e-a284-f2eb2b7bd445_984x376.png 424w, https://substackcdn.com/image/fetch/$s_!tv7X!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9d3ff600-4da0-427e-a284-f2eb2b7bd445_984x376.png 848w, https://substackcdn.com/image/fetch/$s_!tv7X!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9d3ff600-4da0-427e-a284-f2eb2b7bd445_984x376.png 1272w, https://substackcdn.com/image/fetch/$s_!tv7X!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9d3ff600-4da0-427e-a284-f2eb2b7bd445_984x376.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!tv7X!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9d3ff600-4da0-427e-a284-f2eb2b7bd445_984x376.png" width="348" height="132.97560975609755" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/9d3ff600-4da0-427e-a284-f2eb2b7bd445_984x376.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:376,&quot;width&quot;:984,&quot;resizeWidth&quot;:348,&quot;bytes&quot;:13009,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://www.linkandth.ink/i/174227134?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9d3ff600-4da0-427e-a284-f2eb2b7bd445_984x376.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!tv7X!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9d3ff600-4da0-427e-a284-f2eb2b7bd445_984x376.png 424w, https://substackcdn.com/image/fetch/$s_!tv7X!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9d3ff600-4da0-427e-a284-f2eb2b7bd445_984x376.png 848w, https://substackcdn.com/image/fetch/$s_!tv7X!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9d3ff600-4da0-427e-a284-f2eb2b7bd445_984x376.png 1272w, https://substackcdn.com/image/fetch/$s_!tv7X!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9d3ff600-4da0-427e-a284-f2eb2b7bd445_984x376.png 1456w" sizes="100vw" loading="lazy"></picture><div></div></div></a></figure></div><p>can be simplified. The order of simplification doesn&#8217;t matter. Each time, either the law of calling or the law of crossing is applied until it reaches either the marked state or the unmarked state, where it can&#8217;t be simplified any further. </p><p>The form above resolves into the unmarked state.</p><p>Knowing now the two axioms, it will be easier to show the benefits of using notation that (1) illustrates its meaning, and (2) doesn&#8217;t impose sequence. </p><p>Consider the following arrangement of three numeric constants:</p><div class="captioned-image-container"><figure><a class="image-link image2" target="_blank" href="https://substackcdn.com/image/fetch/$s_!BY4R!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F50c7182a-30c0-42a7-bdd0-c0e8c2673a95_1355x1474.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!BY4R!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F50c7182a-30c0-42a7-bdd0-c0e8c2673a95_1355x1474.png 424w, https://substackcdn.com/image/fetch/$s_!BY4R!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F50c7182a-30c0-42a7-bdd0-c0e8c2673a95_1355x1474.png 848w, https://substackcdn.com/image/fetch/$s_!BY4R!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F50c7182a-30c0-42a7-bdd0-c0e8c2673a95_1355x1474.png 1272w, https://substackcdn.com/image/fetch/$s_!BY4R!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F50c7182a-30c0-42a7-bdd0-c0e8c2673a95_1355x1474.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!BY4R!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F50c7182a-30c0-42a7-bdd0-c0e8c2673a95_1355x1474.png" width="129" height="140.32915129151291" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/50c7182a-30c0-42a7-bdd0-c0e8c2673a95_1355x1474.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1474,&quot;width&quot;:1355,&quot;resizeWidth&quot;:129,&quot;bytes&quot;:58306,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://www.linkandth.ink/i/174227134?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F50c7182a-30c0-42a7-bdd0-c0e8c2673a95_1355x1474.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!BY4R!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F50c7182a-30c0-42a7-bdd0-c0e8c2673a95_1355x1474.png 424w, https://substackcdn.com/image/fetch/$s_!BY4R!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F50c7182a-30c0-42a7-bdd0-c0e8c2673a95_1355x1474.png 848w, https://substackcdn.com/image/fetch/$s_!BY4R!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F50c7182a-30c0-42a7-bdd0-c0e8c2673a95_1355x1474.png 1272w, https://substackcdn.com/image/fetch/$s_!BY4R!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F50c7182a-30c0-42a7-bdd0-c0e8c2673a95_1355x1474.png 1456w" sizes="100vw" loading="lazy"></picture><div></div></div></a></figure></div><p>It is meaningless as a whole. You need a different arrangement and additional symbols to calculate it. In contrast, this arrangement</p><div class="captioned-image-container"><figure><a class="image-link image2" target="_blank" href="https://substackcdn.com/image/fetch/$s_!F49n!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fed3851b0-7e6c-48ab-b55d-4ce69756bf36_2520x1193.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!F49n!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fed3851b0-7e6c-48ab-b55d-4ce69756bf36_2520x1193.png 424w, https://substackcdn.com/image/fetch/$s_!F49n!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fed3851b0-7e6c-48ab-b55d-4ce69756bf36_2520x1193.png 848w, https://substackcdn.com/image/fetch/$s_!F49n!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fed3851b0-7e6c-48ab-b55d-4ce69756bf36_2520x1193.png 1272w, https://substackcdn.com/image/fetch/$s_!F49n!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fed3851b0-7e6c-48ab-b55d-4ce69756bf36_2520x1193.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!F49n!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fed3851b0-7e6c-48ab-b55d-4ce69756bf36_2520x1193.png" width="252" height="119.25" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/ed3851b0-7e6c-48ab-b55d-4ce69756bf36_2520x1193.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:689,&quot;width&quot;:1456,&quot;resizeWidth&quot;:252,&quot;bytes&quot;:65154,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://www.linkandth.ink/i/174227134?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fed3851b0-7e6c-48ab-b55d-4ce69756bf36_2520x1193.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!F49n!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fed3851b0-7e6c-48ab-b55d-4ce69756bf36_2520x1193.png 424w, https://substackcdn.com/image/fetch/$s_!F49n!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fed3851b0-7e6c-48ab-b55d-4ce69756bf36_2520x1193.png 848w, https://substackcdn.com/image/fetch/$s_!F49n!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fed3851b0-7e6c-48ab-b55d-4ce69756bf36_2520x1193.png 1272w, https://substackcdn.com/image/fetch/$s_!F49n!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fed3851b0-7e6c-48ab-b55d-4ce69756bf36_2520x1193.png 1456w" sizes="100vw" loading="lazy"></picture><div></div></div></a></figure></div><p>is unambiguous. By the law of calling, the three rectangles can be condensed into one and evaluated as the marked state. Then it may generate endless equivalent forms, for example, this one:</p><div class="captioned-image-container"><figure><a class="image-link image2" target="_blank" href="https://substackcdn.com/image/fetch/$s_!FHmd!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F95d0f69d-517d-4586-a2b2-d21db235c6d8_944x561.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!FHmd!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F95d0f69d-517d-4586-a2b2-d21db235c6d8_944x561.png 424w, https://substackcdn.com/image/fetch/$s_!FHmd!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F95d0f69d-517d-4586-a2b2-d21db235c6d8_944x561.png 848w, https://substackcdn.com/image/fetch/$s_!FHmd!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F95d0f69d-517d-4586-a2b2-d21db235c6d8_944x561.png 1272w, https://substackcdn.com/image/fetch/$s_!FHmd!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F95d0f69d-517d-4586-a2b2-d21db235c6d8_944x561.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!FHmd!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F95d0f69d-517d-4586-a2b2-d21db235c6d8_944x561.png" width="176" height="104.59322033898304" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/95d0f69d-517d-4586-a2b2-d21db235c6d8_944x561.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:561,&quot;width&quot;:944,&quot;resizeWidth&quot;:176,&quot;bytes&quot;:18094,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://www.linkandth.ink/i/174227134?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F95d0f69d-517d-4586-a2b2-d21db235c6d8_944x561.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!FHmd!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F95d0f69d-517d-4586-a2b2-d21db235c6d8_944x561.png 424w, https://substackcdn.com/image/fetch/$s_!FHmd!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F95d0f69d-517d-4586-a2b2-d21db235c6d8_944x561.png 848w, https://substackcdn.com/image/fetch/$s_!FHmd!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F95d0f69d-517d-4586-a2b2-d21db235c6d8_944x561.png 1272w, https://substackcdn.com/image/fetch/$s_!FHmd!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F95d0f69d-517d-4586-a2b2-d21db235c6d8_944x561.png 1456w" sizes="100vw" loading="lazy"></picture><div></div></div></a></figure></div><h2><strong>Primary Algebra</strong></h2><p>In Chapter 3, we are told to:</p><blockquote><p>Call calculation a procedure by which, as a consequence of<br>steps, a form is changed for another, and call a system of<br>constructions and conventions which allows calculation a<br>calculus.</p></blockquote><p>That may be taken as two definitions, of calculation and calculus. Being given in the form of instruction, it reminds us that every definition is just a  convention.</p><p>We are then told to call the calculus of primary arithmetic, primary algebra.</p><p>The identities of primary algebra are indexed with J for the initials, C for consequence. Here are the two initials, J1 and J2, and some of the consequences (only those that we&#8217;ll need later).</p><p>J1 (Position) </p><div class="captioned-image-container"><figure><a class="image-link image2" target="_blank" href="https://substackcdn.com/image/fetch/$s_!U3Gn!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa2ac2b44-e521-4ffc-a464-734866cd8dff_496x256.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!U3Gn!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa2ac2b44-e521-4ffc-a464-734866cd8dff_496x256.png 424w, https://substackcdn.com/image/fetch/$s_!U3Gn!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa2ac2b44-e521-4ffc-a464-734866cd8dff_496x256.png 848w, https://substackcdn.com/image/fetch/$s_!U3Gn!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa2ac2b44-e521-4ffc-a464-734866cd8dff_496x256.png 1272w, https://substackcdn.com/image/fetch/$s_!U3Gn!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa2ac2b44-e521-4ffc-a464-734866cd8dff_496x256.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!U3Gn!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa2ac2b44-e521-4ffc-a464-734866cd8dff_496x256.png" width="182" height="93.93548387096774" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/a2ac2b44-e521-4ffc-a464-734866cd8dff_496x256.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:256,&quot;width&quot;:496,&quot;resizeWidth&quot;:182,&quot;bytes&quot;:6625,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://www.linkandth.ink/i/174227134?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa2ac2b44-e521-4ffc-a464-734866cd8dff_496x256.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!U3Gn!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa2ac2b44-e521-4ffc-a464-734866cd8dff_496x256.png 424w, https://substackcdn.com/image/fetch/$s_!U3Gn!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa2ac2b44-e521-4ffc-a464-734866cd8dff_496x256.png 848w, https://substackcdn.com/image/fetch/$s_!U3Gn!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa2ac2b44-e521-4ffc-a464-734866cd8dff_496x256.png 1272w, https://substackcdn.com/image/fetch/$s_!U3Gn!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa2ac2b44-e521-4ffc-a464-734866cd8dff_496x256.png 1456w" sizes="100vw" loading="lazy"></picture><div></div></div></a></figure></div><p>The step from left to right is the action <em>take out</em>, and the one from right to left is <em>put in</em>.</p><p>J2 (Transposition) </p><div class="captioned-image-container"><figure><a class="image-link image2" target="_blank" href="https://substackcdn.com/image/fetch/$s_!CUWP!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1a8c1cc5-4391-4316-a151-c4e09ab234c5_1212x256.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!CUWP!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1a8c1cc5-4391-4316-a151-c4e09ab234c5_1212x256.png 424w, https://substackcdn.com/image/fetch/$s_!CUWP!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1a8c1cc5-4391-4316-a151-c4e09ab234c5_1212x256.png 848w, https://substackcdn.com/image/fetch/$s_!CUWP!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1a8c1cc5-4391-4316-a151-c4e09ab234c5_1212x256.png 1272w, https://substackcdn.com/image/fetch/$s_!CUWP!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1a8c1cc5-4391-4316-a151-c4e09ab234c5_1212x256.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!CUWP!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1a8c1cc5-4391-4316-a151-c4e09ab234c5_1212x256.png" width="492" height="103.92079207920793" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/1a8c1cc5-4391-4316-a151-c4e09ab234c5_1212x256.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:256,&quot;width&quot;:1212,&quot;resizeWidth&quot;:492,&quot;bytes&quot;:15496,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://www.linkandth.ink/i/174227134?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1a8c1cc5-4391-4316-a151-c4e09ab234c5_1212x256.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!CUWP!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1a8c1cc5-4391-4316-a151-c4e09ab234c5_1212x256.png 424w, https://substackcdn.com/image/fetch/$s_!CUWP!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1a8c1cc5-4391-4316-a151-c4e09ab234c5_1212x256.png 848w, https://substackcdn.com/image/fetch/$s_!CUWP!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1a8c1cc5-4391-4316-a151-c4e09ab234c5_1212x256.png 1272w, https://substackcdn.com/image/fetch/$s_!CUWP!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1a8c1cc5-4391-4316-a151-c4e09ab234c5_1212x256.png 1456w" sizes="100vw" loading="lazy"></picture><div></div></div></a></figure></div><p>The step from left to right is the action <em>collect</em>, applied on <strong>r,</strong> and the one from right to left is <em>distribute</em>.</p><p>The first consequence that is reached by applying the transformation steps is called reflection:</p><p>C1 (Reflection) </p><div class="captioned-image-container"><figure><a class="image-link image2" target="_blank" href="https://substackcdn.com/image/fetch/$s_!YoSR!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F39c0886d-c37a-4e78-beac-c6bfc7287253_476x256.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!YoSR!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F39c0886d-c37a-4e78-beac-c6bfc7287253_476x256.png 424w, https://substackcdn.com/image/fetch/$s_!YoSR!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F39c0886d-c37a-4e78-beac-c6bfc7287253_476x256.png 848w, https://substackcdn.com/image/fetch/$s_!YoSR!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F39c0886d-c37a-4e78-beac-c6bfc7287253_476x256.png 1272w, https://substackcdn.com/image/fetch/$s_!YoSR!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F39c0886d-c37a-4e78-beac-c6bfc7287253_476x256.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!YoSR!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F39c0886d-c37a-4e78-beac-c6bfc7287253_476x256.png" width="196" height="105.41176470588235" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/39c0886d-c37a-4e78-beac-c6bfc7287253_476x256.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:256,&quot;width&quot;:476,&quot;resizeWidth&quot;:196,&quot;bytes&quot;:5395,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://www.linkandth.ink/i/174227134?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F39c0886d-c37a-4e78-beac-c6bfc7287253_476x256.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!YoSR!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F39c0886d-c37a-4e78-beac-c6bfc7287253_476x256.png 424w, https://substackcdn.com/image/fetch/$s_!YoSR!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F39c0886d-c37a-4e78-beac-c6bfc7287253_476x256.png 848w, https://substackcdn.com/image/fetch/$s_!YoSR!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F39c0886d-c37a-4e78-beac-c6bfc7287253_476x256.png 1272w, https://substackcdn.com/image/fetch/$s_!YoSR!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F39c0886d-c37a-4e78-beac-c6bfc7287253_476x256.png 1456w" sizes="100vw" loading="lazy"></picture><div></div></div></a></figure></div><p>Here is one more:</p><p>C4 (Occultation) </p><div class="captioned-image-container"><figure><a class="image-link image2" target="_blank" href="https://substackcdn.com/image/fetch/$s_!kOiF!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F85233578-3b06-4219-81cc-481e5c48c328_652x256.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!kOiF!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F85233578-3b06-4219-81cc-481e5c48c328_652x256.png 424w, https://substackcdn.com/image/fetch/$s_!kOiF!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F85233578-3b06-4219-81cc-481e5c48c328_652x256.png 848w, https://substackcdn.com/image/fetch/$s_!kOiF!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F85233578-3b06-4219-81cc-481e5c48c328_652x256.png 1272w, https://substackcdn.com/image/fetch/$s_!kOiF!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F85233578-3b06-4219-81cc-481e5c48c328_652x256.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!kOiF!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F85233578-3b06-4219-81cc-481e5c48c328_652x256.png" width="280" height="109.93865030674847" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/85233578-3b06-4219-81cc-481e5c48c328_652x256.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:256,&quot;width&quot;:652,&quot;resizeWidth&quot;:280,&quot;bytes&quot;:8188,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://www.linkandth.ink/i/174227134?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F85233578-3b06-4219-81cc-481e5c48c328_652x256.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!kOiF!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F85233578-3b06-4219-81cc-481e5c48c328_652x256.png 424w, https://substackcdn.com/image/fetch/$s_!kOiF!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F85233578-3b06-4219-81cc-481e5c48c328_652x256.png 848w, https://substackcdn.com/image/fetch/$s_!kOiF!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F85233578-3b06-4219-81cc-481e5c48c328_652x256.png 1272w, https://substackcdn.com/image/fetch/$s_!kOiF!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F85233578-3b06-4219-81cc-481e5c48c328_652x256.png 1456w" sizes="100vw" loading="lazy"></picture><div></div></div></a></figure></div><p>The step from left to right is the action <em>conceal</em>, and the one from right to left is to <em>reveal</em>.</p><p>And here is the last one we&#8217;ll need:</p><p>C5 (Iteration)</p><div class="captioned-image-container"><figure><a class="image-link image2" target="_blank" href="https://substackcdn.com/image/fetch/$s_!XuZV!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F10ba41e9-4cb4-4c6b-b381-606d3adac595_468x216.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!XuZV!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F10ba41e9-4cb4-4c6b-b381-606d3adac595_468x216.png 424w, https://substackcdn.com/image/fetch/$s_!XuZV!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F10ba41e9-4cb4-4c6b-b381-606d3adac595_468x216.png 848w, https://substackcdn.com/image/fetch/$s_!XuZV!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F10ba41e9-4cb4-4c6b-b381-606d3adac595_468x216.png 1272w, https://substackcdn.com/image/fetch/$s_!XuZV!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F10ba41e9-4cb4-4c6b-b381-606d3adac595_468x216.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!XuZV!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F10ba41e9-4cb4-4c6b-b381-606d3adac595_468x216.png" width="226" height="104.3076923076923" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/10ba41e9-4cb4-4c6b-b381-606d3adac595_468x216.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:216,&quot;width&quot;:468,&quot;resizeWidth&quot;:226,&quot;bytes&quot;:4482,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://www.linkandth.ink/i/174227134?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F10ba41e9-4cb4-4c6b-b381-606d3adac595_468x216.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!XuZV!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F10ba41e9-4cb4-4c6b-b381-606d3adac595_468x216.png 424w, https://substackcdn.com/image/fetch/$s_!XuZV!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F10ba41e9-4cb4-4c6b-b381-606d3adac595_468x216.png 848w, https://substackcdn.com/image/fetch/$s_!XuZV!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F10ba41e9-4cb4-4c6b-b381-606d3adac595_468x216.png 1272w, https://substackcdn.com/image/fetch/$s_!XuZV!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F10ba41e9-4cb4-4c6b-b381-606d3adac595_468x216.png 1456w" sizes="100vw" loading="lazy"></picture><div></div></div></a></figure></div><h2><strong>Self-reference (re-entry)</strong></h2><p>Chapter 11 goes into equations of the second degree. It starts with the expression</p><div class="captioned-image-container"><figure><a class="image-link image2" target="_blank" href="https://substackcdn.com/image/fetch/$s_!wASI!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F71a2435b-f4e9-4509-bd7f-971e14565452_348x256.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!wASI!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F71a2435b-f4e9-4509-bd7f-971e14565452_348x256.png 424w, https://substackcdn.com/image/fetch/$s_!wASI!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F71a2435b-f4e9-4509-bd7f-971e14565452_348x256.png 848w, https://substackcdn.com/image/fetch/$s_!wASI!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F71a2435b-f4e9-4509-bd7f-971e14565452_348x256.png 1272w, https://substackcdn.com/image/fetch/$s_!wASI!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F71a2435b-f4e9-4509-bd7f-971e14565452_348x256.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!wASI!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F71a2435b-f4e9-4509-bd7f-971e14565452_348x256.png" width="130" height="95.63218390804597" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/71a2435b-f4e9-4509-bd7f-971e14565452_348x256.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:256,&quot;width&quot;:348,&quot;resizeWidth&quot;:130,&quot;bytes&quot;:5300,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://www.linkandth.ink/i/174227134?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F71a2435b-f4e9-4509-bd7f-971e14565452_348x256.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!wASI!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F71a2435b-f4e9-4509-bd7f-971e14565452_348x256.png 424w, https://substackcdn.com/image/fetch/$s_!wASI!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F71a2435b-f4e9-4509-bd7f-971e14565452_348x256.png 848w, https://substackcdn.com/image/fetch/$s_!wASI!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F71a2435b-f4e9-4509-bd7f-971e14565452_348x256.png 1272w, https://substackcdn.com/image/fetch/$s_!wASI!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F71a2435b-f4e9-4509-bd7f-971e14565452_348x256.png 1456w" sizes="100vw" loading="lazy"></picture><div></div></div></a></figure></div><p>and after transformational steps applying the identities of the primary algebra,<a class="footnote-anchor" data-component-name="FootnoteAnchorToDOM" id="footnote-anchor-3" href="#footnote-3" target="_self">3</a> it is turned into an infinite expression:</p><div class="captioned-image-container"><figure><a class="image-link image2" target="_blank" href="https://substackcdn.com/image/fetch/$s_!toRx!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffd600081-c181-4530-bc12-40d857963f19_812x336.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!toRx!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffd600081-c181-4530-bc12-40d857963f19_812x336.png 424w, https://substackcdn.com/image/fetch/$s_!toRx!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffd600081-c181-4530-bc12-40d857963f19_812x336.png 848w, https://substackcdn.com/image/fetch/$s_!toRx!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffd600081-c181-4530-bc12-40d857963f19_812x336.png 1272w, https://substackcdn.com/image/fetch/$s_!toRx!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffd600081-c181-4530-bc12-40d857963f19_812x336.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!toRx!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffd600081-c181-4530-bc12-40d857963f19_812x336.png" width="256" height="105.93103448275862" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/fd600081-c181-4530-bc12-40d857963f19_812x336.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:336,&quot;width&quot;:812,&quot;resizeWidth&quot;:256,&quot;bytes&quot;:12197,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://www.linkandth.ink/i/174227134?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffd600081-c181-4530-bc12-40d857963f19_812x336.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!toRx!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffd600081-c181-4530-bc12-40d857963f19_812x336.png 424w, https://substackcdn.com/image/fetch/$s_!toRx!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffd600081-c181-4530-bc12-40d857963f19_812x336.png 848w, https://substackcdn.com/image/fetch/$s_!toRx!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffd600081-c181-4530-bc12-40d857963f19_812x336.png 1272w, https://substackcdn.com/image/fetch/$s_!toRx!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffd600081-c181-4530-bc12-40d857963f19_812x336.png 1456w" sizes="100vw" loading="lazy"></picture><div></div></div></a></figure></div><p>By just replacing <strong>(a(b))</strong> with identical forms, it can be converted into an endless <strong>((((&#8230;a)b)a)b)</strong>. But that also means that <strong>(a(b))</strong> in any even depth of <strong>((((&#8230;a)b)a)b)</strong> is identical with the whole <strong>((((&#8230;a)b)a)b)</strong>. It is in this way that <strong>((((&#8230;a)b)a)b)</strong> re-enters &#8220;its own inner space at any even depth.&#8221;</p><p>Now it gets really interesting.</p>
      <p>
          <a href="https://www.linkandth.ink/p/perfect-continence">
              Read more
          </a>
      </p>
   ]]></content:encoded></item><item><title><![CDATA[Engineered for Change with Andrea Valenti]]></title><description><![CDATA[The art of cultivating a culture of constant adaptation]]></description><link>https://www.linkandth.ink/p/engineered-for-change-with-andrea</link><guid isPermaLink="false">https://www.linkandth.ink/p/engineered-for-change-with-andrea</guid><dc:creator><![CDATA[Ivo Velitchkov]]></dc:creator><pubDate>Wed, 17 Sep 2025 10:46:05 GMT</pubDate><enclosure url="https://api.substack.com/feed/podcast/173741340/d7b0187f88475ef1794a2aa506f49067.mp3" length="0" type="audio/mpeg"/><content:encoded><![CDATA[<p>Organizations complain about change resistance, but what if change is turned into the norm? </p><p>That&#8217;s the unique approach <a href="https://www.linkedin.com/in/valenti-andrea/">Andrea Valenti</a> cultivated at <a href="https://www.trimble.com/">Trimble</a>. He moved his sub-organization beyond reacting to change, building a constantly transforming structure where continuous adaptation is an essential practice. </p><p>In our recent conversation, Andrea explains how strategic personnel rotation and cross-pollination not only make the organization more resilient but also create a more enriching experience for every team member &#8211; an intelligent approach that shifts the focus from fighting change to thriving on it.</p><h2>Video</h2><p>Here&#8217;s a 13-minute selection that gathers moments from across our conversation.</p><div id="youtube2-Qk8Snbm8uWo" class="youtube-wrap" data-attrs="{&quot;videoId&quot;:&quot;Qk8Snbm8uWo&quot;,&quot;startTime&quot;:null,&quot;endTime&quot;:null}" data-component-name="Youtube2ToDOM"><div class="youtube-inner"><iframe src="https://www.youtube-nocookie.com/embed/Qk8Snbm8uWo?rel=0&amp;autoplay=0&amp;showinfo=0&amp;enablejsapi=0" frameborder="0" loading="lazy" gesture="media" allow="autoplay; fullscreen" allowautoplay="true" allowfullscreen="true" width="728" height="409"></iframe></div></div><h2>Transcript</h2><p><strong>Andrea:</strong> they are obviously large shifts, but they become some sort of irrelevant to an extent because we get so used to change the scenario of our focus and our organization that those shifts are not so big anymore because we get continuously to do this.</p><p><strong>Ivo:</strong> Welcome to Link and Think, where we talk about systems and technologies. I'm your host, Ivo Velitchkov, and my guest today is Andrea Valenti, senior director at Trimble. Ciao, Andrea.</p><p><strong>Andrea:</strong> Ciao, Ivo!</p><p><strong>Ivo:</strong> With Andrea we met for the first time about decades ago in Brussels. He was learning to play saxophone. I was learning to play the bass. So we were joined by another friend, a drummer, who was the only advanced musician among us. And we attempted some jazz standards. Then I think we lost contact for a while. later on, it turned out that we have other interests in common, specifically in social systems. It even turned out that we were influenced by the same thinkers, especially Nicholas Luhmann. Then Andrea moved to the States. And recently we had a catch-up call where I learned some amazing things. He had been doing at Trimble, which I found unique and worth spreading. And that's what we will try to do today. Basically, from what I understood, while other organizations were struggling to transform from A to B Andrea created in his sub-organizations something that transformed into a constantly transforming one. Where others complain about change resistance, he made change an essential characteristics of operations. Am I putting it right or?</p><p><strong>Andrea:</strong> No, he's absolutely right. The organization I'm working with is very dynamic with a lot of acquisitions and activities. So we are confronted with a lot of different cultures and different groups to be coordinated. So we realized at a certain point that it was very reactive and difficult to adapt to the changes without being prepared for them.</p><p>And that we required a continuous adaptation. So build like a practice of being, know, capable to adapt to change at the moment you come. Otherwise, the other way around is, was very, very painful. were losing people, obviously we were losing focus and we, our execution was not able to come to place in a timely manner because you're not ready. That's most of it. You're not prepared to handle the change. You have to reflect on it. And there are a lot of prerequisites that need to be there.</p><p>A lot of organizations like to move personnel around where actually the focus might be. And then it's like catapulting people in the middle of nowhere and they are totally lost. we build up a process in which people were actually used to move around and they were actually driving in a setup of this.</p><p><strong>Ivo:</strong> Let's start by you telling us a bit about yourself, how you ended up in your current role, and maybe then about the company, because maybe some of our listeners don't know about it. And then we move on to the situation before this change started.</p><p><strong>Andrea:</strong> Absolutely. But first off, I still play saxophone.</p><p><strong>Ivo:</strong> great. Yeah. I do not as much as before because recently when I started my nomadic life, I had to leave my band, with which I played for more than six years. But I still do play</p><p><strong>Andrea:</strong> So I don't know if you still play the bass, but I try to.</p><p>What were the we played, recall? We tried and attempted once.</p><p><strong>Ivo:</strong> I think it was John Coltrane Equinox. I'm not 100 % sure, but this is if memory serves.</p><p><strong>Andrea:</strong> Yeah, it's Equinox, fantastic.</p><p>Yes, correct, fantastic memory, now I forgot. I still don't play it properly though.</p><p><strong>Ivo:</strong> haven't attempted it since so.</p><p><strong>Andrea:</strong> Okay, at least I don't feel so guilty. So, okay, I'm Andrea Valenti, I'm Italian of origin. I've been living in Belgium for 12 years in Bruxelles, where I actually met Ivo. And well, I guess that my, the line of my career was the organizational challenges. that all that is the connection dots within all my opportunities and works.</p><p>So I have been working initially in a small aerospace contractor and I was the first Sysadmin. Then I become, I worked with WKTS, I worked at Scroovert at the time. And I started one of the first team of infrastructure and it keeps happening that I have been challenged by a situation where, or the team was to be built or to be recovered. that kept happening for whatever reason. The hiring manager sees something in me of masochism that like this kind of context. Or there is a burnout team that actually on emergency restaffing, or there is a very difficult or challenging acquisition, they come my way. So that's a bit the reason why I keep getting opportunities is to restructure and rebuild teams, most of it. As a side effect, apparently, but because the job is still operation or DevOps or site reliability engineering.</p><p><strong>Ivo:</strong> Well...so you never get bored.</p><p><strong>Andrea:</strong> Yeah, I don't know if I would be super happy in a totally flat situation where everything is working perfectly outside the fact that it is hard that you can find such a place. There is obviously nothing that is working perfectly for long enough.</p><p><strong>Ivo:</strong> Can you now tell us a bit about Trimble and then about the situation before the thing which we started here to call fluid reliability started. I don't know how you call it, a practice, a framework, but anyway, we'll come to that point now about the larger context, the organization.</p><p><strong>Andrea:</strong> Yep. Sure.</p><p>Trimble is a very large organization. It's a global organization, a leader in construction and transportation. Obviously, there are more endeavors, but it's a very large organization that has those. The organization grew from the hardware, especially in, you may be thinking transportation, fleet management of long house, the device that Trimble developed and installed into the tracks for all the plethora of needs of transportation or all the tooling and equipment required for a construction site. On top of that, the organization start to develop software. And so that is the liaison, is this kind of hybrid life between a lot of hardware and a lot of software that get connected to work together. That is actually the key factor.</p><p>I myself am in a subdivision that is actually dedicated to construction. We are a SaaS multi-tenant software, primarily. And it's a little franchise of a applications that cover from the owner, from the architect, from the contractor, every single aspect of the life cycle of construction.</p><p><strong>Ivo:</strong> Yeah, and what was the situation that I think was in place five years ago, if I recall well, and that sort of provoked the change that you introduced,</p><p><strong>Andrea:</strong> We have been through, as I said at the beginning, is a very dynamic organization. So we went through many organizational changes. So when I joined a specific organization that had its own challenges of the operational capacity, and it's not unlikely that through transform, it was going transformed by the engineering and then by the product team, but the operational part was left behind, right?</p><p>So that I intervene in that moment. As from that moment, rebuilding that team, a lot of organizational changes, mergers, de coupling of organization happen more or less every two years. So I can be confronted to getting a new team from a different culture, merging the teams, or sometimes de coupling a team because that team was going to another merger within the organization because it was like a period in which the scope of those franchise was defined and therefore there was a lot of change in that sense. So every two years I got confronted with a change. So in every single place I had to confront with a lot of culture limitation, both in the definition of the job, what the SRE or the operation or the DevOps need to be doing in an organization.</p><p>And, their capacity to relate to the other teams and then obviously within the merger themselves. So thanks to this experience, because nothing happened, you know, super by accident. I start to develop an approach to be able to confront those situations. And I started to grow the idea that, even within a less dynamic place, a change is inevitable. And if you really want to operate fast environment, you need to prepare your culture upfront and the mechanism and the organization how actually it can navigate those waters because they are very, very difficult waters most of the time. So that's a bit of context for where it all happened.</p><p><strong>Ivo:</strong> Does it mean that, and this is something I didn't quite grasp last time we talked, does it mean that whatever you saw that you had to do in sort of a project manner every two years as a transformation, you wanted to become available and running all the time, so these kind of bigger shifts could</p><p><strong>Andrea:</strong> Mm-hmm.</p><p><strong>Ivo:</strong> sort of yield most smoothly in that.</p><p><strong>Andrea:</strong> Yeah, absolutely. Those, they are, they should, they are obviously large shifts, but they become some sort of irrelevant to an extent because we get so used to change the scenario of our focus and our organization that those shifts are not so big anymore because we get continuously to do this.</p><p>The idea is based on the fact that we, first off, to rebuild the culture, had to start to, it's a word that everybody uses, to cross pollinate, right? That is what is everybody's mouth. It's funny because the cross pollination, once analyzed a bit more, is different in how it is. It can be within two flowers. It can be within the same flower and can be within flowers of the same branch. So it is everything and nothing. And the funny thing is that we start to take inspiration from that for everything, right? So we can rotate personnel within the same team, between teams of the same domain, or in between domains. And they need to coexist continuously. So a person can experience multiple things. And that helps us, for example, to be ready to move around people. It's not uncommon that the vision of a specific year can be a bit fuzzy, right? An organization has certain challenges in determining what a vision for a full year might be, because then there are changes in the field, there's changes in the market, and we have seen now many changes in the marketing anyways in the last year. So the shift is changing and...what is usually asked is to reorganize the parliament to focus on something else. And usually you hear the noise of the cranking of it, right? That nobody is able to refocus, to move personnel anywhere because it's too impacting. You have to prepare the personnel. They have to be understanding what change is and they have to be ready for that. We start to...consider that as a dangerous problem that we want to address. And we start to have this significant rotation. also, it has been for a certain period a way to counterbalance the remote work. So it does also this other aspect, because remote work, especially in engineering, become a very selfish activity and it becomes totally disconnected of what you're trying to do. Right. So you get this list of tasks you have to do in your room. You go one by one, you actually do 10, 20, and you don't even know what you actually have achieved and you haven't interacted with almost anybody. So you went down this tunnel vision of operation that you have to do something without any context. That was a dangerous logic, especially for operation, because we touch critical systems. you're having somebody completely narrow minded, down a tunnel of nonsense, it can be dangerous taking down systems or making mistakes in customer data. don't want that. And still it's the connection with the purpose, why we are doing certain things. So the rotation and the cross-pollination help to provide context to these people because they now start to see not just their own area of work, but the area of work of everybody else.</p><p>And by working on their activity, not only they bring fresh eyes to their work, but at the same time, they start to build a relationship that make them understanding the other team. Cause there is nothing like, you know, uh, suffering with somebody else to understand what, why they do certain things. Now, especially in engineering, there were, there is a lot of religion, uh, in which, you my way is the way, you know, or there is some sort of strong belief that that technology and that implementation is good and that is totally wrong because of a lot of reasons. then realized, most of us realized that even though that is not the best technology ever, it was really fitting in that situation by working with the situation. So the correlation with why somebody use a tool and not is discovered only if you actually.</p><p>So we force this discover to make team being able to speak together. So I'm speaking without any structure, that was there.</p><p><strong>Ivo:</strong> Can you describe more concretely this rotation, how it happens currently? Maybe if it's interesting also how it was introduced and then evolved, but let's start with how it currently happens when it's already something that evolved to a stable state.</p><p><strong>Andrea:</strong> Yes.</p><p>To do that, I have to make a little step back because it's based on analysis of the work breakdown.</p><p><strong>Ivo:</strong> Yeah, maybe actually you can make two steps back and explain what is a site through liability engineering in general and how it is different or the same in your organization, how it is different to DevOps or other things people can be familiar with. And then from this broad context about your specific rotation.</p><p><strong>Andrea:</strong> Absolutely.</p><p>Well, it's a very difficult definition as all the definition of in technology, especially because I see it as an evolution of the same to an extent, right? With obviously a twist and we can start from the original evolution that is addressing operational challenges with software, with a project that is more engineering than anything. So it's funny though because</p><p>To this definition, I recall my first times as a Sysamin in a Linux world, and we never thought that doing it manually was a good thing. to get into the job, you had to be able to program the factor. That is actually the standard of an SRE. You really have to have not a very fluent development background, but is absolutely welcome. In my team, there are many with a development background or ex-developer. Well, they're still developers, actually.</p><p>And as an evolution in a way of what was the DevOps or the agile system administrator concept that is now the continuous evolution of our job to keep system up and running. Now, the method is more software and engineering than in any other case, but</p><p><strong>Ivo:</strong> How does it feel to be such a person? Because when you're a developer, you create something and then people use it. And in this case, you do the same kind of work only to keep things going.</p><p><strong>Andrea:</strong> Yeah. Yeah. Well, but that's a bit of a shift. We start to look at what we do as a product or what we offer. Right. So infrastructure is becoming some sort of product to an extent, but it's, yeah, it's painful because it's not a popular position. It's not a very sexy position to an extent because we are known only when there is a major outage. our capacity is to be less visible as possible. means that everything is working smoothly. But unfortunately, the moment you speak with us is because only something goes wrong. So we have this kind of, know, relational issue with everybody that we have presented only in a negative situation. But yeah, most of the people that are in this job, they like it to an extent. It's very high responsibility set because again, after us, there is nobody fixing it And he has that like of intervention mode. So it's not uncommon. Then some of us like the adrenaline of an incident to an extent. The need of intervening and coordinating is also an incredible amount of fun because suddenly you can coordinate whoever. You become the incident commander.</p><p>And then everybody else during your day by day is of hierarchy higher is now at your disposal.</p><p>So it has that twist of misfits in a way. And it's growing into a more organized. The funny thing is that that's bit of the work we have been doing is to reprofile ourselves in a more structured way. Because even though we might be exciting and excitable during certain situations, we don't want to live in a continuous mindset of problems.</p><p>There are the two phases of the job is yes, it's cool when there is once in a lifetime problem or that you can recover from by the way, because all the time you have this kind of sense, but you don't want to live in a continuous firefighting mode. And we have to work out to limit that size at max. And that's why I was thinking about speaking about the work breakdown, because we tend to have like two main macro categories, a lot of the volatile unplanned that we cannot plan for and we have to contain, but we can't really control. We can control indirectly by all the method and mitigation we can put in place to ensure that chaos is not, and entropy is not arising our word day so frequently. And then there is like the most scheduled part in which we do the project. Most of, some of them are for delivery, but some of them are to contain and to ensure that entropy is not creeping out the volatile part because we can't control it, so we really have to build a lot of mitigations and anticipation and a way of working that is not actually affecting. A good example that links that to the rotation is the concept of gatekeeping. That is like a shield in front of an engineer that defines on the day to day the front desk to the rest and the back end of our organization.</p><p>It is meant to be very fast. It is meant to resolve all the little things that come out without disrupting the structure of projects or the most scheduled activity we have in place. And that is a rotation because it's a very painful week for everybody. It's a weekly base today. It's a very painful week because you get harassed by the full organization on every possible need from reset my password or restart that thing. Why this is not working where is this information and worse actually, but I cannot disclose but there are all tiny chores that are really annoying, very disruptive in terms of context switch or mood switch, right? Because of that can't to So we rotate personnel. Everybody has to see what it is. It has the twofold reason is one,</p><p>Every share the pain is a key factor in a team. We all have to share that amount of pain. We also all need to understand what is our problem. So then when we go to the more scheduled part, we can connect what we need to do to avoid our next duty to be much less painful. So automation improvements that are required to limit and control that part.</p><p>And the third part is that you work with all the rest of the organization and within your colleagues. So in this specific week, we are moving now finally after some time from three individual gatekeepers. It's to give you the idea how we actually keep evolving on the concept. So we are like three different groups having their own gatekeeping. Because there is a domain knowledge that is linked to the specific application, right?</p><p>That the full goal we have is to break that knowledge to an extent, at least for the most trivial part, because if you go to a very high level of architecture, or we go deeper in the knowledge pit, and then it's difficult to really all of us being equal in the knowledge, but in the most trivial part, we all have to be able to handle it. So from three different groups doing their own rotation, now we are forcing one unique rotation. So everybody will be able to answer all the questions for all the application we are actually handling. as the advantage, the first one, I'm building the next larger rotation this way, because that is becoming the pillar for me and for the organization to start to move this personnel across the application. Because now we make a base of knowledge. Everybody knows.</p><p>Even by osmosis is enough to look at what it is, the day to day life of another group. It can be enough by osmosis. I don't really need that they operate. They need to see and live that to understand. And after a few months, usually start to click and they start to operate. And after a few months, actually, as everybody else said, they become totally movable items or person in this case, obviously, but from a conceptual point of view, everybody can work everywhere. Usually engineers are very happy on this because they are not stuck in that application. They can see other things. It's very enriching. You see different ways, different technology continuously. So I tend to have a very little attrition because they are very enriched by this. Even though they have to do the week. It's an horrible week anyhow. But we cannot have two people suffering for the rest of the group.</p><p>So now we are moving from three different ones into one. For me, it's also, as a director, it's very beneficial because I will be able to slim the amount of people doing gatekeepers because now I have to have some sort of pairing mode because I cannot let one person doing gatekeeping and try to jam the window, right? I need at least two that make a lot of numbers if you scale multiple applications with two people. So as soon as this pick up, I'm going to half the personnel that are working on the gatekeeper and making this rotation continuously. That is a challenge per se because then open the concept of how we can maintain knowledge within a continuously rotating group. Because that is the concept of now what is the challenging pairing on development how you keep the work content flowing while changing the people that are operating it.</p><p><strong>Ivo:</strong> How do you manage the risk associated with gatekeeping? Because gatekeeping would normally bring bottlenecks and will slow down the resolution time and for you it seems that it has the opposite effect. How come?</p><p><strong>Andrea:</strong> We determine what is the real scope. So it has to be anything that needs to be executed quickly, expedited, or that is small enough to be performed within such a team. Everything bigger needs to go through a different process. Usually we challenge a lot. Also, we build up a knowledge and a culture in which we challenge the requirements. And this, for example, a very disruptive, seems crazy, but is a very disrupting action by itself, challenging requirement is very unsettling in the organizations because everybody come from the perspective that a hierarchy is there to execute the best option all the time. We reject that concept. We want to understand with the requirement and with the person that is the requester, if that is really the thing that needs to be done. Because again, we are the last stand production availability so we feel that we have to ask why you do this because it</p><p><strong>Ivo:</strong> Does that happen with that are more on the how level instead of just being only at the what level? Is that the case where you reject them?</p><p><strong>Andrea:</strong> No, no, it's also the what or the why even. Because the moment you go poking the requirement, it's really hard to detach the how from the what and the why. mean, we are speaking about the execution moment, right? So the how can be totally applicable to the what and the why if I understand it. But most of the time, not most of the time, sometimes...we detect and we discover a detachment. We are doing something in a specific way for no apparent reason, and that will not bring the resolution of what we are trying to do. That's why it's important for us to ensure, because we are already not very popular as a team, if we start to execute stuff that they don't deliver the appropriate resolution to a specific why.</p><p>We tend to be put under the bus. Well, it's not because it's because the execution was the issue. How many times we heard the execution is the problem, but sometimes it's the connection with the execution to the reason of the execution. It's not just the execution. But it's difficult to show it after when the thing is not delivered. The problem is arising is very hard to have a conversation on listen, but you asked this. I have done it. The result is this.</p><p>That's because why you ask it is too late. You can't have that conversation. The heat of the moment, the failure and everything is not possible to have. We have to anticipate that necessarily. But even with the idea of delivering the thing, if we really want to deliver something, we have to be sure we properly understood why they're trying to do something. Obviously, most of the case with very small task is very evident.</p><p>But even within specific tasks, they show the background of a very big improvement for the organization that needs to happen. I can't go into details, but habits in an organization tend to build up over time, and they get detached from what they are trying to do. Especially when you start to shift in focus, now those habits keep happening, your goal is another one, and those are at the treatment of your new goal, but you can't connect them.</p><p>A very good example can be data ownership, right, in general. But this is not in my organization, it's in the industry. A lot of group, they want to monetize data, But they have a lot of practices in place in which the data is given for free. You can't have those coexisting. If you want to do this, you have to start to limit the other in a way or to mitigate the other. You have to have a plan. I'm not saying I like the...</p><p><strong>Ivo:</strong> That happens every way,</p><p><strong>Andrea:</strong> The idea. But I'm saying just to show that the disconnection between practices and a new goal and they don't work together. Actually one against the other. So we challenged them.</p><p><strong>Ivo:</strong> What comes your way apart from accidents and requirements?</p><p><strong>Andrea:</strong> All the implementation, a lot of customer activity. Being a SaaS organization, we do lot of migrations between solutions. the full real ability realm that is huge, all the maintenance, improvement, architecture, staying up to date with the technology, trying to find ways to operate that are faster and cheaper all the time in a way, or more scalable, if not cheaper.</p><p>And all the compliance, the execution of the compliance, tend to come to us, a lot of cybersecurity, execution of the mitigation or the being in those situations which we have to intervene.</p><p>Yeah, that's most of it. That's most of it. Projects in general, there might be of any kind of shape and form because from this span a lot of innovation improvement, need to be happening. Most of those organizations, they have like a very dated way of working some of them and we have to renovate and improve them and bring them to modernity.</p><p><strong>Ivo:</strong> Yeah, can you tell then a bit more about this cross-pollination which you described as a sort of a fractal?</p><p><strong>Andrea:</strong> Yes, it's having multiple aspects. And a funny aspect of this is that it's also not only in term of rotation, but in term of hiring strategy. So the hiring itself is part of this. Obviously, there is the full rotation in which I try to rotate personnel across projects. We discussed about the gatekeeping that was the most trivial set of work even though it's very challenging mentally. But then we start to build a higher level of rotation that is based on micro teams. There are teams of three people, four people max, not duos. They have to have a majority in it, right? The building is like, they're good Durkheim studies on duality and democracy and majority, right? So you have to have at least three.</p><p>And we assign them epics and larger projects. They become totally independent in everything. So we, as a team, we have cadences in which we meet, we review the activity, we clean the backlog, we do everything. So we give updates, we do reports. Within the micro team, they are totally on their own. They decide their own cadence. They decide how to meet. They decide the kind of reporting, given that keep the stakeholder satisfied, at least the one that has an influence, by this step, to them to choose how and what. And they work together in a specific epic. We then rotate after X amount of time. We rotate some out of the micro team, and we put new people in, keeping one person at least to keep the history, the knowledge of what has been done, and to help the new to get on board.</p><p>So we keep also rotating through projects. you don't get assigned a project forever. You get assigned a period of that project. And then you rotate to another project. If you want to stay, mean, again, there is a lot of autonomy also in deciding the rotation. If somebody is really interested in the specific, we have no easy to rotate, to leave that person. If there are two, we leave two and we rotate one. We cannot allow them to continue forever, the three or four of them we are open to accommodate. Sometimes, know, somebody is super excited about a specific one. We don't want to make any unnecessary cruelty on the person. usually they rotate. They rotate. And we have this logic. So the project themselves, they are kept over time by different people. There is a limitation of skill set, though. And that's why we have this rotation of gatekeeping and other rotation is to start to feed knowledge to enlarge larger rotation on that. Other way of pollination that is within another tree, right? Because this is only all within the same flower or within the same branch. Now, with other plants is more difficult because then we tap into the why being ready to adapt or change is important in a large organization. My challenge to... to do this with the LAR, the other groups is that they are not prepared or structured to host somebody from my team and give somebody of their team to me. And that is the challenge, right? Because then, or we create holes in other organization. So I take a person from an organization, they are not able to rotate around. So I am actually creating a performance role in that thing. Or they cannot counterpart, so I just giving people away for the sake of keeping the rotation or having them in the future. And that is getting complicated because I'm outside the realm of my deliverables, right? What we do there is try to be more ad hoc and more opportunistic. And then when we have a project that makes sense between two groups, we do that. I force that to happen. But it's more opportunistic when you go outside. I balance this by hiring them.</p><p>The team is getting a bit of an appeal from my domain again, and we have been able to attract a lot of people and personnel from other groups. Actually, we have been growing only primarily by referral or by internal acquisition, and we have like only 20 % of market search that we need to keep the thing fresh and to get more fresh blood and fresh eyes to see how things are. But it's not like... more than 20 % in which we go in the market. All the rest are referrals from colleagues are working in the team. So ex former colleagues coming and applying. And it's a good 30 % or something. And the others are internal personnel coming. The funny thing, or the interesting thing is that the internal personnel come from other divisions. So what I cannot do by interacting with the other division, I can embed in the team. I'm getting personal data, working at another group and that make a bridge of knowledge and bridge of relationship with that team. And it's cool because then we can grow on projects, we have like connections and membranes with them. It's also more fascinating when I can... offer a position from somebody that is not from the same realm. So technical support or professional services. Because I need in a team like the SRE, I need many skills, not just vertical hard coding of infrastructure code in multiple languages and conjugation. I need also some more soft. So those are fantastic bridges for projects in which then suddenly two friction groups, they're working much better because I hire somebody from that group. And those person become like cultural bridges in which they allow my team to understand why they're yelling at you. That's so bad in this context because, and to explain to the other team why we are pushing back so much on that specific thing that we're apparently willing to give our life to not make that happen. And it build up an execution performance over time because now we get rid of a lot of unnecessary discussions and frustration. And we try to have like this very focused conversation wanting to happen with what we can do together. Right? So not what should be done. Cause we have most probably two different opinions on the topic, what should be done. We can shift a bit, not all the time can start to shift to what can be done. And again, it opened the creativity because then the two teams, they are open more to the others if they start to really work together. But it's hard when the conflict priorities are in place. This is a cultural now. So those cultural agents that we place in the team, they help tremendously. So it's a sort of rotation anyway, because it's very purposeful.</p><p>It's not easy to do it, especially in a large organization, to have an early career program or a talent program, right? Because again, we are creating holes in an organization to get people of a specific quality out, because there is not a structure to replace them. And ourself, we have to find a very hard balance in which we have to take a deep of knowledge for, because we are not hiring a full... experience SRE, we are hiring somebody from a technical support. The gap is on us to fill. We don't hire a person that is prepared. So it's a bit of an investment that usually pay off tremendously because it gives mobility within the organization. And you can change work within the organization. So you give a lot of morale. The person that come on board is absolutely driven. We had to provide some mitigation for that. So our way to approach this is we</p><p>We don't want the person to be overwhelmed by starting in the new job. So we start like three quarters ahead of the hiring date to get the person as a share. It's a sort of rotation, right? So I'm getting fractalized there. They start rotating our team. And they start to, we agree with the counterpart that we are going to make the person working only on activity that benefit liaison between the two groups. So whatever is between the two groups, that is the scope why this person will work for us to improve that connection and help the person to translate his knowledge into ours and ours into theirs and join without the overwhelming sense I don't know how to do a job. Most of the, I am very pleased when they actually very candidly say, well, it was not that hard. Well, it's just three quarters we are doing this. So it's not the first, it's not really your first day. It's the first day because now you are fully responsible for before obviously we shield the person because it's a matter of responsibility from the day of hiring. Now is all your problem, but it's the same job that he was doing or she was doing from a couple of quarters at least. So they are not getting overwhelmed. it just, it's a, it's just a the correction of how to handle the cultural transition. So it's another aspect of pollination in a way. But now the full point of the proposition is I'd like to see how we can actually expand it to a larger rotation, a certain point. How we can, as an organization, not create holes to each other's, but be ready to move people around. Because it's not evident.</p><p><strong>Ivo:</strong> That's a question I'm going to ask in a few minutes, but before that, you said at the beginning that you had a merger of some kind of major disturbance every two years. And I'm sure you had those in the last five years as well. So how did it feel differently now when you have this fluid new operation, when such a big change happened, how it felt?</p><p><strong>Andrea:</strong> I would say the pain is the same, so the pain doesn't diminish. And we have some sort of repetitive brain injury of doing the same thing again when we take a deep. But the problem I had with that is every time I had to step back in maturity and handle less maturity, I was suddenly interrupting a maturity work of a certain quality.</p><p>After a no, you you go through this maturity, grow at a certain point, everything start to flow. You have been optimizing, innovating, cyclically over time. Now you start to flow and you find yourself, okay, now I'm going to do this project finally. Cause certain advanced project you can do a certain level of maturity. can't be willing to do advanced project right from the get go. If you don't have the prerequisite in place. So you build up, you build up, you prepare everything. So you're now you're ready.</p><p>And now suddenly you have this low maturity coming into that doesn't allow you to continue the high maturity because you have to take care of the low maturity group to be back to speed because it's a drug in a way. Culturally is a drug because the team now forgot to deal with very immature situation. Now he has to be back into. So there is some sort of dysfunctional situation which are very efficient and working team need to be confronted.</p><p>What I want to say, there is no way to isolate them performantly. I know that a lot of conversation I had, why you don't isolate them and keep flowing because we become at that level of maturity, not by isolating ourselves. So it's counterintuitive for me. I don't think we'll last. That team in that moment will not last forever. So isolating them is just like a flower going to lose all the petals at a certain point. I need to find a way to reignite and reach that work is really, it's not self-sufficient, the performance team. You still have to work with them, on them, and they have to change. So we have to go to the low maturity team. So we have to put the high maturity project aside for a second and go back to base one. Where is your visibility? Where is your money?</p><p>Where is the first gate key? Where is the documentation? Let's build it again. So we rebuild the app. So by doing it multiple times, what I can say is not less painful. I can go back to what I'm doing much faster.</p><p>And that is the advantage for me because I'm also passionate about what I'm trying to do. So I have a very beautiful, no, just standard that I have to play. Unfortunately, now that my new mate, he doesn't have an embouchure and everything is weak and squeaking all the time. You know what? Let's work on long tones again for quite some time and then we can go back because I really want to finish Echinox playing.</p><p>So the time that this person goes back to speed and I can go back practicing economics again is the value I find in this. Because it goes faster. There was like recently an acquisition. were able to, at the beginning we were spending a couple of years. Now we were able to spend six, eight months to go more or less the same.</p><p>Also because now the organization and the cultural organization is present. So the first time was two years, also because there was nothing around. Now there is like this kind of pressure and the rotation help a lot of pressure. Then you get somebody with a different expectation that is not willing to compromise on everything. It helps a lot to get rid of very, very bad habits quickly.</p><p><strong>Ivo:</strong> Does it create a feeling of all this constant change that people need to learn all the time. when you then have feedback from how people felt before and after this new way of working. So how this constant learning feels overall as organizational learning. In what way it is different than what it used to be before.</p><p><strong>Andrea:</strong> Most of those, now my team members are coming from places where they were somehow stuck in a position. Because in a small group, you end up being stuck in a role.</p><p><strong>Ivo:</strong> Now it's the other extreme.</p><p><strong>Andrea:</strong> Now is it, is they, they, some of them, they balance better. So it's also up to them is a, don't force it too much. Right. Well, we do, we do force a certain point. is a moment in which if you can't really stay in the rotation because you really want to, have, we have to have a conversation, because we believe that is foundational. Now we can balance it. but the person has to rotate. And if we, if that person keep coming back to the whole bar bits, we really take a decision to move that person to a different place. Because we need that to take... There is also another side of things. If you look at the innovation of a process, I need people rotating because I don't need the same person with the same set of belief and culture to tune to a process. I need the process to be continuously challenged.</p><p>And then continuously is not every day. I mean, there is also an amount of things we can do. We have a focus of changing the way we work every quarter. It doesn't mean we change everything every quarter. There might be a focus on something because it's still an incremental work. In a year, we change a lot. In a quarter, we change not as much as in a year. In two years, most probably we have changed the full set of things, because we went through A to Z to an extent. Some we just confirm. We are not obsessed with the change, per se. We are obsessed for the habit of not looking at what is something. So if something is properly working, there is all the time a reason to have a conversation on our process. I really have never, ever found something that was really perfect. Because again, we forget that there is a context shift as well. So the process or the activity can be perfect in a vacuum or in the previous context, but the context change is that delivering the same now that we have to do something else.</p><p>If you look at the process, yes. If you look at the context, now there is a mismatch. You're doing something that doesn't bring water to the main river, because now you have to bring water to another river.</p><p><strong>Ivo:</strong> To what extend this new method of work is suitable only for your line of business inside your organization? To what extent you can replicate it to other divisions? And then the other question would be, do you see it working in other kinds of organizations? Of course, not just by copying it. It should be adapted always, but overall, what is the replication potential of this method?</p><p><strong>Andrea:</strong> This is a difficult question, Ivo. So I think within the same organization, what we are trying to do with the TRIMBLE is to propose this to other departments that are not under my supervision. So to see how this can scale. We are still within the same realm of work. So there's the redevelopment of infrastructure. Given that most of what I have taken as inspiration, are like sociological or sociology of groups concepts. I do believe that some of them can be applied to other contexts. because in effect, it just happened for me to apply my passion of sociological study to what I do. It's not the other way around. If I would have done something else, most probably I would apply the same principle to my day-to-day realm. So...</p><p>I wouldn't say it's connected so hard except by life. That is this the job I have and this is where I had the opportunity to practice or to try to develop something is what I do. But I don't see it so much correlated. Obviously there are some important caveats in where you have to have a certificate. You have to have a definitive size.</p><p>A team of two is going to be already doing this. Most probably a team of three is most probably already doing this.</p><p>within themselves, but again, within the same flower, but not with the other flower because there is no other flower. So, you you have to have the kind of population of flower to cross pollinate. And the other thing is the verticality of domain knowledge. Depending how vertical is the domain knowledge, it might be more difficult to, but that's why we broke it down. Is the rotation of gatekeeping is the rotation of what everybody can do.</p><p>The rotation on the microtheming is more driven by knowledge. So they're not equal because they cannot rotate as fast. The idea is that by building the geek keeping knowledge across, I'm building up. And by doing the microtheming, I'm building up over time. hopefully at a certain point, I will have a faster rotation in the microtheming, but they will never have the same speed on the two rotations. By nature, they have to be different.</p><p>This can apply to other places where there is a very vertical knowledge domain in which the rotation can still exist, but it has to be slower or longer because now the knowledge is the issue. So that's what I would foresee in a different context, for example. But most of this can be adapted. Well, the idea of adaptation is the foundational part. So I would say I wouldn't believe that it is an adaptable method if it cannot adapt itself in a way.</p><p><strong>Ivo:</strong> Unfortunately, we are reaching the end of our conversation. have two more questions with which to finish. One is, so I think you covered a lot of ground, but was it anything that you find valuable and there was so far no opportunity to share in this talk?</p><p><strong>Andrea:</strong> I would say another interesting thing that we are now reflecting because most of this is, I'm passionate about this because for us it's also a reflection of how we work, So the main focus and the main passion come stem from that. We have been a Kanban team from the beginning. That is not a process that is very well known, that is very driven towards efficiency and flow of work, right? And the amount of work you can carry at any given time. there are as a built-in sense of focus. But over time, we ended up detaching the throughput from the value of what we were doing. So why now that we are looking at is how we actually start to deliver the sense of value to the teams.</p><p>Now we were speaking about the micro teams, how they know that doing three phases of a project or a hundred tasks is doing anything at all. So we are trying to shift to the sense of what we are trying to achieve, right? So especially because if we want to have like autonomous team, their Northstar is going to be the intent. I want to achieve that. I actually don't care how, that's all your problem, guys and ladies.</p><p>But that's the shift you are trying to do. So we are changing a lot of our metrics, measurements from a purely throughput oriented concept to a value oriented concept. It's very hard because most of our reporting upstream are based on throughput. But we feel that that metric has literally little to no sense for the team deliverables. Because again, I don't care if you do five phases of project. Phase one has to have a meaning. As a good example, most of the project were break down by phase one, phase two, phase three, and then project is complete. It was very hard to determine what did we achieve by phase one. And it has to be tangible. It's not just like half of a bridge. I can't use it. It has to be tangible, something that I can use.</p><p>They can see and they can validate is useful in a way or the other. So instead of breaking down project based on throughput, you're trying to break them down based on deliverables, so value deliverables in a way, something that is presentable.</p><p><strong>Ivo:</strong> That reminds me of something I noticed last time about having open epics. Is it related to this value driven instead of...</p><p><strong>Andrea:</strong> It can be, it can be. What we want to do ourselves is more on the, we rotate a team and when that activity is finished, there has to be something tangible that is deliverable that they can see, touch and showcase to us.</p><p>Usually it's difficult to show cast, you know. 20 tickets, 20 tickets. What does it mean? I don't know.</p><p>Maybe there are 20 tickets that we're going to be harvest down the road in other, and you need other 40 to harvest any value. But then we have a, we have a problem of intent and purpose with the team, especially if we start to rotate. Then we, we need a way that the rotation is not totally oblivious, right? That you just get in this kind of washing machine and you get out of what have I done? I don't know. I have been in three projects. I didn't know what to do, how they are useful to anybody. So when you get out of the washing machine, you get with a specific set of clothes clean. That's what I washed.</p><p><strong>Ivo:</strong> Yeah, well, and what's next?</p><p><strong>Andrea:</strong> we don't know? Alright, Ivo.</p><p><strong>Ivo:</strong> Isn't anything that your retrospective show that it's still not working so well and next you are going to address that.</p><p><strong>Andrea:</strong> Oh yeah.</p><p>There are plenty of items. I guess that is the inevitable of everything. And that's why we keep reflecting on the items is exactly because we have plenty of items to fix. We will have most probably forever. So we want to iterate over those and address them. what I can say, well, today we are really focusing on this value deliverable of the metrics because he has a large impact.</p><p>Also culturally, we have to, or organizationally, we shifting from a throughput-oriented organization. How many things have you done? 10, 15. Two, what have you done? Well, I washed those clothes. Not 10 clothes, I don't know, washed 10 socks. I don't care, I don't need them. I have them. It's a large shift, especially in relationship with the others. Because then it's becoming... a lot of work to be done, how to both reassure people that the work is done alongside to help them to see that the value is what counts. Because there is this kind of an honest connect sometime that we have to make quantity work for the sake of making quantity work without and forgetting what we're trying to achieve. So that's the next focus. That is not evident especially in reporting and relationship with the other departments.</p><p><strong>Ivo:</strong> Thanks so much. Was a great story. Thanks a lot.</p><p><strong>Andrea:</strong> Thank you, Ivo.</p>]]></content:encoded></item><item><title><![CDATA[Containers All the Way Down]]></title><description><![CDATA[We put things in pockets, bottles, boxes, and barrels &#8212; containers of every kind, serving every purpose, in every size: from small cosmetic jars to vast cargo ships. The actual ability to contain doesn't always matter. We turn emotions into containers when we are bursting with anger or filled with pride. We talk about events that happened in the past or will happen in the future as though language had intuited relativity before physics. Containers pervade our life, its basic unit, the cell, being itself a semi-permeable container.]]></description><link>https://www.linkandth.ink/p/containers-all-the-way-down</link><guid isPermaLink="false">https://www.linkandth.ink/p/containers-all-the-way-down</guid><dc:creator><![CDATA[Ivo Velitchkov]]></dc:creator><pubDate>Tue, 26 Aug 2025 12:43:36 GMT</pubDate><enclosure url="https://substack-post-media.s3.amazonaws.com/public/images/c715d555-b9ba-4236-90c8-c850206ee0bc_1024x1024.jpeg" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p><em>Shape clay into a vessel; <br>It is the space within that makes it useful</em>.</p><p>&#8211; Lao Tzu</p><p>We put things in pockets, bottles, boxes, and barrels &#8212; containers of every kind, serving every purpose, in every size: from small cosmetic jars to vast cargo ships. The actual ability to contain doesn't always matter. We turn emotions into containers when we are bursting with anger or filled with pride. We talk about events that happened in the past or will happen in the future as though language had intuited relativity before physics. Containers pervade our life, its basic unit, the cell, being itself a semi-permeable container.</p><p>Containment, the sense of something held within a boundary, runs through human experience. Could it be not merely a property of artefacts, nor only a favored turn of speech, but a more fundamental relation?</p><p><a href="https://www.linkandth.ink/p/containment-series">This series</a> will follow containment from different vantage points, suggesting that its presence is no accident, and that, wide as its reach already appears, it may still be narrower than its potential.</p><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://www.linkandth.ink/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe now&quot;,&quot;action&quot;:null,&quot;class&quot;:null}" data-component-name="ButtonCreateButton"><a class="button primary" href="https://www.linkandth.ink/subscribe?"><span>Subscribe now</span></a></p><h2><strong>Life Containers</strong></h2><p>Cells define themselves as a unity in space by their membrane. The membrane holds molecules together so they can participate in reactions. Some of these reactions produce that very boundary that makes the reactions possible. Life is circularity and self-reference.</p><p>The boundary brings both the cell and its environment into existence. And it creates asymmetry.</p><p>The cell membrane admits nutrients and expels waste. It is selective. Certain things are allowed only in one direction, in or out.</p><p>The organizational closure of cells gives them autonomy. Once they distinguish themselves <em>from</em> the environment, they can distinguish things <em>in</em> the environment. They become sense-makers. And get preferences and norms. Bacteria swim towards an area with a higher concentration of nutrients.</p><p>Cells organize themselves into larger containers. Some of these, like blood vessels, bladders, and stomachs, have physical boundaries; others, like the immune system, have organizational boundaries, where the network distinguishes those who sustain the collective self from those who threaten it.</p><p>The autonomy of the cells is reduced by the multicellular containers they build. Organisms maintain their boundaries, which again distinguish them from their environment, producing a range of phenomena, from simple individuation to selfhood.</p><p>Organisms and the environment shape each other. One part of the environment is often remade into a container to hold another part that organisms want kept in place. It can be for protection, like birds building nests for their eggs, or for food storage, like the small holes squirrels dig in the ground for their nuts, or it can serve multiple purposes, like the dams beavers create. And then there is the diversity of containers humans build, from pots and cradles to silos and planes.</p><h2><strong>A Human History of Holding</strong></h2><p>Now, when we move from place to place, we can't do without containers: bags, backpacks, and suitcases. But that wasn't always the case. Back in time, nomadic hunter-gatherers moved a lot but avoided bulky containers. To be more mobile, yes, but there was also another reason: most of what was taken was consumed soon after. It was the shift to more sedentary, agricultural lifeways that increased surplus and led to large, durable storage.</p><p>In the beginning, nature provided both matter and form: the first containers were gourds and shells. Later, people learned to work with different materials and developed tools and skills to shape them as they wished &#8212; baskets from grass, reed, or rush; bowls and boxes from wood; wineskins, water bladders, and parfleche containers from animal organs.</p><p>When the art of pottery emerged, it amplified the variety of container forms, sizes and functions. This innovation allowed storing food surpluses and reduced the time spent on foraging. The development of containment technologies enabled various ways of accumulating and transporting resources and led to more complex societies.</p><p>The first glass vessels appeared around 1500 BCE in Egypt and Mesopotamia, and centuries later Phoenicia became famed for its glassmaking. These early glass containers were used for perfumes, not for wine. Wine continued to be stored in ceramic vessels then, and for many centuries after. Glass required high-temperature furnaces and great skill to produce, making it far rarer and more demanding than clay.</p><p>The development of containers and trade reinforced each other. The Greeks shipped wine, olive oil, and grain across the Mediterranean in sealed vases, the famous amphorae. The pointed base allowed amphorae to be placed firmly in sand ballast or wooden frames. Then there was a secondary support system with straw or tree branches around the base and ropes around the necks. The evolution of the design of ship storage areas and that of amphorae shaped each other.</p><p>Amphorae production exploded in Roman times. As Rome grew into the largest city in the world, the demand for olive oil increased. The present-day reminder of this peak in trade and consumption is an actual physical peak, Monte Testaccio in Rome. This is a heap of 580,000 cubic meters (760,000 cu yd) made out of remains of an estimated number of 53 million amphorae.</p><p>In Medieval times, the high-volume transport of liquids and dry goods over long sea voyages made the wooden barrel the dominant container for liquid goods. The design of the barrels was a response to the need for a durable, leak-proof container that could withstand rough handling and long transit times. The use of standardized barrels, which could be rolled and stacked easily, also increased the efficiency of the loading and unloading processes.</p><p>Then the container innovation in trade slowed down, and that became a big problem during the Industrial Revolution. The increased volume and the diversity of industrial trade created immense logistical challenges. Ports were a chaotic mix of different package sizes, leading to slow turnaround times, high labor costs, and frequent cargo theft or damage. These inefficiencies were a major drag on global commerce. It took more than a century to find the solution. </p><p>Yet, if trade containers were in a bad period, there was some advancement in other containment technologies. A notable example is canning.</p><p>Food canning was invented at the beginning of the 19th century by Nicolas Appert. In 1795, the French government offered a prize of 12,000 francs for a method to preserve food to support military operations throughout the year. Appert presented his innovation in 1806, but the Bureau of Arts and Manufactures of the Ministry of the Interior gave it to him a few years later, under the condition that he &#8220;open-source&#8221; his innovation. This was shortly followed by the invention of tin cans by another Frenchman, Philippe de Girard.</p><p>There is no better way of finishing this brief history of holding than with Malcom McLean's invention of the modern shipping container in 1956. While loading wheeled containers on ships was practiced already in 1920s, the novelty was in not loading the chassis, only the container, later leading to standardization. It dramatically reduced the shipping costs, changed ports, ships and other means of transport. Although globalization emerged from many factors, very few had an impact as big as that of the McLean's intermodal container.</p><h2><strong>Metaphoric Containers</strong></h2><p>All languages are full of containment words. In English, <em>in</em> ranks top six in frequency. And then there are the derivatives <em>into</em>, <em>inside</em>, <em>within</em> and similar for <em>out</em>. Common are also the actions related to containers, such as <em>hold</em>, <em>pack</em>, <em>load</em>, <em>pour</em>, and the states <em>full</em>, <em>empty</em>, <em>open</em>, <em>closed</em>, and <em>stuffed</em>.</p><p>Containment pervades perception and thinking. The container schema is so powerful that we use it in all kinds of non-spacial situations. According to Lakoff and Johnson, it's part of the image schemata, which are prelinguistic. In <em>Philosophy In The Flesh</em> and <em>Metaphors We Live By</em>, they demonstrate how many of our conceptual metaphors use containment.</p><p>We see words as containers of ideas and meaning. Arguments are containers that may have <em>holes</em> and <em>not hold water</em>. Eyes can be <em>filled</em> with anger, passion. Months, years and decades are containers of events. Love is a container since we fall <em>in</em> and <em>out</em> of love. And so is depression, and here even with the addition characteristic of depth and the notion that <em>the deeper your are in</em> a depression, the more time it will take to get out of it. Life is a container that can be <em>full</em>, <em>empty</em> or <em>filled</em> with certain types of events and experiences.</p><p>Our image schemata shape not only our mental life but also the theories of its disorders. In Wilfred Bion's containment theory, the mother or another caregiver is a container of the child's overwhelming emotions and anxieties. Similar roles assumes the therapist later in life. Bion's theory was developed in his book <em>Learning from Experience</em> from 1962, but the contours of containment can be seen in the works he was influenced by, including Freud's notion of drive and affect, structured according to the body's surface and openings. </p><p>Overall, containment is a popular metaphor in psychoanalysis, as Bent Rosenbaum and David Garfield <a href="https://www.psyartjournal.com/article/show/rosenbaum-metaphor_and_psychoanalysis_containers_m">show</a>. They find the containers appearing in patients' language in three dimensions: effective-perceptual, fantasy, and socio-intercative. It is similar, they admit, to the bio-psycho-social model, proposed by George Engel in 1977. Such models seem to overflow the container of psychoanalysis and get a trans-disciplinary status and recognition. That's not so strange, considering that Engel claimed it had roots in the general system theory. It seems to neatly map to Luhmann's social systems theory, too. Luhmann&#8217;s system taxonomy includes living, psychic and social systems, all of them being self-producing containers. This self-production is based on the same principles of autopoiesis, the paradigmatic example and theoretical origin being the smallest life container, the living cell.</p><p>And since biological, psychic and social are so closely related, it is not surprising that if containers do such a good job of explaining psychic disorders, they can serve well for social disorders too. That's what the containment theory of Walter Reckless shows. In <em>A New Theory of Deliquency and Crime</em>, published just a year before Bion's <em>Learning from Experience</em>, Reckless explores tensions between young persons&#8217; inner and outer containment. The boundaries can be broken from inside, as a result of family conflicts, or from the outside &#8212; the "pulls" of delinquent peers and subcultures. Often these forces work in combination.</p><p>Cognitive, social and psychological sciences are not the only ones busy with human emotions, relations and disorders; that is also the realm of literary art, and it got in that business first.</p><p>Containers there can be good and associated with stability, or bad and associated with social claustrophobia and totalitarian regimes. They can also be insidious by tolerating and even stimulating subversion, only to show that they can contain it and come out stronger.</p><p>The civilization order is a container, which &#8220;cannot hold&#8221; anymore and &#8220;things fall apart.&#8221; Yeats signals systemic failure. John Ehrenfeld sees in <em>The Second Coming</em> a description of a complex system, with the &#8220;center&#8221; as its attractor and that attractor is a container &#8220;that encloses a complex system and holds it together while enabling it to keep exhibiting a more or less stable set of behaviors.&#8221;</p><p>While Yeats&#8217; center cannot hold the tensions and the world collapses, some containers use tensions to reestablish themselves. In the Greenblattian model of subversion and containment, art, literature, and cultural practices can undermine established social, political, or religious authority. They may introduce doubt, irony, or alternative perspectives that threaten dominant ideologies. But the ideologies find ways to contain them, ultimately reinforcing the existing order. The subversion is often staged in such a way by the existing order that it can be contained and used for affirmation. Carnivals in medieval Europe are a popular such case. Similar to Shakespearean plays. Subversion is displayed, but the order survives, stronger for having allowed doubt.</p><p>Using physical containers such as towers to symbolize patriarchal and ideological imprisonment is a popular method in Gothic literature but it started earlier, probably already with <em>Jane Eyre</em>, once seen through the lens of <em>The Madwoman in the Attic</em>, a 1979 book by Sandra Gilbert and Susan Gubar. Bertha's attic is a symbol of silenced nonconformity.</p><p>If gothic literature uses containers to show the confinement of women in society, in dystopian literature what is confined is the whole society. The container there is not an attic or a tower. Often it is an authoritarian state, containing and controlling all aspects of citizen's lives. In <em>1984</em>, the Party is a container of people's minds through language and surveillance. In <em>The</em> <em>Handmaid's Tale</em>, the state of Gilead is a container for state-mandated reproduction through enforced, ritualized use of women's bodies.</p><h2><strong>Containment in Philosophy and Logic</strong></h2><p>Plato introduces the concept of Kh&#244;ra in <em>Timaeus</em>. Kh&#244;ra is formless receptacle, where the sensible thing comes into being out of the eternal ones. Since Kh&#244;ra is neither, he describes it as a &#8220;third kind.&#8221; It is an enduring substratum, unlike the things we perceive like water which can turn into steam. Kh&#244;ra has different usages and interpretations, first by Aristotle, and more recently by Heidegger and Derrida.</p><p>Aristotle takes an empirical approach and defines the place (<em>topos</em>) of a thing as the motionless boundary of whatever body contains it. The place of wine is the amphora that contains it, so long as the amphora does not move. When the wine is in a boat floating down a river, its place is neither the amphora nor the boat, but the river, defined by its motionless riverbanks.</p><p>For Aristotle, containment is a transitive relation: if a person is in a house and the house is in a town, then both the house and the town contain that person. The universe itself does not have a place because it is not contained by anything.</p><p>Several centuries after Aristotle articulated his ideas about the essence of things and where they are placed, in India, the concept of <em>&#347;&#363;nyat&#257;</em> emerges, and, in contrast, it is about the intrinsic lack of essence and place. <em>&#346;&#363;nyat&#257;</em> means &#8220;emptiness.&#8221; All entities are empty of intrinsic nature; that is why they are sometimes likened to bubbles.</p><p>A related metaphor is Indra&#8217;s net, which has a jewel at each vertex, and each jewel is reflected in all the others. Each part contains the whole.</p><p><em>&#346;&#363;nyat&#257;</em> is a central concept in Mah&#257;y&#257;na Buddhism. It denies inherent essence and emphasizes dependent co-arising. In Western philosophy and logic, a similar primacy of relations over substances is characteristic of the thought of C. S. Peirce. This stance runs against the mainstream, as does his dissatisfaction with symbolic logic, which relies on arbitrary mappings.  To deal with both issues, he developed a notation that illustrates logical relations: the Existential Graphs. </p><p>Containments are central in Peirce&#8217;s Existential Graphs. He calls them &#8220;cuts.&#8221; Cuts can be nested but not intersected, which is an important difference from set theory. </p><p>In <em>Laws of Form</em>, published in 1969, George Spencer-Brown brings an entirely new logic and notation, the Calculus of Indications. He introduces one sign, the mark, to represent the fundamental cognitive operation, distinction. The mark shows how something emerges from nothing, and is always related to the observer, who makes and indicates the distinction. Importantly, the mark is a container, and the only relation between marks is the one of containment.</p><p>The Calculus of Indication of George Spencer-Brown has influenced a few prominent theories in biology, social science, cognitive science and the philosophy of mind.</p><p>Using the calculus of indications, in the 70s, Varela found a way to mathematically express the notions of autopoiesis and autonomy. Self-reference is key there. In <em>Laws of Form,</em> self-reference is already introduced through the concept of re-entry, which brings oscillation in the form. To extend the arithmetic and algebra for self-reference, Varela adds a separate mark for self-reference. The extended calculus was first explained in 1974 in the paper <em>Calculus of Self-reference</em> and elaborated a few years later in <em>Principles of Biological Autonomy</em>.</p><p>In his last book, <em>The Embodied Mind</em>, co-authored with Eleanor Rosch and Evan Thompson, Varela refers to <em>&#347;&#363;nyat&#257;</em> in relation to the absence of a pre-given world. Living systems, self-asserting their autonomy, enact their world. This view integrates Madhyamaka school of Mah&#257;y&#257;na Buddhism with the phenomenally of perception of Merleau-Ponty and the theory of operational closure to initiate the enactive school of cognitive science and philosophy of mind.</p><p><em>Laws of Form</em> and the theory of autopoiesis not only influenced biology and cognitive science, but also the social sciences. The most prominent is the social systems theory of Niklas Luhmann, mentioned earlier. For Luhmann, living, psychic and social systems are autopoietic systems. Social systems are produced by the distinction between them and their environment, realised by a self-referential network of communications. In this way, the system contains the communications that produce it. External communications can pervade that container, but, just like perturbations of living systems, not as instructions but re-encoded according to the system&#8217;s internal logic.</p><p>In a different way, containment is central in Peter Sloterdijk&#8217;s theory, presented in his magnum opus, the <em>Spheres</em> trilogy. Sloterdijk emphasizes co-existence, so containment is in the form &#8220;in-with.&#8221; Containers can be intimate (the focus of the first volume, <em>Bubbles</em>), world-encompassing macro-containers giving coherence to collective life (<em>Globes</em>) or the contemporary co-isolated yet interconnected spheres (<em>Foams</em>).</p><p>Back to the Peirce and Spencer-Brown lineage, in Boundary logic, containment is not just a first-class citizen; it is the only relation. Containers there are with semi-permeable boundaries, just like the living cells. There will be more about it in another essay.</p><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://www.linkandth.ink/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe now&quot;,&quot;action&quot;:null,&quot;class&quot;:null}" data-component-name="ButtonCreateButton"><a class="button primary" href="https://www.linkandth.ink/subscribe?"><span>Subscribe now</span></a></p><p>In this first post of the series, I have tried to trace containment from life&#8217;s self-creation to its other-creations: from tools for storing to tools for thought. For lack of knowledge or space, many examples were left out, even significant ones such as Noah&#8217;s Ark, or the way satisfaction is tied to fullness, as in &#8220;I am content.&#8221; Still, I hope what this essay contains was enough to reveal how deeply containers pervade our lives.</p>]]></content:encoded></item><item><title><![CDATA[Writing with Roam]]></title><description><![CDATA[How I use Roam Research for writing essays]]></description><link>https://www.linkandth.ink/p/writing-with-roam</link><guid isPermaLink="false">https://www.linkandth.ink/p/writing-with-roam</guid><dc:creator><![CDATA[Ivo Velitchkov]]></dc:creator><pubDate>Tue, 05 Aug 2025 14:24:11 GMT</pubDate><enclosure url="https://substack-post-media.s3.amazonaws.com/public/images/f5f42f26-89b1-4834-b81e-dbd49ccfa40c_1024x1024.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>Four years ago, I posted on Twitter</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://x.com/kvistgaard/status/1414865758572761090" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!oKpV!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb6e84cc5-ea65-46a2-bf6b-ec6502cecba3_746x1314.png 424w, https://substackcdn.com/image/fetch/$s_!oKpV!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb6e84cc5-ea65-46a2-bf6b-ec6502cecba3_746x1314.png 848w, https://substackcdn.com/image/fetch/$s_!oKpV!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb6e84cc5-ea65-46a2-bf6b-ec6502cecba3_746x1314.png 1272w, https://substackcdn.com/image/fetch/$s_!oKpV!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb6e84cc5-ea65-46a2-bf6b-ec6502cecba3_746x1314.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!oKpV!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb6e84cc5-ea65-46a2-bf6b-ec6502cecba3_746x1314.png" width="746" height="1314" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/b6e84cc5-ea65-46a2-bf6b-ec6502cecba3_746x1314.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1314,&quot;width&quot;:746,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:160296,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:&quot;https://x.com/kvistgaard/status/1414865758572761090&quot;,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:&quot;https://www.linkandth.ink/i/169659398?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc38e58e4-eb0f-473a-bd19-5982a3198950_754x1320.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!oKpV!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb6e84cc5-ea65-46a2-bf6b-ec6502cecba3_746x1314.png 424w, https://substackcdn.com/image/fetch/$s_!oKpV!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb6e84cc5-ea65-46a2-bf6b-ec6502cecba3_746x1314.png 848w, https://substackcdn.com/image/fetch/$s_!oKpV!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb6e84cc5-ea65-46a2-bf6b-ec6502cecba3_746x1314.png 1272w, https://substackcdn.com/image/fetch/$s_!oKpV!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb6e84cc5-ea65-46a2-bf6b-ec6502cecba3_746x1314.png 1456w" sizes="100vw" fetchpriority="high"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>Write and weave. This is the balance between <a href="https://www.linkandth.ink/p/autonomy-and-cohesion">autonomy and cohesion</a>, and between <a href="http://ttps://www.linkandth.ink/p/random-living-error">flow-inducing focus and serendipitous interruptions</a>.</p><p>But writing is itself weaving. The word <em>text</em> comes from <em>texere</em>, &#8220;to weave.&#8221; Write/weave is both recursion and tension.</p><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://www.linkandth.ink/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe now&quot;,&quot;action&quot;:null,&quot;class&quot;:null}" data-component-name="ButtonCreateButton"><a class="button primary" href="https://www.linkandth.ink/subscribe?"><span>Subscribe now</span></a></p><p>Currently, there are&nbsp;<a href="https://www.strategicstructures.com/?p=2591">over 80 PKM tools</a>, and those that treat data as a knowledge graph are more likely to support this kind of tension. They are also more likely, depending on their breeding, to become collaborators partners.<a class="footnote-anchor" data-component-name="FootnoteAnchorToDOM" id="footnote-anchor-1" href="#footnote-1" target="_self">1</a></p><p>In what follows, I'm going to share with you how I use my PKM of choice, Roam Research, for writing, particularly for writing essays. </p><p>When I say writing, I mean, of course, writing and weaving. </p><p>I'm hoping this article will bring insights to readers using alternative PKM tools as well. I'll include all templates, smart blocks, queries and scripts, just like I did with <a href="https://www.linkandth.ink/p/graph-pruning-part-2">graph pruning</a>. The users of Roam can directly apply these. Since a few people told me they adapted my <a href="https://www.linkandth.ink/p/graph-pruning-part-2">graph pruning practice</a> to their tool of choice, I hope that even the specific technical details shared here might be helpful to non-Roam users.</p><p>The focus will be on writing and not on overall research and technology-supported thinking, as shown below (taking Luhmann's practice as a reference framework).</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://twitter.com/kvistgaard/status/1625151820090732545" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!vca6!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3e6239e7-e68d-4cfb-9b96-305ceb87e985_747x1039.png 424w, https://substackcdn.com/image/fetch/$s_!vca6!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3e6239e7-e68d-4cfb-9b96-305ceb87e985_747x1039.png 848w, https://substackcdn.com/image/fetch/$s_!vca6!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3e6239e7-e68d-4cfb-9b96-305ceb87e985_747x1039.png 1272w, https://substackcdn.com/image/fetch/$s_!vca6!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3e6239e7-e68d-4cfb-9b96-305ceb87e985_747x1039.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!vca6!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3e6239e7-e68d-4cfb-9b96-305ceb87e985_747x1039.png" width="747" height="1039" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/3e6239e7-e68d-4cfb-9b96-305ceb87e985_747x1039.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1039,&quot;width&quot;:747,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:214159,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:&quot;https://twitter.com/kvistgaard/status/1625151820090732545&quot;,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://www.linkandth.ink/i/169659398?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc3fd4f0e-3356-47e8-8e96-3d82e5665ab0_751x1045.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!vca6!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3e6239e7-e68d-4cfb-9b96-305ceb87e985_747x1039.png 424w, https://substackcdn.com/image/fetch/$s_!vca6!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3e6239e7-e68d-4cfb-9b96-305ceb87e985_747x1039.png 848w, https://substackcdn.com/image/fetch/$s_!vca6!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3e6239e7-e68d-4cfb-9b96-305ceb87e985_747x1039.png 1272w, https://substackcdn.com/image/fetch/$s_!vca6!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3e6239e7-e68d-4cfb-9b96-305ceb87e985_747x1039.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>But these three loops repeat within the loop of writing. It's likely then that you find patterns applicable beyond the practice of essay writing.</p><h2><strong>Workflows</strong></h2><p>For me, the seeds of an essay are usually one or several thoughts, captured in a block and tagged with #Idea or #blog. Once it's ripe enough, I create a page named with the working title for the post. </p><p>I see it like a place where I throw handfuls of clay. They pile up, waiting to get sculptured one day. Or I think of it as an inbox: direct candidates are sent, often via quick capture from the phone app, while those that are only somewhat related are tagged with that page.</p><p>Now, speaking of tags, at some point in the process, relevant papers and essays, whether random or part of the selection, are tagged. And not just with a tag for their main topic, but also with a specific tag for that future essay. That happens on Readwise and the Readwise reader. A few words on that.</p><p>All selected HTML articles, PDF papers and EPUB books end in Readwise (I use it on an e-ink device, which makes the experience even better). Most documents are tagged either during capture (effortless from both the browser extension and the phone app) or later when used on the Reader. </p><p>But then, apart from the usual tagging, which I call &#8220;topic-tagging&#8221; (and of course, such tags are typed as Topic and Topic is a <a href="https://github.com/kvistgaard/roamo">RIO class</a>), I need to group items that are part of the research for a particular essay. It is neither practical nor possible (since all Readwise tags are small letters) to use the Roam page title, although in other use cases, this will be the most natural thing to do. So I came up with a short Readwise tag,<a class="footnote-anchor" data-component-name="FootnoteAnchorToDOM" id="footnote-anchor-2" href="#footnote-2" target="_self">2</a> which works like an essay alias for the items sent from Readwise to Roam. </p><p>You'll see later how this tag is used in a query that ensures all pertinent Readwise items were reviewed during research and writing. By Readwise item, I mean a whole document, such as an article or a book, or a highlight/ annotation, tagged separately, in cases when only that quote or that note might be relevant.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!W7Nq!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1617043c-8d9b-4e9e-8ae9-1e686fb0eed6_2700x2117.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!W7Nq!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1617043c-8d9b-4e9e-8ae9-1e686fb0eed6_2700x2117.png 424w, https://substackcdn.com/image/fetch/$s_!W7Nq!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1617043c-8d9b-4e9e-8ae9-1e686fb0eed6_2700x2117.png 848w, https://substackcdn.com/image/fetch/$s_!W7Nq!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1617043c-8d9b-4e9e-8ae9-1e686fb0eed6_2700x2117.png 1272w, https://substackcdn.com/image/fetch/$s_!W7Nq!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1617043c-8d9b-4e9e-8ae9-1e686fb0eed6_2700x2117.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!W7Nq!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1617043c-8d9b-4e9e-8ae9-1e686fb0eed6_2700x2117.png" width="1456" height="1142" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/1617043c-8d9b-4e9e-8ae9-1e686fb0eed6_2700x2117.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1142,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:424807,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://www.linkandth.ink/i/169659398?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1617043c-8d9b-4e9e-8ae9-1e686fb0eed6_2700x2117.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!W7Nq!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1617043c-8d9b-4e9e-8ae9-1e686fb0eed6_2700x2117.png 424w, https://substackcdn.com/image/fetch/$s_!W7Nq!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1617043c-8d9b-4e9e-8ae9-1e686fb0eed6_2700x2117.png 848w, https://substackcdn.com/image/fetch/$s_!W7Nq!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1617043c-8d9b-4e9e-8ae9-1e686fb0eed6_2700x2117.png 1272w, https://substackcdn.com/image/fetch/$s_!W7Nq!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1617043c-8d9b-4e9e-8ae9-1e686fb0eed6_2700x2117.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>As you see in this diagram, there is also reMarkable with two arrows to Roam, one dashed, and one solid.  I use reMarkable to jot ideas, draw maps, or write drafts. When I need a drawing in Roam, it comes semi-automated (the dashed line connector). When it is text, it goes directly through in Roam through a Zapier workflow (the solid line connector). </p><p>For bibliography collections, I use Zotero, and there is an excellent Roam extension for it. So normally each written work has two pages in my Roam graph: one created by the Readwise connection, which is the respective collection of annotations, and one coming from Zotero with the metadata. For frequently referred sources, the annotation page is embedded in the Zotero page.</p><p>The conversations with LLM models are enabled with the Live AI extension. I'll come back to this later.</p><h2><strong>The Blog Post template</strong></h2><p>Once it's time for a more organized work on the essay, I go to the respective Roam page and run the Blog Post template. </p><p>Last year, prompted by the Readwise tag I mentioned earlier and a query to view all unchecked or excluded items, I upgraded the template to a Smart Block. I kept the [[roam/templates]] tag so I can still trigger it on mobile or when Roam extensions are disabled.</p><p>Here's how a post page looks when the Smart Block is applied:</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!STsf!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1f1f35ad-8d44-45be-80e4-0c804e1f97c8_1951x1844.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!STsf!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1f1f35ad-8d44-45be-80e4-0c804e1f97c8_1951x1844.png 424w, https://substackcdn.com/image/fetch/$s_!STsf!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1f1f35ad-8d44-45be-80e4-0c804e1f97c8_1951x1844.png 848w, https://substackcdn.com/image/fetch/$s_!STsf!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1f1f35ad-8d44-45be-80e4-0c804e1f97c8_1951x1844.png 1272w, https://substackcdn.com/image/fetch/$s_!STsf!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1f1f35ad-8d44-45be-80e4-0c804e1f97c8_1951x1844.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!STsf!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1f1f35ad-8d44-45be-80e4-0c804e1f97c8_1951x1844.png" width="1456" height="1376" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/1f1f35ad-8d44-45be-80e4-0c804e1f97c8_1951x1844.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1376,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:&quot;&quot;,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" title="" srcset="https://substackcdn.com/image/fetch/$s_!STsf!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1f1f35ad-8d44-45be-80e4-0c804e1f97c8_1951x1844.png 424w, https://substackcdn.com/image/fetch/$s_!STsf!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1f1f35ad-8d44-45be-80e4-0c804e1f97c8_1951x1844.png 848w, https://substackcdn.com/image/fetch/$s_!STsf!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1f1f35ad-8d44-45be-80e4-0c804e1f97c8_1951x1844.png 1272w, https://substackcdn.com/image/fetch/$s_!STsf!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1f1f35ad-8d44-45be-80e4-0c804e1f97c8_1951x1844.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>Well, it doesn't look like that right after I trigger it. This is how it looks when the post is published. Initially, the attributes <code>words</code>, <code>URL</code>, and <code>publication date</code> are with no values. The <code>same as</code>, which in this context is for the short Readwise tag,  gets its value from filling in the field of a pop-up prompt, produced by the Smart Block.</p><p>The part above the horizontal line is the metadata section. Let&#8217;s make it clear what you see (since it depends on the CSS used): the thick gray underline is for internal links, while the thin black underline is for aliases and external links.</p><p>Like many other pages, blog post pages are typed using the <code>[[Post]]</code> class defined in the <a href="https://github.com/kvistgaard/roamo">RIO ontology</a>. <code>#Publication</code> is also a RIO class. The Roam attributes <code>words</code>, <code>same as</code>, <code>has topic</code> are defined as RIO properties.</p><p>I&#8217;ll explain &#8220;Ideas&#8221;, &#8220;Research,&#8221; and &#8220;Text&#8221; in separate sections after this one.</p><p>&#8220;Publicity&#8221; is where I draft posts and threads for social media and keep the post links. For the actual scheduling, I use Buffer. It can publish on Bluesky, X-twitter, LinkedIn, Mastodon, and other networks. Why do I keep links to social media posts? When I have a new thought on a post or topic, I can click the respective link and re-post it with the new thought.</p><p>&#8220;Republish&#8221; is for those posts I decide to republish on my old blog and Medium after a few months.</p><p>And &#8220;Book&#8221; is for essays from series planned to be published as a book. There, I put ideas that are not included in the essay but might be included when it becomes a chapter in the book.</p><p>Sometimes I add other sections, depending on what the post needs. Such a section might be at the root level, for example, for diagrams (like the Excalidraw diagram I used above for this one) or inside another section, as it is the case with ideas maps (an example follows).</p><h2><strong>Ideas</strong></h2><p>Once I apply the template, I put all the ideas collected initially inside the &#8220;Ideas&#8221; section. There, I also draft the outline when I need one.</p><p>In some cases, I add another level of grouping inside ideas, for example, for ideas for the title or subtitle.</p><p>More difficult essays may get a map, which became possible when Roam upgraded their diagram to be used like a proper mapping canvas. Here's how such might look:</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!sAfC!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F400d3dc6-5e90-4167-8cf2-fdddc7550c13_1774x1135.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!sAfC!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F400d3dc6-5e90-4167-8cf2-fdddc7550c13_1774x1135.png 424w, https://substackcdn.com/image/fetch/$s_!sAfC!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F400d3dc6-5e90-4167-8cf2-fdddc7550c13_1774x1135.png 848w, https://substackcdn.com/image/fetch/$s_!sAfC!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F400d3dc6-5e90-4167-8cf2-fdddc7550c13_1774x1135.png 1272w, https://substackcdn.com/image/fetch/$s_!sAfC!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F400d3dc6-5e90-4167-8cf2-fdddc7550c13_1774x1135.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!sAfC!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F400d3dc6-5e90-4167-8cf2-fdddc7550c13_1774x1135.png" width="1774" height="1135" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/400d3dc6-5e90-4167-8cf2-fdddc7550c13_1774x1135.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1135,&quot;width&quot;:1774,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:643239,&quot;alt&quot;:&quot;&quot;,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" title="" srcset="https://substackcdn.com/image/fetch/$s_!sAfC!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F400d3dc6-5e90-4167-8cf2-fdddc7550c13_1774x1135.png 424w, https://substackcdn.com/image/fetch/$s_!sAfC!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F400d3dc6-5e90-4167-8cf2-fdddc7550c13_1774x1135.png 848w, https://substackcdn.com/image/fetch/$s_!sAfC!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F400d3dc6-5e90-4167-8cf2-fdddc7550c13_1774x1135.png 1272w, https://substackcdn.com/image/fetch/$s_!sAfC!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F400d3dc6-5e90-4167-8cf2-fdddc7550c13_1774x1135.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">The ideas map for <a href="https://www.linkandth.ink/p/beyond-decentralization">Beyond Decentralization</a></figcaption></figure></div><p>Ideas that are important to include are turned into to-dos.</p><p>Sometimes, idea blocks appear as block references inside the Research section to structure it. Then, when under &#8220;Ideas,&#8221; transcluded blocks from research may trigger related ideas, and vice versa &#8212; some ideas require research, so there are normally a lot of connections between child blocks of these two sections.</p><p>At the end of this section, there is a query which within the Smart Block, looks like this:</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!d9tP!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6411aaa8-d047-4190-b00e-5c61c7401ca6_1601x1321.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!d9tP!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6411aaa8-d047-4190-b00e-5c61c7401ca6_1601x1321.png 424w, https://substackcdn.com/image/fetch/$s_!d9tP!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6411aaa8-d047-4190-b00e-5c61c7401ca6_1601x1321.png 848w, https://substackcdn.com/image/fetch/$s_!d9tP!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6411aaa8-d047-4190-b00e-5c61c7401ca6_1601x1321.png 1272w, https://substackcdn.com/image/fetch/$s_!d9tP!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6411aaa8-d047-4190-b00e-5c61c7401ca6_1601x1321.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!d9tP!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6411aaa8-d047-4190-b00e-5c61c7401ca6_1601x1321.png" width="1456" height="1201" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/6411aaa8-d047-4190-b00e-5c61c7401ca6_1601x1321.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1201,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:&quot;&quot;,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" title="" srcset="https://substackcdn.com/image/fetch/$s_!d9tP!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6411aaa8-d047-4190-b00e-5c61c7401ca6_1601x1321.png 424w, https://substackcdn.com/image/fetch/$s_!d9tP!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6411aaa8-d047-4190-b00e-5c61c7401ca6_1601x1321.png 848w, https://substackcdn.com/image/fetch/$s_!d9tP!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6411aaa8-d047-4190-b00e-5c61c7401ca6_1601x1321.png 1272w, https://substackcdn.com/image/fetch/$s_!d9tP!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6411aaa8-d047-4190-b00e-5c61c7401ca6_1601x1321.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>It gathers all blocks with Readwise tag, relevant tasks and notes, and excludes those that are done or rejected. </p><p>When the smart block is triggered, it brings an input box for the Readwise tag.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!95_C!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F91bd1b6c-15c3-4afc-8a56-19ad4cfdf458_1470x629.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!95_C!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F91bd1b6c-15c3-4afc-8a56-19ad4cfdf458_1470x629.png 424w, https://substackcdn.com/image/fetch/$s_!95_C!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F91bd1b6c-15c3-4afc-8a56-19ad4cfdf458_1470x629.png 848w, https://substackcdn.com/image/fetch/$s_!95_C!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F91bd1b6c-15c3-4afc-8a56-19ad4cfdf458_1470x629.png 1272w, https://substackcdn.com/image/fetch/$s_!95_C!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F91bd1b6c-15c3-4afc-8a56-19ad4cfdf458_1470x629.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!95_C!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F91bd1b6c-15c3-4afc-8a56-19ad4cfdf458_1470x629.png" width="1456" height="623" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/91bd1b6c-15c3-4afc-8a56-19ad4cfdf458_1470x629.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:623,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:41124,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://www.linkandth.ink/i/169659398?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F91bd1b6c-15c3-4afc-8a56-19ad4cfdf458_1470x629.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!95_C!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F91bd1b6c-15c3-4afc-8a56-19ad4cfdf458_1470x629.png 424w, https://substackcdn.com/image/fetch/$s_!95_C!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F91bd1b6c-15c3-4afc-8a56-19ad4cfdf458_1470x629.png 848w, https://substackcdn.com/image/fetch/$s_!95_C!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F91bd1b6c-15c3-4afc-8a56-19ad4cfdf458_1470x629.png 1272w, https://substackcdn.com/image/fetch/$s_!95_C!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F91bd1b6c-15c3-4afc-8a56-19ad4cfdf458_1470x629.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>With the current Smart Block, it works well in two cases: when I don't want to use a Readwise tag, and when it is already created (then the input prompt makes a lookup). If it so happens that I more often create it from there (the third case), I change the Smart Block to expect simple entry and turn it into a tag. The respective tag (created or selected from the look-up) is put as a value for the attribute <code>same as</code> and as a parameter in the first <code>{or:}</code> clause of the query.</p><p>The query creates a view on all blocks tagged with the Readwise tag, and notes and to-dos related to the post. </p><p>Then there is a negation to exclude the metadata block with <code>same as</code>, which has as value the Readwise tag, and status tags such as <code>#Processed</code> and <code>#Rejected</code>. There is an invisible tag <code>#.exclude</code> which is on the section &#8220;Republish.&#8221; Since such tasks are not relevant for the post publishing, they should not appear in the view &#8220;All not included or checked.&#8221;</p><h2><strong>Research</strong></h2><p>The research section includes research questions and notes, as well as references to Readwise pages or blocks. Readwise pages are collections of annotations made on paper books (scanned with the Readwise app), Kindle, Hypothes.is, HTML articles, PDFs and EPUBs. </p><p>Sometimes I store the whole source text in the Roam graph. Such is the case with podcast transcripts. More recently, it also happens with some deep research reports from ChatGPT or Gemini that I decide not to send to Readwise but copy into the graph. In such cases, they get processed where they are, and only the relevant parts are brought inside the Research section of the Roam page for the essay-in-progress. By &#8220;processed&#8221; I mean restructuring, fixing and adding references and annotating. </p><p>For bringing the relevant part in, I use the wonderful &#8220;Extract highlights in the selection or page&#8221; feature of the Find &amp; Replace extension by Fabrice Gallet. He's also the creator of the Live AI extension, which I'll explain in a minute. The extraction of highlights works similarly to the Latticework prototype of Andy Matuschak.</p><div id="youtube2-RHsBH9iYqCQ" class="youtube-wrap" data-attrs="{&quot;videoId&quot;:&quot;RHsBH9iYqCQ&quot;,&quot;startTime&quot;:null,&quot;endTime&quot;:null}" data-component-name="Youtube2ToDOM"><div class="youtube-inner"><iframe src="https://www.youtube-nocookie.com/embed/RHsBH9iYqCQ?rel=0&amp;autoplay=0&amp;showinfo=0&amp;enablejsapi=0" frameborder="0" loading="lazy" gesture="media" allow="autoplay; fullscreen" allowautoplay="true" allowfullscreen="true" width="728" height="409"></iframe></div></div><p>For research-heavy essays, the Research section has sub-sections for different topics that may or may not correspond to the sections of the essay.</p><p>Now, about LiveAI. I've been using it for a few months, and although I haven't fully explored its features, it has become an integral part of my research workflow.</p><p>For example, while working on an essay, an idea emerged that needed support from a paper I had read over a decade ago. I forgot the name, the author, everything. So, not leaving Roam, I asked the Live AI assistant about it, describing what I remembered (for example, I referenced an author I knew had referred to one such paper),  and also for new research on the same topic. I received a very decent list of papers with summaries, including the one I was looking for. However, most of the provided URLs were incorrect. So, I went through them one by one to find the actual papers and then brought them with one click to Zotero, using its standard browser extension. Then, with zoteroRoam, their metadata and abstracts were imported into my Roam graph, and I placed the respective aliases in the correct positions within the blocks generated by the AI assistant. This combination of Live AI, zoteroRoam, and the context I created using the SB structure helped me weave together all the ideas and thoughts in a way that I will probably reuse beyond this particular essay.</p><p>For many use cases, these practices offer more flexibility than the chat UIs provided by AI companies. One big difference is the context curation. It can be combined from the right-side bar, list of pages, block references, and daily notes pages. And the selection gives context cost estimation before sending the prompt.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!-BH0!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1f995f2a-4961-4c2b-8d4b-0a73f1d322d1_1634x1363.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!-BH0!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1f995f2a-4961-4c2b-8d4b-0a73f1d322d1_1634x1363.png 424w, https://substackcdn.com/image/fetch/$s_!-BH0!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1f995f2a-4961-4c2b-8d4b-0a73f1d322d1_1634x1363.png 848w, https://substackcdn.com/image/fetch/$s_!-BH0!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1f995f2a-4961-4c2b-8d4b-0a73f1d322d1_1634x1363.png 1272w, https://substackcdn.com/image/fetch/$s_!-BH0!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1f995f2a-4961-4c2b-8d4b-0a73f1d322d1_1634x1363.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!-BH0!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1f995f2a-4961-4c2b-8d4b-0a73f1d322d1_1634x1363.png" width="1456" height="1215" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/1f995f2a-4961-4c2b-8d4b-0a73f1d322d1_1634x1363.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1215,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:206257,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://www.linkandth.ink/i/169659398?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1f995f2a-4961-4c2b-8d4b-0a73f1d322d1_1634x1363.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!-BH0!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1f995f2a-4961-4c2b-8d4b-0a73f1d322d1_1634x1363.png 424w, https://substackcdn.com/image/fetch/$s_!-BH0!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1f995f2a-4961-4c2b-8d4b-0a73f1d322d1_1634x1363.png 848w, https://substackcdn.com/image/fetch/$s_!-BH0!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1f995f2a-4961-4c2b-8d4b-0a73f1d322d1_1634x1363.png 1272w, https://substackcdn.com/image/fetch/$s_!-BH0!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1f995f2a-4961-4c2b-8d4b-0a73f1d322d1_1634x1363.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>Another difference is that the conversation can start with one model, say OpenAI 4.1 and then continue with Claude Sonnet 4, and all within your main workspace.</p><p>Live AI provides an easy way to track your spending. And it seems way cheaper than a monthly subscription.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!Jc7n!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F037e4d44-34c2-4c23-9c7d-80acbd2e85c9_1071x1169.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!Jc7n!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F037e4d44-34c2-4c23-9c7d-80acbd2e85c9_1071x1169.png 424w, https://substackcdn.com/image/fetch/$s_!Jc7n!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F037e4d44-34c2-4c23-9c7d-80acbd2e85c9_1071x1169.png 848w, https://substackcdn.com/image/fetch/$s_!Jc7n!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F037e4d44-34c2-4c23-9c7d-80acbd2e85c9_1071x1169.png 1272w, https://substackcdn.com/image/fetch/$s_!Jc7n!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F037e4d44-34c2-4c23-9c7d-80acbd2e85c9_1071x1169.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!Jc7n!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F037e4d44-34c2-4c23-9c7d-80acbd2e85c9_1071x1169.png" width="1071" height="1169" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/037e4d44-34c2-4c23-9c7d-80acbd2e85c9_1071x1169.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1169,&quot;width&quot;:1071,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:181601,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://www.linkandth.ink/i/169659398?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F037e4d44-34c2-4c23-9c7d-80acbd2e85c9_1071x1169.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!Jc7n!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F037e4d44-34c2-4c23-9c7d-80acbd2e85c9_1071x1169.png 424w, https://substackcdn.com/image/fetch/$s_!Jc7n!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F037e4d44-34c2-4c23-9c7d-80acbd2e85c9_1071x1169.png 848w, https://substackcdn.com/image/fetch/$s_!Jc7n!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F037e4d44-34c2-4c23-9c7d-80acbd2e85c9_1071x1169.png 1272w, https://substackcdn.com/image/fetch/$s_!Jc7n!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F037e4d44-34c2-4c23-9c7d-80acbd2e85c9_1071x1169.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><h2><strong>Writing</strong></h2><p>The writing process involves a text layer and a meta-layer. By meta-layer, I mean content ideas, footnotes, notes on style issues, general to-dos and specific to-dos like links of footnotes to add. They have to be captured but not interfere for the moment, to keep the balance and not let the writing get weave-heavy.</p><h3><strong>Text layer</strong></h3><p>When working on a text in Roam, my top requirement is a clean, text-only immersive experience. That involved making style changes to hide block markers and keep it flat, using a larger font that is good for writing and so on. So my draft block, which is inside the &#8220;Text&#8221; section, is pre-tagged with #<code>.rm-focus</code>, a hidden tag triggering a dedicated focus CSS when zooming in on the top block. Once in, my screen looks like this:</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!sCHS!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5d2eb640-e7d5-4266-93ea-ee62abaf2e94_2048x1322.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!sCHS!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5d2eb640-e7d5-4266-93ea-ee62abaf2e94_2048x1322.png 424w, https://substackcdn.com/image/fetch/$s_!sCHS!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5d2eb640-e7d5-4266-93ea-ee62abaf2e94_2048x1322.png 848w, https://substackcdn.com/image/fetch/$s_!sCHS!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5d2eb640-e7d5-4266-93ea-ee62abaf2e94_2048x1322.png 1272w, https://substackcdn.com/image/fetch/$s_!sCHS!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5d2eb640-e7d5-4266-93ea-ee62abaf2e94_2048x1322.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!sCHS!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5d2eb640-e7d5-4266-93ea-ee62abaf2e94_2048x1322.png" width="1456" height="940" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/5d2eb640-e7d5-4266-93ea-ee62abaf2e94_2048x1322.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:940,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:2934335,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://www.linkandth.ink/i/169659398?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5d2eb640-e7d5-4266-93ea-ee62abaf2e94_2048x1322.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!sCHS!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5d2eb640-e7d5-4266-93ea-ee62abaf2e94_2048x1322.png 424w, https://substackcdn.com/image/fetch/$s_!sCHS!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5d2eb640-e7d5-4266-93ea-ee62abaf2e94_2048x1322.png 848w, https://substackcdn.com/image/fetch/$s_!sCHS!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5d2eb640-e7d5-4266-93ea-ee62abaf2e94_2048x1322.png 1272w, https://substackcdn.com/image/fetch/$s_!sCHS!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5d2eb640-e7d5-4266-93ea-ee62abaf2e94_2048x1322.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>That's what I meant in that tweet by &#8220;Just write!&#8221; The tool should disappear entirely. </p><p>The original focus CSS was developed by Jeff Harris and further improved by<span class="mention-wrap" data-attrs="{&quot;name&quot;:&quot;Alexander Rink&quot;,&quot;id&quot;:68265184,&quot;type&quot;:&quot;user&quot;,&quot;url&quot;:null,&quot;photo_url&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/804ecfc4-67fd-4ad4-85bc-a002c80a435b_1280x1280.jpeg&quot;,&quot;uuid&quot;:&quot;bbc4937f-fae7-46cd-ba0a-bcc006dec0a0&quot;}" data-component-name="MentionToDOM"></span>. </p><p>Since I wasn't happy with any of the free fonts, I bought Calendas Plus. It has beautiful ligatures. Its most characteristic feature is the magnificent capital Q:</p><div class="captioned-image-container"><figure><a class="image-link image2" target="_blank" href="https://substackcdn.com/image/fetch/$s_!hqly!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0890f26a-3f3b-4790-9843-ffee5832c66f_1487x179.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!hqly!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0890f26a-3f3b-4790-9843-ffee5832c66f_1487x179.png 424w, https://substackcdn.com/image/fetch/$s_!hqly!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0890f26a-3f3b-4790-9843-ffee5832c66f_1487x179.png 848w, https://substackcdn.com/image/fetch/$s_!hqly!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0890f26a-3f3b-4790-9843-ffee5832c66f_1487x179.png 1272w, https://substackcdn.com/image/fetch/$s_!hqly!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0890f26a-3f3b-4790-9843-ffee5832c66f_1487x179.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!hqly!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0890f26a-3f3b-4790-9843-ffee5832c66f_1487x179.png" width="1456" height="175" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/0890f26a-3f3b-4790-9843-ffee5832c66f_1487x179.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:175,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:&quot;&quot;,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" title="" srcset="https://substackcdn.com/image/fetch/$s_!hqly!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0890f26a-3f3b-4790-9843-ffee5832c66f_1487x179.png 424w, https://substackcdn.com/image/fetch/$s_!hqly!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0890f26a-3f3b-4790-9843-ffee5832c66f_1487x179.png 848w, https://substackcdn.com/image/fetch/$s_!hqly!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0890f26a-3f3b-4790-9843-ffee5832c66f_1487x179.png 1272w, https://substackcdn.com/image/fetch/$s_!hqly!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0890f26a-3f3b-4790-9843-ffee5832c66f_1487x179.png 1456w" sizes="100vw" loading="lazy"></picture><div></div></div></a></figure></div><p>Anyway, my aesthetic preferences aside, the point is I can focus on writing. Still, I can instantly access what I need in the sidebar or transcluded between paragraphs, and make it disappear again with a quick keyboard shortcut. Write and weave.</p><p>Live AI is handy here, since, while writing, I can open the sidebar, converse quickly, and potentially take some of the results into account, with minimum interruption of the flow. Just a minute ago, I opened it and explained the distinction between the two text layers, hoping for some useful alternatives. I got some suggestions, nominated a few, but in the end, kept my initial ones. I'll take a screenshot now of how this looks. Here it is:</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!qxwA!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F71caf0d5-42f7-48c2-9a93-70040e07baa7_3686x2019.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!qxwA!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F71caf0d5-42f7-48c2-9a93-70040e07baa7_3686x2019.png 424w, https://substackcdn.com/image/fetch/$s_!qxwA!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F71caf0d5-42f7-48c2-9a93-70040e07baa7_3686x2019.png 848w, https://substackcdn.com/image/fetch/$s_!qxwA!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F71caf0d5-42f7-48c2-9a93-70040e07baa7_3686x2019.png 1272w, https://substackcdn.com/image/fetch/$s_!qxwA!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F71caf0d5-42f7-48c2-9a93-70040e07baa7_3686x2019.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!qxwA!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F71caf0d5-42f7-48c2-9a93-70040e07baa7_3686x2019.png" width="1456" height="798" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/71caf0d5-42f7-48c2-9a93-70040e07baa7_3686x2019.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:798,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:&quot;&quot;,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" title="" srcset="https://substackcdn.com/image/fetch/$s_!qxwA!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F71caf0d5-42f7-48c2-9a93-70040e07baa7_3686x2019.png 424w, https://substackcdn.com/image/fetch/$s_!qxwA!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F71caf0d5-42f7-48c2-9a93-70040e07baa7_3686x2019.png 848w, https://substackcdn.com/image/fetch/$s_!qxwA!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F71caf0d5-42f7-48c2-9a93-70040e07baa7_3686x2019.png 1272w, https://substackcdn.com/image/fetch/$s_!qxwA!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F71caf0d5-42f7-48c2-9a93-70040e07baa7_3686x2019.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><h3><strong>Meta-layer</strong></h3><p>While writing, there are plenty of issues that need to be captured as quickly as possible, without letting them break the flow. In case of writing with the intention to publish on Substack, one way to distinguish these issues is by the stage they need to be closed: while the draft is in Roam or when it is on Substack.</p><p>What may happen during writing? An idea to add a link or a footnote, something to research further, a styling issue to look into later and so on.</p><p>When it is an issue to be closed during the Roam stage of the draft, I use either the built-in comments feature or the Footnotes extension. The good thing about it is that I can invoke it to appear transcluded between the paragraphs in the second pass, and either change the text, based on it, or edit the note. Here's an example of such a comment from the current draft:</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!dcUF!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffec5146a-8fd4-4028-a55d-44bf8ba335dd_2901x1602.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!dcUF!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffec5146a-8fd4-4028-a55d-44bf8ba335dd_2901x1602.png 424w, https://substackcdn.com/image/fetch/$s_!dcUF!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffec5146a-8fd4-4028-a55d-44bf8ba335dd_2901x1602.png 848w, https://substackcdn.com/image/fetch/$s_!dcUF!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffec5146a-8fd4-4028-a55d-44bf8ba335dd_2901x1602.png 1272w, https://substackcdn.com/image/fetch/$s_!dcUF!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffec5146a-8fd4-4028-a55d-44bf8ba335dd_2901x1602.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!dcUF!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffec5146a-8fd4-4028-a55d-44bf8ba335dd_2901x1602.png" width="1456" height="804" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/fec5146a-8fd4-4028-a55d-44bf8ba335dd_2901x1602.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:804,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:&quot;&quot;,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" title="" srcset="https://substackcdn.com/image/fetch/$s_!dcUF!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffec5146a-8fd4-4028-a55d-44bf8ba335dd_2901x1602.png 424w, https://substackcdn.com/image/fetch/$s_!dcUF!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffec5146a-8fd4-4028-a55d-44bf8ba335dd_2901x1602.png 848w, https://substackcdn.com/image/fetch/$s_!dcUF!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffec5146a-8fd4-4028-a55d-44bf8ba335dd_2901x1602.png 1272w, https://substackcdn.com/image/fetch/$s_!dcUF!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffec5146a-8fd4-4028-a55d-44bf8ba335dd_2901x1602.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>I've made the screenshot with an open sidebar, only to show how the two collections of such issue notes appear in the essay page, with all blocks collapsed, only the one called notes expanded.</p><p>With some CSS, block references can appear as marginalia. Here's how the same comment can look:</p><div class="captioned-image-container"><figure><a class="image-link image2" target="_blank" href="https://substackcdn.com/image/fetch/$s_!gD3c!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0fb1c68e-ed62-4cab-8145-63b525f5b25d_2786x621.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!gD3c!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0fb1c68e-ed62-4cab-8145-63b525f5b25d_2786x621.png 424w, https://substackcdn.com/image/fetch/$s_!gD3c!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0fb1c68e-ed62-4cab-8145-63b525f5b25d_2786x621.png 848w, https://substackcdn.com/image/fetch/$s_!gD3c!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0fb1c68e-ed62-4cab-8145-63b525f5b25d_2786x621.png 1272w, https://substackcdn.com/image/fetch/$s_!gD3c!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0fb1c68e-ed62-4cab-8145-63b525f5b25d_2786x621.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!gD3c!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0fb1c68e-ed62-4cab-8145-63b525f5b25d_2786x621.png" width="1456" height="325" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/0fb1c68e-ed62-4cab-8145-63b525f5b25d_2786x621.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:325,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:&quot;&quot;,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" title="" srcset="https://substackcdn.com/image/fetch/$s_!gD3c!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0fb1c68e-ed62-4cab-8145-63b525f5b25d_2786x621.png 424w, https://substackcdn.com/image/fetch/$s_!gD3c!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0fb1c68e-ed62-4cab-8145-63b525f5b25d_2786x621.png 848w, https://substackcdn.com/image/fetch/$s_!gD3c!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0fb1c68e-ed62-4cab-8145-63b525f5b25d_2786x621.png 1272w, https://substackcdn.com/image/fetch/$s_!gD3c!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0fb1c68e-ed62-4cab-8145-63b525f5b25d_2786x621.png 1456w" sizes="100vw" loading="lazy"></picture><div></div></div></a></figure></div><p>This was the case when the issue note is about the whole paragraph. When it is for a particular part in the text, then I use either parentheticals, which nicely collapse and expand inline, or the footnotes from the Footnote extension by Fabrice Gallet. Footnotes can also be created from inline block-search, similar to parentheticals. The numbered items under &#8220;Notes&#8221; on the sidebar in the screenshot before the one with marginalia show notes created with the Footnotes extension.</p><p>All issue notes that need to be dealt with at Roam stage are created as Roam comments or footnotes. When the text is pasted to Substack, all of them should be closed since there they will appear as meaningless identifiers.</p><p>The issue notes to be dealt with at the Substack stage are created as parentheticals. There are two benefits. When in Roam, they don't disturb the editing since they are collapsed. In Substack, they do disturb the editing, as they should, so that the link or the footnote is added. It's also easy to check at the end if something is remaining to be done, since there is no other reason to have double parentheses in the text.</p><p>That's it. It was very lengthy to explain, but it is simple to use. Now, a few more things about queries over multiple posts, and at the end &#8212; all the code.</p><h2><strong>Publication views</strong></h2><p>The publication itself, in this case Substack, has its own page in Roam. I'm not going to go through it since this is not what the current essay is about. But there are a few sections with queries, using the post metadata, which create useful views. The most basic view is that for all published posts:</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!0E3X!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1d1b31fa-93a5-4959-ba90-ac33e40c9062_1927x1962.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!0E3X!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1d1b31fa-93a5-4959-ba90-ac33e40c9062_1927x1962.png 424w, https://substackcdn.com/image/fetch/$s_!0E3X!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1d1b31fa-93a5-4959-ba90-ac33e40c9062_1927x1962.png 848w, https://substackcdn.com/image/fetch/$s_!0E3X!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1d1b31fa-93a5-4959-ba90-ac33e40c9062_1927x1962.png 1272w, https://substackcdn.com/image/fetch/$s_!0E3X!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1d1b31fa-93a5-4959-ba90-ac33e40c9062_1927x1962.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!0E3X!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1d1b31fa-93a5-4959-ba90-ac33e40c9062_1927x1962.png" width="1456" height="1482" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/1d1b31fa-93a5-4959-ba90-ac33e40c9062_1927x1962.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1482,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:&quot;&quot;,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" title="" srcset="https://substackcdn.com/image/fetch/$s_!0E3X!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1d1b31fa-93a5-4959-ba90-ac33e40c9062_1927x1962.png 424w, https://substackcdn.com/image/fetch/$s_!0E3X!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1d1b31fa-93a5-4959-ba90-ac33e40c9062_1927x1962.png 848w, https://substackcdn.com/image/fetch/$s_!0E3X!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1d1b31fa-93a5-4959-ba90-ac33e40c9062_1927x1962.png 1272w, https://substackcdn.com/image/fetch/$s_!0E3X!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1d1b31fa-93a5-4959-ba90-ac33e40c9062_1927x1962.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>Now you see already one of the benefits of keeping most of the metadata nested. The view created by a standard Roam query shows a lot of useful information at once: the name of the post, which series it is part of, number words and the link to the post. The other benefit of nesting metadata, as opposed to the more common practice of keeping it at one level, is that simple queries only work for references that are on the same path.</p><p>It&#8217;s important to note that I put the URL of the post and the tag #Publication, only then is the post published. </p><p>This view has plenty of uses. For example, in the following screenshot, when I was writing this text, I used it simply to add hyperlinks to other posts (I&#8217;m using Vivaldi, but I guess other browsers allow tab tiling as well).</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!LolT!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F65109c56-5708-4329-bfa5-e57dcb1a812a_3276x1741.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!LolT!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F65109c56-5708-4329-bfa5-e57dcb1a812a_3276x1741.png 424w, https://substackcdn.com/image/fetch/$s_!LolT!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F65109c56-5708-4329-bfa5-e57dcb1a812a_3276x1741.png 848w, https://substackcdn.com/image/fetch/$s_!LolT!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F65109c56-5708-4329-bfa5-e57dcb1a812a_3276x1741.png 1272w, https://substackcdn.com/image/fetch/$s_!LolT!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F65109c56-5708-4329-bfa5-e57dcb1a812a_3276x1741.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!LolT!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F65109c56-5708-4329-bfa5-e57dcb1a812a_3276x1741.png" width="1456" height="774" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/65109c56-5708-4329-bfa5-e57dcb1a812a_3276x1741.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:774,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:646506,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://www.linkandth.ink/i/169659398?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F65109c56-5708-4329-bfa5-e57dcb1a812a_3276x1741.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!LolT!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F65109c56-5708-4329-bfa5-e57dcb1a812a_3276x1741.png 424w, https://substackcdn.com/image/fetch/$s_!LolT!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F65109c56-5708-4329-bfa5-e57dcb1a812a_3276x1741.png 848w, https://substackcdn.com/image/fetch/$s_!LolT!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F65109c56-5708-4329-bfa5-e57dcb1a812a_3276x1741.png 1272w, https://substackcdn.com/image/fetch/$s_!LolT!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F65109c56-5708-4329-bfa5-e57dcb1a812a_3276x1741.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>While this view of all published posts was achieved in the simplest possible way, just with a standard query, the other report, word count, went to the other extreme. The end result looks neat,</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!f5tb!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F43c3097b-8c32-45d1-a59d-5875e9c8450b_1576x1918.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!f5tb!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F43c3097b-8c32-45d1-a59d-5875e9c8450b_1576x1918.png 424w, https://substackcdn.com/image/fetch/$s_!f5tb!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F43c3097b-8c32-45d1-a59d-5875e9c8450b_1576x1918.png 848w, https://substackcdn.com/image/fetch/$s_!f5tb!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F43c3097b-8c32-45d1-a59d-5875e9c8450b_1576x1918.png 1272w, https://substackcdn.com/image/fetch/$s_!f5tb!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F43c3097b-8c32-45d1-a59d-5875e9c8450b_1576x1918.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!f5tb!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F43c3097b-8c32-45d1-a59d-5875e9c8450b_1576x1918.png" width="1456" height="1772" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/43c3097b-8c32-45d1-a59d-5875e9c8450b_1576x1918.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1772,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:&quot;&quot;,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" title="" srcset="https://substackcdn.com/image/fetch/$s_!f5tb!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F43c3097b-8c32-45d1-a59d-5875e9c8450b_1576x1918.png 424w, https://substackcdn.com/image/fetch/$s_!f5tb!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F43c3097b-8c32-45d1-a59d-5875e9c8450b_1576x1918.png 848w, https://substackcdn.com/image/fetch/$s_!f5tb!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F43c3097b-8c32-45d1-a59d-5875e9c8450b_1576x1918.png 1272w, https://substackcdn.com/image/fetch/$s_!f5tb!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F43c3097b-8c32-45d1-a59d-5875e9c8450b_1576x1918.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>but what's behind is not. It involved an interplay between a Smart Block, a Clojure Script and the Query Builder extension. I couldn't find a simpler way to do it and didn't get any helpful tips when asking around. While it is indeed quite useful, if it wasn't fun finding the solution, I probably wouldn't have bothered with it. Anyway, it's there, and if you want to, you can just copy it and use it. If you have any questions, put them in the comments. If you have found a more elegant way to do it, please share.</p><p>In the next section, you&#8217;ll find all the smart blocks, queries and scripts used.</p>
      <p>
          <a href="https://www.linkandth.ink/p/writing-with-roam">
              Read more
          </a>
      </p>
   ]]></content:encoded></item><item><title><![CDATA[Work-life Balance?]]></title><description><![CDATA[We are given one life, which is insultingly short. Then, the best we can hope for, if we can achieve work-life balance, is to live only half of it, and pay for that with the other half, work.]]></description><link>https://www.linkandth.ink/p/work-life-balance</link><guid isPermaLink="false">https://www.linkandth.ink/p/work-life-balance</guid><dc:creator><![CDATA[Ivo Velitchkov]]></dc:creator><pubDate>Mon, 14 Jul 2025 13:50:28 GMT</pubDate><enclosure url="https://substack-post-media.s3.amazonaws.com/public/images/2ecee057-5b1c-41ad-b957-8410901bb0b3_1167x931.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>Work-life balance is on the rise. After the high plateau between 2017 and 2021, it had a drop for a few years, and now it appears to be at an all-time high. That plateau might have been caused by the burnout pandemic getting a new fuel from the COVID pandemic, where the reclaimed commute time was filled by struggling to accommodate work at home.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!nc1y!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa09b7d54-3bc4-45c8-8e32-a09f77c263b8_2035x673.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!nc1y!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa09b7d54-3bc4-45c8-8e32-a09f77c263b8_2035x673.png 424w, https://substackcdn.com/image/fetch/$s_!nc1y!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa09b7d54-3bc4-45c8-8e32-a09f77c263b8_2035x673.png 848w, https://substackcdn.com/image/fetch/$s_!nc1y!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa09b7d54-3bc4-45c8-8e32-a09f77c263b8_2035x673.png 1272w, https://substackcdn.com/image/fetch/$s_!nc1y!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa09b7d54-3bc4-45c8-8e32-a09f77c263b8_2035x673.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!nc1y!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa09b7d54-3bc4-45c8-8e32-a09f77c263b8_2035x673.png" width="1456" height="482" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/a09b7d54-3bc4-45c8-8e32-a09f77c263b8_2035x673.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:482,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!nc1y!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa09b7d54-3bc4-45c8-8e32-a09f77c263b8_2035x673.png 424w, https://substackcdn.com/image/fetch/$s_!nc1y!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa09b7d54-3bc4-45c8-8e32-a09f77c263b8_2035x673.png 848w, https://substackcdn.com/image/fetch/$s_!nc1y!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa09b7d54-3bc4-45c8-8e32-a09f77c263b8_2035x673.png 1272w, https://substackcdn.com/image/fetch/$s_!nc1y!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa09b7d54-3bc4-45c8-8e32-a09f77c263b8_2035x673.png 1456w" sizes="100vw" fetchpriority="high"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption"><a href="https://trends.google.com/trends/explore?date=all&amp;q=%2Fm%2F025t89b&amp;hl=en-GB">Google Trends for the topic &#8220;work-life balance&#8221;</a></figcaption></figure></div><p>The term was coined by feminist movements in the 80s, where the meaning came from balancing career and cradle, but then it took a life of its own. Overnight, it became the mantra of HR consultants peddling wellness retreats, of self&#8209;help books promising &#8220;10 steps to reclaim your weekends.&#8221; The work-life balance industry grew rapidly. Yoga retreats, digital detox apps, productivity planners promising that, yes, you <em>can</em> get it all. The cure for pointless work often involves&#8230;more work. You must plan your leisure, map your downtime, and measure your happiness.</p><p>The actual balance it achieved was to damage in equal measure our notions of life and work.</p><p>Worse, this cherished aim of work-life balance is literally perverse. We are given one life, which is insultingly short.<a class="footnote-anchor" data-component-name="FootnoteAnchorToDOM" id="footnote-anchor-1" href="#footnote-1" target="_self">1</a> Then, the best we can hope for, if we can achieve work-life balance, is to live only half of it, and pay for that with the other half, work. There is no possibility of living <em>while</em> we work.</p><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://www.linkandth.ink/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe now&quot;,&quot;action&quot;:null,&quot;class&quot;:null}" data-component-name="ButtonCreateButton"><a class="button primary" href="https://www.linkandth.ink/subscribe?"><span>Subscribe now</span></a></p><p>Then what, exactly, counts as &#8220;life&#8221;? Family time? Meditation? Gardening? Netflix at 3&#8239;AM because you &#8220;earned&#8221; it? Meanwhile, work lurks like a vulture, ever ready to swoop when you dare to linger too long in the &#8220;life&#8221; zone.</p><p>This notion of paying with work so you can live is just the other extreme of understanding leisure only as a way to recharge your work batteries. This is so deeply ingrained that it is accepted as normal to call the leisure industry &#8220;recreational.&#8221; When you work, you damage yourself, so you need to be restored to do more work. But if you work really hard, you can afford exclusive packages that many others can't, a luxury pit-stop to make you run faster after.</p><p>The invention of the 40-hour workweek (down from 48) by Henry Ford had two motivations: one was the discovery that fewer hours make workers more productive, and the other was  the expectation that having more time to spend money would boost the economy and create demand for products like Ford cars.</p><p>Some years later, Bertrand Russel defended the intrinsic value of leisure and suggested a 4-hour workday.<a class="footnote-anchor" data-component-name="FootnoteAnchorToDOM" id="footnote-anchor-2" href="#footnote-2" target="_self">2</a> Around the same time, Keynes predicted that as technology advanced by the end of the century, people in developed economies would only need to work 15 hours. Yet, due to the constant invention of bullshit jobs,<a class="footnote-anchor" data-component-name="FootnoteAnchorToDOM" id="footnote-anchor-3" href="#footnote-3" target="_self">3</a> even now, a quarter in the next century, we are not getting close. Finally, there are more talks about 4-day work week, but also strong opinions against it. Just a couple of months ago, the German chancellor, Friedrich Merz, said:</p><blockquote><p>With a 4 day work week and work-life-balance we won&#8217;t be able to keep the wealth of this country.<a class="footnote-anchor" data-component-name="FootnoteAnchorToDOM" id="footnote-anchor-4" href="#footnote-4" target="_self">4</a></p></blockquote><p>Here's the work-life balance again, but from the mouth of the leader of the third-largest economy in the world. So, its absurdity is not questioned, but its power is recognized, and recognized as a threat.</p><p>It is a threat, indeed, but for entirely different reasons.</p><p>Even if we replace the absurdity of work-life balance with something more meaningful, like work-leisure balance, it is still a double verdict: neither leisure nor work has intrinsic value. In 1932, in that same essay, Bertrand Russel wrote:</p><blockquote><p>The modern man thinks that everything ought to be done for the sake of something else, and never for its own sake.</p></blockquote><p>Work is downgraded to labour, as Arendt wrote in 1958,<a class="footnote-anchor" data-component-name="FootnoteAnchorToDOM" id="footnote-anchor-5" href="#footnote-5" target="_self">5</a> a repetitive cycle of production and consumption. And her third category, action, the highest expression of the human condition, shrinks and drops at the means-ends level of work.</p><p>Sometimes I wonder, could it be that the work-life balance is a resurfacing of the Aristotelian <em>eudaimonia</em>, but in a cripled form. The contemporary English word that comes closest is <em>welfare</em>? Eudaimonia is literally translated as &#8220;good spirit,&#8221; but spirit is an interpretation of <em>da&#237;m&#333;n</em>, coming from &#8220;to divide.&#8221; Do we then have a mixture of the propensity of the Western civilized human to divide, combined with the tendency of the modern one to do something for the sake of something else? Is it then welfare, simply a cyclical and instrumental state of content, where humans are devoid of agency?</p><div class="footnote" data-component-name="FootnoteToDOM"><a id="footnote-1" href="#footnote-anchor-1" class="footnote-number" contenteditable="false" target="_self">1</a><div class="footnote-content"><p>I took &#8220;insultingly short&#8221; from  Oliver Burkeman&#8217;s <em>Four Thousand Weeks</em>.</p></div></div><div class="footnote" data-component-name="FootnoteToDOM"><a id="footnote-2" href="#footnote-anchor-2" class="footnote-number" contenteditable="false" target="_self">2</a><div class="footnote-content"><p>In Praise of Idleness, by Bertrand Russell. (n.d.). <em>Harper&#8217;s Magazine</em>.  <a href="https://harpers.org/archive/1932/10/in-praise-of-idleness/">https://harpers.org/archive/1932/10/in-praise-of-idleness/</a></p></div></div><div class="footnote" data-component-name="FootnoteToDOM"><a id="footnote-3" href="#footnote-anchor-3" class="footnote-number" contenteditable="false" target="_self">3</a><div class="footnote-content"><p><em>Bullshit Jobs</em>. (2019). <a href="https://www.simonandschuster.com/books/Bullshit-Jobs/David-Graeber/9781501143335">https://www.simonandschuster.com/books/Bullshit-Jobs/David-Graeber/9781501143335</a></p></div></div><div class="footnote" data-component-name="FootnoteToDOM"><a id="footnote-4" href="#footnote-anchor-4" class="footnote-number" contenteditable="false" target="_self">4</a><div class="footnote-content"><p>The translation is by <span class="mention-wrap" data-attrs="{&quot;name&quot;:&quot;Iwana Johannsen&quot;,&quot;id&quot;:120285100,&quot;type&quot;:&quot;user&quot;,&quot;url&quot;:null,&quot;photo_url&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/4d904d46-9e57-4ebb-86a4-ff88e4ab3329_2508x2508.png&quot;,&quot;uuid&quot;:&quot;6c096e2e-9785-4332-948f-c8ea732eff0f&quot;}" data-component-name="MentionToDOM"></span>, who also directed me to <a href="https://www.welt.de/wirtschaft/article256111912/Friedrich-Merz-Mit-4-Tage-Woche-und-Work-Life-Balance-koennen-wir-den-Wohlstand-nicht-erhalten.html">the source</a>. </p></div></div><div class="footnote" data-component-name="FootnoteToDOM"><a id="footnote-5" href="#footnote-anchor-5" class="footnote-number" contenteditable="false" target="_self">5</a><div class="footnote-content"><p>Arendt, H. (2018). <em>The Human Condition: Second Edition</em> (M. Canovan &amp; a N. F. by D. Allen, Eds.). University of Chicago Press. <a href="https://press.uchicago.edu/ucp/books/book/chicago/H/bo29137972.html">https://press.uchicago.edu/ucp/books/book/chicago/H/bo29137972.html</a></p></div></div>]]></content:encoded></item></channel></rss>