A few weeks ago I wrote about how I'd linked up my EDF Energy Monitor to save the minutely electricity usage in my home. It's been a useful little project, and saved me a fair bit of cash by making sure that we were on top of the electricity consumption.
I recently came across opensensors.io - a community of like-minded people who are able to share their data through 'topics' on the site - and publish any unstructured data to the site for others to consume. Whilst my electricity usage isn't necessarily the most informative of datasets, it does enable others to see the data structures of the EDF Energy Monitor, and write their software so.
This has led me to a bit of angst, which I also believe to have already been solved by the advocates of NoSQL. Is my data, if unstructured, actually useful?
In my view, Tim Berners Lee gave a bit of an underwhelming talk, on taking the web to the next level. Underwhelming in the sense that it's simple, yet seemed to contain some top-down logic that implementing would require a documented structure for each type of data. The three rules are:
1) We need to use a URI for a single product/event
2) If i lookup a URI, I will get data back in a standard format
3) When i get that information, it has relationships to other data, based on their own URIs.
Taking my ElectricityUsage topic on OpenSensors.io as an example - I work out how far I am being compatible with TBL's vision.
1) Yes. The device itself has a unique URI and using the opensensors.io API, it's possible to generate a unique URI for each event (albeit using querystrings).
2) Yes, The data should be returned in a standard format. This is the bit that confused me. I though a standard format would be a prescriptive format that explained the structure of the response. However, I now realise that this would be fairly impossible to police and manage. Therefore as long as the format of the data is of a standard (eg, json, xml) then the structure is a completely different beast.
Please take time to watch the talk, and let me know your views on how this impacts the internet of things.