Ordinary Doc VS Canonical Doc

Can someone shed some light on the buzz word Canonical

i see every where Canonical Doc and Publish(able) Canonical Doc …

  1. How different is this from ordinary XML doc. what special processing is required

  2. In the pub/sub world what kind of special processing is required for Canonical doc VS ordinary XML doc …




“Canonical Document” concept is like a proprietary document that is generally used for internal processing purpose.So that backend systems know this format and another usage is if you publish the cannonical document then many underlying systems can reusable this doc and subscribe (pb/sub)for further processings.

This plays a major role in the enterprise wide integrations.


1 Like

I’m over simplifying this a bit but here it goes. The Canonical doc is really not different then any other publishable or non-publishable document within webMethods. You construct them the same way. The contents and what is used for is where the real differences are. The Canonical doc can be thought of as the common document with an agreed to format that all producing or consuming integrations agree to. An example would be an entity such as customer. A common customer document would be system independent and contain all of the agreed to structure and hierarchy needed.

In practice you might have a producing system that sends its raw data into the integration layer. You might then have a service that is subscribing to the raw data which then transforms the raw data into the common format. The service might then publish the common document into the integration layer. At that time any service subscribing to that particular common document would pick it up and consume it… The consuming service would transform the data into the raw data that its service understands.

By using this type of architecture, you have isolated the producing app from the consuming app. You can go a bit crazy with the Canonical doc but just getting it even in a simple form can help.

1 Like

Thx a lot …so the old divide and conquer works here too …

as i understand canonical doc will be a generic doc or a super set of all docs
in pub sub world as mark pointed out a more friendly doc to subscribed clients

Where can i find information about document Exchange between IS clients without using Broker
What is the advantage of using broker … i see broker as our TN who can route and log is there anything more

Quick Question - from wm 6.x onwards broker is now part of IS correct …but i don’t see a WmBroker package …do we still require a seperate lic from webmethods …we just upgraded our 4.6 to 6.1 …we never had ES 5.x

thx a lot


The IS6.0 or above versions standard installation you will see the broker related packages like (WmBrokerAdmin,WmLogUtil…).These are the main stuff which deals with broker clients,territories,clientgroups…


1 Like

In WM 6.x version, Broker is still there. But it’s not necessary to use the Broker. You can bypass the Broker and as you can see the JDBC Adapter is now running inside IS.