places.pub

I'm making an initial version of places.pub available today. places.pub is a collection of Place objects suitable for use in geosocial applications on the ActivityPub network. Part of my work in the Social Web Community Group at the W3C has been work in the GeoSocial Task Force. This is a sub-group of the SocialCG that is working on implementing user stories in ActivityPub related to the intersection of geographical systems and social networking, for example, tagging an image with the […]

https://socialwebfoundation.org/2025/04/29/places-pub/

places.pub

I’m making an initial version of places.pub available today. places.pub is a collection of Place objects suitable for use in geosocial applications on the ActivityPub network. Part of my work…

Social Web Foundation
@evanprodromou I'm wondering why it isn't preferable for OpenStreetMap to provide this data directly. Since they are the stewards and custodians of the entire data set, it would only make sense that other people on the Web depend on OSM's domain instead of a third party, no?
@raucao Absolutely! I’d love to work with OSM to set up an API service in their domain. I think showing the value and usage first helps to make that case.

@raucao
> it would only make sense that other people on the Web depend on OSM's domain instead of a third party, no?

Especially when that third party depends on a Goggle service;

"If you want to run your own instance, you need to use Google Cloud Run functions or a compatible service (if those exist)."

https://places.pub/

I'm hoping there's plans to fix that @evanprodromou?=

places.pub

@strypey @raucao Did you read the article you are replying to? It explains how this is built and why it is on Google Cloud.

https://socialwebfoundation.org/2025/04/29/places-pub/

places.pub

I’m making an initial version of places.pub available today. places.pub is a collection of Place objects suitable for use in geosocial applications on the ActivityPub network. Part of my work…

Social Web Foundation

Let me back up, and congratulate you on this experiment. Figuring out how to make use of both AP and open datasets like OSM in social apps opens up a range of intriguing UX possibilities.

@evanprodromou
> the article you are replying to ... explains how this is built and why it is on Google Cloud

This is Ok for a PoC. But is there a longer term plan to develop something vendor-independent?

@strypey If it runs on Cloud Run, it shouldn't be too much of a challenge to make it run on e.g. OpenFaaS. It is certainly possible to write things that run on OpenFaaS and run on Cloud Run unmodified.

@evanprodromou
@clacke
@strypey Back in 2019, Cloud Run was a Google-hosted version of open source project Knative. I haven't been following this, so I don't know if that is still the case.

www.openfaas.com/blog/openfaas-cloudrun/
Run your OpenFaaS Functions on Google Cloud Run for free

Yesterday Google announced a new serverless SaaS product named Cloud Run, learn how to deploy your OpenFaaS Functions without modifications in the free tier

OpenFaaS - Serverless Functions Made Simple
@evanprodromou I read the article, and it doesn't explain why it needs to use Google Cloud services, only that it does. It may be that it was a design decision to make things easier, or that third-party components require it, but the article itself does not explain why.
@evanprodromou Someone has to integrate this with @elonjet stat :P

@evanprodromou This is an amazing initiative!! 🌍

The small problem with OpenStreetMap IDs is that they're not stable. This can happen for example:

- a node/way keeps its id but gets moved around, or

- a new node/way gets created with a new id but it really describes the same previously deleted object

There are various systems to come up with stable IDs all with their own pros and cons but no good one-fits-all solution.

Maybe fine for a prototype for now but we need to keep this in mind.

@external thanks for the note! Important to know.
@evanprodromou @djh That can always happen, when you do not control the entity. We also discussed an approach like this one. So thanks a lot evan for your work. However, I also wondered whether it might be good enough to just have an "osmid" available in an ActivityPub Place object.
@djh @evanprodromou Indeed, and this documentation might help: https://wiki.openstreetmap.org/wiki/Permanent_ID
Permanent ID - OpenStreetMap Wiki

@Doudouosm @djh @evanprodromou Also my blog post from much further back https://sk53-osm.blogspot.com/2011/06/possums.html, which mentions @thisisaaronland work with WOE_IDs
POSSUMs

Check the tongue! courtesy of wollombi CC-BY Not cute animals or vicious pests, but P ersistent O pen S treetmap U nique M apIds! I've be...

@SK53 @Doudouosm @evanprodromou @thisisaaronland These and similar "stable" IDs I believe hide the complexity of what we socially define as "the same place"

If a cafe moves across the street is it still the same place with the same ID?

If the cafe changes owners but the location and the name is the same is it still the same place with the same ID?

If the cafe changes it's name but otherwise the owners and location are the same is it still the same place with the same ID?

It's complicated.

@djh @Doudouosm @evanprodromou @thisisaaronland Yes, it basically requires a much more detailed data model (or ontology if you fancy elaborate terminology). #OpenStreetMap tagging's great strength is that it avoid this entirely. Wikidata *claims* to do this, but there are too many examples of conflated things. It's why I think the idea works best with domain specific rules.
@djh @SK53 @Doudouosm @evanprodromou FWIW, this is why who's on first has the notion of records "superseding" and being "superseded by" each other / the point of the stable IDs is to be able to reference a "place" in time as well as space / for example https://whosonfirst.org/blog/2017/06/29/tackling-space-and-time-in-whosonfirst/ and https://whosonfirst.org/blog/2017/10/24/whosonfirst-sotmus-2017/#palace
Tackling Space and Time in Who's On First

Using the Extended Date/Time Format to track historical records in Who's On First.

Who's On First
Building a custom Placeholder geocoding database

Placeholder is great but there are three things it doesn’t support by default which are pretty important for SFO Museum: The inclusion of airports, historical records and SFO Museum architectural records in the search index. I am happy to say that we are now able to build our own custom Placeholder SQLite databases which address all of these issues.

Mills Field, a SFO Museum website