|
Home > Archive > BizTalk Server Orchestration > July 2005 > Positional FlatFile in CData Section
You are viewing an archived Text-only version of the thread.
To view this thread in it's original format and/or if you want to reply to
this thread please [click here]
| Author |
Positional FlatFile in CData Section
|
|
| John Glisson 2005-07-01, 8:47 pm |
| I have a message that has header infomation in xml format and has the body of
the message in positional flatfile content in a cdata section. It is
something like this:
<root>
<header1>header1 data</header1>
<header2>header2 data</header2>
<body><flatfile><![CDATA[THE FLATFILE DATA]]></flatfile>
</root>
I already have an xsd define that correctly parses the flat file content.
What I need to do is extract the content of the cdata section and parse it
with the xsd. I also must keep the header data because it is important in a
transformation that I must do after parsing the flatfile content.
I have 2 ideas, but wanted to see if anything came up here.
1. Finding a way to run the message through a pipeline in code within the
orchestration.
2. Sending the message out to a port and back in again so that it can be
parsed by the xsd.
Any help would be great.
Thanks,
John Glisson
| |
| John Glisson 2005-07-07, 2:48 am |
| I did find a way to solve this issue. It isn't as elegant as I would like,
but it does work. I created a custom adapter that does nothing more than take
the incoming message and read it out as the outgoing response message (I call
it a round-trip mirror). This allows me to use this adapter in a
solicit-response port and use a custom pipeline to parse out the flat-file.
Then, I re-assemble the parsed flat-file with the other sections of xml in
the orchestration. That work was non-trivial as well and I ended up using a
custom component in the orchestration to simplify the reassembly process.
--
John Glisson
http://spaces.msn.com/members/jglisson73
"John Glisson" wrote:
> I have a message that has header infomation in xml format and has the body of
> the message in positional flatfile content in a cdata section. It is
> something like this:
>
> <root>
> <header1>header1 data</header1>
> <header2>header2 data</header2>
> <body><flatfile><![CDATA[THE FLATFILE DATA]]></flatfile>
> </root>
>
> I already have an xsd define that correctly parses the flat file content.
> What I need to do is extract the content of the cdata section and parse it
> with the xsd. I also must keep the header data because it is important in a
> transformation that I must do after parsing the flatfile content.
>
> I have 2 ideas, but wanted to see if anything came up here.
> 1. Finding a way to run the message through a pipeline in code within the
> orchestration.
> 2. Sending the message out to a port and back in again so that it can be
> parsed by the xsd.
>
> Any help would be great.
>
> Thanks,
> John Glisson
| |
| Scott Colestock 2005-07-07, 5:52 pm |
| Yes, Greg Van de Wiele & I discussed a similar approach some months ago -
see http://geekswithblogs.net/gwiele/ar...1/10/14737.aspx
Scott Colestock
www.traceofthought.net
"John Glisson" <JohnGlisson@discussions.microsoft.com> wrote in message
news:4C919016-5377-4B62-987F-42A28BFFDCD7@microsoft.com...[vbcol=seagreen]
>I did find a way to solve this issue. It isn't as elegant as I would like,
> but it does work. I created a custom adapter that does nothing more than
> take
> the incoming message and read it out as the outgoing response message (I
> call
> it a round-trip mirror). This allows me to use this adapter in a
> solicit-response port and use a custom pipeline to parse out the
> flat-file.
> Then, I re-assemble the parsed flat-file with the other sections of xml in
> the orchestration. That work was non-trivial as well and I ended up using
> a
> custom component in the orchestration to simplify the reassembly process.
>
> --
> John Glisson
> http://spaces.msn.com/members/jglisson73
>
>
> "John Glisson" wrote:
>
|
|
|
|
|