What is going on with imports from DevonThink?

I have been experimenting with ways to integrate Bookends, DevonThink and Tinderbox, each of which has great strengths.

One method I have tried is the following. I select a reference in Bookends and then import it into DevonThink Pro using one of the built-in importers. This creates an RTF file, the text of which contains a link to the PDF corresponding to the reference, together with the contents of the Bookends Notes field.

I then created a new empty Tinderbox and I drag and drop the RTF file from DTP into it. A new note appears, containing the contents of the RTF file. Then, without my doing anything, the beachball spins for a long time, and the Reference prototype is created and applied to the Note. Not only that, but the body of the note is no longer the contents of the RTF but replaced by a bibliographic reference. Not what I wanted, which was to have the TB Note show the content of the RTF file. I was initially very puzzled by why things were happening to the notes without my doing anything.

My guess at what is happening is that, because the RTF created by DTP contains the Bookends URL in its metadata, TB automatically gets bibliographic data, but why should it get rid of the original content of the Note when it applies the Reference prototype?

My other question is whether TB contains the option, where there is a link to a file, to open with something other than the default RTF editor. “Open with …” or something like that? The reason is that if a file is located in a DTP database (as is the case with the SourceURL here), I would like to be able to open it in DTP. If I edit an RTF file in Nisus Writer (my default), DTP will not edit it at all. I could change my default RTF editor, but that is obviously not the ideal solution.

What would be better, in this case, is to copy the DEVONthink URL to the Tinderbox note, rather than copying the item itself.

If trouble persists, perhaps you could send tinderbox@eastgate.com a tiny DEVONthink database with a handful of these bookends notes; perhaps I’ll be able to see what’s getting confused.

Have you seen this meetup?

I’ve had a follow-up calls with Jonathan. I’ll be recording view on how to use the Bookends citation inseration.

Sorry, I was re-editing my post while the two of you replied and changed couple of points to clarify my problem. On second thoughts, I decided what was happening was not too bad, except for one point. The advantage of dragging the RTFs into TB is that I can drag a bunch of references into TB at once and the notes are created. copying and pasting a URL is a one note at a time operation.

But as my edited post says, I think the current setup would work, if only there were an easy way to open a file in something other than the default app for that filetype. Could I perhaps, configure “SourceURL” to open in DTP?

To Michael, yes, I was annoyed to have forgotten the meetup which had been in my diary for weeks, but I watched it right through the following morning. Informative. I have been using Bookends for several years, with a very large database, and am getting very familiar with it. (Incidentally, Jon stressed that BE works well with various online sources, but my reason for liking it is very different. It is very versatile, allowing it to be used in non-standard ways. I have tens of thousands of documents I have created from photos (using OCR inside DTP), and the flexibility of its output is remarkable. (I could go on about that!) I have also been using DTP much longer than TB, though have become conscious that until I find out how best to link it to BE and TB, I am unlikely to take full advantage of its capabilities.

But part of the problem, which I can probably work out only by working on a real project, is what notetaking is best done in each of the three apps. For me, TB is invaluable for the way notes can be organised visually, and links can be displayed (I use map view virtually all the time). DTP searches the PDFs and suggests connections to follow up. And BE is invaluable for organising the references.



1 Like

Sorry to reopen this thread but since posting this query, I have entered a lot of date into Bookends, and imported those references into DevonThink Pro 3, where I have sorted and tagged them. I then try to take them into TB, which is where the fun/problems begin. I now have a slightly different question from when the original thread was created, though I am still at the stage of trying to work out the best workflow.

To recap, If I simply drag the RTF file into TB, the Prototype “Reference” is created, and the URL attribute contains the Bookends URL, which is useful. It also has the SourceURL, which is nice too, though I can easily get to that via Bookends. However, even though dragged from DTP3, it does not contain any link back to the file in DTP. (Same result if I “Copy URL” in DTP and paste into TB.)

So what I have done is to add an attribute to the Reference prototype, DevonThinkURL, into which I can copy and paste the DevonThink link to get something like:

This means I can go from the TB note to the reference in either DTP or BE, which could be useful. The problem here is that I have to do it one reference at a time. Could this be automated somehow?

One issue with the import process resulting from copying from DTP is that TB automatically overwrite the contents of the imported RTF file with what appears to be a formatted bibliographic reference extracted from BE. The problem is that this means any notes I have made in DTP are lost on import into TB. I would prefer to have the option not to do this lookup, in order to speed up the process, but a more substantial point is that surely any new data should be appended to the existing RTF file rather than overwriting it.

A subsidiary issue is that when I set the Prototype, Reference, to display additional attributes, I expected this change to be applied to all Notes using that prototype, but this does not seem to happen, or not to do so consistently. I am not sure why.

A quick postscript. Something seems odd when these files are imported. If I import one at a time, they are seen as BE references, and processed accordingly. I just dropped in two together, and one was interpreted as a BE reference, and the other was not, and the “imported from DT” was applied to it. I deleted the latter, and dragged and dropped it on its own, and it was processed as a BE reference. The import process does not appear to be consistent.

The inconsistency does not greatly surprise me, but I’m in Mexico City and won’t be able to check for a few days. The underlying issue is that, when Tinderbox receives a drag, it must play twenty questions:

Does it come from Bookends?
Does it come for MindMap?
Does it come from a public.url?
Does it come from DEVONthink

The idea of a drag from DEVONthink that is itself a drag from Bookends is not unreasonable, but we’ll have to make provisions in the code.

Some drags directly assign key attributes to the imported note, so that overrides inheritance. Easy to removed the assignment…

Thanks for the response, though I will expect you to ignore it for a while now. Since posting, I have another idea about getting data fro DTP to TB which, in my great ignorance, I think might simplify the problem, but I will say nothing so as not to interrupt your trip even further.

OK, you’ve set $DisplayedAttributes for the prototype, but not all notes using the prototype are showing the correct Displayed Attributes?

User error, if inadvertant. If a note uses a prototype it inherits any (attribute) customisations. Indeed, a notes Displayed Attributes are stored in system attribute $DisplayedAttributes. If you edit a note’s Displayed Attributes, you are saying, “use this value for $DisplayedAttributes instead of a value inherited from the doc’s default or via a prototype”. You’ve told it, for Displayed Attributes, to ignore the prototype.

There are a number of ways to fix this. An easy way is an agent. Let’s assume, as you didn’t name it that your prototype is called ‘pRef’. Now we make a query:

$Prototype=="pRef" & hasLocalValue("DisplayedAttributes")

This lists all notes that use the prototype AND which don’t inherit $DisplayedAttributes from the prototype. To fix that add the agent action:


This should fix inheritance and thus remove all the current matching aliases to the query. You can now delete the agent.

See more:

I think I have solved my import problem. :grinning:

Instead of dragging and dropping from DTP to TB, what I am doing now is setting up a DevonThink watch Group in TB, and when I want to copy a note to TB, instead of dragging and dropping a note into TB, I move it to the watch folder. These notes contain both the Bookends URL (SourceURL) and the DevonThink UUID URL), and the notes’ titles contain publication date, author and title, so I have all the key information. Maybe, one day I will explore whether it is possible to populate the Reference attributes (Author, Title, PublicationDate etc) using the note’s Bookends URL, but for the moment I shall regard that as unnecessary icing on the cake.

Something I am not clear about is what I can do with notes in the DevonThink container. They have the Read Only attribute checked and the manual suggests it means I can change any attribute other than $Text. I assume that I am not allowed to move them to other containers inside the DevonThink container, but I can create adornments and place them over these instead. Presumably links can be created.

Am I right that there is no problem creating other notes in the DevonThink container, including in other containers inside it.

Now to work out how to process and organize ideas in the files corresponding to these notes, which is the reason for getting them into TB. That is the more difficult stage.

Thank you. I put this in a Stamp to be used whenever the issue arises.

1 Like

[quote=“rogerbackhouse, post:12, topic:6852”]
Am I right that there is no problem creating other notes in the DevonThink container, including in other containers inside it.

I can’t speak to experience for deep use of the feature, but I think what has been described/documented for DEVONthink watched groups is collated in my aTbRef article here. Note that whilst you can set up more than one group, be mindful of performance input.

I think the key point to understand is the watched folder is not two-way always-on sync. Rather it is Tinderbox watching part of DEVONthink and making app-controlled notes in the TBX to reflect the detected DEVONthink content. Thus the notes are read-only in Tinderbox as they are supposed to reflect the source content. Want to change the content? Correct it at source in DEVONthink.

The latter amy not be what you desire but it is as per the feature’s design intent. If you want a different behaviour, I’d suggest making a feature request direct to Eastgate. I doubt the watched folder is simply turned intyo data sync, IOW it’s a new feature. But, I’m happy to be wrong.