99of9 / entity-explosion Goto Github PK
View Code? Open in Web Editor NEWA Chrome browser extension
License: GNU General Public License v3.0
A Chrome browser extension
License: GNU General Public License v3.0
When loading in Firefox, the following warning is shown:
Reading manifest: Warning processing background.persistent: Event pages are not currently supported. This will run as a persistent background page.
It doesn't seem to affect operation.
The addon blocks the browser for more than 1s at every URL change, as matchpattern_match
runs its 5000+ regexes on the new URL. From the addon logs:
matchpattern_match false on about:addons took 1345ms
It might be that some of those regexes are particularly slow, or just that there are too many of them to run fast
When multiple results are returned, no default is chosen, and the interface looks like it got stuck half way. The only indication that it is complete is the small (select) dropdown. This case needs to be handled more cleanly.
But this page is about https://www.wikidata.org/wiki/Q686963
Hello,
Thank you a lot for your project, it gives me many ideas.
I discovered that the person ID for France Culture (wd:P5301) is not working in Entity Explosion. By exploring the code, it turns out that the query:
PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#>
PREFIX wd: <http://www.wikidata.org/entity/>
PREFIX wdt: <http://www.wikidata.org/prop/direct/>
SELECT DISTINCT ?prop ?regex ?formatter_url WHERE {
{?prop wdt:P1630 ?formatter_url .}
UNION
{?prop wdt:P3303 ?formatter_url .}
FILTER (CONTAINS( ?formatter_url, "$1" ) )
?prop wdt:P1793 ?regex .
SERVICE wikibase:label { bd:serviceParam wikibase:language "en" } .
}
does not return the entity wd:P5301, since it has no regex defined using the property wdt:P1793. But it has a regex defined by the path ?prop <http://www.wikidata.org/prop/P2302> ?o. ?o <http://www.wikidata.org/prop/qualifier/P1793> ?regex.
and reformulating the above query as:
PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#>
PREFIX wd: <http://www.wikidata.org/entity/>
PREFIX wdt: <http://www.wikidata.org/prop/direct/>
SELECT DISTINCT ?prop ?regex ?formatter_url WHERE {
{?prop wdt:P1630 ?formatter_url .}
UNION
{?prop wdt:P3303 ?formatter_url .}
FILTER (CONTAINS( ?formatter_url, "$1" ) )
?prop <http://www.wikidata.org/prop/P2302> ?o.
?o <http://www.wikidata.org/prop/qualifier/P1793> ?regex.
SERVICE wikibase:label { bd:serviceParam wikibase:language "en" } .
}
allows to obtained wd:P5301 in the answer set. It also returns more answers: 5660 against 4428 with the previous query. The answers may be different anyway.
What do you think of changing the first query by the second one ?
For example nothing for https://wiki.gentoo.org/wiki/GRUB
I have noticed that in Deezer, when visiting the page of a album, the URL contains the language the page is being displayed in. For example, all of the following URLs correspond to the album "Everyday Life" of "Coldplay" in the Deezer database. The Wikidata item that corresponds to this album is Q72087708
https://www.deezer.com/us/album/119673702
https://www.deezer.com/ru/album/119673702
https://www.deezer.com/mx/album/119673702
https://www.deezer.com/es/album/119673702
https://www.deezer.com/fr/album/119673702
https://www.deezer.com/en/album/119673702
As of the time of this writing, the current revision of the property contain the following values for P1630, "formatter URL"
https://www.deezer.com/album/$1
https://www.deezer.com/us/album/$1
https://www.deezer.com/ru/album/$1
This makes the first two links (in the group of links shown above) to be matched with the album in Wikidata.
https://www.deezer.com/us/album/119673702
https://www.deezer.com/ru/album/119673702
but the other URLs won't be matched to the album
https://www.deezer.com/mx/album/119673702
https://www.deezer.com/es/album/119673702
https://www.deezer.com/fr/album/119673702
https://www.deezer.com/en/album/119673702
The problem would be solved if the value for P8966 would be used instead. The value is shown below.
^https?:\/\/www\.deezer\.com\/(?:[a-z]{2}\/)?album\/([1-9]\d+)
All of the following URLs shown above are matched by this regular expression. See this test at regex101.com for more information (a screenshot of regex101.com is shown below)
So, how can we get from https://www.deezer.com/es/album/119673702 to Q72087708?
https://www.deezer.com/es/album/119673702
) with the regexes obtained in step (1). For the sake of simplicity, we stop in the first regex that matches the URL. The regex that matches is the value of P8966 in P2723 (i.e. ^https?:\/\/www\.deezer\.com\/(?:[a-z]{2}\/)?album\/([1-9]\d+)
).['es', '119673702']
)In step (4), we consider all capture groups instead of the last capture group, because it might be possible that in some websites, the item identifier comes first and then the language identifier.
If anyone knows a more efficient way to do this, I would appreciate they could share it in the comments below.
P8966
in the root folder of the source code using grep and no match was found.Suggestion Add Graph query link
One way to visualize a WD object is a graph
** Toby Hudson Q48669311 --> https://w.wiki/4ENf
dont know if it is a good pattern but its used when we have support for more languages in the external sources
I have played around see #15
When on page http://api.nobelprize.org/2.1/laureate/1002 --> I get wrong person
cc: @VisbyStar
If you go to page en/article/NaimaSahlbom and try Entity Explosion I get two entries for Svenskt kvinnobiografiskt lexikon that is what I want
Question:
Have I set up P4963 correct as you think we should to get the best usage of Entity Explorer??
It looks plausible that the cached languages list is outlasting version upgrades (even when they change the query!). Tipoff here: https://www.wikidata.org/w/index.php?title=Wikidata_talk%3AEntity_Explosion&type=revision&diff=1507369321&oldid=1507223474
More aggressive updating of the cached data looks necessary.
Code illustrating sunset clauses on cached data here: https://stackoverflow.com/questions/31766467/how-do-i-cache-data-in-chrome-extension
But this page is about https://www.wikidata.org/wiki/Q686963
But this page is about https://www.wikidata.org/wiki/Q686963
For example https://github.com/organicmaps/organicmaps
https://uk.flightaware.com/live/airport/YAMN
The query isn't specific enough.
Alvin is Uppsala University Property:P6821
his landing page is then http://www.alvin-portal.org/alvin/view.jsf?pid=alvin-person%3A51603&dswid=9290 and EE works
if you do a search and land on the landing page the URL looks like https://www.alvin-portal.org/alvin/view.jsf?dswid=9290&searchType=PERSON&query=D%C3%BCsterbach%2C+Hans&aq=%5B%5B%7B%22free_text%22%3A%22D%C3%BCsterbach%2C+Hans%22%7D%5D%5D&aqe=%5B%5D&af=%5B%5D&pid=alvin-person%3A51603&c=1 - dont Work
https://www.alvin-portal.org/alvin/view.jsf?dswid=-784&pid=alvin-person%3A51603 - dont Work
Any way to better set up the property to support this?
**Wikicommons ** can we sport them?
Hi Toby
I need help how to set up Property:P8168 that is a Wikibase database for historical research we try to match with WIkidata see Task T266745
One possibility with Entity Explosion is to help developers to see the json code available for a source.... Today I cheat using Third party Property:P3303 "third-party formatter URL"
Is there a better solution?
E:g
Property:P4819 "Swedish Portrait Archive"
Eionet bathingWaterIdentifier (P9616)
Property:P8024 "Nobel Laureate API-ID"
Example how WikiAPIConnector is designed were Andrew Lih looks into define different GLAM APIs in YAML i.e. there is a need to easier access the API...
Entity Explosion should set a user agent header with its requests (the fetch()
calls in item-properties.js
and background.js
), identifying itself according to the user agent policy.
According to the web standards, you should be able to specify a custom User-Agent
in requests (it is no longer a forbidden header name), and in Firefox this is indeed supported. However, Chrome/Chromium ignores the standard and continues to drop this header. Instead, you can send Api-User-Agent
, which has no restrictions; it’s probably easiest to just do this in all the versions of the extension (rather than making the Firefox version send User-Agent
and the Chrome version Api-User-Agent
).
Example:
Api-User-Agent: Entity-Explosion (https://www.wikidata.org/wiki/Wikidata:Entity_Explosion)
According to web-ext lint
, the icons should be square:
ERRORS:
Code Message Description File Line Column
ICON_NOT_SQUARE Icons must be Icon at "EE-grey-38.png" must be manifest.json
square. square.
Both browsers say the same (although they helpfully don't actually say 'square', but all the examples are square):
Mentioned here https://www.wikidata.org/wiki/Q125578225
For example this https://www.youtube.com/watch?v=-VMiyJbtW60 mentioned at https://www.wikidata.org/wiki/Q104799112
On entity
dropdown I can select a few, but not https://www.wikidata.org/wiki/Q170378
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.