Environment XML

Please note that Environment XML is no longer active; it has been deprecated in favour of EEML (Extended Environments Markup Language)

Original overview text is included below for archive purposes. However all previous projects making use of Environment XML are advised to upgrade to EEML.








Environment XML is live [ http://www.haque.co.uk/environmentxml/live/ ] enabling people to tag and share remote realtime environmental data; if you are using Flash, Processing, Arduino, Director or any other application that parses XML then you can both respond to and contribute to environments and devices around the world.

EnvironmentXML proposes a kind of "RSS feed" for tagged environmental data, enabling anyone to release realtime environmental data from a physical object or space in XML format via the internet in such a way that this content becomes part of the input data to spaces/interfaces/objects designed by other people.

It is inspired in part by Aether's "Budapest Heat" project, which streams realtime temperature of Budapest to a remote sculpture covered with temperature-sensitive paint. A protocol like Environment XML would enable designers to release such networked data (e.g. Budapest's temperature) for others to apply to a completely different project.

environment xml environment xml

Just as Flickr does with photos, Environment XML would enable this data to be shared, tagged and aggregated with similarly tagged temperature data from a number of other projects streaming from around the world and would itself form part of a wider global temperature-related data stream that could become inputs to other's projects.

As a first step this project is being constructed using Processing/Arduino which many designers and artists use for their interactive objects and environments. Data could include local temperature; local light level; the height of a pile of dirty dishes; whether windows were open or closed; whether bookshelves were empty; the length of the shadow of the neighbouring building; the number of people currently interacting with the device; or even people's positions in space. The designer simply needs to provide the sensors to calculate these variables: the Processing/Arduino combo would stream the data.

environment xml environment xml

Just like Flickr, the environment "transmitter" (i.e. your project) would tag the data on its way out to the public, and the environment "receiver" (i.e. somoeone else's project) would interpret the tags in whatever way they need. The data might be used by an object, or perhaps a spatial interface (projection, facade, acoustic environment) or even simply a web-based processing applet or flash swf.

With Environment XML, a designer could choose what environmental data to have their space/interface respond to; from particular remote spaces, from an aggregate of many spaces, from an aggregate of environmental variables around the planet, or from any number of things that, crucially, the people who released that data did not necessarily plan for. All that is required is the Processing/Arduino/EnvironmentXML combo, an internet connection and a design for something that "does something". If you use the Environment XML data you will also be required to share your own data with others.

The website is now operational at [ http://www.haque.co.uk/environmentxml/live/ ]. Please feel free to use these data streams in your own projects; contact us at -- exml [ at ] haque [ dot ] co [ dot ] uk -- if you have any questions or if you are able to contribute your data stream to the repository.

The data below is served from our office at http://www.haque.co.uk/environmentxml/live/xml.php?locationid=79 and the location entry can be seen here: http://www.haque.co.uk/environmentxml/live/index.php?q=selectlocation&locationid=79.

<?xml version="1.0" encoding="ISO-8859-1"?>
<!DOCTYPE environment SYSTEM "http://www.haque.co.uk/environmentxml/live/exml.dtd">
<environment age="190476338">
<datastream datastreamid="0" value="21.0">
<tag>
heat
</tag>
<tag>
temperature
</tag>
</datastream>
<datastream datastreamid="1" value="1369.0">
<tag>
sound
</tag>
</datastream>
<datastream datastreamid="2" value="192.0">
<tag>
pollution
</tag>
</datastream>
<datastream datastreamid="3" value="101.0">
<tag>
color
</tag>
<tag>
redness
</tag>
<tag>
blush
</tag>
</datastream>
<datastream datastreamid="4" value="13.0">
<tag>
pressure
</tag>
</datastream>
<datastream datastreamid="5" value="0.0">
<tag>
locationx
</tag>
</datastream>
<datastream datastreamid="6" value="0.0">
<tag>
locationy
</tag>
</datastream>
</environment>

This is part of a continuing exploration into ways that open source strategies might be applied to the design and construction of space and architecture. Related projects include:

November 2013: Please note that Haque Design + Research is now Umbrellium, where more up-to-date information can be found Umbrellium