BizTalk Server General - mapper reports schema node that is not valid

This is Interesting: Free IT Magazines  
Home > Archive > BizTalk Server General > July 2005 > mapper reports schema node that is not valid





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 mapper reports schema node that is not valid
PeterW

2005-07-12, 7:55 am

I use generateschema to create an xsd for an xml file and manually create
another schema that I want to map to.

Both schemas when tested are OK.

I create a map using the first as the source schema and the second as the
destination schema and connect the objects plus a looping functoid on one of
the sets of objects.

I test the map and I get the following error:

C:\ssDocs\PPiP - XML Validation\BTS_Validation\silcnReportToA
ctions.btm
Exception Caught: The map contains a reference to a schema node that is not
valid. Perhaps the schema has changed. Try reloading the map in the BizTalk
Mapper. The XSD XPath of the node is:
/*[local-name()='<Schema>']/*[local-name()='silcn']/*[local-name()='report']/*[local-name()='matched-set']/*[local-name()='node']/*[local-name()='expression']

This refers to an item in the generated Schema that is used as Source. The
schema validates so why should the mapper have trouble?

I presume that the BizTalk mapper is the one in Visual Studio as I know of
no other. Reloading does not make any difference.

Any ideas anyone. I am stumped at the moment.

cheers
--
PeterW
Michel Prévost

2005-07-12, 7:55 am

I am not sure that could be the cause, but your source schema does not have
a namespace.

"PeterW" <nspw@noemail.nospam> wrote in message
news:4C192D37-1047-421A-833C-1A567DDB6C2C@microsoft.com...
>I use generateschema to create an xsd for an xml file and manually create
> another schema that I want to map to.
>
> Both schemas when tested are OK.
>
> I create a map using the first as the source schema and the second as the
> destination schema and connect the objects plus a looping functoid on one
> of
> the sets of objects.
>
> I test the map and I get the following error:
>
> C:\ssDocs\PPiP - XML Validation\BTS_Validation\silcnReportToA
ctions.btm
> Exception Caught: The map contains a reference to a schema node that is
> not
> valid. Perhaps the schema has changed. Try reloading the map in the
> BizTalk
> Mapper. The XSD XPath of the node is:
> /*[local-name()='<Schema>']/*[local-name()='silcn']/*[local-name()='report']/*[local-name()='matched-set']/*[local-name()='node']/*[local-name()='expression']
>
> This refers to an item in the generated Schema that is used as Source.
> The
> schema validates so why should the mapper have trouble?
>
> I presume that the BizTalk mapper is the one in Visual Studio as I know of
> no other. Reloading does not make any difference.
>
> Any ideas anyone. I am stumped at the moment.
>
> cheers
> --
> PeterW



PeterW

2005-07-12, 5:55 pm

The document I used to generate the xsd schema from has a root element that
is declared as follows:

<silcn:silcn xmlns:silcn='http://silcn.org/200309'
xmlns="http://xmlprobe.com/200312'>
and then proceeds to use a mixture of qualified and unqualified elements
where the unqualified items are supposed to be resolved by the
xmlprobe.com/200312 anonymous reference.

I need to be able to get this into something the mapper does not choke on.

The schema node of the Generated schema is as follows:

<xs:schema xmlns:tns="http://silcn.org/200309"
xmlns:b="http://schemas.microsoft.com/BizTalk/2003"
attributeFormDefault="unqualified" elementFormDefault="qualified"
targetNamespace="http://silcn.org/200309"
xmlns:xs="http://www.w3.org/2001/XMLSchema">

and it then goes on to import the xmlprobe.com namespace which is used by
various elements with ref attributes.
<xs:import schemaLocation=".\jgi_400992.xsd"
namespace="http://xmlprobe.com/200312" />

I had previously tried to use xsd.exe to create a schema from the xml file
but this failed apparently due to a mix of qualified and unqualified
elements. I then resorted to the wizard in BizTalk when I became aware of
its existence. The wizard generates a schema from Well formed xml and
creates the schema. That schema validates OK and validates the file instance
from which it was generated in the first place as well. The file instance is
a sample of xml output from a silcn validation engine.

I want to map the incoming message to something and can't. I am using 2 xsd
schemas that both validate and seem OK until I try to use them in a map.

I am looking at the possibility of applying a namespace qualifier to all the
unqualified elements in code in a C# module but would have thought this
should not be necessary.

Any suggestions?
--
PeterW


"Michel Prévost" wrote:

> I am not sure that could be the cause, but your source schema does not have
> a namespace.
>
> "PeterW" <nspw@noemail.nospam> wrote in message
> news:4C192D37-1047-421A-833C-1A567DDB6C2C@microsoft.com...
>
>
>

PeterW

2005-07-18, 5:50 pm

I found the answer and BizTalk can Transform a file that includes anonymous
namespaces with a map.

However in the grid of the map you must set "Ignore Namespace for links" to
No and for the schemas set Element FormDefault to Qualified.

cheers
--
PeterW


"Michel Prévost" wrote:

> I am not sure that could be the cause, but your source schema does not have
> a namespace.
>
> "PeterW" <nspw@noemail.nospam> wrote in message
> news:4C192D37-1047-421A-833C-1A567DDB6C2C@microsoft.com...
>
>
>

Sponsored Links






Free braindumps | Software forum | Database administration forum

Copyright 2003 - 2008 webservertalk.com