Dear all,
I have an xml code to parse automatically using sp_xml_preparedocument. It's
seemed to be correct, but there're some incomprehensible errors when it's
parsed.
XML:
<Body>
<sen:SigEnvelope xmlns:sen="urn:www-com:dsig:env:v1.0">
<sen:PrimarySig>
<dsig:SigValue
xmlns:dsig="urn:www-com:dsig:v1.0">RpxoZ6vnUXn9/nTSC9rkqeWtlNYTc+RxWZ5JbdFW6Vlg+ULhx7uDJFPRIdqxXJn IugF2xzlpgjCtmh4hz9tLAg==</dsig:SigValue>
</sen:PrimarySig>
<sen:ControlSig>
<dsig:SigValue
xmlns:dsig="urn:www-com:dsig:v1.0">i01zjNFRrTgxMbwnCmfHRE+MFmA6dq53xKt FPCQ9JBKI8YLPaCiSRL97WDe761bEELFtlFQ3O/H9GSmOCx+siw==</dsig:SigValue>
</sen:ControlSig>
<sen:Object>
<PacketEPD xmlns="urn:www-com:ed:v1.0" EDNo="1" EDDate="2003-04-14"
EDAuthor="4525545000" EDQuantity="2" Sum="1">
<ED101 xmlns="urn:www-com:ed:v1.0" EDNo="7" EDDate="2003-04-14">
<AccDoc AccDocNo="4" AccDocDate="2003-04-15" />
</ED101>
<ED101 xmlns="urn:www-com:ed:v1.0" EDNo="8" EDDate="2003-04-15">
<AccDoc AccDocNo="4" AccDocDate="2003-04-15" />
</ED101>
<ED101 xmlns="urn:www-com:ed:v1.0" EDNo="9" EDDate="2003-04-16">
<AccDoc AccDocNo="4" AccDocDate="2003-04-15" />
</ED101>
</PacketEPD>
</sen:Object>
</sen:SigEnvelope>
</Body>
SQL:
DECLARE @.ns VARCHAR(200)
SET @.ns = '<ROOT
xmlns:sen="urn:cbr-ru:dsig:env:v1.0"
xmlns:dsig="urn:cbr-ru:dsig:v1.0"
xmlns:obj="urn:cbr-ru:ed:v1.0"
/>'
exec sp_xml_preparedocument @.idoc OUTPUT, @.doc , @.ns
SELECT * FROM OPENXML (@.idoc, '//obj:ED101',8)
WITH (
PrimarySigvarchar(10) '//sen:PrimarySig',
ControlSigvarchar(10) '//sen:ControlSig' ,
PEPD_EDNovarchar(10)'//obj:PacketEPD/@.EDNo',
PEPD_EDAuthorvarchar(10)'//obj:PacketEPD/@.EDAuthor',
ED101_EDDatevarchar(10)'@.EDDate' ,
ED101_EDNovarchar(10)'@.EDNo'
)
exec sp_xml_removedocument @.idoc
When executing I got an error :
Server: Msg 6603, Level 16, State 1, Procedure sp_xml_preparedocument, Line 35
XML parsing error: The following tags were not closed: Body,
sen:SigEnvelope, sen:Object, PacketEPD, ED101.
But when I remain 2 <ED101 ...> blocks intead of 3 query runs correctly.
What is wrong?!
Thank you in advance,
alex
I am not seeing that error running against Microsoft SQL Server 2000 -
8.00.760.
What version of Sql Server are you using? And can you please send the
exact TSql script you are using?
Andrew Conrad
Microsoft Corp
http://blogs.msdn.com/aconrad
Subscribe to:
Post Comments (Atom)
No comments:
Post a Comment