Re: Can One Orchestration Be Designed To Handle Different Schemas
- From: Ryan CrawCour <ryancrawcour@xxxxxxxxx>
- Date: Sat, 6 Dec 2008 15:17:07 -0800 (PST)
On Dec 6, 4:19 am, Dan Rosanova <dno...@xxxxxxxxx> wrote:
Oh reading about solutions like that can really make me sad. :( One of
the greatest strengths of the product is exactly this ability you are
looking for. One process, many types of input formats. A lot of this
comes down to solution structure. This is how I structure solutions
(each is a VS project in the solution):
External Schemas
Internal Schemas
Maps
Orchestrations
Pipelines
I’m writing about this right now and when it’s done I will post it up
(if you really want I'll give you my working draft even). A structure
like this is important for controlling dependencies (which we’re all
familiar with from our non-BizTalk development). Basically the names
say it all. External Schemas is the client’s format and is ONLY
referenced by Maps, which also references Internal Schemas (let’s
ignore Pipelines for now, which can also be external related, but
never external and internal; that would require a new project).
Orchestrations only references Internal Schemas. All messages come in
from the External Schemas format and get mapped at the Port, not at
the orchestration.
You can actually change mappings and add new external schemas and maps
without the orchestration EVER knowing. I think there aren’t a lot of
readily available best practices on BizTalk so it results in not
leveraging the product’s strengths. When I am done with the writing
of it, I will put it on my BizTalk blog:http://www.novaenterprisesystems.com/blog
Kind Regards,
-Dan Rosanova
yeah basically Dan wraps up BizTalk best practises in a nutshell ...
whenever you deal with multiple external formats, map these as early
as possible (i.e. in the pipeline) to your internal cononical format
and all your process work with that. then when the response goes back
out to the external parties, reverse the process by mapping the
internal schema to whichever external schema you need, once again in a
pipeline, this time the outbound one.
one addendum to Dan's best practise mentioned here that I sometimes
do, I sometimes do the mapping inside the orchestration ...
sometimes ... why you ask? well sometimes there is complex logic that
needs to execute before the mapping happens; and yes i know you could
probably do most of this in your pipeline with custom components etc.
but i just find orchestrations easier to debug and follow than having
some logic "hidden" inside a pipeline.
.
- References:
- Can One Orchestration Be Designed To Handle Different Schemas
- From: BizTalkNewbieSince2007
- Re: Can One Orchestration Be Designed To Handle Different Schemas
- From: Dan Rosanova
- Can One Orchestration Be Designed To Handle Different Schemas
- Prev by Date: Flatfile error Biztalk 2006 r2
- Next by Date: Re: biztalk 2006 choking under async web services call!
- Previous by thread: Re: Can One Orchestration Be Designed To Handle Different Schemas
- Next by thread: Re: Can One Orchestration Be Designed To Handle Different Schemas
- Index(es):
Relevant Pages
|