DEVONthink Replicates vs. Tinderbox Aliases

No No, I have no idea what I would have done without your input or anyone else’s input. I guess I forgot to sympathize with your intention and I simply answered the result of your input. Shame on me

I’ve spent the better part of the last four years classifying and acquiring all sorts of information I’ve jumped from tool to tool and I am really exhausted, I’m really just trying to find something that works. I don’t see anything close to Tinderbox and the idea of readjusting what I have trained my brain for so many years gets me exhausted even more, that’s all. Tinderbox is also a tool that has gained me at every step of the way, it gets really tiring. But by no means, I am very grateful for everyones input here, I really am.

Maybe I really don’t know what I am talking about, I did some testing and replicated a some media in a specific Devon database and the external drive showed the same amount data size. Im probably getting the knocks for my “sense of gratefulness” on the other question. Probably even those tags take some amount of data :slight_smile:

As I’ve observed elsewhere, I think that one of the most significant barriers for newcomers to Tinderbox is that they have used other programs. In my experience it can take a while to see past one’s preconceptions and start using Tinderbox for what it actually offers (which is unique) rather than trying to use it like another program. I found this observation by James Fallows was crucial in my adjustment of my thinking. Tinderbox is best used for associations not hierarchies.

1 Like

I revisited out conversation and it seems you did leave out a bit of information…I thought I was coming across a bit off. But I see the conversation with Mark A. where I did mention something along the “they have missed the point…” only to realize that you really were my only solution :slight_smile:

Mark has made it very clear to me that what I was trying to accomplish was simply not feasible in Tinderbox. So I went, up the menu, a bit to the right, crawled down to edit -> duplicates and the result was strange and unstructure so that confused me even more. However, you’ve had the holly “CC/CV” grail all along. I’ve been so preoccupied with the idea of “…away from dupes”, I’ve completely forgot your prior advice.

Can I get rococo with Actions on Regular containers?

Let’s assume I have a collection of lists of articles and a collection of categories of articles. Let’s name the article ‘Musical Form’; The original article will live in the, by article title list container collection and the duplicate will sit in two other containers within some classification scheme - well use an academic one in this instance . The top container for the categories collection will be 'Performing arts" and the original (“currently living in the list collection container”) will be duplicated twice, once in the ‘elements of music’ container and once more in the “musical composition” container. total of 3 articles, 3 living containers in the structural and titling sense. Can this process (CC/CV) be automated without manually having to keep track and go back for updates ?

I think one has to get away from the idea of putting things in permanent containers. It is much better to create associations between items using metadata. We had a whole discussion about this sort of thing in another thread:

The point is that agents allow you have have dynamic “containers” that present you with the stuff you want, and it doesn’t matter where the original is. You don’t need to spend time and effort “filing things” in the “proper place” because you find it according to what the note says, or its metadata, not according to where it resides in the structure of the database.

Not sure if that is clear, but perhaps the other thread will make it clearer. As I said, you have to get away from the idea of using this program like other programs.

I wasn’t referring to replicants/tags here. I did mention agents which in effect they can only ever hold aliases, hence the misunderstanding. You need to understand that although I might keep doing do the circle, I am trying the best I can. I can’t quite connect everything just yet, no matter how obvious it might be for you. It’s all slowly starting to click, but sometimes trivial questions do answer ones you never meant to ask. Therefore, may I ask, can this be done?

Can I get rococo with Actions on Regular containers?

Let’s assume I have a collection of lists of articles and a collection of categories of articles. Let’s name the article ‘Musical Form’; The original article will live in the, by article title list container collection and the duplicate will sit in two other containers within some classification scheme - well use an academic one in this instance . The top container for the categories collection will be 'Performing arts" and the original (“currently living in the list collection container”) will be duplicated twice, once in the ‘elements of music’ container and once more in the “musical composition” container. total of 3 articles, 3 living containers in the structural and titling sense. Can this process (CC/CV) be automated without manually having to keep track and go back for updates ?

I will give you and Mark an explanation shortly. I did briefly touch on the topic here:

see, I’m really trying very hard…


I would just give the original two tags: “elements_of_music” and “musical_composition” – and of course you can give it as many other tags as you like. Then you just have an Agent that looks for the tag, either alone or in combination with other tags or content. That results in a “container” that updates automatically whenever you add the tag to a new note, or remove it, or whatever.

If I understand this is just an outline of notes consisting only of a title and no text or other metadata. If so, why do this in Tinderbox rather than a simple outliner?

Thank you Martin for your input, I really appreciate it.

To see if I understand this discussion correctly, I believe you are looking for an app or command that will:

  • Exactly replicate a multi-level hierarchy;
  • Keep that hierarchy constantly and automatically refreshed, across different apps (so not just within OmniOutliner or Scrivener);
  • And, as a bonus, do so with no appreciable memory or storage penalty.

I do not believe any such app or system exists.

In my other life, as aviator, this is like the standard wish list for one’s “next” airplane. One that would be:

  • Faster
  • Cheaper
  • Carry more freight or passengers
  • Burn less fuel

New planes in the real world improve on one or two of those factors, in exchange for penalties on the others. Thus the aviation-world saying: “Faster, cheaper, more payload: choose two.”

I know there are analogies in computer coding, writing, research, construction, medicine, many other realms. There was a well known Brit writer, now dead, of whom it was said: He can write better than anyone who can write faster, and faster than anyone who can write better. The point is the tradeoffs.

In Tinderbox I think you have these options, each explained in detail in posts above:

  1. You can create an exact copy of an existing hierarchy, through the Cmd-C / Cmd-V sequence once you’ve selected that hierarchy. But the copy you create that way will not automatically update itself to reflect changes in the original.
  2. You can see all notes at all levels of a hierarchy if you’re working in outline view, as illustrated above. But that is just one hierarchy (not its duplicate), and it’s within just one app.
  3. You can see all notes from all levels if you create an agent to find them (descendedFrom(), as explained above), and then display their aliases, in a map or outline view. And those aliases will automatically update to reflect changes in the original outline. But that will not show you their hierarchical relationship (though there are workaround ways to show the info, in columns etc), and again it is within one app.

So your initial goal, as I understood your explanation, is not feasible in any app I’m aware of. It’s like the faster-cheaper-bigger payload airplane that everyone would like to have and that no one can design.
If any of these workarounds suits your purposes, great! Otherwise, the faster-cheaper-bigger payload search goes on.

1 Like

I thought J. Michael Straczinsky said this of Neil Gaiman. I hadn’t realized it’s an allusion. Wikipedia attributes it to A. J. Liebling, but Liebling wasn’t British. Who is the source?

It was said of Alex Cockburn back in the day. Improbably (given our respective politics and general approaches to life) he was a friend.

It always had the feel of a chestnut that been originally said about someone else, but I never bothered to track it down, so thanks for the extra info!

Technically, there is such a system. The file system. An aliased folder hierarchy is kept “updated”.

So software that works with aliased folders located in the file system such as PathFinder, etc., might be useful. (Maybe emacs, but I’d have to think about that.)

That said, the use case discussed in this thread is far too sophisticated for me to comprehend. :frowning_face:

It strikes me this is about the difficulty faced when one only has experience of being allowed a single ‘tag’ bucket and the narrowness of analytic vision this creates. Outside the narrow niche of controlled vocabularies, nested tags/keywords is a sticking plaster over the ’ tag-only’ metadata limitation.

As I recall ‘tags’ crept in around because the Web 2.0 hipsters didn’t like the (controlled) keyword approach common at the time. Keywords were for squares, the cool kids were into folksonomies of ‘tags’. Meh, they are actually all just search/indexing terms. Indeed, understanding the latter is key to breaking out of the ‘tag-set’ mentality.

When analysing/annotating your data, what are the strands you need to later recall/revisit? These strands are worth capturing and, if discrete groupings exist, placing in discrete stores (in Tinderbox’s case in attributes). If you started with data from a tags-only app, when arriving in Tinderbox let go of that limitation. You can keep the original tags data (in $Tags - or another attribute of choice), but still tease out the strands with the overall tags into discrete attributes.

Imagine an address book where name, street, zip, etc. were all just tags for a given record. How much easier to use if the zip code is in a $ZipCode attribute, etc. This is an overly simple metaphor but I hope it helps explain the process. So if you have tags like “Organization_United_Nations” and “Organization_DEA” likely you want an $Organization attribute, allowing you to search by organisation and to find ‘United Nations’ as discrete from ‘DEA’, etc…

Just as our tagging styles differ, ‘tags’ is a loosely defined term and thus implemented differently in different apps, even if some sub-groups of apps take a similar approach. In years of migrating data around apps (and from before the dawn of the ‘tag’ approach), really the only thing to bank on in the source data is that you have a list of values. Certainly, a big issue back when keyword hierarchies were popular was that no two vendors used the same method for saving/sharing the hierarchies.

Another thing I’ve seen is note titles used as proxy keywords. Whether you stick with your original imported titles or edit once imported, don’t forget to properly capture the metadata in the titles that isn’t also yet in a tag (attribute!).

Tags are the shallow end of understanding your data; do make use of the extra flexibility Tinderbox offers. Tinderbox isn’t a magic tool that turn your tags into structure, some assembly is required—and rightly so as that way lies greater understanding.

Anyway, I offer the observations above which draw on my own initial experience of Tinderbox and subsequent longterm use in case it helps people getting started.

[edit for typos and easier reading]


Yes, correct --but I thought he was talking about a hierarchy of notes or other info, as opposed to files themselves. If just looking for hierarchy of file names, problem solved!

I keep lurking in thy shadows’ thread and I always want to add a thought and I never do… It’s been soem time since dabbling in Tbx and I feel I can make a more objective analysis of this subjective argument…I will not use the term Alias here as to not fall in teh technical “rebuttal” trap; I will use the term Clone instead. A Clone is a container that appears in more than one place in the Tbx document - Outline, Chart view, etc. Unlike an alias, a clone is not a real container pointing to another container (usually the original); rather it is a second entry in the table of contents for the very same container. Consequently, there is no original; when you clone a container you’ll end up with two. It is essentially a tag; a multiple sublevel “group tag”… Even NeO, an oudated ouliner, has this concept as well. Prototypes can give me exactly what I want, conceptually and what i don’t want objectively – cost of data size. A 100kb single container prototyped will turn into a 200kb Tbx document.


For Instance a vehicle has a roof, chasis, and tires in that order when going top to bottom. However, the roof is part of the chasis/framework (same “substance” component) and a tire has rubber all around it and metal in between (same abstract object but different “substance” component"). While anyone is free to create their own methods and taxonomic “melodramas” categorizing and naming all of these concepts, abstaractions, objects… - think WordNet, Roget’s Thesaurus - one needs to reacreate that exact same object (our vehicle in our case) in order to grasp how that object can be improved or reinvented from ground up. Aliasing alows you to see multiple versions of the same container (vehicle) as many times you’d like. But it can only allow you to go as deep as seeing only the paint color of the roof, the shape of the body and the shine of it’s tires. Attributes in the Attributes browser is limited in the very same way. Accessing information in the attribute browser is nontheless brilliant. Buidling information to accurately present it in the AB requires deep hierarchial analysis.

The vehicle scenario is a case of creativity and the inevitable escape of a hierarchical system. But also think of this scenario. I have 10 sources on the same topic. I want to compare and contrast those sources for reliability of factual information, and that topic, structures knowledge and all of its branches with all of its concepts - let’s assume 15 levels only. I want to have a category named: “10 sources on same topic requiring analysis for accuracy” and I want to clone each source within its category but I also want a category named “references by its original source”. Prototypes can do that but they will also double the size of data each time a note inherits it prototype. Imagine having that category in 50 different places (before you’d figure out it needs only live in 4 places). Analytical processing is the step before the final presentation and delivery of information; and I feel that objects such as the A. Browser and concepts such as aliasing are limiting in the sense that it only alows you to present taht final information or process taht information from the view of somone with a specific expertise.

Chart view alows horizontal and vertical view of information at the same time, by definition that’s it’s pupose. Outlien view allows grouping of topic & whatever information. A good way to view an Article besides viewing it on the same page. Attribute Browser alows horizontal and vertical view of categorized -minimal level -container information arranged in special ways.

If I live in 4 seperate countries throughout the year, the taxman will bill me once and only once, it will not tax my investment income in all 4 different regions. A clone will alow me to view the same information while taxing me 100kb vs 400kb of data size.

It’s very easy to doom the need of hierachial structure of information when somone’s expertise is very specific. For instance, an accountant, a doctorate student studying the behavior of automated process behavior of ceratain social websites , or somone doing an analysis on the upcoming elections. The structure, teh form, and the level of knowledge is not as dense and as complicated compared to somone working on a taxonomic system based on the whole world of knowledge while considering all ontologies and all its components e.g., think WordNet, Roget’s Thesaurus (40 years to complete), LOC, Wikipedia (millions working on it) ; i.e. knowledge structure on a differrent dimension.

While Tinderbox alows me to fiddle with “nuclear” size information in so many and better ways than any other product out there, I believe, it’s also important that Tinderbox alow me do so in the most eficient way, the CLONE and the MARKDOWN (to be discussed some other time) way

[I’ll avoid using all caps, but note that I’m responding because I don’t understand the use case presented and no just for the sake of push-back. :grinning: ]

The vehicle straw man offered above seems to cry out for use of prototypes, so I’m wondering if it really illustrates the case you are making. Why do you believe using a prototype adds so much data? If you look at a document’s XML, you’ll see that data inherited from prototypes isn’t stored. If 100 notes use a common prototype, the value for a given attribute is stored once (for 1001 notes) - unless any inheriting note sets a local value for that specific note. But, to my reading, using prototypes reduces ‘data’—at very least in terms of stored XML.

Although a TBX offers a Map-view tab as its default, it is worth bearing in mind that the underlying structure of the doc (and stored XML data) is as an outline - see here. All the other ‘view’ types are just different visualisations/reports of the same underlying outline. I’m not sure how the clone object fits into that. What is intrinsic to the close and what to the original (canonical) object of the group of clones? Tinderbox covers a range of uses, care needs to be taken that in servicing one use case that (many) others aren’t broken. Tinderbox generally balances this quite well and I’m unclear where a ‘clone’ object would fit in the current structure. Overall, the clone concept feels to me like a view (visualisation) challenge rather than one of the actual data structure. I’m happy to be wrong - I may just be misunderstanding.

To get best leverage on one’s analysis, I find it best to put as much data as possible out of free text ($Text) and into attributes. It is in the latter you can make best use of both the different views. It was this epiphany that has kicked up a notch the value of my work in Tinderbox. Then again, work styles vary - for instance I’m doing research not writing long-form text (though if I could figure a good Tinderbox->LaTeX route I might do more writing in Tinderbox itself).

With hindsight, the most productive interactions I’ve had of late when helping users (mostly outside the public forum - so no links) have been assisting them to abstract their meta-data into attributes. I think treating notes like virtual scraps of paper only gets one so far.

HTH. I remain open to the fact I may be misunderstanding the issue.


The case for use of " Clone Prototypes" :smile:

But are Container notes considered attribute values ? Maybe I’m missing something otherwise you’ve solved my problem. On the other, if attribute values can store data only once why can’t containers store taht data in the same manner when using other notes’ prototype? And not to mention the prototype couldn’t even duplicate the entire outline of Rogers Thesaurus - I’m sure that’s due to some limit of prototype notes

Cloning would treat these notes as if they didn’t exist. They would simply function as visual ornaments. It’s engine would work almost at the same rate whether the document had only it’s original note or another 100 cloned notes.

And that I can absolutely understand.

“feels to me like a view (visualisation) challenge” That is exaclty my point. If you go back to the source scenario (4th paragraph) in my previous post tell me a better way to achieve that purpose, prototypes? Sure. But not data-less prototypes.Incremental formalization? … Sure, but what if I already have in mind what I want and know with certainty how that needs to be done or what if I am working on a purely creative project?

An agent/adornemnt cannot perform its duty if it doesn’t know what to do. You have to visualize your data before your structure that data. An the more you visualize, the more creative your analysis can be . Of course this depends on what project youre working on and the degree of creativity required – music track production vs. a sentiment analysis of an interview vs. coming up with a new classification system.

It is not an easy concept to grasp, especially if things Like WordNet, Roget’s Tehsaurus and the like does not make your eyes glow or if you don;t wake up everymorning thinking about ontologies, it’s components and it’s systems. You’d soon realize that hierarchial structuring is impossible to escape when sorting thorugh knowledge and structuring information. Once you’ve come up with a solution, than you can make your own system. Mark has made the Attribute Browser and everything else in Tbx becasue that was all there was needed to accomplish his own system.

I agree, in teh sense of quickly browsing information, Atb is BRILLIANT!!! God, I would wan’t anymore sublevels than one or two. Building up, analyzing, comparing and all that so you get to the end result would really benefit from Atb allowing me to switch from quick browsing to categorical browsing?

Also, in my opinion, Tbx would be great if it applied as much emphasis, on the $Title concept as it does on the $Text concept. This would be difficult to understand unless you find yourself in my situation :smile:

And with this one you’ve hit the nail in the coffin. I wish it would serve my workstyle more :))) In retrospect I beleive you’ve gotten a general sense of my dillema. I wholeheardetly believe, this would benefit most syles of research.

what do you mean no links? :)))) jk, I think you do enough.

Hmmm, IIIIIIIIII don’t know.

In a way, yeah; in a way, naah. A musical song can be from a different era, have a certain style, and use a specific musical form and be structured…get the point.

would be great if Text notes and Title notes could behave like $Text and $Title attributes where yo ucan have a 100 and apparantly take no data size? Now, that would be amazing. Cloned notes? :)))

So, I haven’t used NeO for a while, and so I just checked this out on a small scale document. What NeO does is what I’d say Tinderbox does with aliases**. The NeO clone has the same name, color, text, etc., as the “original”. Change the clone, the “original” changes. Change the “original”, the clone changes.

Tinderbox aliases behave the same way except for a limited number of “intrinsic” attributes. E.g., a note on a Tinderbox map and its alias have different X,Y coordinates on the map.

** ‘alias’ in the Tinderbox sense, not the file system sense, or the FBI Most Wanted List sense, etc.

You are correct but aliases in Tinderbox go no deeper than 1 level. NeO aliases all levels within that container. If I want to alias a category that has 5 levels, Tbx cannot do that. It would be great if Tbx could alias the entire container.

Again, to show that Tinderbox thinks mostly in $Text terms.

Btw I’m surprised NeO has caught the dust it’s by far the best outliner I know of.