I have a XML file in the format below
i need tp parse them and retrieve values from them and store it in database
can anyone give an idea abt how to start the application
is the system.xml namespace is enough to accomplish my task or i need to go in for any parse
i am new to XML so plz help me on this regard.
the following xml when run in application gives the following error
" The XML editor tried to convert this DTD to XSD so it can provide validation and intellisense while you type, but it could not create a valid XSD schema. Perhaps this DTD uses constructs that do not map to XSD. You may be able to get more information about the problem by using the Create Schema command. "
what is wrong with the following dtd
if i need to use this xml efficiently do i need to convert them into XSD
give an idea about what to refer first in order to start off with the application
<?xml version="1.0" encoding="iso-8859-1"?>
<!DOCTYPE pinnacle_line_feed[
<!ELEMENT PinnacleFeedTime (#PCDATA)>
<!ELEMENT description (#PCDATA)>
<!ELEMENT event (event_datetimeGMT, gamenumber,sporttype, league, description?, (participants | periods | total)+)>
<!ELEMENT visiting_home_draw (#PCDATA)>
]>
<line_feed>
<FeedTime>1177485702000</FeedTime>
<events>
<event>
<event_datetimeGMT>2007-04-25 17:10</event_datetimeGMT>
<gamenumber>101979285</gamenumber>
<sporttype>Baseball</sporttype>
<league>Alt Runlines</league>
<participants>
<participant>
<participant_name>Colorado Rockies</participant_name>
<contestantnum>901</contestantnum>
<rotnum>901</rotnum>
<visiting_home_draw>Visiting</visiting_home_draw>
<pitcher>J. Fogg</pitcher>
</participant>

</participants>
<periods>
<period>
<periodnumber>0</periodnumber>
<period_description>Game</period_description>
<periodcutoff_datetimeGMT>2007-04-25 17:10</periodcutoff_datetimeGMT>
<period_status>I</period_status>
<moneyline>
<moneyline_visiting>null</moneyline_visiting>
<moneyline_home>null</moneyline_home>
</moneyline>

</period>
</periods>
</event>
</events>
</line_feed>

First off, I would convert your dtd to a schema (xsd) file. Everything is so much easier these days in .xsd format. In terms of loading into sql, you have basically 4 options
1) use .net code using the system.xml namespace, create an xmldocument element.
2) use sqlxml 4.0 (bulk load), with an xsd mapping schema. lots of examples online but difficult syntax.
3) use foropen xml (again difficult syntax)
4) my personal favourite, by far and away the most efficient. create an xslt stylesheet, convert your xml to a text file, and then use bcp to copy to sql (or other database). email me at heap_tim@hotmail.com for more info.

This article has been dead for over six months. Start a new discussion instead.