Tuesday 17 May 2011

Biztalk Faq's

Schemas

  1. What is the difference between a Document Schema and a Property Schema?
A document schema is like any regular schema, whereas a Property schema consists of only child elements under a root node.
  1. Can an Envelope schema consist of more than one schema type?
Yes. Technically it is possible.

Messaging

  1. Can a flat file message be processing without a pipeline?
A Pipeline's job is to convert any external format into XML, be it a flat file or EDI or anything else.
  1. Can multiple messages be processed or batched without an envelope schema?
It is possible to process multiple messages, without an envelope.
  1. What is property promotion, why is it required?
When a property is Promoted, it is exposed to the orchestration/send port filters etc.
  1. In which scenarios would use a "promoted property" vs "distinguished fields"?
The rule here is, if you dont want the schema element to appear in send port filters/debugging information then make it a distinguished field.
  1. In Biztalk, what does a message type consist of?
A message type consists of the TargetNamespace#RootElement name.
  1. What are un-typed messages, how does one create them?
A message created in BizTalk Orchestration is bound to a schema, this is a typed message. In un-typed messages, the message is bound to System.Xml.XmlDocument instead of a schema.
  1. What is the difference between static, dynamic and direct binding?
Static binding specifies particular port address. It occurs at compile time, compiler slower.
Dynamic binding gives address to port at runtime. It occurs at runtime, compiler faster.
Direct binding sends message to Msgbox.
  1. How does one enable subscriptions in BizTalk?
A filter on the Send Port is the first step to enable subscriptions in BizTalk.
      9.   How many types of MessageTypes?
            MessageTypes are 4 types, they are  
           1. Schema Type
           2. .Net classes : Message is of simple/primitive type then messagetype should be .net class.
           3. WebMessage Tye: message are from webservices to biztalk or biztalk to webservice the                    messagetype should be webmessage types.
           4. MultypartMessage: Message has got more message in it ie multipart message contains multiparts so each part has to be set to schema or .net class. 

Orchestrations

  1. How do you prevent occuring of zombies in a Parallel Convoy?
Refer to the article known as "
Convoy Deep Drive
" on MSDN
  1. What is the difference between a delay shape vs a listen shape?
A 'Delay' is very much similar to a sleep on the current thread. A 'Listen' shape is used to wait for an incoming resource, with a timeout period.
  1. When you use Call Orchestration shape vs Start Orchestration shape?
A Call Orchestration returns the control back to the caller. A Start Ochestration shape starts the orchestration in a non-deterministic way.
  1. What is the difference between a "Message Assignment" shape and an "Expression" shape?
A "Message Assignment" shape is used to create a new message and assign values to it. A Expression shape is used to assign values to variables and also write 'if' conditions.
what is the difference between Message Assignment and transform Shape?
In a transform shape, you call a map to construct a message.

In a message assignment shape, you write code, to construct a new
message. No map is executed.

Both are wrapped inside a Message Construct shape, because both are
ways of constructing a new message.
  1. Does BizTalk Orchestrations support recursion?
An Orchestration does NOT support recursion.
  1. What is the purpose of the property "Activate" in a Receive shape?
It is used to invoke a new instance of an Orchestration.
  1. Can an orchestration Start without an Activatable receive?
A Nested Orchestration can be started without an Activatable receive
  1. Is it necessary for all .NET components being called from an Orchestration be Serializable?
Yes it is necessary. There are cases where a .NET component need not be Serializable.
  1. When do we need set the property "Synchronized" = true for a scope?
This needs to be set, when a variable is shared across the branches of a parallel shape.
10. What is Correlation?
       Correlation is the process of matching an incoming message with the appropriate instance of an orchestration when many instances of the orchestration are running.
      What is CorrelationSet?
      A collection of message property values that are suffiecient to route an incoming message to an executing instance.
Dehydration: Dehydration is a process of removing objects from the memory serializing with state                                                  than saving it in to scale messagebox.
  It persists the state of an orchestration to database.
Examples: Receiving waiting for a message for longtime
                  Delay for longer time
                  System restart
Rehydration : Rehydration is a process of creating an instances from the bytestream & processing the given message.
  It reactivates an orchestration from database.
Examples:  Message is received
                   Delay period is over
                   System restart
  • What is the difference between an Exception block and a Compensation block? is it the equivalent of try-catch-finally?
--------------
  1. How does one enable Correlations in BizTalk?
First create a Correlation type and then create an instance of it.
  1. Is it possible to share variables across two branches in a Parallel shape?
  1. Does BizTalk automatically compensate a unsuccessful transaction?
  1. What is the main difference between a Long-Running transaction and an Atomic Transaction in BizTalk context?
15.  What is scope?
A scope is a unit or block which is executed and is associated with a transaction type. In order words, a scioe defines a context which maintains the state for a defined unit-of-orchestration code. If you were open the *.ODX files in Notepad, you would be notice that the scope shape placed in an orchestration would create the following
scope
{
    task
    {
        // Can be a transform or an expression shape.
    }
}
  16. Orchestration Shapes?
  

 abc
Inter view Questions 

1. How do you call a Non-Serializable .Net helper class inside an Expression Shape?
Add a reference of that dll (class). The class must be strongly signed and in the GAC. Make sure your transaction type of Orchestration is Long Running transactional. Add an Atomic scope. Create an Orchestration variable of that class inside the scope. Create an instance on that object inside the scope. Call the method

2.What is BizTalk?
A middle ware that sits in the middle of any two software who wish to communicate with each other and agree on some specified communication pattern. It uses SQL Server as back end database.

3.How do you use Auto Mapping in the BizTalk 2004 mapper?
   Select a top level node, hold down the Shift key, drag the top level node over to the other top level node.

4. Does orchestration support parallel activation?
Parallel-activating Receive shapes do work under the following conditions:
1.      If one of the tasks of a parallel activation has an activatable Receive as the first shape, all of the tasks of that parallel activation must have an activatable Receive as the first shape, and all of those Receive shapes must initialize at least one correlation.
2.      If a particular correlation is initialized on more than one task of a parallel activation by a Receive shape, each of the concerned activating Receive shapes must initialize exactly the same correlation.
This is the parallel convoy case. It is the only parallel activation that XLANGs supports.
5. Can you connect BizTalk with Sql 2000?
Yes but it should fulfil the minimum criteria of SP4.

6. What is correlation?
An Orchestration can have more than one instance running simultaneously. Even though each of those multiple instances perform the same action, it does it on different data contained within a message. Correlation is a process of associating an incoming message with the appropriate instance of an orchestration. For Example: If your orchestration issues a purchase order, receives an invoice, and sends a payment, the developer must make certain that the invoice message is received by the orchestration instance which corresponds to the orchestration that sent the Purchase Order. Without correlation, it would be possible to send out an invoice for thousands of items even though the purchase order is for one. And each correlation is based on a set of properties known as correlation types
Q: What is Correlation Set?A collection of message property values those are sufficient to route an incoming message to an executing instance.
7. What if the class is Serializable? No transactional Orchestration or Atomic scope is needed
8. What is Dehydration?
When an orchestration has been idle for a while, the orchestration engine will save the state information of the instance and free up memory resources.
Dehydration is a process of removing objects from the memory serializing with state than saves the memory in scale messagebox.
It persists the state of an orchestration to database.
Examples: Receiving waiting for a message for longtime
                  Delay for longer time
                  System restart

9. Rehydration?
When a message is received, or else when a timeout has expired, the orchestration engine can be automatically triggered to rehydrate the instance – it is at this point that the orchestration engine loads the saved instance of the orchestration into memory, restores the state, and runs its from the point it left off.
Rehydration is a process of creating an instance from the byte stream & processing the given message.
It reactivates an orchestration from database.
Examples:  Message is received
                   Delay period is over
                   System restart
Q: What is Host?
A biztalk host is a logical representation of a runtime process. Each host may contain a combination of receive and send shapes or orchestration.
Once you have defined a biztalk host, you can create instance of it. When creating instance, you specify the name of a physical server for the host instance to execute on along with a service account for the host to run under.
Hosts can be either inprocess or isolated.
Inprocess host instance executes a window service.
Isolated host instances execute in a non-biztalk process, such as an ASP.NET worker process.

Q: what is use of Filters?
We touched on filtering when we covered send port groups. Filters enable you to dynamically determine which send port will be used to process a message or which orchestration will process a message. Filters use message context properties, which can be based on message data, among other things.
You can also apply filters to receive shapes on biztalk orchestrations. This can enable two orchestrations to process the same type of message but process them differently based on data held within the message.

Q: Types of Flat files?
Flat files are 2 types; they are Delimited Flat files, positional Flat file.
Delimited Flat file:
Delimited files contain characters (such as commas) that separate the data. Files that are positional in nature contain data items that are a predefined length within the file. The physical position of the data defines what the data represents.

Q:suspeneded, resumable non resumable?
Suspend.
This pauses the service instance. In-process messages run to completion. Messages are still routed to service instances, but are not processedIf the message box doesn’t receive any subscription info from send port then the msg will be suspended.
Resume. This resumes processing of suspended instances.
Terminate. This terminates all message processing. The service instance is deleted from the BizTalk Server databases. Messages that the service instance is processing are also deleted, except for any messages that are also referenced by a service instance that is not being terminated.
If the external resource (example webservice) is not available then the message will go for suspend resumable mode.  It will go after number of retry that you have set in the sendport.  The message will go for Suspend non-resumable mode if the message is not proper format (or) if it is rejected by the target system.

Q: Unit testing?
Essentially a Unit Test is a procedure used to validate a particular piece of source code. Effective Unit Testing is vital to the success of any project. Unit Testing results in reduced defects in the next level of testing. Traditionally we have used NUnit to test any assembly (*.DLL). For testing BizTalk Orchestrations, we use a similar approach. We test BizTalk Orchestrations as a Black Box.

Q: what are transport adapter & application adapter?
Transport adapter: the adapter which are neutral ie not specific to any application is called transport adapter.
These adapters are enlisted in orchestration.
Application adapter: the adapter which is specific to application is called application adapter.
These adapters are enlisted in locations of administration console.

Q: SOAP adapter?
Microsoft® BizTalk® Server Web services uses the SOAP adapter when receiving and sending Web service requests. The SOAP adapter enables you to publish orchestrations as Web services and consume external Web services.
The SOAP adapter consists of two adapters—a send adapter and receive adapter.
You use the SOAP receive adapter to receive Web service requests. The SOAP receive adapter creates a BizTalk Message object, and promotes the associated properties to the message context.
You use the SOAP send adapter to call a Web service. The SOAP send adapter reads the message context on the BizTalk Message object to get the proxy name and calls the associated external Web service proxy.

 The latest release of BizTalk adapter 3.0 for mySAP Suite using WCF offers 4 operations for receiving and sending message to SAP. You can receive/send messages as IDOC (Flat file data) or Xml message. Which makes easier for deploying SAP schemas in BizTalk Mgmt DB, then the earlier version where we need to take care of the one receive pipeline to accommodate all the inbound message to BizTalk from SAP. So if you need to migrate from earlier version to the latest version of adapter is easy and it’s well documented in the help file. Also the latest release offers the changes in the following:
1.      Design time – Configuring the ports and meta data retrieval
2.      Meta data retrieval - Using Consume Adapter Service
3.      Schema file and Namespace change
4.      Data type changes –Option by setting the EnableSafeTyping to true or false
5.      Multiple operations for sending and receiving idoc’s in flat file (IDOC) or Xml format.

Q: FTP adapter?The FTP adapter can transfer a large number of files from an FTP server to BizTalk Server. It can also transfer files as part of an orchestration.
The FTP adapter exchanges data between an FTP server and Microsoft® BizTalk® Server and allows for the integration of vital data stored on a variety of platforms with line-of-business applications.
The FTP adapter consists of two adapters—a receive adapter and a send adapter.The FTP receive adapter enables you to move data from an FTP server to BizTalk Server.
Key features of the FTP receive adapter are:
  • Pulling files from the FTP server on demand
  • Running polls based on a configurable schedule
  • Polling the FTP server and sending data directly to BizTalk Server
  • Specifying the FTP server as an IP address, port, password, and host name
  • Guaranteed file delivery
The FTP receive adapter also works with the BizTalk Administration console and BizTalk Explorer to configure and administer each receive function, which is composed of the following configuration items:
  • Poll interval to run an FTP command (for example, 60 minutes).
  • Information with which to route the document to a specific BizTalk send port or receive location.
Note The FTP receive adapter does not support receiving files from a partitioned data set.
FTP Send Adapter
The FTP send adapter enables you to move data from BizTalk Server to an FTP server.
Key features of the FTP send adapter are:
  • Ability to run sends on demand
  • Guaranteed delivery
Q: SQL Adapter?The SQL adapter exchanges data between Microsoft® BizTalk® Server and a SQL Server™ database. You can use the SQL adapter to move individual records from one or more data tables, save the records as one or more XML messages, and pass the message to an application through BizTalk Server. You can also use the SQL adapter to move large amounts of data to or from the SQL Server database as part of a BizTalk Server messaging or orchestration solution. In addition, you can use the SQL adapter to update and delete SQL Server tables by using parameterized SQL statements or stored procedures.
The SQL adapter consists of two adapters—a receive adapter and a send adapter.
The SQL receive adapter supports SELECT statements and stored procedure calls that each return single result sets.
Note  The SQL receive adapter can only be bound to one-way receive ports
You use the SQL send adapter to send dynamically created updategrams to SQL Server. An updategram is an XML fragment that inserts, updates, or deletes data in a SQL Server database by mapping XML nodes against database columns. SQL Server returns an optional response document after the updategram completes, which contains the success status of the update. If a failure occurs during the update, the SQL adapter throws an exception that the BizTalk Messaging Engine handles.Note  The SQL send adapter can be bound to one-way or two-way solicit-response send ports.
Q: Recoverable Interchange?which allows an interchange to be processed completely even if one or more messages in the interchange fail at the following stages/phases:
·           Disassembly stage of a receive pipeline
·           XML validation stage of a receive pipeline
·           Map execution phase of a receive port
Recoverable interchange processing is motivated by the need to support successful processing of a single interchange that contains multiple identifiable messages so that valid messages are propagated through the messaging pathway and invalid messages are suspended. With standard interchange processing, the existence of any invalid message in a given interchange causes the entire interchange to be suspended even if it contains one or more valid messages.
Q: How to enable for routing for Failed Message?When failed message routing is enabled, BizTalk Server does not suspend the message—it routes the message instead. Failed message routing can be enabled on both receive and send ports, with the following results:
->If failed message routing is enabled on a receive port and a message fails in the receive pipeline or in routing, a failed message is generated. In the case where an error occurs in or before the disassembly phase, the error message is a clone of the original interchange.
->If failed message routing is enabled on a send port and the message fails in the send pipeline, a failed message is generated.
When a failed message is generated, BizTalk Server promotes error-report-related message context properties and demotes regular message context properties before publishing the failed message. Compare this to the default behavior when failed message routing is not enabled: Messages that fail are suspended.
Failed message routing is a property of send and receive ports, and is enabled by indicating "Enable routing for failed messages" on the port's property page.
Note: The configuration on a receive port applies to all receive locations associated with that receive port.
The configuration on a send port applies to both the primary and backup transports.
To Configure failed message routing for a receive port:
1.
Open the BizTalk Server Administration console.
2.
Expand BizTalk Server 2010 Administration, expand BizTalk Group, expand Applications, and then expand the application to which the send port belongs.
3.
Click the Receive Ports folder.
4. In the right pane, double-click the name of the receive port you want to configure.
5. On the receive port's property page, in the left pane, select the General category.
6. In the right pane, select the Enable routing for failed messages check box, and then click Apply.

To configure failed message routing for sendport:
1.
Open the BizTalk Server Administration console.
2.
Expand BizTalk Server 2010 Administration, expand BizTalk Group, expand Applications, and then expand the application to which the send port belongs.
3. Click the Send Ports folder.
4. In the right pane, double-click the name of the send port you want to configure.
5. On the send port's property page, in the left pane, select the Transport Advanced Options category.
6. In the right pane, in the Transport Options group box, select the Enable routing for failed messages check box, and then click Apply.
10. What does the Value Mapping Functoid do?
Returns the second parameter if the first parameter is true

11. What is the default mapping for Auto Mapping?
 The default is by structure.  This can be change to by node name on the map properties. (This default in the auto map messes me up every time.)


 12. What is a Message Type (i.e. BTS.MessageType) and how is it used in BizTalk? 
Message Type is a BizTalk System property that is promoted inside a Pipeline.  It is made up of Document Name Space # Root Node Name.

 13. Can an Envelope schema consist of more than one schema type?
Yes. Technically it is possible. 

 14. What is the difference between a Document Schema and a Property Schema?
  Distinguished fields are light weight and can only be used inside an Orchestration.
·         Promoted Properties are defined inside a property schema, are tracking in SQL, can be tracked in HAT, and can be used for content based routing.

  15. Enumerate the new functoids added BizTalk 2006?
There are two new functoids added to the Advanced section of the toolbox:
1.      Assert
2.      Nil value
Logical toolbox section
There are two new functoids added to the Logical section of the toolbox:
1.      IsNil
2.      Logical NOT

17. Does BizTalk 2004/2006 support Synchronous communication?
BizTalk is essentially Asynchronous. It can exhibit some synchronous behavior, if an Orchestration is converted into a web service.

18. What is atomic Transaction?
It follows full ACID properties Atomicity, Consistency, Isolation and Durability.
If you require full ACID properties on the data—for example, when the data must be isolated from other transactions—you must use atomic transactions exclusively.
When an atomic transaction fails, all states are reset as if the orchestration instance never entered the scope. 

19. What is long running transaction?
 Long running transaction support CD properties of ACID. It is not practical to lock transaction for a long time. This transaction can run indefinitely and can be dehydrated also.

20. How does one enable subscriptions in BizTalk?
A Filter on Sendport is the first step to enable the subscription.

Q: How to create dynamic port?
Create a port and give the port information by using expression.It works when the orchestrtion runs being dynamic in nature. Drag a expression shape from the tool bar write code for configuration. 
The dynamic port property is available only while creating a send port. The simplest way to create a dynamic send port by is by selecting the "New configured port" option in the orchestration designer port window. Select the send port binding property as "Dynamic in the configuration wizard. You can also specify the pipeline to be used in the port. The Dynamic send port will be created as well as a physical port will be automatically created once you deploy the application. Bind the orchestration logical port and physical send port Create an expresion shape and set the address where the files are to be submitted example : 
Microsoft.XLANGs.BaseTypes.Address="FILE://C:\\OUTPUT_FILES\
INVOICE.txt";
You can also promote a schema element and assign its value in a variable and pass it as address information so that the file location can be selected at run time depending on the values in the element.
Q: How to put data using SQL Adapter?
We use Stored procedure or updategram to put data in SQL Adapter.

21.What is the difference between static, dynamic and direct binding? 
static binding specifies particular port address ;
dynamic gives address of the port at runtime
direct binding sends messages to messagebox

22.What are un-typed messages, how does one create them? 
A message created in BizTalk Orchestration is bound to a schema, this is a typed message. In un-typed messages, the message is bound to System.Xml.XmlDocument instead of a schema.

23. In Biztalk, what does a message type consist of?
A message type consists of the TargetNamespace#RootElement name

24. In which scenarios would use a “promoted property” vs “distinguished fields”? 
The rule here is, if you dont want the schema element to appear in send port filters/debugging information then make it a distinguished field. 

25. What is property promotion, why is it required?
When a property is Promoted, it is exposed to the orchestration/send port filters etc.

 26. Can multiple messages be processed or batched without an envelope schema? 
It is possible to process multiple messages, without an envelope ,By using custom .Net component

27. Can a flat file message be processing without a pipeline?
A Pipeline's job is to convert any external format into XML, be it a flat file or EDI or anything else.

 28. How do you achieve First-In-First-Out message processing of messages received from multiple sources using an Orchestration?
 you need to build a resequencer pattern. As with ordered delivery there are some limitations such as it expects the all the message to be in order. Secondly your throughput decreases drastically.  3.At high level, what do Receive Ports and Orchestration Send Port really do in terms of messaging?  What about Send Ports and Orchestration Receive Ports?  4. 31. When working with Schemas, Maps, Pipelines, and Orchestrations how should the projects be structured? 
Some books say all orchestrations should be in one project, all maps should be in one place etc.
A drawback of this comes when u have large projects. u have 20 orchestrations in one project if u need to change in one every thing gets recompiled. So we bifurcated in projects every thing related should be in one project

32. What is direct binding (All About binding)
When a binding is specified at design time, the physical port that matches the parameters configured in the orchestration is created when the orchestration is deployed. When the binding is configured at deployment time, any port that matches the requirements of the logical port can be bound to the orchestration port. For dynamic binding, a physical port is created just as with the Specify Now option, but the port is a dynamic send port that has no address information configured.
A confusing concept for many developers is that while a send port in an orchestration is bound to a physical send port, this does not preclude that message from getting delivered to other subscribers. That is, if another send port happens to have a subscription, through its filters, for the message being sent to the bound port, both send ports receive the message. Binding simply creates the subscription such that the message sent from the orchestration always matches the criteria for the bound send port. Likewise, the orchestration port bound to a receive port creates the appropriate subscription based on message type and receive port ID. The subscriptions guarantee that the messages going in and out of the orchestration get delivered to the bound ports, but the messages still go through the same publish and subscribe mechanism described earlier.
Probably the most misunderstood, and misused or underused binding option is the Direct binding option. Direct binding allows an orchestration to publish messages to the MessageBox database with varying routing properties much like messages are published by receive locations. In simple direct messaging, the message is published to the MessageBox with its promoted properties to be routed like any other published message received into BizTalk Server. This enables any subscriber to receive this message, but requires that at least one subscriber exist or the orchestration will receive a routing failure error.
Another option for direct binding is to use self-correlating ports. Self-correlating ports are ports that create a unique correlation token and use that token alone in correlating messages between instances. The most common use of a self-correlating port is to call or start an orchestration passing in a port parameter. In the called orchestration, the port can be used to send a message, while in the calling orchestration the same port can be used to receive a message. Because the port has a unique correlation token, the message is routed back to the calling orchestration. Self-correlation ports act as private communication channels between orchestration instances.
The final option is to use a partner orchestration in which, in both the calling orchestration and the called orchestration, the port is configured using the same shared port type and in the port configuration, the same port is selected. For example, in both Orch1 and Orch2, Orch2.MyDirectPort is selected. This type of binding sets up a subscription for the receiving orchestration based on the sending orchestration type, the port name, and the operation name. This again ensures that the messages get routed to the correct instance.
All of the direct messaging options use the underlying publish and subscribe model. The difference between these options is in the properties that are used for creating subscriptions and routing, and in the use cases they help solve.
One common problem encountered when using direct bound ports in orchestrations is that an orchestration may publish a message that it is also subscribed to. For example, an orchestration is configured to be activated by a PurchaseOrder message. This orchestration uses a direct port to publish the PurchaseOrder message to the MessageBox. However, in addition to receiving the message as expected, another instance of an orchestration is started because it too had a subscription for PurchaseOrder messages. The processing gets into an endless loop and it may take some time for a developer to figure out what has happened

33.What is Coorelation?
Correlation in orchestrations is the mechanism for receiving related messages into the same running orchestration instance. In the Orchestration Designer a developer follows these general steps to use a correlation:
 Defines a correlation type that includes the promoted properties that are used to relate messages. 
 Defines a correlation set that is an instance of the correlation type just defined. 
 For the send and receive ports, specifies whether they initiate or follow a given correlation set.
Instance subscriptions come into play when a correlation set is initiated, as this is when subscriptions are created for all of those ports that follow this correlation set to receive messages. Because the correlation type defines the properties to be used for correlation, the orchestration engine can extract these properties from the message being sent or received by the initiating action. These values are then used to define subscriptions for all of the remaining actions which follow this correlation set.
It is important that messages received into BizTalk Server and intended for use in a correlation have their promoted properties correctly defined and promoted to the message context. Most properties get promoted when a disassembler component in a pipeline extracts the values when the message is initially received. For this reason, it is not possible to use the PassThrough receive pipeline to receive messages that must be correlated to a running instance of an orchestration. This issue arises when you use the SOAP receive adapter to receive correlated messages, because the PassThrough pipeline is the default value for the receive pipeline when using the Web Services Publishing Wizard.
Correlations are the means of matching asynchronous message transfers.
e.g.: I send a purchase order to a supplier from an orchestration and wait to receive the invoice. The orchestration only wants to receive the invoice that relates to the purchase order that was sent. I would use a correlation in this instance.
I create a property schema and declare a PurchaseOrderNumber property.
In the purchase order schema I promote the PO number field to this property.
In the invoice schema I promote the purchase order reference to this property.

In the orchestration I create a correlation type using the PurchaseOrderNumber property. I then add a correlation set using this correlation type.
On the send shape that sends the purchase order I initialize the correlation set and on the invoice receive shape I follow the correlation set.
When I initialize the correlation set the value of the PurchaseOrderNumber property is saved. When I follow the correlation set, a subscription is created to listen for invoice messages where the PurchaseOrderNumber property has the same value that was initialized. The instance of the orchestration will wait until an invoice with a purchase order reference that matches the original purchase order is received

34. What is the Rules Engine?
The Run-Time Rule Engine performs the following functions:
 Processes rules created as declarative statements without procedural instructions 
 Groups all the rules that apply to a business process together (a policy) without having to arrange them in order of, or define them in terms of, relationships, contingencies, or dependencies 
 Resolves rule conflicts arising from the simultaneous presence of multiple facts and conditions 
 Supports forward chaining of rules that involves reevaluating rules in the executing policy based on changes to the fact base (addition/removal of facts or changes in state/data of existing facts). Forward chaining does not inherently span policies 

35.What are Persistence Points and what causes them?
Persistence is when the state of a running Orchestration is stored into SQL.
It is good enough to know various shape and actions cause persistence.  More specifically, it occurs: end of a transactional scope, at a send shape, at a start Orchestration shape, during dehydration, if the system shuts down expectedly or unexpectedly, or the business process suspends or ends

36. What group does a user need to belong to in order to submit messages to the message box?
The user needs to be a member of the hot group or isolated host group (assuming a default installation).

37.When installing Biztalk in a multi-server configuration with a remote SQL and Analysis Services, what SQL components do you need on the Biztalk Server?
SQL client

38.What user rights to you need to perform most actions in HAT?
You must manually grant permissions to BizTalk administrators group to access the Analysis Services Tracking database; by default, only OLAP administrators have permissions to it

39.When installing Biztalk and SQL on a Windows XP SP2 Desktop, what pre-requests are required?
 IIS, .NET framework 

 40.How does one enable Correlations in BizTalk?
 First create a Correlation type and then create an instance of it.
 Does BizTalk automatically compensate a unsuccessful transaction? A Compensation section is generally written, in order to UNDO the effect of a transaction. 
 The Compensation section for a scope gets activated only when the scope terminates normally or the scope completes its execution. 
 Unlike exceptions, a compensation section can be written for a “Atomic” as well as a “L-R” transaction. 
 A Compensation section needs to be explicitly invoked, using the Compensation Shape in order for it to execute. 
 A Compensation section for a scope does NOT automatically undo the effect of a transaction. The compensation section must have the undo logic in place in order to have such an effect. 
 A Compensation shape can be used to invoke/execute a compensation section. The control returns to the next operation after compensation shape, once the execution of the compensation section is complete.

41.Is it possible to share variables across two branches in a Parallel shape yes it is possible you just need to set the “Synchronized” property to true.
Transaction types
The classical definition of a transaction is – an atomic unit of work which results in moving the system from one consistent state to a new consistent and durable state. A transaction can either be “committed” or “rolled back” depending on various conditions. Note that a transaction which cannot be rolled back needs to be “compensated”. This means that if an operation ‘f(x)’ has been performed on some data, in order to revert it back we need to perform an operation ‘f(y)’, which essentially performs an undo operation, this is known as “compensation” in simple terms.
 A non-transactional orchestration cannot have ‘scope’ shapes set to either “Atomic” or “Long Running”. 
 If an orchestration’s transaction type is set to “Atomic”, then the orchestration cannot have any other transactions within its ‘scope’ shapes. 
 Atomic transactions cannot contain nested transactions or catch exception blocks. However, they can have compensation blocks. 
 Long running transactions cannot be isolated from other transactions. However they can contain other atomic transactions and can have catch exception and compensation blocks. 
 Batch: A boolean value that determines if this transaction can be batched with other transactions across multiple instances of the orchestration. The default value is “true”. It may improve performance with the possibility of losing isolation data. 
 Isolation level: This property defines the degree of isolation between the state changes performed by different atomic transactions. This is not applicable for Long-Running transactions. BizTalk supports three isolation levels. These are ‘Read Committed’, ‘Repeatable Read’ and ‘Serializable’. The last one being the default value. 
 Retry: A boolean value which specifies that the atomic transaction can be retried in the event of a failure. Perform the following for Retry-”throw an instance of Microsoft.XLANGs.BaseTypes.RetryTransactionException” within the transaction boundary. 
 Transaction type: Can be either “Atomic” or “Long Running” or “None”.

42.Is it possible to have a exception block for an Atomic scope? if not why?
Nopes

43.What is the difference between an Exception block and a Compensation block? is it the equivalent of try-catch-finally?
Exception block can be termed as a catch block. But compensation is different. Its like reversal of a committed transaction.

44.When do we need set the property “Synchronized” = true for a scope?
Incase we want to share a variable between parallel scopes.  2.Is it necessary for all .NET components being called from an Orchestration be Serializable? Nopes we can also call non serialized objects within orchestration.  3.Can an orchestration Start without an Activatable receive?
Only if it is called from another orchestration
45.What is the purpose of the property “Activate” in a Receive shape?
A Receive shape can be used to start an orchestration. If you set the Activate property to True, the runtime engine will test an incoming message to see whether it is of the right type and, if a filter has been applied, whether the filter expression is satisfied. If the criteria for receipt of the message are met, the runtime engine creates and runs a new orchestration instance, and the Receive shape receives the message 

46.Does BizTalk Orchestrations support recursion?
Nopes

47.What is the difference between a “Message Assignment” shape and an “Expression” shape?
A “Message Assignment” shape is used to create a new message and assign values to it. A Expression shape is used to assign values to variables and also write ‘if’ conditions

Q: Loop Shape:
The scope of the loopshape will be executed repeatedly whicle the condition specified on the loopshape is False.

Q: Decide shape:The decide shape enables you to branch orchestration processing based on a Boolean expression, directly analogues to the IF statement in C#.
Distinguished promotions are often used for this scenario to enable easy retrieval of message data.

Q: Parallel shape: The parallel shape enables you to complete stages of business process without having to wait for another part of the business process to complete.
Example: (flight booking, flight booking confirm) (hotel booking, hotel booking confirm)

48.When you use Call Orchestration shape vs Start Orchestration shape?
 A Call Orchestration returns the control back to the caller.
A call orchestration shape, like the start orchestration shape, enables you to invoke another orchestration – the difference being that this invocation is done synchronously, meaning that the calling or parent orchestration must wait for the invoked orchestration to complete before processing can continue.
A Start Orchestration shape starts the orchestration in a non-deterministic way 
A start orchestration shape is used to invoke another biztalk orchestration asynchronously, thus enabling the calling or parent orchestration to continue processing.

Q: What is the difference between a delay shape vs. a listen shape?
=>‘Delay’ is very much similar to a sleep on the current thread.
Delay shape allows you to put the orchestration to sleep for a configured period of time. The sleep period is provided by way of a .NET time span. To define this shape double click the shape n write the code -
new System.Timespan (1, 0, 0, 0);
=>A ‘Listen’ shape is used to wait for an incoming resource, with a timeout period.
The listen shape, as the name implies, allows you to listen for any combination if message to arrive or delays to expire through the use of multiple branches, but crucially only one branch can succeed- the first one wins.

Q: How do you prevent occurring of zombies in a Parallel Convoy?

Q: Compensation:


49. Enumerate the steps required to deploy a BizTalk solution from one machine to another machine.
MSI, Bindings, DLLS, BRE Values, IIS folder (incase you have web services).

50.List out the three important things to consider while designing a BizTalk orchestration!
The Incoming data format, The Business process and The Outgoing data format

51.In an Orchestration design, Orchestration “A” calls another Orchestration “B”, and vice versa. Is it possible to implement this design?
 It is NOT possible, since it forms a cyclic dependency 

52.Can we get messages to Orchestration without using schema? If you use XML object, then you can get any *.xml messages
into orchestration

53. How to version your schema?
http://masteringbiztalkserver.wordpress.com/2011/03/02/schema-versioning-in-biztalk-server/

54. Side by side versioning in BizTalk 2004
Configure any pipeline components to use a specific version of the schema. If the schema is redeployed under a different version and this is not done it will fail because it looks up by target name space / root element not by assembly. Deploy the new version Bind the orchestrations. The Manual steps are below
1.Disable the receive location
2.Unenlist the old version using the Explorer (do not stop it), this will prevent new    instances from starting  while allowing old ones to finish 
3.Enlist the new version and start it, all new instances will be created using this one.  4.Enable the receive location

55. How to transfer files without using Orchestration?
 
Content Based Routing 
1. content based routing - context based routing
Context based routing is based on the Context of the message ie fields like Recieve Port Name, Message Type, etc which are populated by default by BizTalk.
Content Based routing is based on the field which one promotes and use it as a filter on any port for routing Purpose like you promote "EmpRegion" field in your XML Schema and use it as filter on any Send port for dropping files of region USA in USA Folder. The field should have a value "USA" to be dropped on to that folder.

2. What is Message routing and Content routing? When a message is passed through biztalk without being processed then it is called Message Routing. When A message is passed based on certain field value of schema, it is called content routing.
56. What are Host and Host Instance? Did you deploy BizTalk more than one machine?
 Host is nothing but the logical container of host instance. from which we can create host instance. Host instance is a Win-NT service. 
A BizTalk Server Host is a logical set of zero or more BizTalk Server run-time processes in which you deploy items such as adapter handlers, receive locations (including pipelines), and orchestrations.
A host instance is the process where the message processing, receiving, and transmitting occurs You install a host instance on each server running BizTalk Server 2006 that has one or more hosts mapped to that server.

 57. on which level you have worked in BizTalk development 1-Orchestration, 2-Ports & Adapters? 
All Levels

58.How and why you have to use Active Directory in BizTalk development?
to verify the account on domain or if I want to send an email I wud need to verify if the account exist. Or if I would like to right a file on a network drive. 

59. How did you connect InfoPath with WebServices?
 I didn’t use it.

60. In BizTalk development where and how you have to use custom developed .NET components?
a lot of times. Getting records from SP esp where cursors are involved.

 61. Where and how did you use WebServices in Orchestration? 
We can use webservices where we need to get data from multiple sources in one go. For e.g. getting price quote from 10 different vendors. You make one orchestration and use WS inside it.

 62. How to use custom developed adapters? 

63. What is convoy and correlation sets?
 Correlation is the process of matching an incoming message with the appropriate instance of an orchestration. You can create any number of instances of a given orchestration, and while each of them will perform the same actions, they will do so on different data.

64.How to create dynamic ports? 

65. How to put data using SQL/Oracle Adapter? 

66. Source schema has nodes First Name, Last Name and destination schema has node Name. How we can get data at destination so that we can have two instance of Name (without using orchestration). 
          Create a MAP in Biz talk and add first name and last name strings with space in           between and map to destination schema node. Use that map in port to port  binding either in receive port or in send port.

67. What is Binding files? 
Binding files in BizTalk is an XML file that contains information of receive send ports there locations. It is usually used when you make a deployment. We make MSI separately without bindings.

68.Did You work BAS and Share Point Services? What the types of Share Point Services Setup?
Well it stands for Business Activity Services, and basically it is a series of services that are hosted on Windows SharePoint Services
69. In a BizTalk project how to consume an external web service?About Consuming Web Services
Adding Web References
Constructing Web Messages
Creating Web Ports
Considerations When Consuming Web Services
Solution1 You can consume (call) a Web service from your orchestration by using Web ports. To consume a Web service from an orchestration, you create a Web port and construct Web messages.
You can use SOAP headers with the consumed Web service, change the URI of a consumed Web service, and dynamically set the URI for a consumed Web service.
Important  An orchestration is required to consume a Web service. You cannot use the SOAP send port in scenarios that only use messaging. SOAP send ports must be used with an orchestration.
Solution2 Add configuration port and on port type select web service port type it will automatic create appropriate request and response port.
Here you need to assign input message value to Web service request message

70. What is BAM?

71. Difference between message types and web message type?
 Web message types are identical to a normal message type, except you cannot modify, rename or delete them. To delete a Web message type, you must remove the Web reference from your BizTalk project.  3. 77. What is BAS?  4. 78. What are adapters? What do we need it? 
Adapters can simply be termed as medium with which BizTalk communicates with other softwares. connect your people, processes, and information together.

72. How to debug an Orchestration?
You can apply break points in HAT (Health Activity Monitoring).

73. In the Orchestration what is the difference between Exception and Compensation?
 Give an example of its usage scenario.  Exception is simple the try catch block in .net. Lets say you have an expression a = b/c where c=0 it will raise an exception and will be caught in catch block. 
Compensation is like you made a transaction where u debited customers account. Now you will do exact opposite meaning crediting with the same amount and the same account.

74.Can we do messaging in BizTalk without Orchestration? If yes how? 

75.What is a Convoy? Why do we need it? Give usage scenario for each Convoy.

76.Explain the Publisher – Subscriber
 of BizTalk Publishers include receive ports that publish messages that arrive in their receive locations, orchestrations that publish messages when sending messages or starting another orchestration asynchronously, and solicit/response send ports that publish messages when they receive a response from the target application or transport. In BizTalk Server, there are two main types of subscriptions: activation and instance. An activation subscription is one specifying that a message that fulfills the subscription should activate, or create, a new instance of the subscriber when it is received. Examples of things that create activation subscriptions include send ports with filters or send ports that are bound to orchestrations, and orchestration receive shapes that have their Activate property set to true. An instance subscription indicates that messages that fulfill the subscription should be routed to an already-running instance of the subscriber. Examples of things that create instance subscriptions are orchestrations with correlated receives and request/response-style receive ports waiting for a response from BizTalk Server. Subscriptions are created by service classes in BizTalk Server A subscription is a collection of comparison statements, known as predicates, involving message context properties and the values specific to the subscription. For example, Message Type is a context property of messages and many subscriptions specify the message type in their subscription. 
When a send port is enlisted, the port creates, at a minimum, a subscription for any message with that send port’s transport ID in the context. This allows the send port to always receive messages intended specifically for it. When an orchestration port is bound to a particular send port, the information about that binding is stored in the BizTalk Management database. When messages are sent from the orchestration through the port bound to the physical send port, the Transport ID is included in the context so that the message gets routed to that send port. However, it is important to note that this send port is not the only send port that can receive messages sent from the orchestration. When an orchestration sends a message, that message is published to the MessageBox with all of the relevant promoted properties. The bound send port is guaranteed to receive a copy of the message because the transport ID is in the context, but any other send port, or orchestration, can have a subscription that also matches the message properties. It is very important to understand that any time a message is published directly to the MessageBox, all subscribers with matching subscriptions will receive a copy of the message.

 77. What is a Message Box? And messaging engine? MessageBox Database?
The message box is the heart of this messaging system. It manages the communication and routing of the messages to and from the BizTalk Server. The message box essentially comprises of one or more SQL Server databases and a Messaging Agent.
The SQL Server database(s), commonly known as the message box database is responsible mainly for persisting the messages, message parts and the promoted properties. Apart from this, the message box database also contains several stored procedures that determine the business logic for various tasks like Finding Subscribers, Message Routing etc.
The Messaging Agent provides a layer of abstraction over the message box database. It uses the .Net COM interop to expose a set of APIs that the BizTalk Core engine can use to communicate with the message box database.
In effect, the messaging agent abstracts and encapsulates the Message Box Database.
The Agent is used as an interface by the BizTalk Core engine as well as other publisher components including the Adapter framework.
Message Engine: The BizTalk Server Messaging engine enables users to create business processes that spans multiple applications by providing two primary things:
·           A way to specify and implement the logic driving that business process
·           A mechanism for communicating across the applications that the business process uses
Message Box Database:stores the subscription information, stores the orchestration info.
delivers messages to the subscribers
stores messages n message properties.

It is usually a very important task to clean up a BizTalk mseeage box during stress testing with large amount of messages. Below are the steps to clean up the message box in order to prepare for the new test.
1. Stop all BizTalk services
2. Type “iisreset” at command line to recycle IIS service
3. Execute the stored procedure “bts_CleanupMsgbox” on your message box database
4. Execute the stroed procedure “bts_PurgeSubscriptions” on your message box database
(if the above stored procedures can't be found, go to your BizTalk installation directory, under “Schema” folder, you can find all original scripts of these stored procedures)
5. Clean up the message box log by running the backup statement similar to below
backup log msgBoxDb to disk = “yourbackupdirectory\yourbackupfile.bak' with init, stats = 5
6. Restart BizTalk services


78. Publish Subscribe architecture simplified?
Fundamental to BizTalk is the Publish / Subscribe Architecture. This architecture basically comprises of 2 main components. First of all, a publisher, who would be responsible to publish the message in the message store.  And secondly, a subscriber, who will subscribe to messages of a particular format so that he gets them whenever they are published.
Publishing refers to the process of inserting the messages in the message box database. Normally, a receive port, an orchestration or solicit send port would be involved in publishing any message to the message box. A receive port would receive the message from the pipeline and publish it to the message box for an orchestration or a send port to pick up. An orchestration would publish the message usually while sending it using the send shape. A solicit response port would actually publish the message when it receives a response from the end system.
The subscribers would indicate the message they would like to receive by a set of criteria or filters. Thereby, whenever a message is posted or published to the message box database, a subscriber will be able to get the message based on the filters or criteria mentioned while subscribing. The filters can be specified only on the promoted fields on the message.

 79. What is the difference between MSMQ and MSMQT? Why do we need MSMQT?  
From a network perspective, BizTalk Message Queuing works the same as Message Queuing (also known as MSMQ). The main difference between the two components is that MSMQT sends messages to a receive location instead of sending messages directly to a queue. This receive location, which is tied directly to the BizTalk Server MessageBox database, is a virtual representation of a Message Queuing queue. The MSMQT adapter ensures end-to-end ordered delivery of messages.
if an MSMQ application sends messages 1, 2, and 3 to a receive location bound to the MSMQT adapter, then these messages are delivered to an orchestration or send port in BizTalk Server in the same order: 1, 2, 3. With regard to transaction usage, there is a key difference between how the MSMQT and MSMQ adapters process messages.
When using the MSMQT adapter, the processes of receiving a message from the network and processing it with BizTalk Server are handled under a single transaction. When using the MSMQT adapter, ACK messages generated for the sender indicate that the message has been received and has been successfully processed by BizTalk Server.
Note
An acknowledgment (or “ACK”) is a type of message sent to indicate that a block of data arrived at its destination without error.
High Availability (Transactional, in Order)
To provide high availability for the MSMQT adapter, you can either add multiple computers to the receive host and configure Network Load Balancing (NLB) for fault tolerance or, in BizTalk Server 2006, you can cluster the default BizTalk Host.
If you are running the MSMQT adapter in conjunction with NLB, if one server goes down, the other servers handle the load. If you are running the MSMQT adapter handlers on a clustered host in BizTalk Server 2006, if one host node fails, cluster software fails over the clustered host to the other node.
When using the MSMQ adapter, NLB does not work if you need transactional processing with no data loss, because the MSMQ adapter uses local MSMQ queues for intermediate storage. In this scenario, if a message has been delivered to the local MSMQ queue but has not been consumed by the MSMQ adapter, the message is lost if the computer fails

 80. What are the security groups created by BizTalk? 
SSO Administrators
SSO Affiliate Administrators
BizTalk Server Administrators
BizTalk Server Operators
BizTalk Application Users
BizTalk Isolated Host Users
Create the BizTalk Windows Service Accounts (Windows Users)
Full Name User logon name Enterprise Single Sign-On Service SSOService BizTalk Administrator BTSAdmin BizTalk Host Instance Account BTSAppHost BizTalk Isolated Host Instance Account BTSIsolatedHost Business Rule Engine Update Service Account ReuService
Add the Windows Service Accounts to their respective Groups.
Windows Group Windows User Server Administrators biztalk\BTSAdmin SSO Administrators biztalk\BTSAdmin and biztalk\SSOService BizTalk Application Users biztalk\BTSAppHost BizTalk Isolated Host Users biztalk\BTSIsolatedHost

81. What is the difference between Windows Workflow and BizTalk server? Explain the scenarios ?
I want to put a definition around BizTalk to make it easier to compare to Windows Workflow.  BizTalk Server is an enterprise level workflow and message processing environment.  This environment is tried and tested (extremely rigorously over the last many years).  BizTalk also includes many adapters to connect to a variety of back end system.  Out of the box, BizTalk provides scalability, manageability, tracking, logging & administration tools.
Windows Workflow is an SDK for creating workflow based applications.  The tools are there to  build a host and to render a graphical workflow environment.  Scalability is possible with Windows Workflow but it is up to the developer to create a truly scalable solution.  In addition, there are administrative functions through runtime and tracking visibility but there is not an out of the box administration tool as this is also up to the host developer to create.
The message that I tell people is to use BizTalk when you want to target users/clients that want to span multiple applications whereas Windows Workflow would be used when you want to target users/clients that want workflow within an application.
So, to summarize, Windows Workflow is great for workflow within an application whereas BizTalk is great for workflow across applications

82.How to deploy BizTalk in a multicomputer scenario. Assume there would be DMZ and Corpnet? 

83.What is the need to create MSMQT by BizTalk team when MSMQ is already available?

84.Architect a solution that would receive 100 messages of 50 – 100 MB in size and process them in 3 mins? 

85.How to deploy BizTalk in a highly available scenario?
 Clustered Environment

86. What is the future direction of BizTalk?

87. Why do we need convoy? 
When a group of correlated messages could potentially be received at the same time, a race condition could occur in which a correlation set in a particular orchestration instance must be initialized by one of the messages before the other messages can be correlated to that orchestration instance. To ensure that all of the correlated messages will be received by the same orchestration instance, BizTalk detects the potential for such a race condition and treats these messages as a convoy. Convoy is a term which we use to describe a class of application protocols, specifically it is a set of application protocols which have a race condition as described above. Let’s take an example. Say you are a hospital and want to have a service which handles all information about each patient. For a given patient you have three types of messages, an admittance message, status messages, and a discharge message. If you look at your protocol, you will have built a service which just receives. Now let’s think about what could happen. Let’s say you send the patient admittance message and it goes through the system using maybe a synchronous protocol like HTTP. That means when you get the 202 back, you know the message has been delivered. But what if the BizTalkServer host which is actually supposed to process the message hasn’t started yet (ie the nt service is stopped). Maybe you had a power outage, maybe some intern decided to “hit this button”, who knows. So the orchestration instance which is supposed to handle all messages for patient X has not physically started. The message is in the database (MessageBox) and if you look in HAT you will see the orchestration is marked as ready to run, but it can’t start cause there is no where for it to start.

88. How to resubmit a suspended message? What is possible and what is not possible?

89.How will you create an Error handling framework in BizTalk? 

 90. Have you ever used BizTalk server in a scenario other than in a typical messaging environment? 

 91. What are the draw-backs of BizTalk? 
Not a very good support with legacy system. Like we faced tons of issue which we had to solve it someway or the other but Microsoft could not come up with a very good answer.

92.What has been your most difficult challenge in implementing Biztalk applications in the real world?
I think with biztalk things were not THAT challenging but with legacy systems things were. Like calling a webservice from oracle, or getting a LARGE object from orchestration into a oracle. And things like that. 

93.What are the challenges you have faced using Soap Adapter?
 twenty minutes timeout issue. You have to host webservices in the same machine. There is a way I heard but I didn’t do much reading on it.

94. What are persistence points?

95. What are the adapters you have used?
SOAP, TCP, FILE adapter, Oracle adapter


96. Can you use excel file in File Adapter?
 umm havnt tried it 

 97. How will you specify delimiters for Flat File?
there are properties in Flat File schema which u need to set. There you specify delimiters, records specifier etc. 
5. 106. What is debatching in BizTalk? Recently I end up in a scenario where I need to debatch a message inside the orchestration to produce multiple messages based on XPATH 
6. 107. What are the communication patterns available in BizTalk? Each port type has a communication pattern. The communication pattern determines whether one-way or two-way (request-response) transmissions can take place on ports of the given type. For more information

98. What is debatching in BizTalk?
 Recently I end up in a scenario where I need to debatch a message inside the orchestration to produce multiple messages based on XPATH 

99. What are the communication patterns available in BizTalk?
Each port type has a communication pattern. The communication pattern determines whether one-way or two-way (request-response) transmissions can take place on ports of the given type. For more information

100.What is XPath? Benefits?

XPath is designed for XML documents. It provides a single syntax that you can use for queries, addressing, and patterns. XPath is concise, simple, and powerful. XPath has many benefits, as follows:
Queries are compact. Queries are easy to type and read. Syntax is simple for the simple and common cases. Query strings are easily embedded in programs, scripts, and XML or HTML attributes. Queries are easily parsed. You can specify any path that can occur in an XML document and any set of conditions for the nodes in the path. You can uniquely identify any node in an XML document. Queries return any number of results, including zero. Query conditions can be evaluated at any level of a document and are not expected to navigate from the top node of a document. Queries do not return repeated nodes. For programmers, queries are declarative, not procedural. They say what should be found, not how it should be found. This is important because a query optimizer must be free to use indexes or other structures to find results efficiently. XPath is designed to be used in many contexts. It is applicable to providing links to nodes, for searching repositories, and for many other applications.

101.What are the available message types?
 .net type, Multipart message type, schemas and web message type 

102.Where can I find more information on BizTalk RFID

 103.What specific functionality will be supported with BizTalk RFID?

104. What is RFID? 
Radio frequency Identification. But what is RFID? RFID is the reading of physical tags on single products, cases, pallets, or re-usable containers that emit radio signals to be picked up by reader devices. These devices and software must be supported by a sophisticated software architecture that enables the collection and distribution of location-based information in near real time. The complete RFID picture combines the technology of the tags and readers with access to global standardized databases, ensuring real time access to up-to-date information about relevant products at any point in the supply chain. A key component to this RFID vision is the EPC Global Network.
Tags contain a unique identification number called an Electronic Product Code (EPC), and potentially additional information of interest to manufacturers, healthcare organizations, military organizations, logistics providers, and retailers, or others that need to track the physical location of goods or equipment. All information stored on RFID tags accompanies items as they travel through a supply chain or other business process. All information on RFID tags, such as product attributes, physical dimensions, prices, or laundering requirements, can be scanned wirelessly by a reader at high speed and from a distance of several meters.

105.What is an ESB and how can Microsoft help me? 

 106. Are there different editions of BizTalk Server? 
Yeah 2002, 2004 2006 R2 and now R3 or 2009.

107. What is the difference between accelerators and adapters, and how do we know?
 if our company needs them BizTalk adapters extend the functionality of BizTalk Server, enabling it to connect to other servers, applications and Web services. Specifically, they remove the need to develop infrastructure components such as network protocol support and translation, data conversion, data transformation, in the development of business process automation solutions. BizTalk Server adapters are “no-code” connectivity solutions, and are provided in-box with BizTalk Server 2006 R2. BizTalk accelerators provide developers with tools, data schemas, and processes to help significantly reduce the time required to develop a custom business solution in specific industries, such as health care, financial services, and supply-chain management and are provided in-box with BizTalk Server 2006 R2. If you are required to comply with specific industry standards, you will likely require an accelerator.  2.What advantages does BizTalk Server 2006 R2 offer over the 2006 release?
WCF
.SSO Questions

1.How many types of Single Sign-On services are available?
Enterprise Single Sign-On (SSO) provides services to store and transmit encrypted user credentials across local and network boundaries, including domain boundaries. SSO stores the credentials in the SSO database. Because SSO provides a generic single sign-on solution, middleware applications and custom adapters can leverage SSO to securely store and transmit user credentials across the environment. End users do not have to remember different credentials for different applications.
Convoys

What is a host
A BizTalk host is a logical container within a BizTalk Server group that can house BizTalk Server items such as adapter handlers, receive locations (including pipelines), and orchestrations. You typically group items that have similar scale properties into a particular host.
Host Instances
After you create a host (a logical container), you can add physical BizTalk Server computers (host instances) to the host. A host instance runs as an NT Service on the designated BizTalk Server. For each host, you can have only one instance of a particular BizTalk Server computer. However, you can have instances of a particular host on one or more computers, and you can have instances of different hosts on a particular computer
 Receiving. These items do the initial processing of messages after they are picked up in a receive location. When a host contains a receiving item, such as a receive location or pipeline, it acts as a security boundary, and the message decoding and decrypting occurs in a pipeline within the host. 
 Sending. These items do the final processing of messages before they are sent out to the send port. When a host contains a sending item, such as a send port or pipeline, the host acts as a security boundary, and the message signing and encryption occurs in a pipeline within the host. 
 Processing. These items process messages based on the instructions in an orchestration
Isolated and In Process Host 
BizTalk hosts are one of two types, In-process or Isolated. In-process hosts run inside of the BizTalk Server runtime process and Isolated hosts do not run in the BizTalk Server runtime process. The following table lists the items that each of these host types may contain.
 Orchestrations 
 Adapter Send Handlers 
 Adapter Receive Handlers other than HTTP and SOAP
Isolated HTTP and SOAP Receive Handlers
In-Process
Maps

installing an msi
WSE enhancements Learn how to secure Web services without writing code, how to author security policies, and how to leverage the WSE programming model to secure your Web services.  
role in ubl
I played quite variety of roles at UBL. My role included development, analysis, business requirement meetings, task delegation, and since 2 months it was hiring as well.
Business rules engine we used business rule engine to store connection strings mostly. Or if we needed to maintain some other parameters. But mostly it was for connection strings. We used to encrypt the string and store them
in BRE and retrieve it in our component. 

Business activity monitoring
 Business Activity Monitoring (BAM) is a collection of tools that allow you to manage aggregations, alerts, and profiles to monitor relevant business metrics (called Key Performance Indicators, or KPIs). It gives you end-to-end visibility into your business processes, providing accurate information about the status and results of various operations, processes, and transactions so you can address problem areas and resolve issues within your business.

Why use BAM
 The typical enterprise today uses a variety of business applications, such as customer relationship management (CRM), SAP, and order management, purchased or developed internally over time. BAM can be used as a monitoring solution by IT managers who want to cut the cost of their distributed IT environments while improving service quality. It also generates business alerts

What is BAM Definition
A BAM definition is an XML representation of a BAM observation model, which is a high-level definition a business process that you want to monitor. The main parts of the observation model, and therefore the BAM definition, are the milestone and data events to collect (the BAM activity); a description of any data aggregations; and how to present the information to users (the BAM view).
BAM definitions can contain the following items:
 Business activities – A valid BAM definition must contain a business activity (also referred to as a BAM activity). All other items in the definition are optional. For information about adding a business activity to a definition, 
 Views – Views define the set of users that can access the data defined by the business activity. Views consist of filtered data, aggregations of the filtered data, and ways of presenting the filtered data, such as a PivotChart report. BAM supports the definition of one or more views per activity. In a view you can define the following business processes:
 Aliased business data – Aliasing allows you to apply friendly names to data items. For example, a developer may define a data item called “LName.” You can create an alias so that the “LName” is displayed as “Last Name” when viewing the BAM live data. For more information about aliasing 
 Duration – The time period over which the activity is monitored. 
 Milestone groups – Sets of business milestones. You can use a group as either the starting or ending business milestone of a duration. 
 Aggregations – These can be either real-time aggregations (RTAs) or scheduled aggregations (also referred to as online analytical processing (OLAP)), and consist of the following items:
 Measures – A set of numeric values in an Analysis Services (OLAP) cube based on a column in the fact table of the cube. 
 Progress dimension – Represents the creation of aggregations with respect to the progress of activities that are still in process. 
 Data dimension – Used to categorize an aggregation. Data dimensions are based on the value of string formatted data items in the BAM activity. 
 Time dimension – Used to create aggregations across defined time segments. 
 Numeric range dimension – Used to categorize aggregations based on friendly names of given numeric ranges.
BAM definitions can contain alert definitions that are defined in the views. BAM definitions can also contain PivotTable layouts. Once the BAM definition is deployed, the PivotTable reports containing the live business data that can be viewed using the Excel livedata workbook or through the BAM portal.

What is the BAM portal?
The BAM portal in BizTalk Server 2006 provides real-time, end-to-end visibility into a business process. It is a Web-based feature that consists of a collection of ASP.NET 2.0 pages. You can customize BAM to enhance the performance and experience for your users.

Why use the BAM portal?
The BAM portal allows you to perform searches, aggregate data, and set alerts on a BAM view, which is a perspective on your business data. This visibility can provide the necessary KPI information for your business, or it can be used as proof of concept before you implement another solution such as extending a Microsoft Office Excel 2003 spreadsheet, using SQL Reporting, or building a custom user interface (UI).

BAM portal components
Following is a brief description of the BAM portal components. For a more detailed description, see the topics in See Also.
Activity searches
You use the BAM portal to perform searches against BAM data to find a specific BAM activity. You create queries by adding and removing search clauses that allow you to display those activities that match criteria for which you want to be alerted.
Queries can be saved and reused. They can also be the basis for an alert, such as a notification when a purchase order arrives from a specific customer.

Aggregations
The portal allows you to capture a snapshot of data and display it in the form of a graphical chart and accompanying PivotTable chart. This data gives you visibility into the health of that process or the overall business. For example, a user may wish to see a simple pie chart that shows a breakdown of the 1,000 invoices received in a day in terms of what stage of processing has been reached by each invoice (400 still in “evaluation,” 400 rejected, 100 paid, and 100 still in “fund allocation”).
The data presented can be the basis for creating an alert, such as “Notify me if there are ever more than 500 invoices in the ‘evaluation’ stage of the process.”

Alert Manager
The portal provides a user interface for the creation of alerts and the editing of existing alerts. Alerts take the conditions that are to be monitored from either the Activity Search or Aggregations page. The Alert Manager is where you fill in the relevant parts of an alert, such as who to notify, how (for example, through e-mail), and whether others can see and subscribe to the alert.
Zombie message
1. Terminate control messages – The orchestration engine allows the use of control messages to cancel all currently running work in a specific orchestration instance. Since the control message immediately halts the running orchestration, zombie instances are not unexpected. A number of Human Workflow related designs tend to use this mechanism as well as some other designs.  2. Parallel listen receives – In this scenario the service instance waits for 1 of n messages and when it receives certain messages it does some work and terminates. If messages are received on a parallel branch just as the service instance is terminating, zombies are created.  3. Sequential convoys with non-deterministic endpoints – In this scenario, a master orchestration schedule is designed to handle all messages of a certain type in order to meet some type of system design requirement. These design requirements may include ordered delivery, resource dispenser, and batching. For this scenario, the tendency is to define a while loop surrounding a listen with one branch having a receive and the other having a delay shape followed by some construct which sets some variable to indicate that the while loop should stop. This is non-deterministic since the delay could be triggered, but a message could still be delivered. Non-deterministic endpoints like this are prone to generating zombies 
Convoys Schema Versioning Zombies Deployment Versioning coorelataion Persistence Points NACK TPE BAM BAM HM Search PipeLine (Passthru, XML) finalize questions Solicit send port/send port groups

XML Schemas
An XML schema describes a business document that is represented in XML. Because Microsoft BizTalk Server 2004 uses XML as its canonical representation for business documents, inbound and outbound documents do not require any translation. XML schemas can be created in BizTalk Editor using only the basic set of properties that are available within all schemas, and do not require any schema editor extensions to be enabled.
There are several ways in which you can create XML schemas in BizTalk Server 2004. These include:
 Creating a new schema. This method of schema creation involves adding a new schema to a BizTalk project by using the Add New Item command from the File menu, and then building up the structure of the schema by adding various nodes in the schema tree view. 
 Creating a new schema, in conjunction with other schemas. For complex schemas in the real world, you are more likely to build the schemas for your messages by using types provided in other existing schemas. By using the XML Schema definition (XSD) language concepts of importing, including, and redefining schemas, you can take advantage of types already defined in other schemas. For more information about using multiple schemas together, see Schemas That Use Other Schemas. 
 Generating a schema from an instance message. You can generate an XML schema that corresponds to a particular instance message as long as that instance message consists of well-formed XML. Use the Add Generated Items – <BizTalk Project Name> dialog box, accessed by clicking Add Generated Items on the Project menu, to perform this type of schema generation operation. 
Note This type of generation operation can only be used to generate XML schemas, not property schemas or flat file schemas.
 Migrating a schema from an older schema specification language to XSD. You can generate an XML schema for BizTalk Server 2004 from a schema that was developed by using a previous version of BizTalk Server, which stored schemas in XML-Data Reduced (XDR) format. For more information about how to migrate older XDR schemas to the XSD format used by BizTalk Server 2004, see Schema Migration from Previous Versions of BizTalk Server. 
You can also generate an XML schema based on XSD from a document schema expressed by using the Document Type Definition (DTD) syntax.
Use the Add Generated Items – <BizTalk Project Name> dialog box, accessed by clicking Add Generated Items on the Project menu, to perform this type of schema generation operation.
Note These types of generation operations can only be used to generate XML schemas, not property schemas or flat file schemas.
Whichever schema creation technique you use, you will continue by modifying the schema so that it provides a sufficiently complete description of its corresponding instance messages. To get started on these tasks, see Managing the Nodes Within a Schema, Setting Node Properties, and Working with Existing Nodes. 

http://msdn.microsoft.com/en-US/library/ee268117(v=BTS.10).aspx