Beyond the Tower of Babel
by CBDi Forums Limited
If you listen too much to the popular tech media, you would think that Web services are just about XML, SOAP, WSDL and UDDI, right? Well actually wrong. One of the most common questions we get asked is "What's happening in the area of semantic standards?" In other words, how do enterprises talk to each other when they have developed an internal business communication language that is unique to themselves?
Typically we have quite a lot of difficulty in answering this question. Our response might be along the lines of "Well, there are several, well actually many initiatives working on semantics. They tend to be focused on particular vertical sectors, such as insurance, financial services, automotive etc. and it's really hard to give a general answer, because some of the groups are doing good work, others are moribund, and not all are looking at new technologies like XML and Web services. And we honestly have to say that the diversity of the work makes it almost impossible to track and keep up to date!"
OAG announce single XML business language
Recently we were interested to see the Open Applications Group (OAG) announce that they have published Release 8.0 of OAGIS. This specification claims to provide a single XML business language that "covers virtually all application integration needs-including B2B, Application to Application, and Exchanges". Remembering just how many projects, sectors and organizations are laboring to solve this very problem, you would be forgiven for thinking the OAG is perhaps making a somewhat aggressive claim.
Further the OAG announcement was couched in what can only be classed as academic terminology that would have many IT professionals reaching for the back button. The OAG is claiming to have developed the first ever Canonical Model for eBusiness and Application Integration. Now to explain this properly, I need to take you back in my time machine to around 1980, when one-time guru James Martin introduced the concept of canonical synthesis. Martin suggested that there is a grouping of data that is the best for a given group of end users, which provides a near-optimal grouping that is sometimes referred to as a canonical schema. Now the strict definition of the word canonical is a standard or authorized. The word actually derives from the Greek "kanon" (similar to the English "cane") referring to a reed, and in past times reeds were used for measurement.
However Martin provided us with a more sophisticated definition which I include here in full:
" . . a model of data which represents the inherent structure of that data and hence is independent of individual applications of the data and also of the software or hardware mechanisms which are employed in representing and using the data."
And the OAG is using this more specialized definition to suggest there is a subset of semantic definitions that are independent of application, not only in terms of hardware and software, but also in terms of vertical sector usage. The OAG has developed a specification of what they refer to as a horizontal business language, which can be used and useful in all vertical domains.
The OAG offers an attractive example. They suggest that it is very rare that a company does business totally within only one industry sector. For example the Ford Motor Company buys tires from Michelin, but also buys gasoline from energy company Exxon, and office supplies from a retail sector company. In this example Ford should be able to use one purchase order to communicate with all three companies with common semantics covering core concepts such as order, order authority, terms and conditions etc.
Further, the OAG adopts a pragmatic approach that suggests that it is not possible to create entirely industry neutral terminology and definitions, and that vertical sector specific terminology can be used to expand the horizontal model using plug-ins that extend the base model. The OAG has developed a specification that provides this base or canonical layer, and are now looking for industry input to develop the vertical sector plug ins.
Now we are hugely supportive of initiatives such as this, but we do have to point out some tiny little snags that might just get in the way. First, as one who has practised canonical synthesis, I will tell you that there is no single right answer. There is literally no way of validating the near optimal state, except by concensus of representative parties. And over time these representatives and the optimal position will vary. The OAG of course does have a somewhat limited horizon, because their primary area of focus has been the integration of standard application packages, SAP, Oracle, Peoplesoft etc. So in that context synthesis might be an appropriate technique, but it should also tell us that the scope of the endeavour, or at least the highest quality results are likely to be found in quite restricted domains.
Whilst we are also attracted to the Ford Motor Company example, this also reinforces the "relevance" of this model concept to the procurement area, where common business processes are likely to span vertical sectors. In addition it seems likely that other horizontal processes such as HR, CRM, some aspects of logistics would also have common concepts that could be subject to standard definitions.
However, we do wonder what use would you put this standard outside of processes that clearly cross sector boundaries. Understanding that at an abstract level two or more different vertical domains share a common concept is interesting, but as those domains are unlikely to share any common implementation or exchange information it is academic. In areas where there is genuine and obvious need for sharing such as CRM, these are already covered by initiatives in those horizontal domain. Similarly in areas where organizations traditionally work together such as supply chain management.
The Ford example, while presenting a compelling and interesting proposition that companies are not tightly compartmentalized in their own sectors, reinforces the complexity of getting the right people together to discuss precisely the semantics issues that are not just relevant to their sector, but the precise subset which are only relevant to each sector. And as a one time methodologist who guided the creation of many generalized data and process models, I will say that whilst tightly scoped areas such as those bounded by package to package constraints will probably work well, in other less well defined areas, this may just turn out to be one huge academic exercise that never delivers anything useful. As ever the issue is scoping.
Whilst we might be ever so slightly skeptical about the enthusiasm of the OAG announcement, we do think that they might have some good ideas here. Because the canonical models are implementation independent they can be implemented in various process definition protocols. Right now the OAG are collaborating on implementations for BizTalk, RosettaNet and ebXML, and we assume with Microsoft and IBM as members, that Web Service Orchestration will be merely a further implementation instance.
The real issue is that the size and scope of the problem of semantic standardization challenge is huge. OAG have some interesting ideas, and is hopefully constraining itself to manageable objectives. Solving this particular problem is not going to be achieved in one single initiative, rather it will be a progressive process which takes place over many years. The OAG is making a useful contribution to that process.
Archaeological evidence suggests that a Tower of Babel was probably built in the fertile Mesopotamian plain between the Tigris and Euphrates rivers something like 5000 years ago. Today our understanding is that the downfall of this Babylonian shared development project was that the architects over-reached themselves, with the consequence that the builders were scattered in confusion. We might proffer similar advice in this difficult area, that small steps following a sound underlying model, which we support, will make progress.
Feedback and comments are welcomed: email@example.com
Copyright CBDi Forum Limited 2002. The CBDi Forum is an analysis firm and think tank, providing insight on component and web service technologies, processes and practices for the software industry and its customers. To register for the weekly newswire click here.
For More Information:
- For insightful opinion and commentary, read our Guest Commentary columns.
- Tired of technospeak? The Web Services Advisor column provides a clear understanding of Web services.
- Looking for shortcuts and helpful developer tips? Visit our Tip Exchange for time-saving XML and .NET tips.
- Visit our huge Best Web Links for Web Services for hand-picked resources by our editors.
- Discuss this article, voice your opinion or talk with your peers in our Discussion Forums.
- Visit Ask the Experts for Web services, SOAP, WSDL, XML, .NET, Java and EAI answers.