Itemsets as geoJSON [module proposal]

Intro

This idea is posted here to get feedback of the Omeka S community. Is this a user story you can relate to? Is the described functionality not already present in an existing Omeka S module? Is the description/requirements clear enough (in order for a developer to work on a module)?

User story

I’d like to have the the metadata of items (with geographic property/mapping) in an item set available in GeoJSON format in order to make visualizations.

Concepts

GeoJSON is a widely used data format for representing geographical features and their attributes in a JSON (JavaScript Object Notation) structure. GeoJSON has been standardized in GeoJSON Specification (RFC 7946). It serves as a lightweight and easy-to-read standard for storing and exchanging geographic data, making it ideal for web-based mapping applications and geospatial services. GeoJSON allows the representation of various geometric shapes such as points, lines, and polygons, along with associated properties like names, descriptions, or any other relevant information. This format enables seamless integration and interoperability between different mapping tools, databases, and programming languages, making it a popular choice for geospatial data visualization and analysis in the modern web and software development landscape.

In Omeka S, an item set is a feature that allows users to organize related items into collections or groups. It is commonly used by cultural institutions like museums and libraries to curate and present digital content around specific themes, projects, or exhibitions. Item sets facilitate the creation of cohesive narratives and structured presentations by bringing together various types of content, such as images, videos, texts, and metadata records, in a single, organized unit. Items can have geographic properties, like geo:asWKT or a location (via the Omeka S Mapping module).

Examples (proof of concept)

The Gouda Timemachine has the locations of (current and disappeared) mills in the Dutch town of Gouda (via the Mapping module). The data is organised in item set 92174. When I request https://www.goudatijdmachine.nl/geojson/92174 I get the information in GeoJSON format. Visualizing the GeoJSON example with a generic viewer: HERE XYZ: GeoJSON Visualizer

Example of the streets in Gouda (lines in geo:asWKT): HERE XYZ: GeoJSON Visualizer

Example of buildings in Gouda (polygons in geo:asWKT): HERE XYZ: GeoJSON Visualizer

Module requirements

  • Per item in the itemset, the informative (title/identifier) and geographic metadata (mapping/geo:asWKT) have to be mapped to GeoJSON properties in a Feature to form a FeatureCollection.
  • Geographical information in WKT format should be converted to GeoJSON (in the proof-of-concept GitHub - phayes/geoPHP: Advanced geometry operations in PHP was used for this conversion)
  • Generated GeoJSON should be cachable (can become big in size)