[AccessD] Parsing XML as a string?

JWColby jwcolby at colbyconsulting.com
Fri Nov 17 05:15:28 CST 2006


Greg,

Have you found a parser you are happy with?  I concur with others that you
should use a parser program if you can find one that works with this thing,
but if you can't come back and say so.

John W. Colby
Colby Consulting
www.ColbyConsulting.com

-----Original Message-----
From: accessd-bounces at databaseadvisors.com
[mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Greg Smith
Sent: Thursday, November 16, 2006 2:18 PM
To: accessd at databaseadvisors.com
Subject: Re: [AccessD] Parsing XML as a string?

John:

Yes...I want a lot of the enclosed < /> fields, but I also need them with
respect to their description, such as the FEES, of which (in this example)
there are 5, each with it's own description "StandardFee", etc.  So I'll not
only need to get the data, such as the fee, but I have to be able to
delineate which fee it is so it can go in the right table field.  For all
practical purposes, I can ignore anything after the start of the <DOCUMENT>
because there's no data past that point.

And you are also correct in that this doesn't fit today's standard xml
format.  I've even asked the people who are sending it to me just WHAT type
of xml is it, but not gotten an answer...which makes me believe they don't
know either.  It works for what they want, so don't mess with it I
guess...and, of course, out of 99 counties, mine is the ONLY one using an
Access db program to do the Recorder's work (so far... :)).

You'll note that some of the Elements (Fee) have two attributes, whereas
some of them (Grantor) have many more.  So a rule that says only get the two
would not work in all cases.  Although maybe breaking it down first by the <
/> and then looking inside each of those...

Greg


> OK, so I assume that you want to get the items, enclosed by < /> where 
> there are two "values" separated by a space?
>
> You want all of them?
> Just specific ones?
> Are there more than one of the "big items" defined as the entire thing 
> you sent me) in a single file?
>
> This looks trivial to parse based on the <> pairs as beginning / 
> ending a field.  This assumes that neither of these characters are 
> found in the image data.
>
> I am not intimate with XML, but I thought that XML had <FieldName> 
> data </FieldName>.  This obviously doesn't.
>
> John W. Colby
> Colby Consulting
> www.ColbyConsulting.com
>
> -----Original Message-----
> From: accessd-bounces at databaseadvisors.com
> [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Greg Smith
> Sent: Thursday, November 16, 2006 12:09 PM
> To: accessd at databaseadvisors.com
> Subject: Re: [AccessD] Parsing XML as a string?
>
> John:
>
> I sent you a full copy of the XML file offline.
>
> Greg
>
>> Not having followed the original thread...
>>
>> It sounds like a good place for a pair of classes.  One class would 
>> hold each "snippet" based on the < characters.  A parent class would 
>> break down the string into these snippets, load them into the snippet 
>> classes and hold the snippet classes in a collection.  Once the huge 
>> string is parsed into snippets, the parent class can process them by 
>> iterating the collection of snippets doing whatever was required for 
>> each
> snippet.
>>
>> Once you have processed the snippets, you can write the results out 
>> to  a table.
>>
>> That is obviously a "big picture".
>>
>> Can you paste a sample of the xml into an email so that I can see it.
>> Sorry, I wasn't following the original discussion.
>>
>> John W. Colby
>> Colby Consulting
>> www.ColbyConsulting.com
>>
>> -----Original Message-----
>> From: accessd-bounces at databaseadvisors.com
>> [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Greg Smith
>> Sent: Thursday, November 16, 2006 10:46 AM
>> To: accessd at databaseadvisors.com
>> Subject: [AccessD] Parsing XML as a string?
>>
>> Hi everyone!
>>
>> Ok...I admit that trying to import that XML file I had directly into 
>> Access may have SEEMED like a good, "easy", idea...at the time...but 
>> after looking around and from the comments here, the idea 
>> was...well..it sucked.
>>  If the XML they were sending to me were compatible then I might have 
>> had a chance...but it's just not feasible.  There actually wasn't any 
>> way to define it using a dtd/xls/xlst within my lifetime, so I'm 
>> going  to have to use a different approach.
>>
>> The files they send as XML are not that large, so I could easily 
>> import them as text, separate out what I need and put it into the 
>> required tables. However, since they send it as a single string, it 
>> becomes harder to parse it since there are multiple duplicated 'keys'
>> that I need to pull from it. And they're not necessarily in the same 
>> position all of the time.
>>
>> I could import it as a single string into a memo field, but I can't 
>> figure out how to disect a memo field string like that.
>>
>> When I import it as text, I could break it down at the "<" 
>> characters,  importing each one into a separate columns, but I need 
>> them in rows, not columns, to search and find the strings of data I need.
>>
>> So, in summary, my only two choices (that I can think of) are:
>>
>> 1.  Import the XML as a single string into a memo and somehow parse 
>> that into the data I need.
>> 2.  Import the XML as text, separating it on the "<" characters into 
>> columns, then somehow magically (transpose columns into rows?) 
>> transform that to usable information.
>>
>> ANY suggestions, short of retirement (although not a bad idea...), 
>> would be GREATLY apprecaited!
>>
>> Thanks!
>>
>> Greg Smith
>>
>>
>>
>> --
>> AccessD mailing list
>> AccessD at databaseadvisors.com
>> http://databaseadvisors.com/mailman/listinfo/accessd
>> Website: http://www.databaseadvisors.com
>>
>> --
>> AccessD mailing list
>> AccessD at databaseadvisors.com
>> http://databaseadvisors.com/mailman/listinfo/accessd
>> Website: http://www.databaseadvisors.com
>
>
>
> --
> AccessD mailing list
> AccessD at databaseadvisors.com
> http://databaseadvisors.com/mailman/listinfo/accessd
> Website: http://www.databaseadvisors.com
>
> --
> AccessD mailing list
> AccessD at databaseadvisors.com
> http://databaseadvisors.com/mailman/listinfo/accessd
> Website: http://www.databaseadvisors.com



--
AccessD mailing list
AccessD at databaseadvisors.com
http://databaseadvisors.com/mailman/listinfo/accessd
Website: http://www.databaseadvisors.com




More information about the AccessD mailing list