Manifesto for Ubiquitous Linking
We recognize that an immense amount of useful information is available digitally, and that tremendous value can be gained by connecting this information. Connected knowledge enables people to create great products, solve important problems and improve themselves.
We also recognize that humans work best in psychological flow. Switching contexts, even to search for information, interferes with flow while consuming precious mental capacity, brain energy and time. Activating an aptly-placed link to information is easier and faster than searching for the information — and more protective of flow.
[…]
To help people benefit from the information they process with software, we advocate ubiquitous support for linking of information resources. This would help realize the potential of hypermedia that was envisioned by information technology pioneers such as Ted Nelson and Douglas Englebart.
As a concrete example, EagleFiler supports linking in two ways:
First, you can get a link to a file or e-mail message in an EagleFiler library using the Copy Record Link command or via AppleScript. This lets you reference that record from a calendar event, OmniOutliner, BBEdit, or anywhere else you can paste text. The link will continue to work even if you move or rename the record within EagleFiler.
Second, EagleFiler records (and notes attached to records) can themselves include links to items in other apps, like OmniFocus, as well as to other EagleFiler records. There are also some links that are saved automatically. For example, when you press the capture key to import the current Web page from Safari, EagleFiler stores the source URL so you can get back to the original page, and when you’re viewing an e-mail message it will have a link back to the original message in Apple Mail (if you didn’t delete it after archiving).
Developers of software that processes information resources should strive to:
Ensure that each user-accessible resource (object or entire document) that their software creates and processes can be identified and accessed via links.
[…]
Ensure that links to information resources are robust. For instance, they should still be useful if the addressed resource is renamed or moved.
When applicable, ensure that there is a clearly documented separation between the top-level (primary) resource (such as a document) and the deep (secondary) identifier within the resource, so that the user can choose whether to access the overall resource or a nested item within it (e.g., at a particular anchor, page and/or character location).
[…]
Provide an application programming interface (“API”)[…]
Whereas Apple Mail kindly has an API that allows automators to access the RFC-5322 compliant ID of the currently selected email. Software can use that to provide you with links to email messages. Microsoft Outlook however has no automation or UI to get RFC compliant email IDs. That means you can’t create robust shareable links in Outlook, or open messages by ID for that matter.
And so it is with many apps and web pages, from large and bigger developers.
Apple is not perfect either. It would be great if Apple provided an API to copy links to Messages and Notes. Software can work around the Notes limitation. But there’s no work-around for automators to identify Messages.
What’s more, Apple gives itself an unfair competitive advantage because it has a way to identify individual messages in Apple Messages that it does not grant to other software developers. For instance, in Apple Messages, if you receive or send a message with a date, by clicking on the date macOS can create an Apple Calendar event from the Messages message. A linkback will be added in the Apple Calendar item to get to the message. Automators and third-party devs are not given this basic functionality.
And even on the Web, it’s all too common to encounter sites and apps that maintain a single URL in the address bar even as you switch among email messages, calendar events, tasks, and other discrete objects that should be independently accessible.
[…]
All three navigational methods have their place, but macOS and iOS default to browsing, allow for searching, and pay only lip service to linking.
[…]
Third-party developers already provide many examples of this kind of linking—this list of apps compatible with the Hook linking utility gives a sense of what’s possible now.