Hi guys,

I'm using XMLrecords plugin to convert my XML to RecordList but it is failing.

Please find the XML below which I'm trying to serialize into RecordList

"<diffgr:diffgram xmlns:msdata=""urn:schemas-microsoft-com:xml-msdata"" xmlns:diffgr=""urn:schemas-microsoft-com:xml-diffgram-v1"">
<DocumentElement xmlns="""">
<EmpAttendance diffgr:id=""xxxxxxx"" msdata:rowOrder=""0"">
<DT></DT>
<PERSON_ID></PERSON_ID>
<PLAN></PLAN>
<ATTENDANCE></ATTENDANCE>
<SIGN_IN></SIGN_IN>
<SIGN_OUT></SIGN_OUT>
<PRESENT></PRESENT>
<ABSENT_REASON></ABSENT_REASON>
<OVERTIME></OVERTIME>
<BREAK></BREAK>
<PERSONAL></PERSONAL>
<OFFICIAL></OFFICIAL>
<VIOLATION></VIOLATION>
<FLEXI></FLEXI>
<STATUS></STATUS>
</EmpAttendance>
</DocumentElement>
</diffgr:diffgram>"

This is how my structure looks:

And this the error from service center"

Parameter 'RecordList' must be a valid RecordList of Records of the type that you want to deserialize.

I doubt that the XML tag diffgr:diffgram is not matching the structure as I can't able to give ":"(colon) in the structure name.

Need a solution to this.

Hi Dear,

Your xml is not well formed. Its giving error "Unable to parse any XML input. Error on line 1: The value of the attribute "prefix="xmlns",localpart="msdata",rawname="xmlns:msdata"" is invalid. Prefixed namespace bindings may not be empty." When try to format.

Issue is " 2 times in this xml, use " instead of "", it will work.

Thanks.

Solution

Dear Vikas Sharma,

Thanks for the response.

I have replaced " with ' now it is a valid XML.

The other issue i was facing is that the XML tag <diffgr:diffgram> is not matching with the structure name diffgr_diffgram. For that, I have found a solution. I have made few changes to the XMLConfig property of the XMLtoRecordList action, for others who are facing a similar issue kindly refer to the below image.

 

Here, I have replaced the EffectiveName of the tag <diffgr:diffgram> to "diffgr" and have named the structure with the same name "diffgr".

Cheers,

Hafizudin M

Solution