Microservices Expo Authors: Zakia Bouachraoui, Pat Romanski, Elizabeth White, Liz McMillan, Yeshim Deniz

Related Topics: Microservices Expo

Microservices Expo: Article

Electronic Business XML (ebXML): Making Web Services Work for Business

Electronic Business XML (ebXML): Making Web Services Work for Business

Current excitement surrounding the Web Services computing model is predicated on the understanding that this model will deliver a mechanism solving key problems faced in the computing and business worlds today. These include:

  • Open interoperability: The requirement that heterogeneous systems communicate without predefined tight infrastructure coupling.
  • Dynamic computing: The requirement that once a technology is deployed new opportunities that arise can be seamlessly engaged without reengineering. As Web Services can be produced and consumed by any programming language on any platform, this enables loose coupling across heterogeneous systems. Dynamic computing is achieved through support for dynamic publication and discovery of Web Services being offered over the Internet. The Web Services architecture comprises a number of key building blocks that combine to enable the Web Services computing model. Fundamentally, there are three distinct building block technologies:
  • Service description: For a Web service to be useful, at a minimum it must be published in a manner that allows consumers of the service to understand its function and the type of inputs and outputs the service expects, and determine the transport protocols that can be used to "talk" to the service and discern where on the Internet the service can be engaged.
  • Service Publication and Discovery: For a Web service to be useful it must first publish its availability in a manner that permits discovery by interested parties.
  • Service usage: Once a service description has been obtained via the discovery mechanism it must be possible to use that service through standard communication mechanisms. Based on these core building blocks Web services are being made available today. The types of service being offered vary greatly: from simple Weather Report services to Microsoft's Passport user authentication service. However, these types of Web services exhibit simplistic interaction semantics, if you will, an "ask and you shall receive" style of behavior. Using a Web Services infrastructure to enable elect-ronic business places more stringent demands on Web service interaction.

    In the remainder of this article I will explain how Electronic Business XML, or ebXML, takes the Web Services computing model and defines a standard for applying these technologies to meet real world business demands. To provide a clear frame of reference for you, I will consider more familiar Web Services technologies in parallel with our ebXML discussion while considering each of the core building blocks of the Web Services architecture in turn.

    Service Description
    This component of the Web Services architecture requires a mechanism that allows a meaningful description of a service to be defined. Web Services Description Language (WSDL) is a common XML format for describing network services as a set of endpoints operating on messages containing either document-oriented or procedure-oriented information. A service name combined with knowledge of the service provider may well give a WSDL-defined service some business context, but no formal business semantics associated with these types of services can be specified.

    The ebXML architecture defines the Business Process Specification Schema (BP Schema). This XML Schema supports the specification of business documents and transactions and the required choreography of these transactions that comprise a complete business collaboration.

    As service interactions are modeled as collaborations, either binary (two-party) or multi-party, it follows that a participating party must-agree to play one or more roles in a collaboration. When publishing a service a party selects the roles they are willing to engage in. In essence, the BP Schema lends sufficient functionality for businesspeople to model interactions with a service applying real business context. This context is formalized through the BP Schema description and all interested parties can explicitly reference this business context at service publication.

    Service Publication And Discovery
    As stated earlier, for a Web service to be useful it must first publish its availability in a manner that permits discovery by interested parties. The notion of a registry is used to aid in this goal. A company submits a service description to an Internet-accessible registry, which acts as both a store for service descriptions and a means for service discovery through browsing and intelligent search utilities. Universal Description, Discovery and Integration (UDDI) is an example of a registry mechanism that can be used for Web service publication and discovery. UDDI can therefore be used, for example, to publish WSDL-defined services, making them available for discovery and usage.

    To publish a "business-ready" service the service description must consider more business-critical parameters before publication. These can include the quality and level of service that can impact the execution of the service, the communication between service provider and consumer, and the ability, if any, to handle failure conditions or recovery procedures, in addition to the types and granularity of security expected among others.

    The ebXML architecture defines a Collaboration Protocol Profile (CPP). A CPP is an XML document that allows a party to express both the business collaborations in which they can engage and the quality and levels of service they can support in delivering that service. A CPP therefore defines the comprehensive set of capabilities of a single party, from both a technological and a business context. A formal CPP description can be published and then universally understood by interested parties.

    Publishing a CPP is achieved by posting the document to an ebXML global registry. An ebXML registry provides a set of services that enable the sharing of information between trading partners. An ebXML registry supports more than just service description publication and discovery. Catalogs of reusable business collaboration definitions and reusable busi-ness documents are also made available through the registry. A CPP can simply refer-ence a business collaboration or document defined within a registry if so desired.

    I should point out here that UDDI and ebXML registry services can complement one another. In real world deployment environ-ments it is probable that UDDI will be used to discover services published in UDDI registries that link to ebXML registries for ebXML-enabled services.

    Service Usage
    A simple Web service can be engaged as soon as a description for that service has been found. In a business environment where two or more parties plan to engage in electronic business, the terms and conditions of engagement need to be formally agreed upon and then adhered to.

    As noted in the preceding section, a CPP defines the capabilities of a single party. Agreement must therefore be negotiated between parties. The ebXML architecture defines a Collaboration Protocol Agreement (CPA). A CPA is an XML document that represents the intersection of two CPPs and is mutually agreed upon by both parties who wish to conduct electronic business.

    Negotiation patterns exist that can be executed over the ebXML transport that enable CPA negotiation between business parties. A CPA is negotiated after the service discovery phase. A CPA then governs the interaction behaviors of a party by con-straining the runtime environment to a set of parameters agreed to by all parties who will execute such an agreement.

    Once a CPA has been agreed upon, electronic business interaction may com-mence. While WSDL-described services per-mit transport bindings to protocols such as SOAP and HTTP, it is the ebXML messaging service that provides a standard way to exchange business messages among ebXML trading partners. The ebXML messaging service provides a secure, consistent, and reliable mechanism to exchange messages between users of the ebXML infrastructure. Maximizing the benefits of SOAP 1.1 messaging supporting MIME envelopes that permit direct attachments, the ebXML transport extends and embraces the value of what has come before. It is its ability to transport payload of any type, with sequencing of payloads in complex communications, supporting comprehensive security mecha-nisms and non-repudiation all while enforcing the "rules of engagement" as defined by the active CPA that make the usage of ebXML transport a further key component to "business-ready" Web Services.

    I promised to explain how ebXML takes the Web Services computing model and defines a standard for applying these technologies to meet real world business demands. This article should have identified for you the business-critical demands and the technologies required to meet those demands at each level in the Web Services architecture. While there is real value in the simple Web Services of today, if Web Services are to deliver on current expectations in the business domain, I firmly believe it will be comprehensive initiatives such as Electronic Business XML that will make that happen.

  • More Stories By David Russell

    David Russell is CTO and co-founder of Bind Systems (www.bindsys.com), asoftware vendor developing Web Services technologies to enable collaborative electronic business. Bind Systems develops the BindPartner Business Collaboration Platform. Mr. Russell is lives and works in Dublin, Ireland.
    [email protected]

    Comments (0)

    Share your thoughts on this story.

    Add your comment
    You must be signed in to add a comment. Sign-in | Register

    In accordance with our Comment Policy, we encourage comments that are on topic, relevant and to-the-point. We will remove comments that include profanity, personal attacks, racial slurs, threats of violence, or other inappropriate material that violates our Terms and Conditions, and will block users who make repeated violations. We ask all readers to expect diversity of opinion and to treat one another with dignity and respect.

    Microservices Articles
    When building large, cloud-based applications that operate at a high scale, it’s important to maintain a high availability and resilience to failures. In order to do that, you must be tolerant of failures, even in light of failures in other areas of your application. “Fly two mistakes high” is an old adage in the radio control airplane hobby. It means, fly high enough so that if you make a mistake, you can continue flying with room to still make mistakes. In his session at 18th Cloud Expo, Lee A...
    Lori MacVittie is a subject matter expert on emerging technology responsible for outbound evangelism across F5's entire product suite. MacVittie has extensive development and technical architecture experience in both high-tech and enterprise organizations, in addition to network and systems administration expertise. Prior to joining F5, MacVittie was an award-winning technology editor at Network Computing Magazine where she evaluated and tested application-focused technologies including app secu...
    In his general session at 19th Cloud Expo, Manish Dixit, VP of Product and Engineering at Dice, discussed how Dice leverages data insights and tools to help both tech professionals and recruiters better understand how skills relate to each other and which skills are in high demand using interactive visualizations and salary indicator tools to maximize earning potential. Manish Dixit is VP of Product and Engineering at Dice. As the leader of the Product, Engineering and Data Sciences team at D...
    Containers and Kubernetes allow for code portability across on-premise VMs, bare metal, or multiple cloud provider environments. Yet, despite this portability promise, developers may include configuration and application definitions that constrain or even eliminate application portability. In this session we'll describe best practices for "configuration as code" in a Kubernetes environment. We will demonstrate how a properly constructed containerized app can be deployed to both Amazon and Azure ...
    Modern software design has fundamentally changed how we manage applications, causing many to turn to containers as the new virtual machine for resource management. As container adoption grows beyond stateless applications to stateful workloads, the need for persistent storage is foundational - something customers routinely cite as a top pain point. In his session at @DevOpsSummit at 21st Cloud Expo, Bill Borsari, Head of Systems Engineering at Datera, explored how organizations can reap the bene...
    Using new techniques of information modeling, indexing, and processing, new cloud-based systems can support cloud-based workloads previously not possible for high-throughput insurance, banking, and case-based applications. In his session at 18th Cloud Expo, John Newton, CTO, Founder and Chairman of Alfresco, described how to scale cloud-based content management repositories to store, manage, and retrieve billions of documents and related information with fast and linear scalability. He addresse...
    The now mainstream platform changes stemming from the first Internet boom brought many changes but didn’t really change the basic relationship between servers and the applications running on them. In fact, that was sort of the point. In his session at 18th Cloud Expo, Gordon Haff, senior cloud strategy marketing and evangelism manager at Red Hat, will discuss how today’s workloads require a new model and a new platform for development and execution. The platform must handle a wide range of rec...
    SYS-CON Events announced today that DatacenterDynamics has been named “Media Sponsor” of SYS-CON's 18th International Cloud Expo, which will take place on June 7–9, 2016, at the Javits Center in New York City, NY. DatacenterDynamics is a brand of DCD Group, a global B2B media and publishing company that develops products to help senior professionals in the world's most ICT dependent organizations make risk-based infrastructure and capacity decisions.
    Discussions of cloud computing have evolved in recent years from a focus on specific types of cloud, to a world of hybrid cloud, and to a world dominated by the APIs that make today's multi-cloud environments and hybrid clouds possible. In this Power Panel at 17th Cloud Expo, moderated by Conference Chair Roger Strukhoff, panelists addressed the importance of customers being able to use the specific technologies they need, through environments and ecosystems that expose their APIs to make true ...
    In his keynote at 19th Cloud Expo, Sheng Liang, co-founder and CEO of Rancher Labs, discussed the technological advances and new business opportunities created by the rapid adoption of containers. With the success of Amazon Web Services (AWS) and various open source technologies used to build private clouds, cloud computing has become an essential component of IT strategy. However, users continue to face challenges in implementing clouds, as older technologies evolve and newer ones like Docker c...