Data and Metadata

This provides support for metadata such as the names, values and types of data.