Creating Internal Backlinks for MediaWiki for Digital Gardeners

I’d spit-balled the general idea of showing backlinks or bidirectional links on a MediaWiki instance last year when thinking about and adding Webmention to one. Tonight I tinkered around and actually set it up on an instance. Within a MediaWiki, one can transclude all the backlinks from other pages to a particular page by adding a line for transcluding content like the following when editing a page:

{{Special:WhatLinksHere/PageName|limit=1000}}

You can see a live example of the practice on my user page on the IndieWeb wiki at https://indieweb.org/User:Boffosocko.com#Backlinks along with the code I used by clicking on the edit tab. The effect is rather nice, particularly when put into columns when there are lots of entries. I’ll have to look into automatically coding something like this into every page now, but being able to do it manually is most of the battle, right?

Doing this along with adding display for external webmentions quickly vaults MediaWiki to a solidly first class web-enabled digital commonplace book/digital garden/Memex/zettelkasten tool that can communicate with other similarly enabled tools. (Now if only Webmention were supported natively on MediaWiki… but there are definitely ways around this in the meanwhile.)

To go the extra mile, I know there’s the ability to interlink wikis with some custom syntax or even to show hovercards within a wiki. Both MediaWiki and Wikipedia already allow this after enabling page previews using hovercards in 2018. (I’ll have to check out if one could do hovercards across wikis as well!?!)

I’ve slowed down some of my experiments with my personal MediaWiki in preference to using Obsidian lately. Perhaps, for working in public, I’m going to have to resume some of my experiments and/or figure out a way to mirror the content?

Sister Heather Kristine in knowledge-management discord for Obsidian () for re-sparking idea.

Read Transclusion and Transcopyright Dreams (maggieappleton.com)

In 1965 Ted Nelson imagined a system of interactive, extendable text where words would be freed from the constraints of paper documents. This hypertext would make documents linkable.

Twenty years later, Tim Berners Lee took inspiration from Nelson's vision, as well as other narratives like Vannevar Bush's Memex, to create the World Wide Web. Hypertext came to life.

I love the layout and the fantastic live UI examples on this page.

There are a few missing pieces for the primacy of some of these ideas. The broader concept of the commonplace book predated Nelson and Bush by centuries and surely informed much (if not all) of their thinking about these ideas. It’s assuredly the case that people already had the ideas either in their heads or written down and the links between them existed only in their minds or to some extent in indices as can be found in the literature—John Locke had a particularly popular index method that was widely circulated.

The other piece I find missing is a more historical and anthropological one which Western culture has wholly discounted until recently. There’s a pattern around the world of indigenous peoples in primarily oral cultures using mnemonic techniques going back at least 40,000 years. Many of these techniques were built into daily life in ways heretofore unimagined in modern Western Culture, but which are a more deeply layered version of transclusion imagined here. In some sense they transcluded almost all of their most important knowledge into their daily lives. The primary difference is that all the information was stored visually and associatively in the minds of people rather than on paper (through literacy) or via computers. The best work I’ve seen on the subject is Lynne Kelly’s Knowledge and Power in Prehistoric Societies: Orality, Memory and the Transmission of Culture which has its own profound thesis and is underpinned by a great deal of archaeologic and anthropologic primary research. Given its density I recommend her short lecture Modern Memory, Ancient Methods which does a reasonable job of scratching the surface of these ideas.

Another fantastic historical precursor of these ideas can be found in ancient Jewish writings like the Mishnah which is often presented as an original, more ancient text surrounded by annotated interpretations which are surrounded by other re-interpretations on the same page. Remi Kalir and Antero Garcia have a good discussion of this in their book Annotation (MIT Press, 2019).

page of Jewish text with Mishnah in the center and surrounded by various layers of commentary in succeding blocks around it
Image of a super-annotated page of Torah from chapter 3 of Annotation (MIT Press, 2019) by R. Kalir and A. Garcia

It would create a more layered and nuanced form of hypertext – something we’re exploring in the Digital Gardening movement. We could build accumulative, conversational exchanges with people on the level of the word, sentence, and paragraph, not the entire document. Authors could fix typos, write revisions, and push version updates that propogate across the web the same way we do with software. 

The Webmention spec allows for resending notifications and thus subsequent re-parsing and updating of content. This could be a signal sent to any links to the content that it had been updated and allow any translcuded pages to update if they wished.

Annotated on February 09, 2021 at 02:38PM

In this idealised utopia we obviously want to place value on sharing and curation as well as original creation, which means giving a small fraction of the payment to the re-publisher as well.We should note monetisation of all this content is optional. Some websites would allow their content to be transcluded for free, while others might charge hefty fees for a few sentences. If all goes well, we’d expect the majority of content on the web to be either free or priced at reasonable micro-amounts. 

While this is nice in theory, there’s a long road strewn with attempts at micropayments on the web. I see new ones every six months or so. (Here’s a recent one: https://www.youtube.com/playlist?list=PLqrvNoDE35lFDUv2enkaEKuo6ATBj9GmL)

This also dramatically misses the idea of how copyright and intellectual property work in many countries with regard to fair use doctrine. For short quotes and excerpts almost anyone anywhere can do this for free already. It’s definitely nice and proper to credit the original, but as a society we already have norms for how to do this.

Annotated on February 09, 2021 at 02:46PM

Transclusion would make this whole scenario quite different. Let’s imagine this again… 

Many in the IndieWeb have already prototyped this using some open web standards. It’s embodied in the idea of media fragments and fragmentions, a portmanteau of the words fragment and Webmention.

A great example can be found at https://www.kartikprabhu.com/articles/marginalia

This reminds me that I need to kick my own server to fix the functionality on my main site and potentially add it to a few others.

Annotated on February 09, 2021 at 02:59PM

We can easily imagine transclusions going the way of the public comments section. 

There are definitely ways around this, particularly if it is done by the site owner instead of enabled by a third party system like News Genius or Hypothes.is.

Examples of this in the wild can be found at https://indieweb.org/annotation#Annotation_Sites_Enable_Abuse.

Annotated on February 09, 2021 at 03:04PM

Annotated Transclusion by Aquiles CarattinoAquiles Carattino (aquiles.me)
Should transclusion work both ways, embedding content and letting the source know that I did so? 
If one is worried about link rot for transclusion, why not just have a blockquote of the original in excerpt form along with a reference link to the original. Then you’ve got a permanent copy of the original and the link can send a webmention to it as a means of notification?

If the original quoted page changes, it could potentially send a webmention (technically a salmention in function) to all the pages that had previously mentioned it to create updates.

Automatic transclusion can also be more problematic in terms of original useful data being used as a vector of spam, graffiti, or other abuses.

As an example, I can “transclude” a portion of your page onto my own website as a reply context for my comment and syndicate a copy to Hypothes.is. If you’ve got Webmentions on your site, you’ll get a notification.

For several years now I’ve been considering why digital gardens/zettelkasten/commonplace books don’t implement webmention as a means of creating backlinks between wikis as a means of sites having conversations?

Note: I’ve also gone in and annotated a copy of Maggie Appleton’s article with some additional thoughts that Aquiles Carattino and others may appreciate.

Displaying Webmentions on TiddlyWiki

I’ve previously written about setting up receiving Webmention for TiddlyWiki by logging into webmention.io and creating an account to delegate the receipt of the notifications.
 
Naturally, these notifications can be more fun for cross-site conversations if one has the ability to display the webmentions on the posts to which they relate. There are probably a number of ways of doing this, but following the TiddlyWiki advice of keeping Tiddlers as small as possible, it seemed like creating a tiddler for the response and then transcluding or embedding it into the original would be the best course of action.
 
At the recent Gardens and Streams: Wikis, Blogs, and UI—a pop up IndieWebCamp session there was some discussion on internal bi-directional linking in wikis, but I thought it would also be fun to show off bi-directional linking between my wiki and other websites. To do that will require displaying at least some Webmentions.
My wiki currently doesn’t have very many webmentions or incoming links, but after writing about a Bookmarklet for pasting content into TiddlyWiki, I got an email from Anne-Laure Le Cunff that she’d used some of the code to write a bookmarklet for Roam Research. Since her article didn’t send a webmention, I used Telegraph to manually force her article to send my wiki a Webmention so my account would have a record of it for the future for potential exporting or other use.
Now I’d like to display this webmention on that tiddler. Doing it automatically would be great, but I thought, since I don’t expect to receive many on my wiki that I ought to try out a manual set up to see how things might work and how I might display them if they were automated.
Since I had created that bookmarklet, I used it to copy and paste the text from Anne-Laure Le Cunff‘s website into a new tiddler. I then massaged it a bit to format it to look like a response and I’ve transcluded it into the original post under a heading of Responses.
The side benefit of doing this is that the stand alone tiddler that has the link and the context from her post also sits in my wiki as a bookmark of her post as well. As a result, I get a two-for-one deal: I get the bookmark of her post with some context I’m interested in, but my original post can now also display it as a response! Now I can also use that bookmark in other places in my website as well. If only one could do this so easily in other CMSes?!
I’ve yet to hear of another example of this in the wild, so unless I’m missing something, this may be the first displayed Webmention on a TiddlyWiki in the wild.

Next steps

Data formats

TiddlyWiki has lots of ways to display data in Tiddlers, so perhaps one might use various fields in a bookmark tiddler to create the necessary comment display. This could give a more standardized method of displaying them as well. It could be particularly useful if someone was using a microformats parser to import the data of such mentions. If this were the case, then the tiddler that is being commented on could do a filter/search for all tiddlers in the wiki that mention it and transclude the appropriate pieces in a list format with the appropriate mark up as well as links back to the individual tiddlers and/or the links to the sending site.
I’m curious if others have ideas about how to best/easiest implement the display portion of webmentions on a public TiddlyWiki? Since I’m also hosting my entire TiddlyWiki on GitHub pages, there might be other potential considerations if I were to be hosting it statically instead. This may require some experimentation.
I’ve got a few mental models about how one might implement showing Webmentions in TiddlyWiki, but it may take some more thinking to figure out which way may be the best or most efficient.

Automation

I don’t anticipate a lot of incoming webmentions to my wiki at present, but if they become more prevalent, I’ll want to automate the display of these notifications somehow. This will take some thought and coding as well as more knowledge of the internals of TiddlyWiki than I’ve currently got. If someone with the coding chops is interested, I could probably brainstorm a set up fairly quickly.

Microformats

It would also be nice to be able to have full microformats support in TiddlyWiki so that the stand alone “bookmark” mention works properly, but also so that the transcluded version might have the correct mark up. This may rely on the two things to be properly nested to make them work in both contexts.