Semantic Meaning and Interrop

WRT interoperability between data and systems, perhaps the government gets it, and we in the technology industry haven't figured it out yet?

I read an interesting paper yesterday IAC Interoperability Strategy. The report was forwarded to me by one of it's authors, and one of the most visionary technical people that I have met in government, Eliot Christian. Eliot is heavily involved in many standards groups, including OASIS and W3C. 

The intersting idea in the paper is that interop comes from 3 ideas:

  • Common Syntax - Structure of the message ( ex. XML, ASN-1).
  • Common Mechanism - The protocol and message definition (ex. SOAP, WSDL)
  • Common Semantics - The agreed upon meaning of the messages.

The technical community including Microsoft, IBM, and everyone else are focused heavily on the first two items on the list. But it is this third item, common semantics that is the real challenge to building interroperable systems.

What are Semantics? The paper uses the example of salary. For two systems to share salary information, they have to agree on definition like "gross annual compensation including bonuses and other compensation in 2003 US dollars". Even if both systems use the same message structure if they don't both have the same definition, then interoperability is impossible. 

There are some standard definitions that are defined by "Dublin Core" and "ISO 11179". While these standards are important, they need to become part of the mainstream thinking with the technology providers and customers. My hope is that once the technology companies finish up with XML and Web services, that we can build tools and solutions to help customers address the Common Semantics problem.