I ran into an interesting problem this afternoon with one of my BizTalk soltuions that I was porting to SP1.
The problem was fairly generic so I thought I would share it.
In my solution I had a map that had two schema's on the left-hand side (described below) :
<xs:import schemaLocation="schema1" />
<xs:import schemaLocation="schema2" namespace="http://schema2ns" />
The first schema was a trading partners schema (which I didn't have control over) and it didn't have a namespace...
After applying SP1 this map would no longer build; I started getting an error saying “Exception Caught: Cannot use a prefix with an empty namespace“.
I understand what this error is saying and yes I was using a prefix with and empty namespace but what got me was that before SP1, this solution built and compiled fine!
I developed a workaround by creating a new schema which did have a namespace and used this in the map in place of the initial schema, which worked fine but I'm no wiser as to why this behaviour has been changed by SP1...
I guess it is to be consistent with XSD standards; pre SP1 BizTalk didn't allow you to create schemas which imported other schemas that didn't have namespaces even though this behaviour was supported behind the scenes when adding multiple messages (possible without namespaces) to one side of the mapper.
Hopefully I have shed some light on the issue for anyone else out there who is experiencing a similar problem. It makes me wonder what else I might come up against ;)
Nigel.