Introduction -
Hi in this post I will explore the Default values that BizTalk assigns for the Target Namespace, Fully Qualified name Message type for a XML Schema in BizTalk Server.
It is important to know these properties while we are copying the Schema file from one project to another or when we get a subscription not found error..
Description -
Fully Qualified Name
The
default Fully Qualified name is a combination of
Namespace of the Schema file and the Name of the Schema file concatenated by a
dot.
Syntax: NamespaceOfTheSchemaFile.SchemaFileName
The
default Target namespace is a combination of FullyQualifiedName
prefixed by “http://”
Syntax: http://FullyQualifiedName i.e.
The Message type is a combination of the target namespace of the
schema file and the root element of the XML against which the Schema file is
valid concatenating by a hash (#) symbol.
Syntax: TargetNamespace#RootElement i.e.
http://NamespaceOfTheSchemaFile.SchemaFileName#RootElement
http://NamespaceOfTheSchemaFile.SchemaFileName#RootElement
Example:
If the
Namespace
of the XML Schema File is “TestSchemaProject”
Schema
File Name is “InputSchema”
Root
Element is “PurchaseOrderRoot”
Then,
Fully Qualified name is - TestSchemaProject.InputSchema
Default
Target Namespace is – http://TestSchemaProject.InputSchema
Message
Type is -http://TestSchemaProject.InputSchema#PurchaseOrderRoot
Below fig represents Fully Qualified Name
Above fig represents Default Target Namespace
Note - 1) If we the rename the Schema file the Target namespace does not get renamed, it will still be based on the old file name, hence we need to manually change the Target namespace.
2) As seen above if the target namespace is not empty, then character # is put in between the TargetNamespace and Root Element/Root Node for the Message Type.
3) For a XML Schema without any Target namespace the Message Type will be the Root Node.
3) For a XML Schema without any Target namespace the Message Type will be the Root Node.