| Author | 
		  Message
		 | 
		
		  | Mut1ey | 
		  
		    
			  
				 Posted: Mon Sep 14, 2009 2:58 pm    Post subject: Canonical Message Format | 
				     | 
			   
			 
		   | 
		
		
		   Acolyte
 
 Joined: 07 Oct 2005 Posts: 74 Location: England 
  | 
		  
		    
			  
				Assume all your messages are in XML format, some or all of which use namespaces.  How can you create a canonical format that could cater for a new message format coming along, something like FixML 5.0, for example. without having to break the model?
 
 
Puzzled. | 
			   
			 
		   | 
		
		
		  | Back to top | 
		  
		  	
		   | 
		
		
		    | 
		
		
		  | Vitor | 
		  
		    
			  
				 Posted: Mon Sep 14, 2009 3:31 pm    Post subject: Re: Canonical Message Format | 
				     | 
			   
			 
		   | 
		
		
		    Grand High Poobah
 
 Joined: 11 Nov 2005 Posts: 26093 Location: Texas, USA 
  | 
		  
		    
			  
				
   
	| Mut1ey wrote: | 
   
  
	How can you create a canonical format that could cater for a new message format coming along, something like FixML 5.0, for example. without having to break the model?
 
 | 
   
 
 
 
The same way you'd create a canonical format in any other environment.    
 
 
I don't see the issue here. I accept that you have a "proprietory" format (for want of a better term) and you're carrying this in a canonical format. This is the usual situation. What problems are you having? _________________ Honesty is the best policy.
 
Insanity is the best defence. | 
			   
			 
		   | 
		
		
		  | Back to top | 
		  
		  	
		   | 
		
		
		    | 
		
		
		  | Mut1ey | 
		  
		    
			  
				 Posted: Tue Sep 15, 2009 4:09 am    Post subject:  | 
				     | 
			   
			 
		   | 
		
		
		   Acolyte
 
 Joined: 07 Oct 2005 Posts: 74 Location: England 
  | 
		  
		    
			  
				One thing - Namespaces.
 
 
Maybe I don't understand enough about the range of a canonical  message format.  In my simple terms I am thinking that I would need to know up-front what namespaces I need to cater for BEFORE I decide on my canonical format, and assocaitated mappings.  A new format comes along, that has it's own namespace.  If I want to use this namespace in the "core" flows I need to change all my esql to add this namespace, or I convert it to the canonical format, but how do I avoid clasheses, as I have now lost the namespace. | 
			   
			 
		   | 
		
		
		  | Back to top | 
		  
		  	
		   | 
		
		
		    | 
		
		
		  | Vitor | 
		  
		    
			  
				 Posted: Tue Sep 15, 2009 7:48 am    Post subject:  | 
				     | 
			   
			 
		   | 
		
		
		    Grand High Poobah
 
 Joined: 11 Nov 2005 Posts: 26093 Location: Texas, USA 
  | 
		  
		    
			  
				Why use specific (and possibly external) namespaces in a canonical format? _________________ Honesty is the best policy.
 
Insanity is the best defence. | 
			   
			 
		   | 
		
		
		  | Back to top | 
		  
		  	
		   | 
		
		
		    | 
		
		
		  | Mut1ey | 
		  
		    
			  
				 Posted: Tue Sep 15, 2009 9:35 am    Post subject:  | 
				     | 
			   
			 
		   | 
		
		
		   Acolyte
 
 Joined: 07 Oct 2005 Posts: 74 Location: England 
  | 
		  
		    
			  
				
   
	| Vitor wrote: | 
   
  
	| Why use specific (and possibly external) namespaces in a canonical format? | 
   
 
 
 
errr.... so you can differentiate between element names - by pre-pending the namespace pseudonym to it.  I would have thought you would potentially use a namespace for your canonical format too. | 
			   
			 
		   | 
		
		
		  | Back to top | 
		  
		  	
		   | 
		
		
		    | 
		
		
		  | Vitor | 
		  
		    
			  
				 Posted: Tue Sep 15, 2009 9:38 am    Post subject:  | 
				     | 
			   
			 
		   | 
		
		
		    Grand High Poobah
 
 Joined: 11 Nov 2005 Posts: 26093 Location: Texas, USA 
  | 
		  
		    
			  
				We have different ideas of what makes up a canonical format. _________________ Honesty is the best policy.
 
Insanity is the best defence. | 
			   
			 
		   | 
		
		
		  | Back to top | 
		  
		  	
		   | 
		
		
		    | 
		
		
		  | mqjeff | 
		  
		    
			  
				 Posted: Tue Sep 15, 2009 10:05 am    Post subject:  | 
				     | 
			   
			 
		   | 
		
		
		   Grand Master
 
 Joined: 25 Jun 2008 Posts: 17447
  
  | 
		  
		    
			  
				If you are thinking of a "Canonical format" as an envelope, then you have all of the same issues you have with a SOAP envelope.  You have to know what is contained in the Body in order to process it.
 
 
Vitor is probably thinking of a "canonical format" as a well known message structure that contains business level well-known fields for all possible elements, and the act of transforming a message into the canonical format is the act of performing a business level mapping between the fields, and the same to convert back to a non-canonical format. | 
			   
			 
		   | 
		
		
		  | Back to top | 
		  
		  	
		   | 
		
		
		    | 
		
		
		  | Vitor | 
		  
		    
			  
				 Posted: Tue Sep 15, 2009 10:21 am    Post subject:  | 
				     | 
			   
			 
		   | 
		
		
		    Grand High Poobah
 
 Joined: 11 Nov 2005 Posts: 26093 Location: Texas, USA 
  | 
		  
		    
			  
				
   
	| mqjeff wrote: | 
   
  
	| Vitor is probably thinking of a "canonical format" as a well known message structure that contains business level well-known fields for all possible elements, and the act of transforming a message into the canonical format is the act of performing a business level mapping between the fields, and the same to convert back to a non-canonical format. | 
   
 
 
 
   
 
 
   
	| mqjeff wrote: | 
   
  
	| If you are thinking of a "Canonical format" as an envelope, then you have all of the same issues you have with a SOAP envelope.  You have to know what is contained in the Body in order to process it. | 
   
 
 
 
 
 
 
And if you're doing this you're better off using SOAP. _________________ Honesty is the best policy.
 
Insanity is the best defence. | 
			   
			 
		   | 
		
		
		  | Back to top | 
		  
		  	
		   | 
		
		
		    | 
		
		
		  | Mut1ey | 
		  
		    
			  
				 Posted: Tue Sep 15, 2009 1:45 pm    Post subject:  | 
				     | 
			   
			 
		   | 
		
		
		   Acolyte
 
 Joined: 07 Oct 2005 Posts: 74 Location: England 
  | 
		  
		    
			  
				
   
	| mqjeff wrote: | 
   
  
	If you are thinking of a "Canonical format" as an envelope, then you have all of the same issues you have with a SOAP envelope.  You have to know what is contained in the Body in order to process it.
 
 
Vitor is probably thinking of a "canonical format" as a well known message structure that contains business level well-known fields for all possible elements, and the act of transforming a message into the canonical format is the act of performing a business level mapping between the fields, and the same to convert back to a non-canonical format. | 
   
 
 
 
I am thinking of the latter - not a wrapper.  The point is the "well known" part.  How can one know all "possible elements" in light of possible future requirements?  Can one ever know that?  Does any business stand-still?  Is there actually any point in trying for a canonical message format?  Wrapper, yes, but canonical format, I am thinking, no. | 
			   
			 
		   | 
		
		
		  | Back to top | 
		  
		  	
		   | 
		
		
		    | 
		
		
		  | kimbert | 
		  
		    
			  
				 Posted: Tue Sep 15, 2009 1:53 pm    Post subject:  | 
				     | 
			   
			 
		   | 
		
		
		    Jedi Council
 
 Joined: 29 Jul 2003 Posts: 5543 Location: Southampton 
  | 
		  
		    
			  
				There are plenty of examples of canonical formats of this type, in various business areas.
 
   
	| Quote: | 
   
  
	| How can one know all "possible elements" in light of possible future requirements? | 
   
 
By doing a lot of rigorous analysis, and coming up with a format which satisfies all current requirements, and is flexible enough to cope with likely future requirements. | 
			   
			 
		   | 
		
		
		  | Back to top | 
		  
		  	
		   | 
		
		
		    | 
		
		
		  | Mut1ey | 
		  
		    
			  
				 Posted: Tue Sep 15, 2009 3:20 pm    Post subject:  | 
				     | 
			   
			 
		   | 
		
		
		   Acolyte
 
 Joined: 07 Oct 2005 Posts: 74 Location: England 
  | 
		  
		    
			  
				
   
	| kimbert wrote: | 
   
  
	| There are plenty of examples of canonical formats of this type, in various business areas. | 
   
 
 
 
Would FIXML be one of them?  SWIFT?  What examples are out there for say, Finance and Distribution areas?
 
 
Also, I assume that the namespace contstrained formats from external systems are xformed into and out of the canonical format? | 
			   
			 
		   | 
		
		
		  | Back to top | 
		  
		  	
		   | 
		
		
		    | 
		
		
		  | Vitor | 
		  
		    
			  
				 Posted: Tue Sep 15, 2009 5:19 pm    Post subject:  | 
				     | 
			   
			 
		   | 
		
		
		    Grand High Poobah
 
 Joined: 11 Nov 2005 Posts: 26093 Location: Texas, USA 
  | 
		  
		    
			  
				
   
	| Mut1ey wrote: | 
   
  
	| Would FIXML be one of them?  SWIFT?  What examples are out there for say, Finance and Distribution areas? | 
   
 
 
 
IMHO neither of these are canonical but describe specific message types used by a given market segment and agreed as a standard. It does depend a lot on how "canonical" the message model is; my experience is that a canonical format as being described here extends over a given business and no further. In one specific example I dealt with, the business transformed SWIFT messages into and out of their canonical format.
 
 
   
	| Mut1ey wrote: | 
   
  
	| Also, I assume that the namespace contstrained formats from external systems are xformed into and out of the canonical format? | 
   
 
 
 
Again in my experience yes. _________________ Honesty is the best policy.
 
Insanity is the best defence. | 
			   
			 
		   | 
		
		
		  | Back to top | 
		  
		  	
		   | 
		
		
		    | 
		
		
		  | mqjeff | 
		  
		    
			  
				 Posted: Wed Sep 16, 2009 5:13 am    Post subject:  | 
				     | 
			   
			 
		   | 
		
		
		   Grand Master
 
 Joined: 25 Jun 2008 Posts: 17447
  
  | 
		  
		    
			  
				| The canonical format becomes just another resource that is under change control and governance processes. | 
			   
			 
		   | 
		
		
		  | Back to top | 
		  
		  	
		   | 
		
		
		    | 
		
		
		  | Mut1ey | 
		  
		    
			  
				 Posted: Wed Sep 16, 2009 9:01 am    Post subject:  | 
				     | 
			   
			 
		   | 
		
		
		   Acolyte
 
 Joined: 07 Oct 2005 Posts: 74 Location: England 
  | 
		  
		    
			  
				
   
	| mqjeff wrote: | 
   
  
	| The canonical format becomes just another resource that is under change control and governance processes. | 
   
 
 
 
It's scope is wider than just the message though, is it not?  Any change to your canonised format will require changes to code.  Or else, why bother to change the format. | 
			   
			 
		   | 
		
		
		  | Back to top | 
		  
		  	
		   | 
		
		
		    | 
		
		
		  | Vitor | 
		  
		    
			  
				 Posted: Wed Sep 16, 2009 10:11 am    Post subject:  | 
				     | 
			   
			 
		   | 
		
		
		    Grand High Poobah
 
 Joined: 11 Nov 2005 Posts: 26093 Location: Texas, USA 
  | 
		  
		    
			  
				
   
	| Mut1ey wrote: | 
   
  
	
   
	| mqjeff wrote: | 
   
  
	| The canonical format becomes just another resource that is under change control and governance processes. | 
   
 
 
 
It's scope is wider than just the message though, is it not?  Any change to your canonised format will require changes to code.  Or else, why bother to change the format. | 
   
 
 
 
But the reason you have a canonical format is to reduce those required changes. Or you might just as well use the original message formats. _________________ Honesty is the best policy.
 
Insanity is the best defence. | 
			   
			 
		   | 
		
		
		  | Back to top | 
		  
		  	
		   | 
		
		
		    | 
		
		
		  | 
		    
		   |