Help with XML file processing

I need to get all session_ID 's for product="D-0002" from a XML file:

Sample input:

 <session session_ID="6411206" create_date="2012-04-10-10.22.13.000000">
<marketing_info>
      <program_id>D4AWFU</program_id>
      <subchannel_id>abc</subchannel_id>
    </marketing_info>
    <customer>
      <name>
        <first_name>Darrell</first_name>
        <last_name>Collims</last_name>
      </name>
      <address>
        <first_line></first_line>
        <city></city>
        <state></state>
        <zipcode>75287</zipcode>
      </address>
      <email>dc@gmail.com</email>
    </customer>
    <survey></survey>
    <product_of_interest product="D-0002" year="2013">dart</product_of_interest>
  </session>
 
<session session_ID="6411207" create_date="2012-04-10-10.22.41.000000">
<marketing_info>
      <program_id>D4AWFU</program_id>
      <subchannel_id>def</subchannel_id>
    </marketing_info>
    <customer>
      <name>
        <first_name>Dalton</first_name>
        <last_name>Salyer</last_name>
      </name>
      <address>
        <first_line>po box 4</first_line>
        <city>milford </city>
        <state>OH</state>
        <zipcode>43045</zipcode>
      </address>
      <email>bbq@gmail.com</email>
    </customer>
    <survey></survey>
    <product_of_interest product="D-0002" year="2013">dart</product_of_interest>
  </session>
 
<session session_ID="6411208" create_date="2012-04-10-10.22.47.000000">
<marketing_info>
      <program_id>D4AWFU</program_id>
      <subchannel_id>def</subchannel_id>
    </marketing_info>
    <customer>
      <name>
        <first_name>Darrell</first_name>
        <last_name>Collins</last_name>
      </name>
      <address>
        <first_line></first_line>
        <city></city>
        <state></state>
        <zipcode>75287</zipcode>
      </address>
      <email>dc8@gmail.com</email>
    </customer>
    <survey></survey>
    <product_of_interest product="D-0002" year="2013">dart</product_of_interest>
  </session>
 
<session session_ID="6411210" create_date="2012-04-10-10.23.16.000000">
<marketing_info>
      <program_id>R4AWFU</program_id>
      <subchannel_id>def</subchannel_id>
    </marketing_info>
    <customer>
      <name>
        <first_name>Thomas</first_name>
        <last_name>Hagner</last_name>
      </name>
      <address>
        <first_line>3013</first_line>
        <city>Sturtevant</city>
        <state>WI</state>
        <zipcode>53177</zipcode>
      </address>
      <email>thagr@gmail.com</email>
    </customer>
    <survey></survey>
    <product_of_interest product="R-13-0501" year="2013">1500</product_of_interest>
  </session>
 
<session session_ID="6411212" create_date="2012-04-10-10.23.22.000000">
<marketing_info>
      <program_id>D4AWFU</program_id>
      <subchannel_id>def</subchannel_id>
    </marketing_info>
    <customer>
      <name>
        <first_name>mike</first_name>
        <last_name>conway</last_name>
      </name>
      <address>
        <first_line>6601 e. mcdowell rd</first_line>
        <city>scottsdale</city>
        <state>AZ</state>
        <zipcode>85257</zipcode>
      </address>
      <email>mike@gmail.com</email>
    </customer>
    <survey></survey>
    <product_of_interest product="F-0002" year="2013">dart</product_of_interest>
  </session>

O/p:

 
6411206
6411207
6411208

Thanks!

With XMLgawk (and, as far as I know, soon with GNU awk too):

xgawk -lxml 'XMLSTARTELEM == "session" {
  id = XMLATTR["session_ID"]
  }
XMLSTARTELEM == "product_of_interest" && XMLATTR["product"] == "D-0002" {
  print id
  }' infile.xml