Software Quality

September 4, 2011

using Biztalk 2010 utilities to convert DTD files to XSD files

Filed under: Biztalk Server 2010 — David Allen @ 3:33 pm

Biztalk server 2010 provide utilities that allow us to convert the older style DTD files into the newer style XSD files. However, for some mysterious reason, the DLLs that enabled this functionality are provided in the installation package but they are not automatically made available. This post describes how to activate those features.

Procedure:

To convert the DTD file, you should

right-click on the Biztalk server project

-> Add Generated Items

-> select “Generate Schemas”

you will see a dialog box “Generate Schemas”

Choose your document type as DTD from the document type drop-down list.

Possible Problem:

You may notice however, that the list item says “DTD (Not Loaded)”. Sadly, this is by design. See http://msdn.microsoft.com/en-us/library/Aa561107(v=BTS.70).aspx

I tried to run InstallDTD.vbs, as instructed in the error message and the document referenced above, but I was unsuccessful due to permission issues. It probably has something to do with additional security in the version of Windows 7 that I have, that were not present when these scripts were developed.

I tried the obvious permissions fixes, but I was running as administrator, and local administrators already should have had adequate permissions . I lost my patience in my attempts to overcome the permissions errors. So I examined the scripts to see what they did. It turns out that the scripts simply copy a couple of DLLs from one location to another. The exact path  is determined from a registry setting as indicated in the script. In my case, I found the DLLs at the following location

C:\Program Files (x86)\Microsoft BizTalk Server 2010\SDK\Utilities\Schema Generator

they are named

Microsoft.BizTalk.DTDToXSDGenerator.dll

and

Microsoft.BizTalk.WFXToXSDGenerator.dll

Solution:

I simply copied these two DLLs to the desired target location C:\Program Files (x86)\Microsoft BizTalk Server 2010\Developer Tools

and restarted Visual Studio. Y did this by hand, restarted Visual Studio, and I was then able to access the functionality that was formerly missing.

Prevention:

I would love to know why the installation designers chose to make us go through this tedious activity, which, as I have just demonstrated, is fragile depending upon variations in platform security. Since I cannot think of a good reason, I wonder whether these capabilities were added on to the product at a later date, without fully integrating them into the installation stream.

Leave a Comment »

No comments yet.

RSS feed for comments on this post. TrackBack URI

Leave a Reply

Please log in using one of these methods to post your comment:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

Blog at WordPress.com.

%d bloggers like this: