1.1 vs. 2.0 and DataSet.ReadXML(StringReader)

M

MattB

I have a ASP.Net 1.1 application I'm working towards moving to ASP.Net 2.0.
The application gets it's data from a COM layer which delivers ADO
rowsets in the form of a string.
In ASP.net 1.1, I came up with the following method to consume XML from
a string and convert it to a dataset and it works well:

Public Shared Function deSerializeDS(ByVal xml As String)
Dim ds As New DataSet
If Not IsNothing(xml) Then
Dim XMLRead As New System.IO.StringReader(xml)
Try
ds.ReadXml(XMLRead)
XMLRead.Close()
Catch ex As Exception
Return Nothing
End Try
XMLRead = Nothing
End If
Return ds
End Function

In ASP.Net 2.0 I try the same thing with the same string and I get the
following exception:

+System.Data.DuplicateNameException {"A column named 'name' already
belongs to this DataTable."} System.Data.DuplicateNameException

I'm pasting an example of the XML string below. Anyone got any ideas? I
was getting a weird "phantom" table(0) in asp.net 1.1 and I'm guessing
2.0 might be a little more strict with whatever created that table in
1.1 and is now rejecting it. That table has one column called data_Id,
and one row. The real data I was after always ended up in table(1).

Thanks!,
Matt


Here's the XML string (also attached as a txt if that works):
----------------------------------------------

xml "<xml xmlns:s='uuid:BDC6E3F0-6DA3-11d1-A2A3-00AA00C14882'
xmlns:dt='uuid:C2F41010-65B3-11d1-A29F-00AA00C14882'
xmlns:rs='urn:schemas-microsoft-com:rowset'
xmlns:z='#RowsetSchema'>
<s:Schema id='RowsetSchema'>
<s:ElementType name='row' content='eltOnly' rs:CommandTimeout='30'>
<s:AttributeType name='guest_no' rs:number='1' rs:writeunknown='true'>
<s:datatype dt:type='number' rs:dbtype='numeric' dt:maxLength='19'
rs:scale='0' rs:precision='17' rs:fixedlength='true'
rs:maybenull='false'/>
</s:AttributeType>
<s:AttributeType name='last_mod' rs:number='2' rs:writeunknown='true'>
<s:datatype dt:type='int' dt:maxLength='4' rs:precision='10'
rs:fixedlength='true' rs:maybenull='false'/>
</s:AttributeType>
<s:AttributeType name='salespoint' rs:number='3' rs:writeunknown='true'>
<s:datatype dt:type='string' rs:dbtype='str' dt:maxLength='6'
rs:fixedlength='true' rs:maybenull='false'/>
</s:AttributeType>
<s:AttributeType name='operator' rs:number='4' rs:writeunknown='true'>
<s:datatype dt:type='string' rs:dbtype='str' dt:maxLength='6'
rs:fixedlength='true' rs:maybenull='false'/>
</s:AttributeType>
<s:AttributeType name='date_time' rs:number='5' rs:writeunknown='true'>
<s:datatype dt:type='dateTime' rs:dbtype='timestamp'
dt:maxLength='16' rs:scale='3' rs:precision='23' rs:fixedlength='true'
rs:maybenull='false'/>
</s:AttributeType>
<s:AttributeType name='parent_no' rs:number='6' rs:writeunknown='true'>
<s:datatype dt:type='number' rs:dbtype='numeric' dt:maxLength='19'
rs:scale='0' rs:precision='17' rs:fixedlength='true'
rs:maybenull='false'/>
</s:AttributeType>
<s:AttributeType name='addit_no' rs:number='7' rs:writeunknown='true'>
<s:datatype dt:type='int' dt:maxLength='4' rs:precision='10'
rs:fixedlength='true' rs:maybenull='false'/>
</s:AttributeType>
<s:AttributeType name='addit_no2' rs:number='8' rs:writeunknown='true'>
<s:datatype dt:type='int' dt:maxLength='4' rs:precision='10'
rs:fixedlength='true' rs:maybenull='false'/>
</s:AttributeType>
<s:AttributeType name='trans_no' rs:number='9' rs:writeunknown='true'>
<s:datatype dt:type='number' rs:dbtype='numeric' dt:maxLength='19'
rs:scale='0' rs:precision='17' rs:fixedlength='true'
rs:maybenull='false'/>
</s:AttributeType>
<s:AttributeType name='guestgroup' rs:number='10' rs:writeunknown='true'>
<s:datatype dt:type='string' rs:dbtype='str' dt:maxLength='10'
rs:maybenull='false'/>
</s:AttributeType>
<s:AttributeType name='salute' rs:number='11' rs:writeunknown='true'>
<s:datatype dt:type='string' rs:dbtype='str' dt:maxLength='4'
rs:maybenull='false'/>
</s:AttributeType>
<s:AttributeType name='first_name' rs:number='12' rs:writeunknown='true'>
<s:datatype dt:type='string' rs:dbtype='str' dt:maxLength='15'
rs:maybenull='false'/>
</s:AttributeType>
<s:AttributeType name='last_name' rs:number='13' rs:writeunknown='true'>
<s:datatype dt:type='string' rs:dbtype='str' dt:maxLength='20'
rs:maybenull='false'/>
</s:AttributeType>
<s:AttributeType name='e_mail' rs:number='14' rs:writeunknown='true'>
<s:datatype dt:type='string' rs:dbtype='str' dt:maxLength='100'
rs:maybenull='false'/>
</s:AttributeType>
<s:AttributeType name='birth_date' rs:number='15' rs:nullable='true'
rs:writeunknown='true'>
<s:datatype dt:type='dateTime' rs:dbtype='timestamp'
dt:maxLength='16' rs:scale='3' rs:precision='23' rs:fixedlength='true'/>
</s:AttributeType>
<s:AttributeType name='gender' rs:number='16' rs:writeunknown='true'>
<s:datatype dt:type='string' rs:dbtype='str' dt:maxLength='1'
rs:fixedlength='true' rs:maybenull='false'/>
</s:AttributeType>
<s:AttributeType name='cc_swipe' rs:number='17' rs:writeunknown='true'>
<s:datatype dt:type='string' rs:dbtype='str' dt:maxLength='200'
rs:maybenull='false'/>
</s:AttributeType>
<s:AttributeType name='cc_number' rs:number='18' rs:writeunknown='true'>
<s:datatype dt:type='string' rs:dbtype='str' dt:maxLength='32'
rs:maybenull='false'/>
</s:AttributeType>
<s:AttributeType name='mug_date' rs:number='19' rs:nullable='true'
rs:writeunknown='true'>
<s:datatype dt:type='dateTime' rs:dbtype='timestamp'
dt:maxLength='16' rs:scale='3' rs:precision='23' rs:fixedlength='true'/>
</s:AttributeType>
<s:AttributeType name='notes' rs:number='20' rs:maydefer='true'
rs:writeunknown='true'>
<s:datatype dt:type='string' rs:dbtype='str' dt:maxLength='2147483647'
rs:long='true' rs:maybenull='false'/>
</s:AttributeType>
<s:AttributeType name='e_message' rs:number='21' rs:maydefer='true'
rs:writeunknown='true'>
<s:datatype dt:type='string' rs:dbtype='str' dt:maxLength='2147483647'
rs:long='true' rs:maybenull='false'/>
</s:AttributeType>
<s:AttributeType name='check_bx1' rs:number='22' rs:writeunknown='true'>
<s:datatype dt:type='boolean' dt:maxLength='2' rs:fixedlength='true'
rs:maybenull='false'/>
</s:AttributeType>
<s:AttributeType name='check_bx2' rs:number='23' rs:writeunknown='true'>
<s:datatype dt:type='boolean' dt:maxLength='2' rs:fixedlength='true'
rs:maybenull='false'/>
</s:AttributeType>
<s:AttributeType name='check_bx3' rs:number='24' rs:writeunknown='true'>
<s:datatype dt:type='boolean' dt:maxLength='2' rs:fixedlength='true'
rs:maybenull='false'/>
</s:AttributeType>
<s:AttributeType name='check_bx4' rs:number='25' rs:writeunknown='true'>
<s:datatype dt:type='boolean' dt:maxLength='2' rs:fixedlength='true'
rs:maybenull='false'/>
</s:AttributeType>
<s:AttributeType name='check_bx5' rs:number='26' rs:writeunknown='true'>
<s:datatype dt:type='boolean' dt:maxLength='2' rs:fixedlength='true'
rs:maybenull='false'/>
</s:AttributeType>
<s:AttributeType name='check_bx6' rs:number='27' rs:writeunknown='true'>
<s:datatype dt:type='boolean' dt:maxLength='2' rs:fixedlength='true'
rs:maybenull='false'/>
</s:AttributeType>
<s:AttributeType name='check_bx7' rs:number='28' rs:writeunknown='true'>
<s:datatype dt:type='boolean' dt:maxLength='2' rs:fixedlength='true'
rs:maybenull='false'/>
</s:AttributeType>
<s:AttributeType name='check_bx8' rs:number='29' rs:writeunknown='true'>
<s:datatype dt:type='boolean' dt:maxLength='2' rs:fixedlength='true'
rs:maybenull='false'/>
</s:AttributeType>
<s:AttributeType name='check_bx9' rs:number='30' rs:writeunknown='true'>
<s:datatype dt:type='boolean' dt:maxLength='2' rs:fixedlength='true'
rs:maybenull='false'/>
</s:AttributeType>
<s:AttributeType name='check_bx10' rs:number='31' rs:writeunknown='true'>
<s:datatype dt:type='boolean' dt:maxLength='2' rs:fixedlength='true'
rs:maybenull='false'/>
</s:AttributeType>
<s:AttributeType name='check_bx11' rs:number='32' rs:writeunknown='true'>
<s:datatype dt:type='boolean' dt:maxLength='2' rs:fixedlength='true'
rs:maybenull='false'/>
</s:AttributeType>
<s:AttributeType name='check_bx12' rs:number='33' rs:writeunknown='true'>
<s:datatype dt:type='boolean' dt:maxLength='2' rs:fixedlength='true'
rs:maybenull='false'/>
</s:AttributeType>
<s:AttributeType name='check_bx13' rs:number='34' rs:writeunknown='true'>
<s:datatype dt:type='boolean' dt:maxLength='2' rs:fixedlength='true'
rs:maybenull='false'/>
</s:AttributeType>
<s:AttributeType name='check_bx14' rs:number='35' rs:writeunknown='true'>
<s:datatype dt:type='boolean' dt:maxLength='2' rs:fixedlength='true'
rs:maybenull='false'/>
</s:AttributeType>
<s:AttributeType name='check_bx15' rs:number='36' rs:writeunknown='true'>
<s:datatype dt:type='boolean' dt:maxLength='2' rs:fixedlength='true'
rs:maybenull='false'/>
</s:AttributeType>
<s:AttributeType name='number_1' rs:number='37' rs:writeunknown='true'>
<s:datatype dt:type='int' dt:maxLength='4' rs:precision='10'
rs:fixedlength='true' rs:maybenull='false'/>
</s:AttributeType>
<s:AttributeType name='number_2' rs:number='38' rs:writeunknown='true'>
<s:datatype dt:type='int' dt:maxLength='4' rs:precision='10'
rs:fixedlength='true' rs:maybenull='false'/>
</s:AttributeType>
<s:AttributeType name='number_3' rs:number='39' rs:writeunknown='true'>
<s:datatype dt:type='int' dt:maxLength='4' rs:precision='10'
rs:fixedlength='true' rs:maybenull='false'/>
</s:AttributeType>
<s:AttributeType name='number_4' rs:number='40' rs:writeunknown='true'>
<s:datatype dt:type='number' rs:dbtype='numeric' dt:maxLength='19'
rs:scale='2' rs:precision='8' rs:fixedlength='true'
rs:maybenull='false'/>
</s:AttributeType>
<s:AttributeType name='number_5' rs:number='41' rs:writeunknown='true'>
<s:datatype dt:type='number' rs:dbtype='numeric' dt:maxLength='19'
rs:scale='2' rs:precision='8' rs:fixedlength='true'
rs:maybenull='false'/>
</s:AttributeType>
<s:AttributeType name='text_1' rs:number='42' rs:writeunknown='true'>
<s:datatype dt:type='string' rs:dbtype='str' dt:maxLength='15'
rs:maybenull='false'/>
</s:AttributeType>
<s:AttributeType name='text_2' rs:number='43' rs:writeunknown='true'>
<s:datatype dt:type='string' rs:dbtype='str' dt:maxLength='15'
rs:maybenull='false'/>
</s:AttributeType>
<s:AttributeType name='text_3' rs:number='44' rs:writeunknown='true'>
<s:datatype dt:type='string' rs:dbtype='str' dt:maxLength='15'
rs:maybenull='false'/>
</s:AttributeType>
<s:AttributeType name='text_4' rs:number='45' rs:writeunknown='true'>
<s:datatype dt:type='string' rs:dbtype='str' dt:maxLength='15'
rs:maybenull='false'/>
</s:AttributeType>
<s:AttributeType name='text_5' rs:number='46' rs:writeunknown='true'>
<s:datatype dt:type='string' rs:dbtype='str' dt:maxLength='30'
rs:maybenull='false'/>
</s:AttributeType>
<s:AttributeType name='text_6' rs:number='47' rs:writeunknown='true'>
<s:datatype dt:type='string' rs:dbtype='str' dt:maxLength='10'
rs:maybenull='false'/>
</s:AttributeType>
<s:AttributeType name='text_7' rs:number='48' rs:writeunknown='true'>
<s:datatype dt:type='string' rs:dbtype='str' dt:maxLength='10'
rs:maybenull='false'/>
</s:AttributeType>
<s:AttributeType name='text_8' rs:number='49' rs:writeunknown='true'>
<s:datatype dt:type='string' rs:dbtype='str' dt:maxLength='10'
rs:maybenull='false'/>
</s:AttributeType>
<s:AttributeType name='memo_1' rs:number='50' rs:maydefer='true'
rs:writeunknown='true'>
<s:datatype dt:type='string' rs:dbtype='str' dt:maxLength='2147483647'
rs:long='true' rs:maybenull='false'/>
</s:AttributeType>
<s:AttributeType name='memo_2' rs:number='51' rs:maydefer='true'
rs:writeunknown='true'>
<s:datatype dt:type='string' rs:dbtype='str' dt:maxLength='2147483647'
rs:long='true' rs:maybenull='false'/>
</s:AttributeType>
<s:AttributeType name='memo_3' rs:number='52' rs:maydefer='true'
rs:writeunknown='true'>
<s:datatype dt:type='string' rs:dbtype='str' dt:maxLength='2147483647'
rs:long='true' rs:maybenull='false'/>
</s:AttributeType>
<s:AttributeType name='date_1' rs:number='53' rs:nullable='true'
rs:writeunknown='true'>
<s:datatype dt:type='dateTime' rs:dbtype='timestamp'
dt:maxLength='16' rs:scale='3' rs:precision='23' rs:fixedlength='true'/>
</s:AttributeType>
<s:AttributeType name='datetime_1' rs:number='54' rs:nullable='true'
rs:writeunknown='true'>
<s:datatype dt:type='dateTime' rs:dbtype='timestamp'
dt:maxLength='16' rs:scale='3' rs:precision='23' rs:fixedlength='true'/>
</s:AttributeType>
<s:AttributeType name='gfwdstatus' rs:number='55' rs:writeunknown='true'>
<s:datatype dt:type='ui1' dt:maxLength='1' rs:precision='3'
rs:fixedlength='true' rs:maybenull='false'/>
</s:AttributeType>
<s:AttributeType name='guest_id' rs:number='56' rs:writeunknown='true'>
<s:datatype dt:type='int' dt:maxLength='4' rs:precision='10'
rs:fixedlength='true' rs:maybenull='false'/>
</s:AttributeType>
<s:AttributeType name='relation' rs:number='57' rs:writeunknown='true'>
<s:datatype dt:type='i2' dt:maxLength='2' rs:precision='5'
rs:fixedlength='true' rs:maybenull='false'/>
</s:AttributeType>
<s:AttributeType name='role_no' rs:number='58' rs:writeunknown='true'>
<s:datatype dt:type='int' dt:maxLength='4' rs:precision='10'
rs:fixedlength='true' rs:maybenull='false'/>
</s:AttributeType>
<s:AttributeType name='acct_name' rs:number='59' rs:writeunknown='true'>
<s:datatype dt:type='string' rs:dbtype='str' dt:maxLength='10'
rs:maybenull='false'/>
</s:AttributeType>
<s:AttributeType name='vipcode' rs:number='60' rs:writeunknown='true'>
<s:datatype dt:type='ui1' dt:maxLength='1' rs:precision='3'
rs:fixedlength='true' rs:maybenull='false'/>
</s:AttributeType>
<s:AttributeType name='height' rs:number='61' rs:writeunknown='true'>
<s:datatype dt:type='i2' dt:maxLength='2' rs:precision='5'
rs:fixedlength='true' rs:maybenull='false'/>
</s:AttributeType>
<s:AttributeType name='weight' rs:number='62' rs:writeunknown='true'>
<s:datatype dt:type='i2' dt:maxLength='2' rs:precision='5'
rs:fixedlength='true' rs:maybenull='false'/>
</s:AttributeType>
<s:AttributeType name='height_m' rs:number='63' rs:writeunknown='true'>
<s:datatype dt:type='i2' dt:maxLength='2' rs:precision='5'
rs:fixedlength='true' rs:maybenull='false'/>
</s:AttributeType>
<s:AttributeType name='weight_m' rs:number='64' rs:writeunknown='true'>
<s:datatype dt:type='i2' dt:maxLength='2' rs:precision='5'
rs:fixedlength='true' rs:maybenull='false'/>
</s:AttributeType>
<s:AttributeType name='no_mail' rs:number='65' rs:writeunknown='true'>
<s:datatype dt:type='boolean' dt:maxLength='2' rs:fixedlength='true'
rs:maybenull='false'/>
</s:AttributeType>
<s:AttributeType name='no_email' rs:number='66' rs:writeunknown='true'>
<s:datatype dt:type='boolean' dt:maxLength='2' rs:fixedlength='true'
rs:maybenull='false'/>
</s:AttributeType>
<s:AttributeType name='no_phone' rs:number='67' rs:writeunknown='true'>
<s:datatype dt:type='boolean' dt:maxLength='2' rs:fixedlength='true'
rs:maybenull='false'/>
</s:AttributeType>
<s:AttributeType name='addlink_id' rs:number='68' rs:nullable='true'
rs:writeunknown='true'>
<s:datatype dt:type='number' rs:dbtype='numeric' dt:maxLength='19'
rs:scale='0' rs:precision='17' rs:fixedlength='true'/>
</s:AttributeType>
<s:AttributeType name='address_id' rs:number='69' rs:nullable='true'
rs:writeunknown='true'>
<s:datatype dt:type='number' rs:dbtype='numeric' dt:maxLength='19'
rs:scale='0' rs:precision='17' rs:fixedlength='true'/>
</s:AttributeType>
<s:AttributeType name='c69' rs:name='last_mod' rs:number='70'
rs:nullable='true' rs:writeunknown='true'>
<s:datatype dt:type='int' dt:maxLength='4' rs:precision='10'
rs:fixedlength='true'/>
</s:AttributeType>
<s:AttributeType name='c70' rs:name='address_id' rs:number='71'
rs:nullable='true' rs:writeunknown='true'>
<s:datatype dt:type='number' rs:dbtype='numeric' dt:maxLength='19'
rs:scale='0' rs:precision='17' rs:fixedlength='true'/>
</s:AttributeType>
<s:AttributeType name='c71' rs:name='operator' rs:number='72'
rs:nullable='true' rs:writeunknown='true'>
<s:datatype dt:type='string' rs:dbtype='str' dt:maxLength='6'
rs:fixedlength='true'/>
</s:AttributeType>
<s:AttributeType name='c72' rs:name='salespoint' rs:number='73'
rs:nullable='true' rs:writeunknown='true'>
<s:datatype dt:type='string' rs:dbtype='str' dt:maxLength='6'
rs:fixedlength='true'/>
</s:AttributeType>
<s:AttributeType name='c73' rs:name='date_time' rs:number='74'
rs:nullable='true' rs:writeunknown='true'>
<s:datatype dt:type='dateTime' rs:dbtype='timestamp'
dt:maxLength='16' rs:scale='3' rs:precision='23' rs:fixedlength='true'/>
</s:AttributeType>
<s:AttributeType name='c74' rs:name='last_mod' rs:number='75'
rs:nullable='true' rs:writeunknown='true'>
<s:datatype dt:type='int' dt:maxLength='4' rs:precision='10'
rs:fixedlength='true'/>
</s:AttributeType>
<s:AttributeType name='addr_type' rs:number='76' rs:nullable='true'
rs:writeunknown='true'>
<s:datatype dt:type='ui1' dt:maxLength='1' rs:precision='3'
rs:fixedlength='true'/>
</s:AttributeType>
<s:AttributeType name='address' rs:number='77' rs:nullable='true'
rs:writeunknown='true'>
<s:datatype dt:type='string' rs:dbtype='str' dt:maxLength='30'/>
</s:AttributeType>
<s:AttributeType name='address2' rs:number='78' rs:nullable='true'
rs:writeunknown='true'>
<s:datatype dt:type='string' rs:dbtype='str' dt:maxLength='30'/>
</s:AttributeType>
<s:AttributeType name='city' rs:number='79' rs:nullable='true'
rs:writeunknown='true'>
<s:datatype dt:type='string' rs:dbtype='str' dt:maxLength='25'/>
</s:AttributeType>
<s:AttributeType name='state' rs:number='80' rs:nullable='true'
rs:writeunknown='true'>
<s:datatype dt:type='string' rs:dbtype='str' dt:maxLength='3'
rs:fixedlength='true'/>
</s:AttributeType>
<s:AttributeType name='zip' rs:number='81' rs:nullable='true'
rs:writeunknown='true'>
<s:datatype dt:type='string' rs:dbtype='str' dt:maxLength='10'/>
</s:AttributeType>
<s:AttributeType name='country' rs:number='82' rs:nullable='true'
rs:writeunknown='true'>
<s:datatype dt:type='string' rs:dbtype='str' dt:maxLength='10'/>
</s:AttributeType>
<s:AttributeType name='cntry_cod' rs:number='83' rs:nullable='true'
rs:writeunknown='true'>
<s:datatype dt:type='string' rs:dbtype='str' dt:maxLength='3'
rs:fixedlength='true'/>
</s:AttributeType>
<s:AttributeType name='area_code' rs:number='84' rs:nullable='true'
rs:writeunknown='true'>
<s:datatype dt:type='string' rs:dbtype='str' dt:maxLength='5'
rs:fixedlength='true'/>
</s:AttributeType>
<s:AttributeType name='phone' rs:number='85' rs:nullable='true'
rs:writeunknown='true'>
<s:datatype dt:type='string' rs:dbtype='str' dt:maxLength='8'
rs:fixedlength='true'/>
</s:AttributeType>
<s:AttributeType name='cntry_cod2' rs:number='86' rs:nullable='true'
rs:writeunknown='true'>
<s:datatype dt:type='string' rs:dbtype='str' dt:maxLength='3'
rs:fixedlength='true'/>
</s:AttributeType>
<s:AttributeType name='area_cod2' rs:number='87' rs:nullable='true'
rs:writeunknown='true'>
<s:datatype dt:type='string' rs:dbtype='str' dt:maxLength='5'
rs:fixedlength='true'/>
</s:AttributeType>
<s:AttributeType name='phone2' rs:number='88' rs:nullable='true'
rs:writeunknown='true'>
<s:datatype dt:type='string' rs:dbtype='str' dt:maxLength='8'
rs:fixedlength='true'/>
</s:AttributeType>
<s:AttributeType name='fax_ccode' rs:number='89' rs:nullable='true'
rs:writeunknown='true'>
<s:datatype dt:type='string' rs:dbtype='str' dt:maxLength='3'
rs:fixedlength='true'/>
</s:AttributeType>
<s:AttributeType name='fax_acode' rs:number='90' rs:nullable='true'
rs:writeunknown='true'>
<s:datatype dt:type='string' rs:dbtype='str' dt:maxLength='5'
rs:fixedlength='true'/>
</s:AttributeType>
<s:AttributeType name='fax_phone' rs:number='91' rs:nullable='true'
rs:writeunknown='true'>
<s:datatype dt:type='string' rs:dbtype='str' dt:maxLength='8'
rs:fixedlength='true'/>
</s:AttributeType>
<s:AttributeType name='company' rs:number='92' rs:nullable='true'
rs:writeunknown='true'>
<s:datatype dt:type='string' rs:dbtype='str' dt:maxLength='25'/>
</s:AttributeType>
<s:AttributeType name='has_photo' rs:number='93'>
<s:datatype dt:type='int' dt:maxLength='4' rs:precision='10'
rs:fixedlength='true' rs:maybenull='false'/>
</s:AttributeType>
<s:extends type='rs:rowbase'/>
</s:ElementType>
</s:Schema>
<rs:data>
<z:row guest_no='568467000000' last_mod='584443' salespoint='WEB1 '
operator='X ' date_time='2004-06-02T17:22:13.100000000'
parent_no='0' addit_no='0' addit_no2='0' trans_no='0'
guestgroup='' salute='' first_name='joe' last_name='schmoe'
e_mail='(e-mail address removed)' birth_date='1965-01-01T00:00:00'
gender=' ' cc_swipe='' cc_number='' notes='' e_message=''
check_bx1='False' check_bx2='False' check_bx3='False'
check_bx4='False' check_bx5='False' check_bx6='False'
check_bx7='False' check_bx8='False' check_bx9='False'
check_bx10='False' check_bx11='False' check_bx12='False'
check_bx13='False' check_bx14='False' check_bx15='False'
number_1='0' number_2='0' number_3='0' number_4='.00'
number_5='.00' text_1='' text_2='' text_3='' text_4=''
text_5='' text_6='' text_7='' text_8='' memo_1='' memo_2=''
memo_3='' gfwdstatus='1' guest_id='0' relation='0' role_no='0'
acct_name='' vipcode='0' height='0' weight='0' height_m='0'
weight_m='0' no_mail='False' no_email='False' no_phone='False'
addlink_id='69000000' address_id='60518000000' c69='45337'
c70='60518000000' c71='ADMIN ' c72='MATTB ' c73='2005-11-11T09:51:51'
c74='60610' addr_type='0' address='1 MAIN '
address2=' ' city='Gunnison
'
state='CO ' zip='81230 ' country=' ' cntry_cod=' '
area_code='(970)' phone='641-9999' cntry_cod2=' ' area_cod2=' '
phone2=' ' fax_ccode=' ' fax_acode=' ' fax_phone=' '
company=' ' has_photo='0'/>
<z:row guest_no='568467000000' last_mod='584443' salespoint='WEB1 '
operator='X ' date_time='2004-06-02T17:22:13.100000000'
parent_no='0' addit_no='0' addit_no2='0' trans_no='0'
guestgroup='' salute='' first_name='joe' last_name='schmoe'
e_mail='(e-mail address removed)' birth_date='1965-01-01T00:00:00'
gender=' ' cc_swipe='' cc_number='' notes='' e_message=''
check_bx1='False' check_bx2='False' check_bx3='False'
check_bx4='False' check_bx5='False' check_bx6='False'
check_bx7='False' check_bx8='False' check_bx9='False'
check_bx10='False' check_bx11='False' check_bx12='False'
check_bx13='False' check_bx14='False' check_bx15='False'
number_1='0' number_2='0' number_3='0' number_4='.00'
number_5='.00' text_1='' text_2='' text_3='' text_4=''
text_5='' text_6='' text_7='' text_8='' memo_1='' memo_2=''
memo_3='' gfwdstatus='1' guest_id='0' relation='0' role_no='0'
acct_name='' vipcode='0' height='0' weight='0' height_m='0'
weight_m='0' no_mail='False' no_email='False' no_phone='False'
addlink_id='71000000' address_id='60520000000' c69='45338'
c70='60520000000' c71='ADMIN ' c72='MATTB ' c73='2005-11-11T09:54:16'
c74='60611' addr_type='10' address='122 N MAIN '
address2=' ' city='Gunnison
'
state='CO ' zip='81230 ' country=' ' cntry_cod=' '
area_code='(970)' phone='641-0000' cntry_cod2=' ' area_cod2=' '
phone2=' ' fax_ccode=' ' fax_acode=' ' fax_phone=' '
company='SIRIUSWARE ' has_photo='0'/>
</rs:data>
</xml>" String

xml "<xml xmlns:s='uuid:BDC6E3F0-6DA3-11d1-A2A3-00AA00C14882'
xmlns:dt='uuid:C2F41010-65B3-11d1-A29F-00AA00C14882'
xmlns:rs='urn:schemas-microsoft-com:rowset'
xmlns:z='#RowsetSchema'>
<s:Schema id='RowsetSchema'>
<s:ElementType name='row' content='eltOnly' rs:CommandTimeout='30'>
<s:AttributeType name='guest_no' rs:number='1' rs:writeunknown='true'>
<s:datatype dt:type='number' rs:dbtype='numeric' dt:maxLength='19'
rs:scale='0' rs:precision='17' rs:fixedlength='true' rs:maybenull='false'/>
</s:AttributeType>
<s:AttributeType name='last_mod' rs:number='2' rs:writeunknown='true'>
<s:datatype dt:type='int' dt:maxLength='4' rs:precision='10'
rs:fixedlength='true' rs:maybenull='false'/>
</s:AttributeType>
<s:AttributeType name='salespoint' rs:number='3' rs:writeunknown='true'>
<s:datatype dt:type='string' rs:dbtype='str' dt:maxLength='6'
rs:fixedlength='true' rs:maybenull='false'/>
</s:AttributeType>
<s:AttributeType name='operator' rs:number='4' rs:writeunknown='true'>
<s:datatype dt:type='string' rs:dbtype='str' dt:maxLength='6'
rs:fixedlength='true' rs:maybenull='false'/>
</s:AttributeType>
<s:AttributeType name='date_time' rs:number='5' rs:writeunknown='true'>
<s:datatype dt:type='dateTime' rs:dbtype='timestamp'
dt:maxLength='16' rs:scale='3' rs:precision='23' rs:fixedlength='true'
rs:maybenull='false'/>
</s:AttributeType>
<s:AttributeType name='parent_no' rs:number='6' rs:writeunknown='true'>
<s:datatype dt:type='number' rs:dbtype='numeric' dt:maxLength='19'
rs:scale='0' rs:precision='17' rs:fixedlength='true' rs:maybenull='false'/>
</s:AttributeType>
<s:AttributeType name='addit_no' rs:number='7' rs:writeunknown='true'>
<s:datatype dt:type='int' dt:maxLength='4' rs:precision='10'
rs:fixedlength='true' rs:maybenull='false'/>
</s:AttributeType>
<s:AttributeType name='addit_no2' rs:number='8' rs:writeunknown='true'>
<s:datatype dt:type='int' dt:maxLength='4' rs:precision='10'
rs:fixedlength='true' rs:maybenull='false'/>
</s:AttributeType>
<s:AttributeType name='trans_no' rs:number='9' rs:writeunknown='true'>
<s:datatype dt:type='number' rs:dbtype='numeric' dt:maxLength='19'
rs:scale='0' rs:precision='17' rs:fixedlength='true' rs:maybenull='false'/>
</s:AttributeType>
<s:AttributeType name='guestgroup' rs:number='10' rs:writeunknown='true'>
<s:datatype dt:type='string' rs:dbtype='str' dt:maxLength='10'
rs:maybenull='false'/>
</s:AttributeType>
<s:AttributeType name='salute' rs:number='11' rs:writeunknown='true'>
<s:datatype dt:type='string' rs:dbtype='str' dt:maxLength='4'
rs:maybenull='false'/>
</s:AttributeType>
<s:AttributeType name='first_name' rs:number='12' rs:writeunknown='true'>
<s:datatype dt:type='string' rs:dbtype='str' dt:maxLength='15'
rs:maybenull='false'/>
</s:AttributeType>
<s:AttributeType name='last_name' rs:number='13' rs:writeunknown='true'>
<s:datatype dt:type='string' rs:dbtype='str' dt:maxLength='20'
rs:maybenull='false'/>
</s:AttributeType>
<s:AttributeType name='e_mail' rs:number='14' rs:writeunknown='true'>
<s:datatype dt:type='string' rs:dbtype='str' dt:maxLength='100'
rs:maybenull='false'/>
</s:AttributeType>
<s:AttributeType name='birth_date' rs:number='15' rs:nullable='true'
rs:writeunknown='true'>
<s:datatype dt:type='dateTime' rs:dbtype='timestamp'
dt:maxLength='16' rs:scale='3' rs:precision='23' rs:fixedlength='true'/>
</s:AttributeType>
<s:AttributeType name='gender' rs:number='16' rs:writeunknown='true'>
<s:datatype dt:type='string' rs:dbtype='str' dt:maxLength='1'
rs:fixedlength='true' rs:maybenull='false'/>
</s:AttributeType>
<s:AttributeType name='cc_swipe' rs:number='17' rs:writeunknown='true'>
<s:datatype dt:type='string' rs:dbtype='str' dt:maxLength='200'
rs:maybenull='false'/>
</s:AttributeType>
<s:AttributeType name='cc_number' rs:number='18' rs:writeunknown='true'>
<s:datatype dt:type='string' rs:dbtype='str' dt:maxLength='32'
rs:maybenull='false'/>
</s:AttributeType>
<s:AttributeType name='mug_date' rs:number='19' rs:nullable='true'
rs:writeunknown='true'>
<s:datatype dt:type='dateTime' rs:dbtype='timestamp'
dt:maxLength='16' rs:scale='3' rs:precision='23' rs:fixedlength='true'/>
</s:AttributeType>
<s:AttributeType name='notes' rs:number='20' rs:maydefer='true'
rs:writeunknown='true'>
<s:datatype dt:type='string' rs:dbtype='str' dt:maxLength='2147483647'
rs:long='true' rs:maybenull='false'/>
</s:AttributeType>
<s:AttributeType name='e_message' rs:number='21' rs:maydefer='true'
rs:writeunknown='true'>
<s:datatype dt:type='string' rs:dbtype='str' dt:maxLength='2147483647'
rs:long='true' rs:maybenull='false'/>
</s:AttributeType>
<s:AttributeType name='check_bx1' rs:number='22' rs:writeunknown='true'>
<s:datatype dt:type='boolean' dt:maxLength='2' rs:fixedlength='true'
rs:maybenull='false'/>
</s:AttributeType>
<s:AttributeType name='check_bx2' rs:number='23' rs:writeunknown='true'>
<s:datatype dt:type='boolean' dt:maxLength='2' rs:fixedlength='true'
rs:maybenull='false'/>
</s:AttributeType>
<s:AttributeType name='check_bx3' rs:number='24' rs:writeunknown='true'>
<s:datatype dt:type='boolean' dt:maxLength='2' rs:fixedlength='true'
rs:maybenull='false'/>
</s:AttributeType>
<s:AttributeType name='check_bx4' rs:number='25' rs:writeunknown='true'>
<s:datatype dt:type='boolean' dt:maxLength='2' rs:fixedlength='true'
rs:maybenull='false'/>
</s:AttributeType>
<s:AttributeType name='check_bx5' rs:number='26' rs:writeunknown='true'>
<s:datatype dt:type='boolean' dt:maxLength='2' rs:fixedlength='true'
rs:maybenull='false'/>
</s:AttributeType>
<s:AttributeType name='check_bx6' rs:number='27' rs:writeunknown='true'>
<s:datatype dt:type='boolean' dt:maxLength='2' rs:fixedlength='true'
rs:maybenull='false'/>
</s:AttributeType>
<s:AttributeType name='check_bx7' rs:number='28' rs:writeunknown='true'>
<s:datatype dt:type='boolean' dt:maxLength='2' rs:fixedlength='true'
rs:maybenull='false'/>
</s:AttributeType>
<s:AttributeType name='check_bx8' rs:number='29' rs:writeunknown='true'>
<s:datatype dt:type='boolean' dt:maxLength='2' rs:fixedlength='true'
rs:maybenull='false'/>
</s:AttributeType>
<s:AttributeType name='check_bx9' rs:number='30' rs:writeunknown='true'>
<s:datatype dt:type='boolean' dt:maxLength='2' rs:fixedlength='true'
rs:maybenull='false'/>
</s:AttributeType>
<s:AttributeType name='check_bx10' rs:number='31' rs:writeunknown='true'>
<s:datatype dt:type='boolean' dt:maxLength='2' rs:fixedlength='true'
rs:maybenull='false'/>
</s:AttributeType>
<s:AttributeType name='check_bx11' rs:number='32' rs:writeunknown='true'>
<s:datatype dt:type='boolean' dt:maxLength='2' rs:fixedlength='true'
rs:maybenull='false'/>
</s:AttributeType>
<s:AttributeType name='check_bx12' rs:number='33' rs:writeunknown='true'>
<s:datatype dt:type='boolean' dt:maxLength='2' rs:fixedlength='true'
rs:maybenull='false'/>
</s:AttributeType>
<s:AttributeType name='check_bx13' rs:number='34' rs:writeunknown='true'>
<s:datatype dt:type='boolean' dt:maxLength='2' rs:fixedlength='true'
rs:maybenull='false'/>
</s:AttributeType>
<s:AttributeType name='check_bx14' rs:number='35' rs:writeunknown='true'>
<s:datatype dt:type='boolean' dt:maxLength='2' rs:fixedlength='true'
rs:maybenull='false'/>
</s:AttributeType>
<s:AttributeType name='check_bx15' rs:number='36' rs:writeunknown='true'>
<s:datatype dt:type='boolean' dt:maxLength='2' rs:fixedlength='true'
rs:maybenull='false'/>
</s:AttributeType>
<s:AttributeType name='number_1' rs:number='37' rs:writeunknown='true'>
<s:datatype dt:type='int' dt:maxLength='4' rs:precision='10'
rs:fixedlength='true' rs:maybenull='false'/>
</s:AttributeType>
<s:AttributeType name='number_2' rs:number='38' rs:writeunknown='true'>
<s:datatype dt:type='int' dt:maxLength='4' rs:precision='10'
rs:fixedlength='true' rs:maybenull='false'/>
</s:AttributeType>
<s:AttributeType name='number_3' rs:number='39' rs:writeunknown='true'>
<s:datatype dt:type='int' dt:maxLength='4' rs:precision='10'
rs:fixedlength='true' rs:maybenull='false'/>
</s:AttributeType>
<s:AttributeType name='number_4' rs:number='40' rs:writeunknown='true'>
<s:datatype dt:type='number' rs:dbtype='numeric' dt:maxLength='19'
rs:scale='2' rs:precision='8' rs:fixedlength='true' rs:maybenull='false'/>
</s:AttributeType>
<s:AttributeType name='number_5' rs:number='41' rs:writeunknown='true'>
<s:datatype dt:type='number' rs:dbtype='numeric' dt:maxLength='19'
rs:scale='2' rs:precision='8' rs:fixedlength='true' rs:maybenull='false'/>
</s:AttributeType>
<s:AttributeType name='text_1' rs:number='42' rs:writeunknown='true'>
<s:datatype dt:type='string' rs:dbtype='str' dt:maxLength='15'
rs:maybenull='false'/>
</s:AttributeType>
<s:AttributeType name='text_2' rs:number='43' rs:writeunknown='true'>
<s:datatype dt:type='string' rs:dbtype='str' dt:maxLength='15'
rs:maybenull='false'/>
</s:AttributeType>
<s:AttributeType name='text_3' rs:number='44' rs:writeunknown='true'>
<s:datatype dt:type='string' rs:dbtype='str' dt:maxLength='15'
rs:maybenull='false'/>
</s:AttributeType>
<s:AttributeType name='text_4' rs:number='45' rs:writeunknown='true'>
<s:datatype dt:type='string' rs:dbtype='str' dt:maxLength='15'
rs:maybenull='false'/>
</s:AttributeType>
<s:AttributeType name='text_5' rs:number='46' rs:writeunknown='true'>
<s:datatype dt:type='string' rs:dbtype='str' dt:maxLength='30'
rs:maybenull='false'/>
</s:AttributeType>
<s:AttributeType name='text_6' rs:number='47' rs:writeunknown='true'>
<s:datatype dt:type='string' rs:dbtype='str' dt:maxLength='10'
rs:maybenull='false'/>
</s:AttributeType>
<s:AttributeType name='text_7' rs:number='48' rs:writeunknown='true'>
<s:datatype dt:type='string' rs:dbtype='str' dt:maxLength='10'
rs:maybenull='false'/>
</s:AttributeType>
<s:AttributeType name='text_8' rs:number='49' rs:writeunknown='true'>
<s:datatype dt:type='string' rs:dbtype='str' dt:maxLength='10'
rs:maybenull='false'/>
</s:AttributeType>
<s:AttributeType name='memo_1' rs:number='50' rs:maydefer='true'
rs:writeunknown='true'>
<s:datatype dt:type='string' rs:dbtype='str' dt:maxLength='2147483647'
rs:long='true' rs:maybenull='false'/>
</s:AttributeType>
<s:AttributeType name='memo_2' rs:number='51' rs:maydefer='true'
rs:writeunknown='true'>
<s:datatype dt:type='string' rs:dbtype='str' dt:maxLength='2147483647'
rs:long='true' rs:maybenull='false'/>
</s:AttributeType>
<s:AttributeType name='memo_3' rs:number='52' rs:maydefer='true'
rs:writeunknown='true'>
<s:datatype dt:type='string' rs:dbtype='str' dt:maxLength='2147483647'
rs:long='true' rs:maybenull='false'/>
</s:AttributeType>
<s:AttributeType name='date_1' rs:number='53' rs:nullable='true'
rs:writeunknown='true'>
<s:datatype dt:type='dateTime' rs:dbtype='timestamp'
dt:maxLength='16' rs:scale='3' rs:precision='23' rs:fixedlength='true'/>
</s:AttributeType>
<s:AttributeType name='datetime_1' rs:number='54' rs:nullable='true'
rs:writeunknown='true'>
<s:datatype dt:type='dateTime' rs:dbtype='timestamp'
dt:maxLength='16' rs:scale='3' rs:precision='23' rs:fixedlength='true'/>
</s:AttributeType>
<s:AttributeType name='gfwdstatus' rs:number='55' rs:writeunknown='true'>
<s:datatype dt:type='ui1' dt:maxLength='1' rs:precision='3'
rs:fixedlength='true' rs:maybenull='false'/>
</s:AttributeType>
<s:AttributeType name='guest_id' rs:number='56' rs:writeunknown='true'>
<s:datatype dt:type='int' dt:maxLength='4' rs:precision='10'
rs:fixedlength='true' rs:maybenull='false'/>
</s:AttributeType>
<s:AttributeType name='relation' rs:number='57' rs:writeunknown='true'>
<s:datatype dt:type='i2' dt:maxLength='2' rs:precision='5'
rs:fixedlength='true' rs:maybenull='false'/>
</s:AttributeType>
<s:AttributeType name='role_no' rs:number='58' rs:writeunknown='true'>
<s:datatype dt:type='int' dt:maxLength='4' rs:precision='10'
rs:fixedlength='true' rs:maybenull='false'/>
</s:AttributeType>
<s:AttributeType name='acct_name' rs:number='59' rs:writeunknown='true'>
<s:datatype dt:type='string' rs:dbtype='str' dt:maxLength='10'
rs:maybenull='false'/>
</s:AttributeType>
<s:AttributeType name='vipcode' rs:number='60' rs:writeunknown='true'>
<s:datatype dt:type='ui1' dt:maxLength='1' rs:precision='3'
rs:fixedlength='true' rs:maybenull='false'/>
</s:AttributeType>
<s:AttributeType name='height' rs:number='61' rs:writeunknown='true'>
<s:datatype dt:type='i2' dt:maxLength='2' rs:precision='5'
rs:fixedlength='true' rs:maybenull='false'/>
</s:AttributeType>
<s:AttributeType name='weight' rs:number='62' rs:writeunknown='true'>
<s:datatype dt:type='i2' dt:maxLength='2' rs:precision='5'
rs:fixedlength='true' rs:maybenull='false'/>
</s:AttributeType>
<s:AttributeType name='height_m' rs:number='63' rs:writeunknown='true'>
<s:datatype dt:type='i2' dt:maxLength='2' rs:precision='5'
rs:fixedlength='true' rs:maybenull='false'/>
</s:AttributeType>
<s:AttributeType name='weight_m' rs:number='64' rs:writeunknown='true'>
<s:datatype dt:type='i2' dt:maxLength='2' rs:precision='5'
rs:fixedlength='true' rs:maybenull='false'/>
</s:AttributeType>
<s:AttributeType name='no_mail' rs:number='65' rs:writeunknown='true'>
<s:datatype dt:type='boolean' dt:maxLength='2' rs:fixedlength='true'
rs:maybenull='false'/>
</s:AttributeType>
<s:AttributeType name='no_email' rs:number='66' rs:writeunknown='true'>
<s:datatype dt:type='boolean' dt:maxLength='2' rs:fixedlength='true'
rs:maybenull='false'/>
</s:AttributeType>
<s:AttributeType name='no_phone' rs:number='67' rs:writeunknown='true'>
<s:datatype dt:type='boolean' dt:maxLength='2' rs:fixedlength='true'
rs:maybenull='false'/>
</s:AttributeType>
<s:AttributeType name='addlink_id' rs:number='68' rs:nullable='true'
rs:writeunknown='true'>
<s:datatype dt:type='number' rs:dbtype='numeric' dt:maxLength='19'
rs:scale='0' rs:precision='17' rs:fixedlength='true'/>
</s:AttributeType>
<s:AttributeType name='address_id' rs:number='69' rs:nullable='true'
rs:writeunknown='true'>
<s:datatype dt:type='number' rs:dbtype='numeric' dt:maxLength='19'
rs:scale='0' rs:precision='17' rs:fixedlength='true'/>
</s:AttributeType>
<s:AttributeType name='c69' rs:name='last_mod' rs:number='70'
rs:nullable='true' rs:writeunknown='true'>
<s:datatype dt:type='int' dt:maxLength='4' rs:precision='10'
rs:fixedlength='true'/>
</s:AttributeType>
<s:AttributeType name='c70' rs:name='address_id' rs:number='71'
rs:nullable='true' rs:writeunknown='true'>
<s:datatype dt:type='number' rs:dbtype='numeric' dt:maxLength='19'
rs:scale='0' rs:precision='17' rs:fixedlength='true'/>
</s:AttributeType>
<s:AttributeType name='c71' rs:name='operator' rs:number='72'
rs:nullable='true' rs:writeunknown='true'>
<s:datatype dt:type='string' rs:dbtype='str' dt:maxLength='6'
rs:fixedlength='true'/>
</s:AttributeType>
<s:AttributeType name='c72' rs:name='salespoint' rs:number='73'
rs:nullable='true' rs:writeunknown='true'>
<s:datatype dt:type='string' rs:dbtype='str' dt:maxLength='6'
rs:fixedlength='true'/>
</s:AttributeType>
<s:AttributeType name='c73' rs:name='date_time' rs:number='74'
rs:nullable='true' rs:writeunknown='true'>
<s:datatype dt:type='dateTime' rs:dbtype='timestamp'
dt:maxLength='16' rs:scale='3' rs:precision='23' rs:fixedlength='true'/>
</s:AttributeType>
<s:AttributeType name='c74' rs:name='last_mod' rs:number='75'
rs:nullable='true' rs:writeunknown='true'>
<s:datatype dt:type='int' dt:maxLength='4' rs:precision='10'
rs:fixedlength='true'/>
</s:AttributeType>
<s:AttributeType name='addr_type' rs:number='76' rs:nullable='true'
rs:writeunknown='true'>
<s:datatype dt:type='ui1' dt:maxLength='1' rs:precision='3'
rs:fixedlength='true'/>
</s:AttributeType>
<s:AttributeType name='address' rs:number='77' rs:nullable='true'
rs:writeunknown='true'>
<s:datatype dt:type='string' rs:dbtype='str' dt:maxLength='30'/>
</s:AttributeType>
<s:AttributeType name='address2' rs:number='78' rs:nullable='true'
rs:writeunknown='true'>
<s:datatype dt:type='string' rs:dbtype='str' dt:maxLength='30'/>
</s:AttributeType>
<s:AttributeType name='city' rs:number='79' rs:nullable='true'
rs:writeunknown='true'>
<s:datatype dt:type='string' rs:dbtype='str' dt:maxLength='25'/>
</s:AttributeType>
<s:AttributeType name='state' rs:number='80' rs:nullable='true'
rs:writeunknown='true'>
<s:datatype dt:type='string' rs:dbtype='str' dt:maxLength='3'
rs:fixedlength='true'/>
</s:AttributeType>
<s:AttributeType name='zip' rs:number='81' rs:nullable='true'
rs:writeunknown='true'>
<s:datatype dt:type='string' rs:dbtype='str' dt:maxLength='10'/>
</s:AttributeType>
<s:AttributeType name='country' rs:number='82' rs:nullable='true'
rs:writeunknown='true'>
<s:datatype dt:type='string' rs:dbtype='str' dt:maxLength='10'/>
</s:AttributeType>
<s:AttributeType name='cntry_cod' rs:number='83' rs:nullable='true'
rs:writeunknown='true'>
<s:datatype dt:type='string' rs:dbtype='str' dt:maxLength='3'
rs:fixedlength='true'/>
</s:AttributeType>
<s:AttributeType name='area_code' rs:number='84' rs:nullable='true'
rs:writeunknown='true'>
<s:datatype dt:type='string' rs:dbtype='str' dt:maxLength='5'
rs:fixedlength='true'/>
</s:AttributeType>
<s:AttributeType name='phone' rs:number='85' rs:nullable='true'
rs:writeunknown='true'>
<s:datatype dt:type='string' rs:dbtype='str' dt:maxLength='8'
rs:fixedlength='true'/>
</s:AttributeType>
<s:AttributeType name='cntry_cod2' rs:number='86' rs:nullable='true'
rs:writeunknown='true'>
<s:datatype dt:type='string' rs:dbtype='str' dt:maxLength='3'
rs:fixedlength='true'/>
</s:AttributeType>
<s:AttributeType name='area_cod2' rs:number='87' rs:nullable='true'
rs:writeunknown='true'>
<s:datatype dt:type='string' rs:dbtype='str' dt:maxLength='5'
rs:fixedlength='true'/>
</s:AttributeType>
<s:AttributeType name='phone2' rs:number='88' rs:nullable='true'
rs:writeunknown='true'>
<s:datatype dt:type='string' rs:dbtype='str' dt:maxLength='8'
rs:fixedlength='true'/>
</s:AttributeType>
<s:AttributeType name='fax_ccode' rs:number='89' rs:nullable='true'
rs:writeunknown='true'>
<s:datatype dt:type='string' rs:dbtype='str' dt:maxLength='3'
rs:fixedlength='true'/>
</s:AttributeType>
<s:AttributeType name='fax_acode' rs:number='90' rs:nullable='true'
rs:writeunknown='true'>
<s:datatype dt:type='string' rs:dbtype='str' dt:maxLength='5'
rs:fixedlength='true'/>
</s:AttributeType>
<s:AttributeType name='fax_phone' rs:number='91' rs:nullable='true'
rs:writeunknown='true'>
<s:datatype dt:type='string' rs:dbtype='str' dt:maxLength='8'
rs:fixedlength='true'/>
</s:AttributeType>
<s:AttributeType name='company' rs:number='92' rs:nullable='true'
rs:writeunknown='true'>
<s:datatype dt:type='string' rs:dbtype='str' dt:maxLength='25'/>
</s:AttributeType>
<s:AttributeType name='has_photo' rs:number='93'>
<s:datatype dt:type='int' dt:maxLength='4' rs:precision='10'
rs:fixedlength='true' rs:maybenull='false'/>
</s:AttributeType>
<s:extends type='rs:rowbase'/>
</s:ElementType>
</s:Schema>
<rs:data>
<z:row guest_no='568467000000' last_mod='584443' salespoint='WEB1 '
operator='X ' date_time='2004-06-02T17:22:13.100000000'
parent_no='0' addit_no='0' addit_no2='0' trans_no='0'
guestgroup='' salute='' first_name='joe' last_name='schmoe'
e_mail='(e-mail address removed)' birth_date='1965-01-01T00:00:00'
gender=' ' cc_swipe='' cc_number='' notes='' e_message=''
check_bx1='False' check_bx2='False' check_bx3='False'
check_bx4='False' check_bx5='False' check_bx6='False'
check_bx7='False' check_bx8='False' check_bx9='False'
check_bx10='False' check_bx11='False' check_bx12='False'
check_bx13='False' check_bx14='False' check_bx15='False'
number_1='0' number_2='0' number_3='0' number_4='.00'
number_5='.00' text_1='' text_2='' text_3='' text_4=''
text_5='' text_6='' text_7='' text_8='' memo_1='' memo_2=''
memo_3='' gfwdstatus='1' guest_id='0' relation='0' role_no='0'
acct_name='' vipcode='0' height='0' weight='0' height_m='0'
weight_m='0' no_mail='False' no_email='False' no_phone='False'
addlink_id='69000000' address_id='60518000000' c69='45337'
c70='60518000000' c71='ADMIN ' c72='MATTB ' c73='2005-11-11T09:51:51'
c74='60610' addr_type='0' address='1 MAIN '
address2=' ' city='Gunnison '
state='CO ' zip='81230 ' country=' ' cntry_cod=' '
area_code='(970)' phone='641-9999' cntry_cod2=' ' area_cod2=' '
phone2=' ' fax_ccode=' ' fax_acode=' ' fax_phone=' '
company=' ' has_photo='0'/>
<z:row guest_no='568467000000' last_mod='584443' salespoint='WEB1 '
operator='X ' date_time='2004-06-02T17:22:13.100000000'
parent_no='0' addit_no='0' addit_no2='0' trans_no='0'
guestgroup='' salute='' first_name='joe' last_name='schmoe'
e_mail='(e-mail address removed)' birth_date='1965-01-01T00:00:00'
gender=' ' cc_swipe='' cc_number='' notes='' e_message=''
check_bx1='False' check_bx2='False' check_bx3='False'
check_bx4='False' check_bx5='False' check_bx6='False'
check_bx7='False' check_bx8='False' check_bx9='False'
check_bx10='False' check_bx11='False' check_bx12='False'
check_bx13='False' check_bx14='False' check_bx15='False'
number_1='0' number_2='0' number_3='0' number_4='.00'
number_5='.00' text_1='' text_2='' text_3='' text_4=''
text_5='' text_6='' text_7='' text_8='' memo_1='' memo_2=''
memo_3='' gfwdstatus='1' guest_id='0' relation='0' role_no='0'
acct_name='' vipcode='0' height='0' weight='0' height_m='0'
weight_m='0' no_mail='False' no_email='False' no_phone='False'
addlink_id='71000000' address_id='60520000000' c69='45338'
c70='60520000000' c71='ADMIN ' c72='MATTB ' c73='2005-11-11T09:54:16'
c74='60611' addr_type='10' address='122 N MAIN '
address2=' ' city='Gunnison '
state='CO ' zip='81230 ' country=' ' cntry_cod=' '
area_code='(970)' phone='641-0000' cntry_cod2=' ' area_cod2=' '
phone2=' ' fax_ccode=' ' fax_acode=' ' fax_phone=' '
company='SIRIUSWARE ' has_photo='0'/>
</rs:data>
</xml>" String
 
J

John Saunders [MVP]

MattB said:
I have a ASP.Net 1.1 application I'm working towards moving to ASP.Net 2.0.
The application gets it's data from a COM layer which delivers ADO
rowsets in the form of a string.
In ASP.net 1.1, I came up with the following method to consume XML from
a string and convert it to a dataset and it works well:

Public Shared Function deSerializeDS(ByVal xml As String)
Dim ds As New DataSet
If Not IsNothing(xml) Then
Dim XMLRead As New System.IO.StringReader(xml)
Try
ds.ReadXml(XMLRead)
XMLRead.Close()
Catch ex As Exception
Return Nothing
End Try
XMLRead = Nothing
End If
Return ds
End Function

In ASP.Net 2.0 I try the same thing with the same string and I get the
following exception:

What is the format of the embedded schema in your data? I've never seen that
before. Is that XDR? If so, then perhaps .NET 2.0 no longer supports it.

Can you change to use XML Schema? Here's a schema created by Stylus Studio
from your XML (less the schema):

<?xml version="1.0" encoding="UTF-8"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"
elementFormDefault="qualified">
<xs:element name="xml">
<xs:complexType>
<xs:sequence>
<xs:element ref="data"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="data">
<xs:complexType>
<xs:sequence>
<xs:element maxOccurs="unbounded" ref="row"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="row">
<xs:complexType>
<xs:attribute name="acct_name" use="required"/>
<xs:attribute name="addit_no" use="required" type="xs:integer"/>
<xs:attribute name="addit_no2" use="required" type="xs:integer"/>
<xs:attribute name="addlink_id" use="required" type="xs:integer"/>
<xs:attribute name="addr_type" use="required" type="xs:integer"/>
<xs:attribute name="address" use="required"/>
<xs:attribute name="address2" use="required"/>
<xs:attribute name="address_id" use="required" type="xs:integer"/>
<xs:attribute name="area_cod2" use="required"/>
<xs:attribute name="area_code" use="required"/>
<xs:attribute name="birth_date" use="required" type="xs:NMTOKEN"/>
<xs:attribute name="c69" use="required" type="xs:integer"/>
<xs:attribute name="c70" use="required" type="xs:integer"/>
<xs:attribute name="c71" use="required" type="xs:NCName"/>
<xs:attribute name="c72" use="required" type="xs:NCName"/>
<xs:attribute name="c73" use="required" type="xs:NMTOKEN"/>
<xs:attribute name="c74" use="required" type="xs:integer"/>
<xs:attribute name="cc_number" use="required"/>
<xs:attribute name="cc_swipe" use="required"/>
<xs:attribute name="check_bx1" use="required" type="xs:NCName"/>
<xs:attribute name="check_bx10" use="required" type="xs:NCName"/>
<xs:attribute name="check_bx11" use="required" type="xs:NCName"/>
<xs:attribute name="check_bx12" use="required" type="xs:NCName"/>
<xs:attribute name="check_bx13" use="required" type="xs:NCName"/>
<xs:attribute name="check_bx14" use="required" type="xs:NCName"/>
<xs:attribute name="check_bx15" use="required" type="xs:NCName"/>
<xs:attribute name="check_bx2" use="required" type="xs:NCName"/>
<xs:attribute name="check_bx3" use="required" type="xs:NCName"/>
<xs:attribute name="check_bx4" use="required" type="xs:NCName"/>
<xs:attribute name="check_bx5" use="required" type="xs:NCName"/>
<xs:attribute name="check_bx6" use="required" type="xs:NCName"/>
<xs:attribute name="check_bx7" use="required" type="xs:NCName"/>
<xs:attribute name="check_bx8" use="required" type="xs:NCName"/>
<xs:attribute name="check_bx9" use="required" type="xs:NCName"/>
<xs:attribute name="city" use="required" type="xs:NCName"/>
<xs:attribute name="cntry_cod" use="required"/>
<xs:attribute name="cntry_cod2" use="required"/>
<xs:attribute name="company" use="required"/>
<xs:attribute name="country" use="required"/>
<xs:attribute name="date_time" use="required" type="xs:NMTOKEN"/>
<xs:attribute name="e_mail" use="required"/>
<xs:attribute name="e_message" use="required"/>
<xs:attribute name="fax_acode" use="required"/>
<xs:attribute name="fax_ccode" use="required"/>
<xs:attribute name="fax_phone" use="required"/>
<xs:attribute name="first_name" use="required" type="xs:NCName"/>
<xs:attribute name="gender" use="required"/>
<xs:attribute name="gfwdstatus" use="required" type="xs:integer"/>
<xs:attribute name="guest_id" use="required" type="xs:integer"/>
<xs:attribute name="guest_no" use="required" type="xs:integer"/>
<xs:attribute name="guestgroup" use="required"/>
<xs:attribute name="has_photo" use="required" type="xs:integer"/>
<xs:attribute name="height" use="required" type="xs:integer"/>
<xs:attribute name="height_m" use="required" type="xs:integer"/>
<xs:attribute name="last_mod" use="required" type="xs:integer"/>
<xs:attribute name="last_name" use="required" type="xs:NCName"/>
<xs:attribute name="memo_1" use="required"/>
<xs:attribute name="memo_2" use="required"/>
<xs:attribute name="memo_3" use="required"/>
<xs:attribute name="no_email" use="required" type="xs:NCName"/>
<xs:attribute name="no_mail" use="required" type="xs:NCName"/>
<xs:attribute name="no_phone" use="required" type="xs:NCName"/>
<xs:attribute name="notes" use="required"/>
<xs:attribute name="number_1" use="required" type="xs:integer"/>
<xs:attribute name="number_2" use="required" type="xs:integer"/>
<xs:attribute name="number_3" use="required" type="xs:integer"/>
<xs:attribute name="number_4" use="required" type="xs:decimal"/>
<xs:attribute name="number_5" use="required" type="xs:decimal"/>
<xs:attribute name="operator" use="required" type="xs:NCName"/>
<xs:attribute name="parent_no" use="required" type="xs:integer"/>
<xs:attribute name="phone" use="required" type="xs:NMTOKEN"/>
<xs:attribute name="phone2" use="required"/>
<xs:attribute name="relation" use="required" type="xs:integer"/>
<xs:attribute name="role_no" use="required" type="xs:integer"/>
<xs:attribute name="salespoint" use="required" type="xs:NCName"/>
<xs:attribute name="salute" use="required"/>
<xs:attribute name="state" use="required" type="xs:NCName"/>
<xs:attribute name="text_1" use="required"/>
<xs:attribute name="text_2" use="required"/>
<xs:attribute name="text_3" use="required"/>
<xs:attribute name="text_4" use="required"/>
<xs:attribute name="text_5" use="required"/>
<xs:attribute name="text_6" use="required"/>
<xs:attribute name="text_7" use="required"/>
<xs:attribute name="text_8" use="required"/>
<xs:attribute name="trans_no" use="required" type="xs:integer"/>
<xs:attribute name="vipcode" use="required" type="xs:integer"/>
<xs:attribute name="weight" use="required" type="xs:integer"/>
<xs:attribute name="weight_m" use="required" type="xs:integer"/>
<xs:attribute name="zip" use="required" type="xs:integer"/>
</xs:complexType>
</xs:element>
</xs:schema>
 
M

MattB

Thanks for the reply!

I don't have direct control over the object giving me the data, but I
could possibly do something to the string before trying to consume it.
The object is a c++ COM object and from what I understand the data is an
ADO rowset.

Matt
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Members online

Forum statistics

Threads
473,968
Messages
2,570,152
Members
46,697
Latest member
AugustNabo

Latest Threads

Top