Tuesday, May 29, 2007

imho Ocean Semantic…..


Semantic interoperability is a non-issue when everybody adopts the same vocabulary, frame of reference, and expectations from the get-go, and when there’s no question who governs the domain in which these shared understandings apply. Interoperability only becomes an issue when autonomous semantic domains must interact for their mutual benefit. In those cases, all parties must agree on a mapping or translation between their respective vocabularies. In such circumstances, how do semantic domains square, coordinate, mediate, and reconcile their domain-specific ontologies with ontologies in other domains, or with foundation ontologies that apply more horizontally?

Governance among autonomous domains--that’s the essence of federation, as I’ve discussed previously in this blog on several occasions over the past 30 months. To dust off and slightly extend my prior definition of federation (last rehashed in the “Arch of Governance” thread a year ago): Federation is a governance structure in which autonomous domains choose to honor each other’s decisions and accept each other’s assertions in some realm of human endeavor—such as identity management, semantics/data management, or SOA management--subject to business contracts, trust relationships, interoperability agreements, and local policies.

One thought that occurred to me is that semantic federation can be modeled along the same general lines as identity federation. Within any federated interaction (semantic, identity, etc.), at least one party “asserts” some statement about some entity, and at least one party “relies” upon that assertion when making one or more decisions. Where semantic federation is concerned, we’re not talking SAML “assertion” messages or anything of the sort.

Rather, we’re construing an ontology (expressed in OWL, RDF, or any other knowledge representation language) as asserting that a particular controlled vocabulary applies in some domain (e.g,. your organization, your application, your system, etc.). And we’re interpreting ontology-compliant data structures (expressed in XSD or other schema standards) as assertions/statements about specific entities/classes/relationships/etc within a domain. And we “rely” on these semantic assertions (ontologies and data) when we choose to discover, access, retrieve, and import them from the asserting/source domain, and then reformat, match, map, translate, merge, aggregate, store, and otherwise use them in our target domain.

Of course, that semantic-bridging process is how cross-system interoperability has been conducted since the dawn of distributed computing. Integrators have always ascertained the meaning of source data in its original application, process, or system context, while also considering the meaning, schema, and format of equivalent data elements in target systems, and then defining the mappings necessary to ensure that the meaning/context of the data is preserved when being translated between the source and target systems.

In a federated semantic environment, interoperability needn’t require reciprocal handshakes (i.e., business contracts, trust relationships, interoperability agreements, etc.) among interacting parties. In fact, interoperability can be and often is a one-way flow of metadata from source to target systems. All that’s necessary is that at least one party—usually, the source/asserting party--make its full meaning and expectations completely transparent and unambiguous to the others, and that the others (the relying parties) agree to accept that meaning and live up to those expectations. At least one party must control the vocabulary, and all parties—asserting and relying--must consistently adhere to that vocabulary.

If governance over that federated lingua franca is shared, that’s all well and good, but not absolutely essential, for understandings to be mutual. In fact, it’s best that most of the foundation and domain-specific ontologies are controlled/decreed by various “higher authorities” (e.g., standards bodies, industry associations, etc.), so that most common vocabularies are as transparent and unambiguous as possible. And to the limited extent that the interacting parties choose to “handshake” the definitions of the remaining vocabulary elements through common ontology repositories, or through an agreed-upon data stewardship/governance administrative workflow, the common understanding is nailed down solid.

Semantic stewardship. That’s the process under which organizations—internally and externally—work out the policies regarding which ontologies (i.e., vocabularies, glossaries, metadata, definitions, etc.) will be asserted, in which formats/schemas, and which will be relied upon, per which ontology-controlling authorities, under which governance roles and workflows, and with which mappings and translations, under which requirements, use cases, and circumstances.

Federated semantic stewardship. The decision to accept, map, and adapt some other domain’s vocabulary to your circumstances. Because it fits.

More to come.