Contributing to a Pleiades Ecosystem

Pleiades is a gazetteer of ancient places, but one of the things that makes it really useful is that they publish their data in open, easily-consumable formats. This post will highlight some recent experiments in re-using that data – my goal in developing most was primarily becoming familiar with new formats, tools, and data, but I hope that by giving them back to the community others can benefit from them, either through use or looking behind the scenes at their code.

The pleiades-geojson repository was initially motivated by GitHub’s recent support for GeoJSON views and embeds. I just wanted to see what Pleiades GeoJSON would look like on GitHub. Of course, Pleiades offers GeoJSON representations of places themselves, but I wanted to get the entire thing into a GitHub repo, in a sustainable, updatable – and polite – way. That meant using the data dumps Pleiades makes available. I started with CSV as it’s a relatively straightforward representation to work with, though it does require some understanding of the Pleiades place model to use effectively. The result was a script which can ingest the CSV dumps and produce GeoJSON which is mostly similar to the representation served up by Pleiades. The primary difference (to my knowledge) is the lack of authorship information. Future work with the richer RDF dumps might make it possible to put more data in the GeoJSON output.

A direct result of this is the ability to see GitHub GeoJSON views of Pleiades data. An interesting question that arises from keeping GeoJSON in Git is how to visualize diffs and changes over time – I’d welcome pointers to any existing tools or work in this area.

Another side effect of putting this on GitHub is being able to use GitHub GeoJSON embeds, which leads me into my next project: Pleiades Static Search. “Static” in the name may be somewhat confusing, but all it refers to is that there’s no dynamic server-side process necessary. The result is a client-side search that populates results relatively fast in most cases. The code for this process is also available on GitHub – you can see just how simple it is, leveraging existing resources and frameworks.

The last project I’d like to highlight I’ve actually had brewing as a pure experiment for a while and am just finally taking this as an opportunity to round off some edges and kick it out the door. Itinerarium is an experiment in visualizing itineraries of ancient places – itineraries were a popular way of representing spatial relationships from antiquity through medieval times. This gave me a good opportunity to learn about and play with the Flickr/Instagram geographic search APIs, as well as a Javascript library named Davis for handling app routing/state. The Hadrian’s Wall itinerary was created by longitudinal sorting of the places in the Pleiades “Hadrian’s Wall” place. The Vicarello itineraries were a quick last-minute extraction from the RDF source provided by Pelagios, and may have some rough edges (pull requests accepted!). You can also call into Itinerarium with a list of Pleiades IDs (or just one), or a custom URL with your own JSON so long as it supports CORS. The result of visualizing itineraries of ancient places this way is an interesting mish-mash of ancient and modern: ancient sites and cultural heritage intermixed with modern scenes of day-to-day life. It can also turn up some very interesting photos, such as beautiful, richly annotated aerial photography of Hadrian’s Wall.

3 thoughts on “Contributing to a Pleiades Ecosystem”

  1. Ryan, a lot of food for thought, especially for my own little pet project that is Pleiades Mobile

    Re: diff’ing geoJSON, you should head over to Sean’s blog, he has been going into the details of patching JSON files recently: http://sgillies.net/blog/2013/12/04/json-diff-and-patch-for-geojson.html and http://sgillies.net/blog/2013/12/06/some-consequences-of-geojson-features-as-arrays.html — tl;dr we’re just at the beginning and there’s a lot to experiment with.

  2. Ryan, I’m super excited to see R&D continuing around Pleiades 🙂 I’m not a fan of “story maps”, but in a way itineraries are the original story maps. I feel that itineraries could be a killer application for web gazetteers and place encyclopedias like Pleiades.

    I’ve been thinking a bit about GeoJSON patches, too, and FWIW have some thinking out loud at http://sgillies.net/blog/2013/12/06/some-consequences-of-geojson-features-as-arrays.html.

  3. Stefano, one of the things I’m quite pleased with is being able to use the Bootstrap framework to get a lot of responsive design work for free. I didn’t do any special work for mobile, but both Itinerarium and Pleiades Static Search appear to work quite well on my iPhone/iPad as a result.

    I was also excited to see Sean’s post on GeoJSON patches. 🙂 I’m wondering about map visualizations of individual patches or changes over time – looking at the GeoJSON patch format actually helps clarify thinking on this for me some.

Leave a Reply

Your email address will not be published. Required fields are marked *