Links in Two Directions?

I’ve started using DTPO to take notes on academic papers, putting a link in the note to the PDF file of the paper in the same database. So it’s easy to find the papers that any given note refers to, but is there a way to find what notes relate to a given paper? That is, is there a way to find which other documents link to a given document? Or is there an entirely different, better way to do this?

There’s no way currently to generate a list of what links to what.

In the old days, I used 3 x 5 cards to do that. :slight_smile:

There’s still some manual work to keep track of the ties of your notes to specific references, but one approach would be to create a Sheet to do that. Make at least two columns. One column will be the “referred to” document’s name. The other column will hold the names, separated by a delimiter such as commas and spaces, of the names of the notes that refer to the document. Perhaps you will have many notes referring to a single document.

Or many documents referred to by a single note. That can be handled, too.

You can do a phrase search (the name of a note or primary document) limited to the Sheet for fast response. The phrase would be either a note name or a “referred to” document name.

Because Records are in plain text, one cannot create links within Records. But if you select the name of a document in a Sheet or Record, press Command-/ (the Lookup command). That will open a Search window, with the query string already entered. For fast response, limit the search to Name. There’s the document!

This requires a bit of organization and effort, but you may be able to create a practical system with such an approach. Definitely easier to work with than the stacks of cards held together with rubber bands, that I used in the old days. :slight_smile:

Thanks. That sounds like a bit of work, but there doesn’t seem to be a better way. This two-way linking, or in general finding what links to what, would be one of my top feature requests for future versions.

But it is a major technical headache. Back in the early days of computing there was an early alternative to what has become one-way linking made popular by the WWW, called Project Xanadu, sadly it didn’t make it…

I’m sure it’s not easy (there’s only one program I know that does it, SOHO Notes) but it would be very helpful… :slight_smile:

I might approach this a bit stupid, but…

Google knows which pages links to which, you can ask google to display all pages that link to a given page.

DevonThink is like Google just even better, because DevonThink knows EVERYTHING about what is inside itself.

So isn’t it as simple as just to make a search for “link to this document” in the db? You know the target, now it is just to make a search for all links that has this target as the target?

I’d assume that the automatic WikiLinks would screw this up, even if the normal links didn’t. I’m fairly sure that each and every document would have to be searched for links to a given document.

Google also has thousands upon thousands upon thousands of servers :wink:

Sure, piece of cake. All it requires is a full text search of every document in the database, plus the ability to parse things that look like links to see what they mean. As you say, Google does it all the time.

Now, when did you say you wanted the results?

When large datasets are involved, “simple” tasks can very quickly consume huge amounts of time and resources. I’m not a database expert, but I suspect that’s the problem here.

(Note that Google does not promise to return ALL links. Huge as their index is, it does not include the entire Internet.)