Relativity
Relativity

Reputation: 6868

Why do I need an input message schema to convert a flat file to XML in BizTalk server?

I have a flat file from one application, which I have to send to a BizTalk server. In that case which component in my BizTalk server converts my flat file to XML.

Also I heard that I have to create an input schema (.xsd file), why do I need an input message schema?

Upvotes: 1

Views: 1175

Answers (2)

Dijkgraaf
Dijkgraaf

Reputation: 11527

If you are wanting to read and manipulate the contents of the flat file you have to convert it to XML which is the basis of all messages in BizTalk.

This allows you to

  1. Promote properties in the message for routing
  2. Transform it into another XML message format.
  3. Enrich the message.
  4. Emit it in a new format (flatfile, XML, EDI etc.)

However if all you are wanting to do is to move the flat file from one location to another, you can just use the passthru pipelines, in which case you don't need to convert it to XML or need a XSD.

Upvotes: 0

Maxime Labelle
Maxime Labelle

Reputation: 3639

The component in BizTalk that performs the conversion is known as the Flat File Disassembler. It is a component that lives in the incoming pipeline selected in the Receive Location that listens to your incoming message.

You need to create a special XSD schema to drive the conversion process. This schema is known as a Flat File Schema. In fact, it is a valid XSD schema that contains additional proprietary annotations used at runtime by the Disassembler in order to perform the conversion. Those annotations consist in describing the original flat file structure in terms of data types, length, offets, etc.

There is no builtin pipeline that you can use for this purpose however ; you need to create a custom receive pipeline, and drop the Flat File Disassembler component in the Disassembler stage. Then you can configure the dissassembler to use your custom Flat File Schema.

Hope this helps.

Upvotes: 1

Related Questions