srnsw/api.records.nsw.gov.au — Issue #44: New model: /things
Author: richardlehane
Created: 2012-01-18 01:59:58+00:00
State: open
Labels: ✔✔✔

Users can already add comments and tags to the catalogue but I'd like them to also be able to add a third type of content: they could add their own entities to the catalogues. We'll call these "things".

A "thing" might be a person (e.g. an ancestor or the user themself), an event (e.g. "The Great Depression"), a work (e.g. a book that contains references to archives), an object (such as a passenger ship or a train), a place (e.g. Parramatta), a building (e.g. Parliament House), or even an animal (e.g. Governor Macquarie's cat - did he have a cat?). We shouldn't constrain the list of 'things' - anything should be possible.

The value of creating a "thing" is that users can then add attributes to that "thing" such as descriptive text (e.g. a short bio of their ancestor) and can link that "thing" to records in our catalogue or to other "things" or to anything else on the web. I.e. it gives users the chance to participate in the semantic web by being able to coin their own entities.

We'll be able to take advantage of the "thing" entity ourself by importing other resources into the catalogue such as index entries, archives in brief and other guidelines, etc.

Things should be accessible via our normal routes:

i.e. http://api.records.nsw.gov.au/things for a list of things, http://api.records.nsw.gov.au/things/1 for a particular thing, and http://api.records.nsw.gov.au/things.xml or http://api.records.nsw.gov.au/things/1.xml (and json etc.) for machine readable formats.

These should respond to POST as well as GET so that things can be created via API functionality.

Things should have the following attributes: title, type (a dropdown list of suggested types - "Person", "Place", "Event" but also the facility to add any other type), description, link to user (identity of the user that created the thing), links to entities in the catalogue (i.e. official entities such as item, series, agencies but also other things), tags (and users could use tags to link to external things e.g. to wikipedia), and comments.