In previous sections, we discussed the problems faced by
businesses that wish to integrate their applications. We also
discussed the advantages and disadvantages of established schemes for
implementing application integration. We saw that integration was
hindered by a multitude of
different proprietary message formats that were difficult to
translate into other formats. Messages are
the chunks of structured data that flow between applications. They
are the heart of EAI because they
are the glue that connects applications. Although the EDI message
standards have been implemented, they are very complex, and expensive
for businesses to implement. Furthermore, business systems
may use different communication protocols to send messages, bringing
compatibility problems. All-in-all, such problems have meant that,
until very recently, only big business has taken a real interest in
application integration.
What is really needed is a framework for developing standard
industry message schemas. Servers like BizTalk server could then use
these schemas as the basis for configuring their messaging system.
Using this framework should mean that we can build a message format
that complies to a relatively simple set of standard rules, but is
also flexible enough to allow for collaboration during schema
development. We also need to be able to implement this framework
relatively inexpensively, which will allow small businesses to
participate in application integration.
This was the motivation for the BizTalk Framework
Initiative. The Framework was initiated by Microsoft, but it is
explicitly designed to be open to everyone. It does not presuppose
any specific operating system or software. It is a schema repository,
and a set of messaging specifications, that can be implemented by
some middleware server. Microsoft BizTalk Server is one such
implementation, although it can also deal with messages outside the
Framework. The schema repository has attracted dozens of partners and
well over one hundred schemas. The initiative has three main
thrusts:
q
BizTalk Framework: a set of guidelines that enables reliable
message exchange between organizations and applications
q
BizTalk.org: a community web site that provides information
about message exchange and its associated technologies, as well as a
repository for message schemas
q
BizTalk Server: software that processes
BizTalk-compliant message documents
For the remainder of this chapter, we will take an introductory
tour of the BizTalk Initiative, focusing especially on the Microsoft
BizTalk Server 2000 software. But let's begin our tour with a look at
the BizTalk Framework.
BizTalk Framework
The BizTalk Framework comprises rules for creating message schemas
for document exchange. It is based upon two open standards:
q
Extensible Markup Language (XML)
q
Simple Object Access Protocol (SOAP)
Let's have a closer look at these standards, because it will help
us to understand the structure of the BizTalk Framework.
XML
Although the "M" in "XML" is short for "Markup", XML is not just a
markup language as you may think. Confused? Let me explain.
A markup language is one that allows us to mark up data; in
other words the language allows us to add meta data that describes
the data. An example is HTML, the universal language for the display
of information, where we place data between simple tags, which label
the data in some way.
XML is different; it is not really a "language" at all, but a
standard syntax that allows us to create markup languages. It enables
you to create a clear, human-legible, custom markup language that is
well suited to your needs. Therefore, an XML-based framework for
messages is ideal, since it is flexible yet descriptive and
clear.
SOAP
We have already mentioned the problems associated with exchanging
messages between systems with different protocols. A message may
invoke a method on an object on one system or platform, but it will
probably have trouble doing so on a system that uses a different
communication protocol.
To work around these platform-specific data-accessing problems,
the Simple Object Access Protocol was proposed. SOAP is an XML-based
syntax that defines an electronic envelope into which you put
data. It enables us to produce applications that can remotely invoke
methods. A SOAP package consists of a SOAP client and server, which
are used in the following way:
1. The SOAP
client creates and submits a SOAP request document (over HTTP) to a
SOAP server at another site.
2. The SOAP
server grabs the message, parses the SOAP document, and invokes a
method on a remote object on its domain.
3. The
remote object returns information to the server, which places it in a
SOAP document and sends it on to the SOAP client.
Therefore a SOAP server acts as an interpreter, and the SOAP
package itself provides an interface between two incompatible
protocols.
BizTalk Messages
So, where does the BizTalk Framework fit in? Well, a BizTalk
document is an extension of a SOAP document, incorporating extra
BizTalk-specific XML tags (BizTags). A server that implements BizTalk
Framework is expected to recognize and act on the BizTags in the
manner prescribed by the Framework. The BizTalk Framework is also
largely based upon the SOAP standard, and so BizTalk messages have
the advantages we have just discussed of both XML and SOAP:
extensibility, clarity, and platform-independence.
Of course, developers at many companies will have to independently
adopt the framework's conventions if it is to be generally useful as
a messaging protocol for ad hoc and open electronic commerce. The
message schemas themselves could be used outside of the BizTalk
Framework, but the processing implied by the BizTags requires
implementation of the messaging laid out in the Framework. Even
assuming developers do embrace the framework as a useful approach,
the success of B2B efforts using BizTalk is not assured. The first
three types of business integration - business process integration,
trading partner integration, and automated procurement - can occur
between small numbers of participants. This has been the history of
EDI to date. A few participants willing to commit to a long process
can manually establish agreements on technology and data interchange
formats. The result is a large potential benefit to the participants,
but no guarantee that the benefits will spread to the business
community at large.
Business to business aggregation is required to promote B2B
electronic commerce for the multitude of small and medium-sized
businesses. Such businesses cannot afford proprietary networks and
lengthy development efforts. They seek widely adopted frameworks
running on commodity systems that make use of open protocols. This is
what the BizTalk Initiative will provide.
BizTalk.org
To promote the use of BizTalk Framework documents and XML-based
messaging in general, the BizTalk.org web site (www.biztalk.org) was
created. This site, which is hosted and managed by Microsoft,
provides information on the BizTalk Framework, BizTalk community news
and forums, and tools to help with application integration.
The site also contains a repository of XML schemas representing
message formats designed by companies embarking on implementing the
BizTalk Framework. There are, for example, schemas for ordering food
services or building maintenance services. The repository provides
open access for anyone who wishes to publish a new message schema, or
find useful schemas already published. It also serves to educate
developers by providing examples of well-designed interchange
formats. A developer can be assured that any schema published in the
repository has been tested and is technically valid.
Long-term, however, the repository could be the cornerstone in a
B2B aggregator portal; potential partners could obtain the schemas of
vendors and initiate integration efforts. As BizTalk Server comes
into wider use within the corporate world, BizTalk Framework can
leverage the community formed around the educational mission, to
create a B2B aggregator portal compatible with BizTalk Server.
Although the framework does not require the use of BizTalk Server, so
any third party can develop to the its conventions, developers who
have learned to use BizTalk Server effectively will have a distinct
advantage over newcomers to the Framework.
BizTalk Schema Repository
If application integration between trading partners relied on
formal coordination, business-to-business integration would be slow
to take off. To be successful, a prospective partner must first
locate a suitable partner and then find out what sort of schemas they
use. Next, the partner must either adopt those schemas or specify a
mapping between their own schemas and the new partners. As we shall
shortly see, BizTalk Server provides tools for the final step. A
central repository of e-commerce schemas is needed to address the
first two steps.
The BizTalk.org web site hosts just such a library. Prospective
trading partners can go to the site and search by schema keywords or
industry categories. The latter are defined in terms of the North
American Industry Classification System (NAICS), a system of
classification codes that progressively refine a business in terms of
the industry groups or categories to which it belongs. By using a
combination of the two, a prospective customer of the published
partner can identify a small number of schemas and inspect them to
see if they are relevant to its needs.
Upon finding relevant schemas, a trading partner can download and
inspect detailed information. Each schema listed on the site has
three documents: the schema itself, HTML-based programming
documentation, and a sample message that complies with the schema.
The sample is especially important as it communicates a sample of
what the schema developer meant when they devised the schema. This
helps a prospective trading partner decide if the schema is relevant,
and if so, helps its programmers understand the schema.
Developers can rapidly perform integration with little
intervention from a prospective partner by writing software that
speaks to the partner's published schemas. If the developers are
building an electronic commerce capability from scratch, they can
adopt the vendor's published message formats as their own, writing
internal software to the published schemas. If, however, they have an
existing capability, they will need to design mappings between their
own formats and those of the prospective partner. This is a task
supported by the tools in BizTalk Server. Intervention by the
prospective trading partner is required only when the two companies
negotiate a workflow agreement.
The repository helps in another way. Schemas may be expected to
evolve over time. Users of schemas should not have to rely on the
schema originator for update notifications; after all, the whole
point of a central repository is to get away from one-to-one
coordination. When a trading partner finds a relevant schema, it can
register its interest in the schema with BizTalk.org. When a new
version of the schema is uploaded to the repository, the partner
receives an e-mail notification. In addition, schema interest
registrations are used to provide feedback to the original designer
and to rank schema searches in order of their popularity. This
ranking will reflect the rate of adoption of a particular schema,
helping the trading community to coalesce around emerging
standards.
Other Message Schema Repositories
BizTalk.org is not the only e-commerce message schema repository.
A number of organizations are joining the repository effort. Although
most focus on XML as the basis for exchanging business information,
some use other techniques as well. It is far too early to predict how
the market for repositories will evolve: it may organize itself
around the portals of vertical market communities, or it may coalesce
around the software used to implement e-commerce. There may be a few
dominant repositories, or so many that every new trading relationship
involves the exploration of a new repository. It is worth taking note
of the pioneer repository efforts so that we can see where BizTalk's
competition lies, and how other organizations view
business-to-business data interchange.
OASIS
The Organization for the Advancement of Structured Information
Standards (OASIS) is a non-profit organization that hosts
www.xml.org. This site seeks to become a reference repository for
industrial and commercial vocabularies expressed in XML. As of this
writing (December 2000), OASIS is beginning to host XML message
schemas and DTDs for e-commerce. A committee is in the process of
defining the process by which a searchable repository will
operate.
OASIS is also participating in an international effort, the
Electronic Business XML Initiative, along with the United Nations
Body for Trade Facilitation and Electronic Business (UN/CEFACT). The
initiative seeks to develop a consistent framework for developing XML
vocabularies for e-commerce.
The repository may be found at www.xml.org, while OASIS itself
resides at www.oasis-open.org
RosettaNet
This is another repository effort that takes a layered approach to
developing e-commerce vocabularies. RosettaNet is an industry
consortium of diverse businesses seeking to develop a common
e-commerce framework. RosettaNet sees three layers supporting
commerce:
q
dictionaries
q
frameworks
q
Partner Interface Processes(PIP)
A dictionary, in their view, is a collection of words or
properties that can be used to describe business transactions.
RosettaNet is engaged in writing two data dictionaries. The first is
intended to describe product properties. The other will provide
properties describing catalogs, partners, and transactions. Next,
these words and properties will be combined through interchange
protocols to form a grammar.
RosettaNet's framework will consist of XML DTDs that describe
e-commerce protocols.
The real focus of RosettaNet, however, is their PIP concept. They
see a PIP as a dialog between two business partners. A PIP consists
of some collection of XML interchange documents and a business model
that describes how trading partners interact. A PIP also provides a
mechanism for validating individual documents.RosettaNet imposes more
structure on would-be partners than BizTalk does. Where BizTalk
provides a loose framework for message vocabularies, and some
placeholders for information of interest to consuming applications,
PIPs impose a protocol for the exchange of messages. This is useful
if you desire a complete and tested protocol for your integration.
Unfortunately, it also limits the reach of the project by excluding
any integration projects for which a PIP has not been specified. It
is consequently more focused on particular markets and business flows
than BizTalk.
RosettaNet is found at www.rosettanet.org
CommerceNet
Like RosettaNet, CommerceNet is a consortium. It casts a wide net,
involving over 500 businesses and organizations and embracing a
variety of e-commerce protocols. CommerceNet was founded in 1994, so
it is somewhat more developed than the other efforts. Its principal
focus is on bringing together partners to engage in particular
opportunities.
CommerceNet's most significant effort from the standpoint of this
book is the eCo Framework. This framework seeks to provide a common
structure for all e-commerce specifications, including EDI, Open
Buying on the Internet (OBI), and a variety of XML-based vertical
market vocabularies.
CommerceNet's site is found at www.commerce.net
BizTalk Servers
In order to be able to use the BizTalk Framework to integrate
applications, we need software that can process the message documents
and do something useful with them. The BizTalk Framework can be
implemented by any software, as long as it conforms to the guidelines
laid out in the Framework. In fact, several companies are working on
servers that will process BizTalk documents. One of the most-heralded
products is Microsoft's BizTalk Server 2000, which we will now
investigate.