Last week, I posted this message to the IPTC Photo Metadata public discussion group iptc-photometadata@groups.io
Hi All,
I’ve been developing software over the past few years called Photo2Graph. Photo2Graph builds a local “graph database” that can be queried using Photo2Graph itself or with third party graph database tools. It is available to download from www.photo-2-graph.com.
Photo2Graph helps manage locations, events and persons (using Open Street Maps for the locations) and all metadata is stored in a graph database as well as within the metadata for each photo file.
Photo2Graph exploits the fact that XMP data is already in RDF format (which is required for a graph database) so it is relatively simple to convert RDF into a graph database containing metadata for a set of images.
A graph database is a very efficient structure for searching and reporting. Graph databases are supported by a wide variety of software for managing and manipulating information and there are several query languages that can be used. (SPARQL, the most well-known, is used by Photo2Graph.) There is also some interesting visualisation software to show relationships in data. Graph databases can easily support the largest photo collections.
Some examples of what you can do with metadata held in a graph databases are:
- Search all Metadata – it is possible to search ALL metadata fields (including non standard metadata) for text e.g. for one or more characters;
- Complex searches can be constructed across multiple fields, with sorting on any combinations of fields;
- Aggregating with other graph datasets – a graph dataset from photos could be merged with other graph datasets, with similar or related data (e.g. Person, Location or Event datasets) – some examples how this could be used:
- Several separate photo libraries could merge their graph databases together and present a single index / search across all libraries – this delivers distributed / federated searching
- Photo metadata could be merged with a graph database containing newspaper articles, providing a combined dataset for searching across both datasets
- A local graph dataset could be uploaded to the web , providing an online index for a locally-held library.
Exploiting XMP metadata in this way has huge potential and it would be great if software vendors provide support for this.
Feel free to try out the software, and I’d welcome any questions or comments.
I’d like to thank members of the IPTC Photo Metadata public discussion group for advice and guidance that helped this work – in particular, Margaret Warren, who has developed ImageSnippets (https://imagesnippets.com/) to deliver similar functionality in a web environment, also to Ora Lassila (who has developed a Python library for accessing XMP / RDF (https://rdflib.dev/Python) and to David Roberts who has provided ideas on linking People and Event information with photo metadata.

Leave a Reply