BizTalk: Thoughts on Maps, Schemas, Dictionaries, Transformations

  1. Party resolution: determines identity of message sender. If not successful, then anonymous identity is used.
  2. Mapping: After transport and data format normalization, msg may then be passed into BizTalk Schemamapping component. Biztalk mapping infrastructure is built on XSLT. After mapping is complete, msg is always persisted in MsgBox, to ensure transactional reliability, also ensuring scalable architecture.
    1. Receiveport vs Orch: Exceptions in receive port are hard to react to and even hard to provide a recovery, whereas in orchestration, we have the luxury of exception handling, reprocess and error notification.
  3. Dynamic Mapping: means specifying which map to use in orchestration, on basis of some input. In expression, one can easily load map from an assembly, and transform the input message. One should always check, if the returned message was blank, as map would return blank one, if there was something wrong with the input message.
    tMapType = System.GetType(“DynMaps.Map_A”,”strong_name”);
    construct Out_Xml
    transform(Out_Xml) = tMapType(In_Xml);
  4. BAM: enables real-time collection of process and data events.
  5. Xml Schemas defines; elements, attributes, datatypes, order of tags, mandatory fields, multiple occurrence.
  6. Xsd.exe : can provide classes from schemas that one can code against, rather than having to directly manipulate xml. Most developers find working with class more straightword, and thus miss this neat way of serializing and deserializing xml documents.
  7. Derivation: in xsd is derivation by restriction coz values allowed by derived type are more restrictive then the values allowed by base type.
  8. XPath query: XPath queries are very simple to make;
    <Book name=”Harry Potter” price=”10GBP”/>
    <Book name=”Harry Potter” price=”5USD”/>
    now if you want one of them following is xpath query
    .//Book[@name=”Harry Potter” and @price=”10GBP”]
  9. BizTalk editor: has three principal views: the schema tree, xsd source view, and property view. It let’s you specify ‘top-level’ node in schemas.
  10. <schema> node: is a metanode and is a placeholder for document as a whole.


Muhammad Omer

Muhammad Omer is the founding partner at Allied Consultants. Areas of interest for him are entreprenuership in organizations, IT Management, Integration and Business Intelligence.