Page MenuHomePhabricator

show me the web: browser extension
Open, Needs TriagePublic

Description

Wikidata has a lot of external identifiers that make it possible to reach more places in the web. It is however not always easy for people to grasp how powerful these connections are. Here is one idea for how to make this more understandable and provide some value:

Create a browser extension that gives the user an easy way to find related places on the web for the current page you are on. For example if you are on the IMDB profile of a famous actor it would show you a list of links to for example their Twitter profile and their YouTube account.

Event Timeline

Restricted Application added a subscriber: Aklapper. · View Herald TranscriptMay 20 2020, 10:02 AM
99of9 added a subscriber: 99of9.Sat, Jul 18, 11:18 PM

Here's my similar first-step idea. You are browsing the web, and find a page on any other site about an item that should have a Wikidata item. You click a bookmarklet, which instantly tells you in a side panel which identifier property should be linked, and if it is linked, which Wikidata item the ID is linked from.

The idea was spurred by User:rdmpage in this video (thanks!).

As far as I can see it should be technically possible, but I'm sure you friendly hivemind can improve dramatically on this in-principle sketch:

Bookmarklet runs javascript to open a side panel or overlay div, in which the content is an iframe containing an auto-running WDQS query which takes a single input, the current URL.
The SPARQL query finds out whether that URL matches a formatter URL (P1630) or a third-party formatter URL (P3303), and if so, extracts the ID from the URL.
Then it queries whether that ID is listed for that property, and returns the Wikidata item(s) with that ID for that property. QED.
I've worked on this a bit, and while I'm good enough at SPARQL, and have written a working demonstration query, (this shows the result from 4 different URLs - I'm aware that it doesn't work for *all* URL schemes, but I think it already covers over 90% of them). I don't have sufficient .js skills to get the bookmarklet working at the moment, and I'm sure some of you can do a much better job anyway.

99of9 added a comment.EditedThu, Jul 23, 12:51 AM

Here's a video demo of my first version.

Tarrow added a subscriber: Tarrow.Thu, Jul 23, 11:22 AM

Hey! This looks super interesting! Is there a link to the extension code anywhere?

Eek, scary. Yes, here you go https://github.com/99of9/Wikidata-Connect . Please be gentle, it's still very rough, and I'm totally new to this game!

Thanks! It's an awesome idea :)

Moebeus added a subscriber: Moebeus.
99of9 added a comment.EditedSat, Jul 25, 2:42 PM

The name was rejected because it's "best to avoid using "Wikidata" (or other project names) as the first word in the app title". Has anyone got any other suggestions?

Random ideas:

  • Show me the web
  • Explore the web
  • WebExplorer
  • WebConnector
  • Show me more
  • Link the web
  • SpiderWeb
  • Weave the web

Seconding "WebConnector":

  • It is sufficiently unique, both in the Chrome Store and Among Firefox Extensions
  • It is a compact name that I could see people writing a Medium post about
  • It currently has only a few (<300K) Google search results
  • It still communicates the idea of the plugin without overlapping with other established brands/concepts (Explorer, Spider)

Other ideas in a similar direction:

  • DataFinder
  • ConnectionFinder
  • DisplayDataConnections
  • DataConnections
99of9 added a comment.Tue, Jul 28, 2:21 PM

Thanks for this. I like all your criteria, although I think I want an even tighter limit on #3, and am hoping for a little more pizzaz. For me "web" is a bit bland in that every extension is interacting with the www.

The Facebook group are onto this too. My shortlist is currently:

Entity Explosion
ID.entity
Linkipedia
Web Connector
Linky-Linky
99 Links

In other news, you know testing is going well your code complains about tiny problems with regexes in Wikidata: https://www.wikidata.org/w/index.php?title=Property%3AP6993&type=revision&diff=1240888486&oldid=997662566

99of9 claimed this task.Wed, Jul 29, 6:04 AM

In other news, you know testing is going well your code complains about tiny problems with regexes in Wikidata: https://www.wikidata.org/w/index.php?title=Property%3AP6993&type=revision&diff=1240888486&oldid=997662566

Ah, the differences in PHP vs JS regex evaluation! Your edit is fine as it doesn't change what the regex matches, but do note that the regex [1-9]\d*+(\-[a-z]+)* is valid/compatible PCRE, which seems to be the relevant standard for P1793. I wonder if having a requirement that those regexes must be both valid PCRE and work in ECMAScript would be sensible? 🤔