So, hello. I'm Edward, and I'm going to be talking about some tools that I've been building
for adding links between OpenStreetMap and Wikidata. I've been working on these for a
few years. This is all a hobbyist project. I'm not being paid to work on this, but I
thought I'd come here and share with you some of the work that I've been doing. So,
I'm going to use as an example to talk about the software that I'm building, this building
which is in Brussels, the Royal Palace of Brussels. It's in the city centre. So, you
can see here, this is it in two different systems. You've got OpenStreetMap and you've
got Wikidata, both showing the same building. So, I'll describe OpenStreetMap just for anyone
who's not familiar with it. It's a collaborative map. I've been going since 2004, covers the
whole world, and anyone can come in and edit the map. It's got revision history. You know,
it works a lot like Wikipedia, but for maps. So, within OpenStreetMap, you've got three
types of objects, nodes, ways and relations, increasing complexity. And each of those objects
can have tags. Tags are pairs of keys and values. I've got some examples here for my
example in Brussels. And the tags are not controlled by the software. You can put anything
you want in, but it won't get rendered on the map unless it's one of the standard tags
that gets used on OpenStreetMap. So, there's a community process for discussing, you know,
how things should be tagged in OpenStreetMap, and then it gets documented on the OpenStreetMap
wiki. So, everything in OpenStreetMap can be uniquely identified by the type and the
ID. Like the ID on its own isn't enough. There's nodes and ways that have got the same
ID. You have to have the type as well. So, in this example, the Royal Palace, you can
see it's a relation. It's a complex polygon. You can see there's holes in the middle of
the building, so you can't represent it as a way. And you can see there it's got an
ID as well. So, what about the other system I'm talking about? Wiki data. So, wiki data
is part of the Wikimedia Foundation, like the same people that run Wikipedia. And it's
a wiki for structured data. It's newer than OpenStreetMap 2012. It launched, and it's
big. Like, it's got 102 million items now. And for comparison, English Wikipedia has
6.6 million articles. Like, English Wikipedia is the biggest Wikipedia. And most of those
articles have a wiki data item as well. But then there's a lot more data, a lot more items
in wiki data than there are articles in English Wikipedia. So, if I take my example of the
Royal Palace of Brussels, and you look it up on English Wikipedia, you can see there's
a link in the sidebar that will take you to the wiki data item. And you click that link,
you end up on the, this is the wiki data item for the Royal Palace. I'll talk you through
some of the pieces on this page. So, you've got, down the side, the site links. These
are links to Wikipedia articles in different languages. Like, part of the reason for the
distance of wiki data is to store these, they call them inter-language links. They used
to be stored in Wikipedia and had to be maintained across all the different languages. So, if
there was a new article written in a new language, every existing article in one of the existing
languages had to be updated with these links. So, much better to centralize them and store
them in wiki data instead. All the bits and pieces you get on this page, you get a label,
description and aliases. So, by default, when I look at wiki data, I just see them in English
because that's the language I speak. But I can click the link to show me in more languages
and you can see that there's names of the thing available in lots of languages and descriptions
and so on. The other main part of this page you see is the list of statements. So, statements
are a bit like tags in OpenStreetMap, but they're more controlled by the software. You
can't just make up a property. You have to use ones that are already in the system. And
again, there's a community process in wiki data for determining new properties. And the
other big difference is that there's different data types. Like in OpenStreetMap, everything
is a string, but wiki data has different data types of values. Here you can see there's
an image and there's also a link to another item used as values in the statements.
So the interesting in terms of maps is wiki data has got coordinate locations. There's
almost 10 million items with coordinates. So those are the kinds of things that we're
interested in and will probably be on OpenStreetMap as well. And there is a property for storing
geo-shapes in wiki data, but it's quite new and it's not used so much. There's only 29,000
odd items with a geo-shape. So, you know, it's mostly about the coordinates. So the
thing that I'm interested in is adding links between the systems. So if we have another
look at OpenStreetMap, I've got highlighted here one of the tags for the palace and it's
the wiki data tag and it's got a wiki data QID. This is the unique identifier for the
wiki data item. So now the two systems are linked. Like if you visit this object on OpenStreetMap,
then the user interface has a hyperlink that will take you to the same thing on wiki data.
So why do I want to add links between wiki data and OpenStreetMap? Well, it makes the
data in OpenStreetMap a lot more useful. Like wiki data tends to have labels in more languages.
Like if you want the name of a thing in a different language, you can get it from wiki
data. You can link to the wiki preview articles. You get images from commons and identifiers
from other catalogs, data catalogs. So there's wiki media commons is the wiki media location
for storing photos of things. So we get loads of photos of our building and we also get
lots of identifiers in wiki data. So you can think of wiki data as a bit like the Rosetta
Stone of linking different data catalogs. It makes sense to store all this information
in one place. So why not use wiki data as that place for storing this kind of info?
So this is a good thing. We want to add links. The other thing that you get is wiki data
gets access to the shapes of things, the polygon outline of the building, which otherwise
it wouldn't have without a link. So adding these links by hand is kind of laborious and
time consuming. So better to write some software to do it instead. So the software I've written,
I'm calling it awl places and the web address is osm.wiki.data.link. So this is what the
software looks like when you visit it. It asks you for a place name where you want to
search for some matches. So you can put in the name of your town, somewhere you're familiar
with and can check that the matches are valid. So I've done a search and I've found the place
where the Royal Palace is located. And this is the page you see. You've got a map with
some blue pins. And these blue pins represent wiki data items that the software has found
something that matches OpenStreetMap. So if I scroll down this page, you can see some
example matches. So I show you various bits of data that come from wiki data and wikipedia
to help you try and identify if these matches are valid. Like sometimes the software doesn't
get it right and will give you an invalid match. So it's important to look through this list
and check that all the matches are correct. And to help you with that, I show you the
first paragraph from the wikipedia article and I show you any images that come from wiki
data. You've got the wiki data description there. The paragraphs I show you, I'll talk
later about how it decides which languages to use for showing those. But it supports
various languages. And then it shows you some of the details from OpenStreetMap just so
you can compare and make sure that they match. So if I click on one of those, then it will
zoom in on the map and it shows you the polygon outline of the thing. You can see the red
pin there is the selected thing. So that looks like a pretty good match. It's probably the
same thing. So we can go ahead and save that. So we're interested in saving these matches
to OpenStreetMap. So the software has a button that lets us log in via OpenStreetMap by OAuth.
Just put in username and password and log in. And then you come back to the confirmation
page where you just see the same list again but kind of abbreviated. These are things
that I've checked and I've said yes, these are valid matches and I want to save them.
You can put a change comment. So everything gets saved together as one change set like
it goes in as a single edit. And the change comment on the change set is generated automatically
based on the location but you can change it if you want to. So I'll carry on with describing
the software and I'll show you some more features that I've built. So I've added a type filter
like at the top here you can see it's a type filter and there's a list of different types
of things that it's found that are possible matches. So it's got statues and buildings.
I can tick a sculpture to say I just want sculptures. And then when I scroll down it
will just show me things that it thinks are sculptures. So I can focus on one particular
type of thing. Sometimes when you put in the name of a town you might get 200 matches and
it's a bit overwhelming to do them all in one go. So it's useful to do them bit by bit
just specific types that you're interested in. And then when I go to the save page it
generates a change comment that's based on the type filter that you've selected. So here
it just says add wiki data tags to sculptures in this area. So I'm just going to talk about
how it determines what is a match. So if we have a look at one of these examples this
is a sculpture. So if we have a look at the same thing on wiki data you can see that there's
a statement in wiki data which is the instance of statement. So this is saying that this
thing is a sculpture. So we can click through and have a look at the sculpture page. This
is the wiki data item for the concept of a sculpture. And then if we scroll down this
page we get a wiki data property which is for OpenStreetMap tag or key. So there's actually
two values here and the second value is uninteresting like it's shown in red because it's a deprecated
value like it's a kind of old value that used to be used in OpenStreetMap and it's being
documented in wiki data. So the interesting one is the top one which is tag colon artwork
underscore type of sculpture. So the information is stored in wiki data about what tags are
used in OpenStreetMap to describe things. So using this information we can say that these
two things are the same type of entity. So when it comes to matching things I'm looking
for the coordinates to match like the two things and the two systems have to be close
to each other. They're not necessarily a perfect match but within like 50 meters or something.
And the entity type has to be the same like I just described. And then I'm also looking
for a matching name or street address or identifier. So I pull names from all over the place in
both systems like in wiki data there's a bunch of different fields or rather in OpenStreetMap
there's a bunch of different fields where names can be stored and I look at all of those
and then in wiki data there's different places to get the names. I look at the labels, wiki
data, the aliases, the names of any wikipedia articles. I look at the file name of any images
that are in wiki data just to get as much, you know, many possible names that I can use
for matching. And then I normalize the names a lot so I lowercase them and I remove stop
words and process them a lot to try and get as many name matches as I can. And then similarly
with street addresses. So there's street addresses in OpenStreetMap and wiki data which I compare
and the software also looks for street addresses in the first paragraph of wikipedia articles.
And then in terms of matching identifiers there's lots of standardized OpenStreetMap
tags for different identifiers and then there's also properties in wiki data for those same
identifiers. So if, you know, I've got a railway station that's got the same station code in
OpenStreetMap and wiki data I can be pretty sure that it's the same thing that I'm matching
so I can be confident about that match. So one of the things I'm not using at the moment
is the wikipedia tags which appear in OpenStreetMap. Like before wiki data came along there was
lots of wikipedia tags added to OpenStreetMap and they're not completely consistent in their
formatting for how they link to wikipedia and sometimes they're wrong. So, you know, I've
left the work for now working on trying to match up using wikipedia tags for somebody
else to have a look at. But I've been waiting for a few years now and no one has so I might
have to have a go at this. So just in case anyone's interested in the technology behind
this, the software is written in Python with Flask. I'm using Postgres as my database and
then on the front end, you know, various bits of JavaScript. I'm not really a front end
developer but, you know, I'm muddling my way through and it seems to be working quite
well. I'm using a bunch of APIs to get this data. So in terms of searching for places
to look for matches, I use the OpenStreetMap nominatum API and then to grab more data I
use the overview pass API and then on the wiki data side, I do a lot of sparkle queries
against the wiki data query service and I use the wiki data media wiki API to get the
details of the wiki data items. So there's a bunch of things that don't work in my system
at the moment. One of them is tunnels. Like I designed the software with the assumption
that there would be a kind of one-to-one mapping between a thing in OpenStreetMap and
a thing in wiki data and that doesn't work for tunnels because tunnels tend to get represented
as two ways in OpenStreetMap where as in wiki data there'll be a single item. And so, you
know, my assumption was wrong and I need to change my software to say that you can add
the wiki data identifier to ways in OpenStreetMap but I haven't done that yet. Incidentally,
we don't have the same problem with bridges. Like the way that bridges get represented
in OpenStreetMap is they are often two ways but then there's a relation across the whole
bridge that represents the bridge itself. And tunnels, there isn't a relation for representing
the whole concept of the tunnel. So that's another possible approach. Maybe OpenStreetMap
should change and start mapping the tunnels with a relation that contains the two ways,
you know, for storing wiki data tags and any other information about the tunnel that
is the same across both ways. So, another thing that I don't support are rivers because
they are linear relations and my software that I'm using to import data from OpenStreetMap
I'm using OSM to PGSQL and it can't handle linear relations. It just, you know, expects
relations to be polygons. So at the moment rivers don't work in the system. And then
similarly for tram stops. Tram stops are kind of complex objects in OpenStreetMap. You've
got, you know, stop positions of where the tram stops on either side of the road which
are no single points and they're collected together into a relation and that isn't supported
properly by OSM to PGSQL. So I can't handle tram stops properly. I'm going to talk about
a few more features that are in the software. So again, this is the center of Brussels and
I've got the language selector. So the software has figured out all the languages that get
used for the labels of things and the OpenStreetMap objects that are in this area. You know, unsurprisingly
for Brussels the most popular languages are French and then Dutch and English is the third
most popular. Interestingly we've got Latin at the bottom there. There's 22 items that
have got labels in Latin in wiki data. But so by default this page is opened in French
and you can see the type filter is appearing in French but I can't read French very well
so if I want to change it to Dutch I can reorder these languages by drag and drop or I can
click on move to top and you can see the type filter is now switched into being in Dutch
or if I want it in English then I can move English to the top of the list and it will
show me the type filter in English, English labels and descriptions. And if I scroll down
the page you can see that this is the page appearing in French. You've got titles in
French and the extracts from wikipedia in French or again I can change it into Dutch
if I want or I can have it in English. And this works without reloading the page. You
just change the order that you prefer the languages to appear in and it does it all on the client
and switches it over. So some statistics for you. People are using this tool. Well first
of all there's more and more wiki data tags appearing in OpenStreetMap so not all of them
are coming from my software. You know there's other people figuring out how to add wiki data
tags to OpenStreetMap. So here's some more stats. 26% of the wiki data tags in OpenStreetMap
were added using this tool and we're up to 400 people and there's been 23,000 change
sets and we're getting close to 700,000 wiki data tags added. So I'm going to talk about
the licensing. Wiki data is CC0 or public domain. You can do anything you want with
wiki data and OpenStreetMap uses the open database license which is a license that was
pretty much written for OpenStreetMap. So you can't copy any data from OpenStreetMap
into wiki data because you'd be re-licensing it CC0 which is not allowed. But even more
than just the licenses being different the intellectual property jurisdictions are different.
So OpenStreetMap asserts database rights. Like the argument is that it's a lot of effort
to go around collecting all this information and putting it in OpenStreetMap and they want
to protect that whereas wiki data is part of the wiki media foundation which uses US
intellectual property rules and so under US law facts are not copyrighted, not protected
rather in law. So the two things don't mesh that well but it's fine because I'm not copying
any data between the systems. I'm just adding links between them. Like in some cases it
might be nice if we could tidy up the data in one system based on the other but I'm
not doing that and there's you've got to think carefully about the intellectual property
rules before you try and do that. And so also just while we're talking about licenses my
software is GPL and code is on GitHub it's all open source. Anyone can have a look at
the software behind it. So an important aspect for being able to add these links between
the systems is to have stable identifiers and for a long time OpenStreetMap has talked
about the identifiers not being stable and sometimes say a railway station might get
mapped as a single point and then later on somebody comes along and traces the outline
of the building and so it changes from being a node into a way or a relation and the identifier
will have changed. So they aren't stable identifiers for concepts in OpenStreetMap. So the thinking
is that makes it difficult to link into OpenStreetMap because the identifiers might change and
there's been discussions within the OpenStreetMap community of having a permanent ID and the
discussions have been going on since 2017 and they haven't come to a conclusion. There's
been an argument that maybe the right thing to use in terms of stable identifiers would
be wiki data IDs, just say anything that's important enough to need a stable identifier
is probably on wiki data and so you could use the wiki data ID as a permanent ID. But
another way to look at it is in reality most of the world is mapped now on OpenStreetMap
and the IDs aren't changing that much. Things tend to be mapped as polygons like outlines
of buildings and people aren't coming along and making changes that are destructive in
destroying the IDs. So maybe the IDs that are in OpenStreetMap already, the IDs that
I talked about earlier, maybe they're stable enough and maybe it's okay to just link to
those and not worry about them changing. Whereas we've got wiki data on the other hand and
wiki data was designed always to have stable identifiers. That was a big part I think of
the initial approach to wiki data. Wikipedia identifies things by article title and over
time the article titles can change and then things get moved around and so they don't
have long-term stable IDs and so the wiki data QIDs was an approach that gave you stable
IDs. But it turns out that they're not completely stable. There's also redirects appearing in
wiki data. Like with some of the work I've been doing, I find a lot of duplicates in
wiki data. Things have been imported from different sources and say for example I found
a lot of duplicate churches in wiki data. So when I go and I merge the churches, then
the ID that represents one of those churches will change. So I've got on the slide here
there's 10,000 OpenStreetMap objects that point to a redirect in wiki data and somebody
needs to go through and resolve those redirects and fix OpenStreetMap. I will probably do
that at some point if no one else does. So a recent change to wiki data is that there's
a new property called OpenStreetMapElement and that is for storing OpenStreetMap IDs.
So now it is possible to add the links in both directions. We can have links from wiki
data to OpenStreetMap which we never used to be able to have. So I need to change my
software to start adding these links in. When you save things at the moment it just uploads
into OpenStreetMap it should be uploading them to wiki data as well. But to do that
I need to make the user login to both systems which is possible but it will break the flow
of it. So I am going to try and do a demo. Let's see. So this is the software I'm describing
and I can say I want it in English. And you can see the type filter there and if I scroll
down it shows matches that weren't very good at the start. So it's got some difficulty
with this match and it can't handle it so we scroll past those. And here's the first
match that the system can handle and if I click on it then it shows you the match. I
can click toggle OSM tags. This is showing all of the tags from OpenStreetMap. The green
ones are ones where it's found a match that's using those to figure out what the match is.
I'll show you some more. Here's another one. You can see it appearing on the map. If I
think this is not a correct match I can click here and it's deselected it. So I've got a
whole pile of matches here. I've checked these ahead of time. They're all good. So I scroll
to the bottom and I can say add tags to OpenStreetMap and this is the confirmation page that I was
talking about. So I can hit save and the software goes through and it's saving my matches. So
it has done it and I can say view my change set and you get to see my change set on OpenStreetMap.
I can scroll down and you can see these are all the things I've edited. So nice and quick
to go through and edit OpenStreetMap. I've just got another example. Another bit of Brussels.
I can change to English. Say I want squares and then if I scroll down it will just show
me some matches that haven't worked. So scroll past those. Here's some squares that the software
has managed to match up. And these all look like good matches. I've checked these before
so I can scroll to the bottom. There's another one and I can say add to save to OpenStreetMap
and it's in the change comment it's put the word squares. So I can hit save and that is
working to edit OpenStreetMap. I'll go back to the presentation. So that was my existing
software. That's been running for a few years. People have been using that and I've been
working on a new version of the software that I'm calling OwlMap. This is what OwlMap looks
like. So when you open this you go straight to a map. It tries to guess where you are,
locate you based on your IP address and then it shows you this interface much more map-based
rather than like a list of things. You see the red pins are where there isn't a match
already. Green pins are where there is a match and the yellow pins are OpenStreetMap things.
So you can see some of them have a line between the green pin and the yellow pin. That's showing
you which, you know, the green pin is a Wikipedia item that matches a thing on OpenStreetMap
which is the yellow pin and there's a line between them. And you've got a filter at the
side where you can filter on different item types. This is an example where I've selected
one of the pins. I've clicked on a pin and it changes the color slightly and it shows
you some details. You get to see the photo and bits and pieces from Wikidata. And then
underneath it shows you a list of possible matches. It just says, you know, this is a
building. Here's some other buildings nearby. And I can see the street addresses on here
and, you know, the nearest building. The street address matches. But in actual fact, there's
two street addresses on there. And if I scroll down this list, I can see that there's two
buildings next to each other that both match this warehouse. So for some reason Wikidata
is representing it as a single item whereas OpenStreetMap has got two separate objects.
But this version of the software supports it. So I tick the boxes next to them and then
I can hit save and it'll add the Wikidata tag to them. So this bit of software I'm still
working on. It's live but it keeps breaking so I'm not really advertising for people to
use it. I need to do some more work on it. And in fact, I think I need some help. You
know, I'm just a hobbyist and I'm running out of time to work on this stuff. So I don't
know if anyone knows how I can get some help with this, whether, you know, there's someone
out there who wants to pay for this work or whether I can find volunteers to help me.
I don't know. It's all a bit tricky like trying to work out managing people to work on this.
So yeah, that's the software built. And I guess, has anyone got any questions?
If you have a question, please raise your hand so I can see you all there. I'm coming.
Thank you, Edward, for that. Hi, I'm Siebrandt. I'm a volunteer at Wikimedia. Wikimedia has
a service called Wikimedia Cloud Services where you can get free compute resources.
Oh, where you can get free compute resources. I would highly recommend that you look into
that. So like the machine I'm running some of this stuff on is 60 gigabytes of RAM and
two terabytes of disk. Would I be able to get that much from Cloud Services?
I would highly recommend that you talk to someone there as you may be having a project
that's quite valuable to the Wikimedia movement. I'm sure that someone will try to help you.
Thank you for your contributions and for the talk. Have you considered interfacing or linking
with OSMOS? It's a quality assurance project. It's a quality assurance project. It's a
model where you see alerts on the mob, dangling ways, et cetera. I think it's somewhat extended
and it has an existing user base. Maybe you could benefit from that. I haven't looked at
this. I will write you later. Thank you. Hello. I have two remarks. First of all, I'm the
maker of MapComplete which also has an entomology team to link Wikidata to Straits so we can
work together on that. And then second, a small remark on the adding an ID of OpenStreetMap
to Wikidata. That's a bit of a flow approach because IDs aren't very stable in OpenStreetMap.
Say that a new park is opened, I place a point where the park is and then a few days later
someone else passes by and says, oh, we have aerial imagery now, throws the outline as a
polygon and then removes the alt point. That means that the link would be broken in Wikidata.
I mean, I guess we just have to deal with that. We can have software that looks for
these broken links. Maybe it would be nice if OpenStreetMap could add redirects like
Wikidata has. Yeah, except that it's way more difficult than that because, for example,
sometimes you have a big street and then you have properties which are different for parts
of the street and then the street gets split into three parts. So then suddenly you'd have
to redirect to three different parts. Do you think that it's a mistake to add OpenStreetMap
IDs to Wikidata then? Yes, basically. It doesn't make sense at first glance but technically
it will break down over time. So it's better to add a link to OpenStreetMap to Wikidata
and then look it up reversely because the editing tools will keep track of the Wikidata
link. So if the roads get split into multiple pieces, every single piece of the road will
get a backlink to the Wikidata item. Yeah, you might have a good point. But let's have
a discussion after the questions. Hi Ed, thanks for sharing the new software. It looks great.
So I was fascinated by the example where you showed a modern one potential match and I
just wondered does your software have a role to play in improving the quality of the data
by cross-referencing between the two sides? I think it can improve the quality. Like I
say, when I run this I find duplicates in Wikidata that are difficult to identify from
just Wikidata itself. I feel like the coordinates that are in Wikidata don't get much use.
Like for a long time you didn't even see the map appearing, the Wikidata pages, and then
a lot of the coordinates were wrong. People transpose digits. Since the map is visible,
people are more likely to check their data. The fact that the two systems exist, you can
cross-reference them and find errors. Yes. I'm wondering how relevant it is now based
upon the question just a moment ago. But I was wondering can you search Wikidata for
a lot long window and find all objects within it when you're adding data to OpenStreetMap?
So underneath I'm doing Sparkle queries to Wikidata, and Wikidata Sparkle queries
do support coordinate bounding boxes. I can say you can write your own query in Sparkle
that will give you all the churches within a given bounding box. I demoed two separate
systems that should really be combined into one, and the old system doesn't support bounding
boxes. It's all based on place polygons. You have to say, show me things that are in Brussels.
You can't say, show me things within this rectangle. And the new system is more bounding
box based in that you see the map and it just shows you all the matches that are in the
rectangle that's visible on the screen. I'm not sure if that answers your question.
It doesn't think. It's very valuable what you've done. Thanks.
Any other questions? Raise your hand. Hi. Thank you for your talk. I had a question
about the OpenStreetMap tags that are in Wikidata. I think you showed this in one of
your slides. How often are these tags uploaded from OpenStreetMap, and does it pose any problem
with the license compatibility issues that you talked about?
I think you mean the property for OpenStreetMap tag or key. Things like I showed the palace
type. Is that right? Is that the one you're thinking of? There's a few properties in Wikidata.
Yes, the OSM tag, like the structure one. I don't think there's any problem in terms
of the intellectual property. It's kept pretty up to date. People invent a new tag to use
on OpenStreetMap, and then they go and find the matching Wikidata item and add the tag
to it. And some unofficial tags that are used on OpenStreetMap, the information is in Wikidata.
So it's pretty current, I think.
So similar question from my side. Nice presentation. You explained the licenses. Nicely when you
said that you cannot copy data from the OpenStreetMap to Wikidata, but what about the other way
around?
So that's an interesting question. And the OpenStreetMap community is a bit suspicious
of the information that's in Wikidata. Like, there's a feeling, you know, where did the
coordinates come from? Were they just copied from Google Maps? Like, do people look up
a thing on Google Maps, find the coordinates, put the coordinates into Wikidata? And then
does that make Wikidata a derived work of Google Maps? And so, you know, it's probably
fine to copy any data from Wikidata into OpenStreetMap. You know, if you want to copy a name in
a different language, you know, that's probably fine. But my software doesn't do that. I just
add the links. And, you know, once the links are there, it's easier for somebody else
to come along and find these things and copy the data over if they want.
So my question is, does the software do the requests, the API requests on the back end
on your hosted service, or is it the client, the user that will do the browser will do
the API requests?
I showed two versions. The old, you know, the more established version is using the
Nominatum API to find things. And then it's using the Overpass API to grab lots of map
data. And then they use the OpenStreetMap API to push the changes you make to upload
the Wikidata tags back into OpenStreetMap. And the new system I built maintains a full
mirror of the OpenStreetMap data just to make things faster. So I'm not using APIs for downloading
data with that one. I just use the API for saving the changes. Does that answer your
question?
Yeah, partly. But does the request to fetch data from the Wikidata, does that go from
your servers? Do your servers fetch data?
It is all going from my server, yeah. It's not from the client browser. It's going. Like,
I do a lot of pre-processing before I show you the list of paid matches, and then I
store them all in the database. So when you load the list of matches for a place, it's
not doing any queries either on the server or the client with the APIs. It's all stored
in the database. I mean, that's a problem. The matches get stale. There's a refresh
button that you can hit, and it will go off and rerun the matcher and get fresh data from
OpenStreetMap and Wikidata.
Yeah, okay, thanks.
There was a question here? No? Okay, so I'll be back on the other side.
Hi, I'm Valerio from Milano, and thank you so much for this tool. Again, thank you for
the person who mentioned the possibility to host this tool on the Wikimedia Foundation
infrastructure, because it would be really, really nice to propose this on the Wikimedia
Fabricator, and I would be interested in discovering how the discussion will go. Second thing,
you asked how to found your development. I think you can just contact your local Wikimedia
chapter that maybe they provide microgrants or something like that. In my local community,
some volunteers often in one week can obtain microgrants to develop small tools or to boost
some activities. Maybe this can be interesting if they are useful for the university to produce
OpenStreet software and Libre content. One feedback for the user interface, it's not
clear to me how to contribute on just one element. If I have one minute, if I want to
visit the tool and connect just one item, because I'm 100% sure about that item, so
I just want to save on that contribution and be kidnapped, I don't know. So this maybe
can be useful if it's not already possible. The two approaches for that, if you click
on the title of an item, it takes you to a page where you can just edit a single item.
Okay, wonderful. At the top of the page there's an uncheck all tick box, and then you can
just tick the box next to one thing and scroll to the bottom and hit save. Both of those
will work for adding a single Wikidata tag. Okay, thank you. And thanks for your comment
about contacting my local Wikimedia chapter, that's a good idea. Last thing, can you repeat
sorry, why do you need two terabytes of data to have this working? Thank you so much. The
open stream app database is big. The Earth is big and I keep a whole copy of it to make
things fast. And so it's probably 1.6 terabytes to store all of the open stream app data.
I think that's time up. So thank you. Thank you.