anchor.diff:  [width="100%",cols="10%,10%,80%",]
   |=======================================================================
   a|image::eip/EventMessageIcon.gif[image]
  -|Event Message |How can messaging be used to
  +|xref:event-message.adoc[Event Message] |How can messaging be used to
   transmit events from one application to another?
   
   a|image::eip/RequestReplyIcon.gif[image]
  -|Request Reply |When an application sends a
  +|xref:requestReply-eip.adoc[Request Reply] |When an application sends a
   message, how can it get a response from the receiver?
   
   a|image::eip/CorrelationIdentifierIcon.gif[image]
  -|Correlation Identifier |How does a
  +|xref:correlation-identifier.adoc[Correlation Identifier] |How does a
   requestor that has received a reply know which request this is the reply
   for?
   
   a|image::eip/ReturnAddressIcon.gif[image]
  -|Return Address |How does a replier know where
  +|xref:return-address.adoc[Return Address] |How does a replier know where
   to send the reply?
   |=======================================================================
   
  
positive.code: the two independent of each other?
  
  a|image::eip/EventDrivenConsumerIcon.gif[image]
  |Event Driven Consumer |How can an
  application automatically consume messages as they become available?
  
  a|image::eip/PollingConsumerIcon.gif[image]
  |Polling Consumer |How can an application
  consume a message when the application is ready?
  
  a|image::eip/CompetingConsumersIcon.gif[image]
  
negative.code: [width="100%",cols="10%,10%,80%",]
  |=======================================================================
  a|image::eip/ChannelIcon.gif[image]
  |xref:message-channel.adoc[Message Channel] |How does one application
  communicate with another using messaging?
  
  a|image::eip/MessageIcon.gif[image]
  |xref:message.adoc[Message] |How can two applications connected by a
  message channel exchange a piece of information?
  
  a|image::eip/PipesAndFiltersIcon.gif[image]
  |xref:pipeline-eip.adoc[Pipes and Filters |How can we perform
  complex processing on a message while maintaining independence and
  flexibility?
  
  a|image::eip/ContentBasedRouterIcon.gif[image]
  |xref:message-router.adoc[Message Router] |How can you decouple
  individual processing steps so that messages can be passed to different
  filters depending on a set of conditions?
  
  a|image::eip/MessageTranslatorIcon.gif[image]
  |xref:message-translator.adoc[Message Translator] |How can systems using
  different data formats communicate with each other using messaging?
  
  a|image::eip/MessageEndpointIcon.gif[image]
  |xref:message-endpoint.adoc[Message Endpoint] |How does an application
  connect to a messaging channel to send and receive messages?
  |=======================================================================
  
  