keyongtech


  keyongtech > biztalk.* > biztalk.general > 12/2008

 #1  
12-12-08, 09:25 PM
Achinda99
I'm trying to create a send pipeline that will use enveloping and create a
simple xml document. I get the following error and I cant get past it:
"Token StartElement in state Epilog would result in an invalid XML document."

The enveloping schema is as follows:

<?xml version="1.0" encoding="utf-16"?>
<xs:schema xmlns:b="http://schemas.microsoft.com/BizTalk/2003"
xmlns:xs="http://www.w3.org/2001/XMLSchema">
<xs:annotation>
<xs:appinfo>
<b:schemaInfo is_envelope="yes"
xmlns:b="http://schemas.microsoft.com/BizTalk/2003" />
</xs:appinfo>
</xs:annotation>
<xs:element name="Feed">
<xs:annotation>
<xs:appinfo>
<b:recordInfo body_xpath="/*[local-name()='Feed' and
namespace-uri()='']" />
</xs:appinfo>
</xs:annotation>
<xs:complexType>
<xs:sequence>
<xs:element maxOccurs="unbounded" name="Entry">
<xs:complexType>
<xs:sequence>
<xs:any />
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:schema>


And the entry schema is:

<?xml version="1.0" encoding="utf-16"?>
<xs:schema xmlns:b="http://schemas.microsoft.com/BizTalk/2003"
xmlns:xs="http://www.w3.org/2001/XMLSchema">
<xs:element name="Entry">
<xs:annotation>
<xs:appinfo>
<b:properties>
<b:property distinguished="true" xpath="/*[local-name()='Entry'
and namespace-uri()='']/*[local-name()='ItemId' and namespace-uri()='']" />
<b:property distinguished="true" xpath="/*[local-name()='Entry'
and namespace-uri()='']/*[local-name()='Name' and namespace-uri()='']" />
<b:property distinguished="true" xpath="/*[local-name()='Entry'
and namespace-uri()='']/*[local-name()='Manufacturer' and
namespace-uri()='']" />
<b:property distinguished="true" xpath="/*[local-name()='Entry'
and namespace-uri()='']/*[local-name()='ShortDescription' and
namespace-uri()='']" />
<b:property distinguished="true" xpath="/*[local-name()='Entry'
and namespace-uri()='']/*[local-name()='LongDescription' and
namespace-uri()='']" />
<b:property distinguished="true" xpath="/*[local-name()='Entry'
and namespace-uri()='']/*[local-name()='URL' and namespace-uri()='']" />
<b:property distinguished="true" xpath="/*[local-name()='Entry'
and namespace-uri()='']/*[local-name()='ImageURL' and namespace-uri()='']" />
<b:property distinguished="true" xpath="/*[local-name()='Entry'
and namespace-uri()='']/*[local-name()='LandingURL' and namespace-uri()='']"
/>
<b:property distinguished="true" xpath="/*[local-name()='Entry'
and namespace-uri()='']/*[local-name()='Category' and namespace-uri()='']" />
<b:property distinguished="true" xpath="/*[local-name()='Entry'
and namespace-uri()='']/*[local-name()='Price' and namespace-uri()='']" />
<b:property distinguished="true" xpath="/*[local-name()='Entry'
and namespace-uri()='']/*[local-name()='Stock' and namespace-uri()='']" />
<b:property distinguished="true" xpath="/*[local-name()='Entry'
and namespace-uri()='']/*[local-name()='Condition' and namespace-uri()='']" />
<b:property distinguished="true" xpath="/*[local-name()='Entry'
and namespace-uri()='']/*[local-name()='ShippingCost' and
namespace-uri()='']" />
</b:properties>
</xs:appinfo>
</xs:annotation>
<xs:complexType>
<xs:sequence>
<xs:element name="ItemId" nillable="true" type="xs:string" />
<xs:element name="Name" nillable="true" type="xs:string" />
<xs:element name="Manufacturer" nillable="true" type="xs:string" />
<xs:element name="ShortDescription" nillable="true" type="xs:string"
/>
<xs:element name="LongDescription" nillable="true" type="xs:string" />
<xs:element name="URL" nillable="true" type="xs:string" />
<xs:element name="ImageURL" nillable="true" type="xs:string" />
<xs:element name="LandingURL" nillable="true" type="xs:string" />
<xs:element name="Category" nillable="true" type="xs:string" />
<xs:element name="Price" nillable="true" type="xs:float" />
<xs:element default="-1" name="Stock" type="xs:integer" />
<xs:element name="Condition" nillable="true" type="xs:string" />
<xs:element default="0.00" name="ShippingCost" type="xs:float" />
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:schema>



I've been following the SDK samples but nothing I do can get the pipeline to
work. I'm calling it in the orchestration using
Microsoft.XLANGs.Pipeline.XLANGPipelineManager.Exe cuteSendPipeline.

The messages sent to the pipeline are correct and valid. Any thoughts? I
basically set the document and envelope schema properties in the xml
assembler and it just doesnt work.
 #2  
12-12-08, 10:39 PM
Dan Rosanova
Are you trying to add multiple root elements to the output message or
something? I would try to debug and test with the pipeline component
tools or with one of the frameworks like:
http://www.modhul.com/2008/03/11/tes...sting-library/

Kind Regards,
-Dan
 #3  
12-13-08, 11:42 AM
Tomas Restrepo [MVP]
Sometimes the XML Assembler gets confused by the definition of the
envelope. Notice that your envelope already defines an Entry element and
declares <xs:any/> under it.

Try declaring it like this instead and see if that makes a difference:
<?xml version="1.0" encoding="utf-16"?>
<xs:schema xmlns:b="http://schemas.microsoft.com/BizTalk/2003"
xmlns:xs="http://www.w3.org/2001/XMLSchema">
<xs:annotation>
<xs:appinfo>
<b:schemaInfo is_envelope="yes"
xmlns:b="http://schemas.microsoft.com/BizTalk/2003" />
</xs:appinfo>
</xs:annotation>
<xs:element name="Feed">
<xs:annotation>
<xs:appinfo>
<b:recordInfo body_xpath="/*[local-name()='Feed' and
namespace-uri()='']" />
</xs:appinfo>
</xs:annotation>
<xs:complexType>
<xs:sequence>
<xs:any maxOccurs='unbounded'/>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:schema>
Similar Threads
Error when Creating Pipeline

Hello, I'm trying to create a receive pipeline. When I try to select a document schema in the XML disassembler pipeline component I get the error message "The system cannot...

Creating a hashtable in the pipeline?

I would like to create a hashtable with the result from a pipe. The mission is to read a file and create a hashtable with a linenumber. Like lnum line 1 ...

Help creating a pipeline object

Hi, I am trying to create an instance of a BizTalk Pipeline object from within a ..net method. The code would be something like...

Problem with Custom Send Pipeline Component

Hi, We are using the FixMsg component to prepend a String to an XML message before it is sent out of BizTalk to Siebel. We have noticed some unknown characters passing...

creating custom pipeline

I am trying to do the following. When a data file is dropped in folder, i want to write out a XML file that contains the incoming dat file name. I do not care about the...


All times are GMT. The time now is 08:36 AM. | Privacy Policy