Chemical and biological laboratories produce information in a large number of forms and for a variety of purposes. This diversity often works against the adoption of one-size-fits-all solutions, and can significantly increase the costs of creating custom systems. One approach to this problem focuses on creating interoperable components that can be reused in a variety of contexts.