# Extend-the-end \`+\` vs. \`.01\`, \`.02\`

**URL:** <https://forum.johnnydecimal.com/t/extend-the-end-vs-01-02/2637>\
**Category:** Concepts\
**Created:** [June 4, 2025, 8:04am UTC](https://forum.johnnydecimal.com/t/extend-the-end-vs-01-02/2637 "2025-06-04T08:04:15Z")\
**Posts on this page:** 15\
**Page:** 2

<div class="post-metadata">

**Author:** ![ontologist](https://forum.johnnydecimal.com/user_avatar/forum.johnnydecimal.com/ontologist/32/1495_2.png) [@ontologist](https://forum.johnnydecimal.com/u/ontologist)\
**Post date:** [June 7, 2025, 10:06pm UTC](https://forum.johnnydecimal.com/t/extend-the-end-vs-01-02/2637/21 "2025-06-07T22:06:26Z")

</div>

**Addendum:** This excerpt from _Desiderata for Controlled Medical Vocabularies_ (Cimino, 1998) highlights the need for **non-semantic concept identifiers**. I think it ties nicely into this discussion.

## Non-Semantic Concept Identifiers

> Because many vocabularies are organized into strict hierarchies, there has been an irresistible temptation to make the unique identifier a hierarchical code which reflects the concept’s position in the hierarchy. For example, a concept with the code 1000 might be the parent of the concept with the code 1200 which, in turn might be the parent of the concept 1280, and so on. One advantage to this approach is that, with some familiarity, the codes become some-what readable to a human and their hierarchical relationships can be understood. With today’s computer inter-faces, however, there is little reason why humans need to have readable codes or, for that matter, why they even need to see the codes at all. Another advantage of hierarchical codes is that querying a database for members of a class becomes easier (e.g., searching for “all codes beginning with 1” will retrieve codes 1000, 1200, 1280, and so on). However, this advantage is lost if the concepts can appear in multiple places in the hierarchy (see “Polyhierarchy”, below); fortunately, there are other ways to perform “class-based” queries to a database which will work even when concepts can be in multiple classes [32].

> There are several problems with using the concept identifier to convey hierarchical information. First, it is possible for the coding system to run out of room. A decimal code, such as the one described above, will only allow ten concepts at any level in the hierarchy and only allow a depth of four [34]. Coding systems can be designed to avoid this problem, but other problems remain. For example, once assigned a code, a concept can never be reclassified without breaking the hierarchical coding scheme. Even more problematic, if a concept belongs in more than one location in the hierarchy (see “Polyhierarchy”, below), a convenient single hierarchical identifier is no longer possible. It is desirable, therefore, to have the unique identifiers for the concepts which are free of hierarchical or other implicit meaning (i.e., nonsemantic concept identifiers); such information should instead be included as attributes of the concepts [14].

### Conclusion

Johnny Decimal strikes a balance between **semantic encoding** (areas, categories) and **non-semantic identifiers** at the item level. It takes the best of both worlds.

The system establishes **immutable, mutually exclusive classes** with a maximum depth of two levels. Everything beneath that is flat. Concepts at this level may have **semantic relationships** with each other, but JD codes don’t attempt to represent them. Instead, move the meaning of the ID into the concept’s definition (JD note).

This is intentional: **below the category level, meaning becomes fluid and subject to change.** That’s where the system stops encoding semantics — to preserve stability.

---

<div class="post-metadata">

**Author:** ![johnnydecimal](https://forum.johnnydecimal.com/user_avatar/forum.johnnydecimal.com/johnnydecimal/32/1759_2.png) [@johnnydecimal](https://forum.johnnydecimal.com/u/johnnydecimal)\
**Post date:** [June 8, 2025, 12:54am UTC](https://forum.johnnydecimal.com/t/extend-the-end-vs-01-02/2637/22 "2025-06-08T00:54:33Z")

</div>

> [@hans](#):
>
> First, probably the total complexity can never be reduced - just moved from place to place.

This is a Sacred Truth. @Alex heard a Stack Overflow engineer say it on a podcast. “We never actually _reduce_ complexity”, she said. “We just move it around.” Or words to that effect. He may be able to find us the podcast link.

> [@hans](#):
>
> Combining those two, the new hire is _always_ going to need instruction. Just to know what goes in 13 and what goes in 53.

And we must not forget that **search exists**! Sure it’s nice to just neatly follow your path down through areas and categories to IDs but if you get there and 🤔 it’s not there, we can immediately fall back to search. The thing you’re looking for should absolutely be in a note’s title, and if it isn’t, consider adding it.

Also your tool shop sounds _amazing_ and it’s my life’s goal to see it in person.

---

<div class="post-metadata">

**Author:** ![LucyDecimal](https://forum.johnnydecimal.com/user_avatar/forum.johnnydecimal.com/lucydecimal/32/2002_2.png) [@LucyDecimal](https://forum.johnnydecimal.com/u/LucyDecimal)\
**Post date:** [June 8, 2025, 1:23am UTC](https://forum.johnnydecimal.com/t/extend-the-end-vs-01-02/2637/23 "2025-06-08T01:23:22Z")

</div>

😁. I actually just removed the one `+` I had in my personal system because after the discussion we had I realised I didn’t need it.

I guess I thought I’d take a `+` for a spin and see how I felt about it. But, in this particular case, I have plenty of room for new IDs in my travel category so I just made a new ID.

---

<div class="post-metadata">

**Author:** ![johnnydecimal](https://forum.johnnydecimal.com/user_avatar/forum.johnnydecimal.com/johnnydecimal/32/1759_2.png) [@johnnydecimal](https://forum.johnnydecimal.com/u/johnnydecimal)\
**Post date:** [June 8, 2025, 2:44am UTC](https://forum.johnnydecimal.com/t/extend-the-end-vs-01-02/2637/24 "2025-06-08T02:44:49Z")

</div>

Another example from trawling an old Discord thread. I’d suggested that there might be a gap in Life Admin for _managing other people’s IT stuff_. I help my bestie out with her small business so I manage her domains and backups.

Answer from @aviskase was, no: this is textbook EtE. Because what I’m managing is still `14.14 My data storage & backups`, but not _mine_, someone else’s.

So I have `14.14+MGH …` – her initials – and I `+MGH` anything else of hers I manage, and now I can filter all of those out trivially with search.

This is what EtE is for.

---

<div class="post-metadata">

**Author:** ![johnnydecimal](https://forum.johnnydecimal.com/user_avatar/forum.johnnydecimal.com/johnnydecimal/32/1759_2.png) [@johnnydecimal](https://forum.johnnydecimal.com/u/johnnydecimal)\
**Post date:** [June 8, 2025, 3:45am UTC](https://forum.johnnydecimal.com/t/extend-the-end-vs-01-02/2637/25 "2025-06-08T03:45:48Z")

</div>

Another one (noting here as this might make its way to the website in the future so this is my scratchpad now).

LAS has `12.14 Inventory`. So you might have a collection of clothes, wine, figurines, crochet patterns, whatever. Which you record in an inventory.

These things _are all inventories_. So you might like to keep them separate and EtE them under `12.14`.

---

<div class="post-metadata">

**Author:** ![hans](https://forum.johnnydecimal.com/user_avatar/forum.johnnydecimal.com/hans/32/719_2.png) [@hans](https://forum.johnnydecimal.com/u/hans)\
**Post date:** [June 8, 2025, 7:20am UTC](https://forum.johnnydecimal.com/t/extend-the-end-vs-01-02/2637/26 "2025-06-08T07:20:04Z")

</div>

nice clarification.

---

<div class="post-metadata">

**Author:** ![hans](https://forum.johnnydecimal.com/user_avatar/forum.johnnydecimal.com/hans/32/719_2.png) [@hans](https://forum.johnnydecimal.com/u/hans)\
**Post date:** [June 8, 2025, 7:21am UTC](https://forum.johnnydecimal.com/t/extend-the-end-vs-01-02/2637/27 "2025-06-08T07:21:30Z")

</div>

> [@johnnydecimal](#):
>
> Also your tool shop sounds _amazing_ and it’s my life’s goal to see it in person.

Just to manage expectations, it’s amazing primarily for the fact that it works _at all_ in its square footage. But I look forward to giving you the tour.

---

<div class="post-metadata">

**Author:** ![hans](https://forum.johnnydecimal.com/user_avatar/forum.johnnydecimal.com/hans/32/719_2.png) [@hans](https://forum.johnnydecimal.com/u/hans)\
**Post date:** [June 8, 2025, 9:08am UTC](https://forum.johnnydecimal.com/t/extend-the-end-vs-01-02/2637/28 "2025-06-08T09:08:07Z")

</div>

Thanks for the quote! I’ve come to the conclusion that for me, the decimal numbers are mainly for the computer to ensure things stay in order. I remember the names and use those. But it’s good to have the distinction/continuum spelled out, to realize the other way of seeing it can still be important.

Also re: @Don_F:  
And then there may be another line at the top, the name of the individual person being addressed. I presume that we won’t want to put the names of all people who work somewhere _in_ the structure; rather, we will have them listed in our address book with their address up to the suite/room level as an attribute.

---

<div class="post-metadata">

**Author:** ![Don\_F](https://forum.johnnydecimal.com/letter_avatar_proxy/v4/letter/d/f04885/32.png) [@Don\_F](https://forum.johnnydecimal.com/u/Don_F)\
**Post date:** [June 8, 2025, 2:36pm UTC](https://forum.johnnydecimal.com/t/extend-the-end-vs-01-02/2637/29 "2025-06-08T14:36:25Z")

</div>

There’s some kind of metaphor about the suite address being where the postal delivery ends, and delivery to the person being an internal function of the office, but I’m not yet fully awake so take my word for it.

---

<div class="post-metadata">

**Author:** ![johnnydecimal](https://forum.johnnydecimal.com/user_avatar/forum.johnnydecimal.com/johnnydecimal/32/1759_2.png) [@johnnydecimal](https://forum.johnnydecimal.com/u/johnnydecimal)\
**Post date:** [June 9, 2025, 1:16am UTC](https://forum.johnnydecimal.com/t/extend-the-end-vs-01-02/2637/30 "2025-06-09T01:16:00Z")

</div>

I managed to miss your longer comment above. This is a really helpful metaphor.

---

<div class="post-metadata">

**Author:** ![johnnydecimal](https://forum.johnnydecimal.com/user_avatar/forum.johnnydecimal.com/johnnydecimal/32/1759_2.png) [@johnnydecimal](https://forum.johnnydecimal.com/u/johnnydecimal)\
**Post date:** [June 9, 2025, 3:47am UTC](https://forum.johnnydecimal.com/t/extend-the-end-vs-01-02/2637/31 "2025-06-09T03:47:47Z")

</div>

FYI this thread spawned a question that deserved its own thread.

> [@Headers ■](https://forum.johnnydecimal.com/t/headers/2642):
>
> I was going to type this as a reply to [this post from](https://forum.johnnydecimal.com/t/extend-the-end-vs-01-02/2637/21) @ontologist but that thread is about extend-the-end, and this question is about something entirely different. Here’s the key bit, from the end: On to the question. This is a problem I have – unresolved – with use of the headers that we introduced with Life Admin. I have no problem with them in that context. That is an essentially fixed system. It is designed to be static. We left 2 IDs free under each header just in case, but the intent …

---

<div class="post-metadata">

**Author:** ![trintera](https://forum.johnnydecimal.com/user_avatar/forum.johnnydecimal.com/trintera/32/999_2.png) [@trintera](https://forum.johnnydecimal.com/u/trintera)\
**Post date:** [August 1, 2025, 10:08am UTC](https://forum.johnnydecimal.com/t/extend-the-end-vs-01-02/2637/32 "2025-08-01T10:08:21Z")

</div>

Sorry to bump this thread. The above discussion is about extending the index, but I’m still nog quite sure how to handle this in a filesystem.

Is the sub id added to the id at that same level, or is it an actual subfolder? And if the latter, how would I name this?

So, for example:

```plaintext
Alternative 1:

10-19 Some area
  14 Some category
    14.53 Some ID
    14.53+01 The extended ID
    14.53+02 Another extension

```

or

```plaintext
Alternative 2:

10-19 Some area
  14 Some category
    14.53 Some ID
      14.53+01 The extended ID
      14.53+02 Another extension

```

or

```plaintext
Alternative 3:

10-19 Some area
  14 Some category
    14.53 Some ID
      01 The extended ID
      02 Another extension

```

I’m asking this, since when I use Onedrive for Business to share a link to a folder, the first and second alternative have the full ID in the shared link (the folder name is the clickable text in an email), but the first might clutter the category in the file system. Alternative 3 is more concise imho, and uses fewer characters in the file path. (I occasionally run into having to long file paths.)

Looking forward to your opinions or, even better, experiences.

---

<div class="post-metadata">

**Author:** ![ontologist](https://forum.johnnydecimal.com/user_avatar/forum.johnnydecimal.com/ontologist/32/1495_2.png) [@ontologist](https://forum.johnnydecimal.com/u/ontologist)\
**Post date:** [August 1, 2025, 1:06pm UTC](https://forum.johnnydecimal.com/t/extend-the-end-vs-01-02/2637/33 "2025-08-01T13:06:54Z")

</div>

Hi, you might want to take a look at [this](https://johnnydecimal.com/10-19-concepts/13-system-expansion/13.32-guidelines/). The third option is recommended by Johnny.Decimal: The Sub-ID only is included in the folder name.

Personally, I avoid Sub-IDs because they lead to re-indexing if a child item becomes its own thing with a full `AC.ID`. I have outlined an alternative approach to Sub-IDs [here](https://forum.johnnydecimal.com/t/revisiting-ete/2708).

---

<div class="post-metadata">

**Author:** ![johnnydecimal](https://forum.johnnydecimal.com/user_avatar/forum.johnnydecimal.com/johnnydecimal/32/1759_2.png) [@johnnydecimal](https://forum.johnnydecimal.com/u/johnnydecimal)\
**Post date:** [August 3, 2025, 12:44am UTC](https://forum.johnnydecimal.com/t/extend-the-end-vs-01-02/2637/34 "2025-08-03T00:44:30Z")

</div>

No apology needed, there are no dead threads here. They just nap while they wait for us to come back to them.

I still have a bit of thinking to do here but I like, and use, and can recommend, subfolders that only contain the `+` part, and literally start with a `+`! For example I have:

```txt
11.14 Licences
   └─ + Drivers licence

```

I can spare the extra character, and this really makes it clear that this is an extended thing. I know what to expect in my JDex. And everything after the + still sorts like it would without it, so it doesn’t really affect anything. It doesn’t _interfere_.

And it says to me that this _isn’t_ just an un-considered subfolder. It’s a legitimate thing. I find some comfort in that.

I don’t have many of these yet, so there’s not a lot of data, but I’m pretty comfortable with this.

---

<div class="post-metadata">

**Author:** ![jan0sch](https://forum.johnnydecimal.com/letter_avatar_proxy/v4/letter/j/f04885/32.png) [@jan0sch](https://forum.johnnydecimal.com/u/jan0sch)\
**Post date:** [August 3, 2025, 8:38am UTC](https://forum.johnnydecimal.com/t/extend-the-end-vs-01-02/2637/35 "2025-08-03T08:38:25Z")

</div>

Hi, I’m mostly using “Alternative 1” and in some cases “Alternative 2”

The latter usually in places where I consider the “extensions” important enough to see them at a first glance when browsing through the index / file system / wiki / whatever.

The former mostly in the case of many extensions.

Also I try not to mix them but yeah things happen. 😅

[Previous page](https://forum.johnnydecimal.com/t/extend-the-end-vs-01-02/2637.md?page=1)
