kamran619
kamran619

Reputation: 531

NSXMLParser to parse this data

I am trying to use NSXMLParser to parse the data below:

    <FORM ACTION="/prod/bwckgens.p_proc_term_date" METHOD="POST" onSubmit="return checkSubmit()">
<INPUT TYPE="hidden" NAME="p_calling_proc" VALUE="bwckschd.p_disp_dyn_sched">
<TABLE  CLASS="dataentrytable" summary="This layout table is used for term selection."width="100%"><CAPTION class="captiontext">Search by Term: </CAPTION>
<TR>
<TD CLASS="dedefault"><LABEL for=term_input_id><SPAN class="fieldlabeltextinvisible">Term</SPAN></LABEL>
<SELECT NAME="p_term" SIZE="1"  ID="term_input_id">
<OPTION VALUE="">None
<OPTION VALUE="201320">Spring 2013
<OPTION VALUE="201315">STAR/BGR: New Admits Fall 2012 (View only)
<OPTION VALUE="201310">Fall 2012 (View only)
<OPTION VALUE="201230">Summer 2012 (View only)
<OPTION VALUE="201220">Spring 2012 (View only)
<OPTION VALUE="201210">Fall 2011 (View only)
<OPTION VALUE="201130">Summer 2011 (View only)
<OPTION VALUE="201120">Spring 2011 (View only)
<OPTION VALUE="201110">Fall 2010 (View only)
<OPTION VALUE="201030">Summer 2010 (View only)
<OPTION VALUE="201020">Spring 2010 (View only)
<OPTION VALUE="201010">Fall 2009 (View only)
<OPTION VALUE="200930">Summer 2009 (View only)
<OPTION VALUE="200920">Spring 2009 (View only)
<OPTION VALUE="200910">Fall 2008 (View only)
<OPTION VALUE="200830">Summer 2008 (View only)
<OPTION VALUE="200820">Spring 2008 (View only)
</SELECT>
</TD>
</TR>
</TABLE>
<BR>
<BR>
<INPUT TYPE="submit" VALUE="Submit">
<INPUT TYPE="reset" VALUE="Reset">
</FORM>

I want it to store all of the VALUE attributes in an dictionary or something with their corresponding strings like this:

(201320, "Spring 2013")
(201315, "STAR/BGR: New Admits Fall 2012 (View only)")
(201310, "Fall 2012 (View only)")
....

I read over the documentation on how to use an XML Parser. I know how to get the value of the VALUE attribute, but I don't understand how to get the value of the string since they appear after the element OPTION is closed.

Can anyone help me by making an XML Tree to show me how everything is constructed, and how I am going to extract the String after each OPTION attribute.

Upvotes: 0

Views: 194

Answers (1)

Tomasz Szulc
Tomasz Szulc

Reputation: 4235

Your structure is wrong.

<OPTION VALUE="200820">Spring 2008 (View only)

should be

<OPTION VALUE="200820">Spring 2008 (View only)</OPTION>

with </OPTION> on end.

Then you can use NSXMLParser example from http://obj-c.pl/parsowanie-xml-za-pomoca-nsxmlparser/

ps. <INPUT> is wrong. Should be <INPUT ... />.

Upvotes: 1

Related Questions