title: Best way to parse and use a simple xml file
body: <p>I need to parse a simple xml file. Here is an example of first rank child:</p>
  
  <pre><code>&lt;group&gt;
      &lt;word&gt;he_is&lt;/word&gt;
      &lt;english&gt;&amp;#60;strong&amp;#62;Personal pronouns subject and the verb "to be": he is&amp;#60;&amp;#47;strong&amp;#62;&amp;#60;br&amp;#62;1) personal pronouns subject:&amp;#60;br&amp;#62;I&amp;#60;br&amp;#62;you&amp;#60;br&amp;#62;he, she, it&amp;#60;br&amp;#62;we&amp;#60;br&amp;#62;you&amp;#60;br&amp;#62;they&amp;#60;br&amp;#62;The personal pronoun at the first person singular, I, is always written with an uppercase.&amp;#60;br&amp;#62;Ordinary English uses the same pronoun for the second person singular and the second person plural: &amp;#60;strong&amp;#62;you&amp;#60;/strong&amp;#62;.&amp;#60;br&amp;#62;2) conjugation of the verb &amp;#60;strong&amp;#62;to be&amp;#60;/strong&amp;#62;:&amp;#60;br&amp;#62;I am&amp;#60;br&amp;#62;you are&amp;#60;br&amp;#62;he, she, it is&amp;#60;br&amp;#62;we are&amp;#60;br&amp;#62;you are&amp;#60;br&amp;#62;they are&amp;#60;br&amp;#62;&amp;#60;strong&amp;#62;I am&amp;#60;&amp;#47;strong&amp;#62; is often written and pronounced in its contracted form, &amp;#60;strong&amp;#62;I'm&amp;#60;&amp;#47;strong&amp;#62;. So is &amp;#60;strong&amp;#62;he is&amp;#60;&amp;#47;strong&amp;#62; &amp;#8594; &amp;#60;strong&amp;#62;he's&amp;#60;&amp;#47;strong&amp;#62;.&lt;/english&gt;
      &lt;francais&gt;&amp;#60;strong&amp;#62;Les pronoms personnels sujets et le verbe "to be"&amp;#60;&amp;#47;strong&amp;#62; &amp;#60;i&amp;#62;être&amp;#60;&amp;#47;i&amp;#62;: &amp;#60;strong&amp;#62;he is&amp;#60;&amp;#47;strong&amp;#62;&amp;#60;br&amp;#62;1) les pronoms personnels sujets:&amp;#60;br&amp;#62;I, je&amp;#60;br&amp;#62;you, tu&amp;#60;br&amp;#62;he/she/it, il/elle/pronom neutre&amp;#60;br&amp;#62;we, nous&amp;#60;br&amp;#62;you, vous&amp;#60;br&amp;#62;they, ils/elles&amp;#60;br&amp;#62;Le pronom personnel de la première personne du singulier, I, est toujours écrit en majuscule, même au milieu d'une phrase.&amp;#60;br&amp;#62;L'anglais courant ne fait pas de distinction entre tu et vous. Dans les deux cas, le pronom est &amp;#60;strong&amp;#62;you&amp;#60;/strong&amp;#62;.&amp;#60;br&amp;#62;2) conjugaison du verbe &amp;#60;strong&amp;#62;to be&amp;#60;/strong&amp;#62;, &amp;#60;i&amp;#62;être&amp;#60;/i&amp;#62;:&amp;#60;br&amp;#62;I am, je suis&amp;#60;br&amp;#62;you are, tu es&amp;#60;br&amp;#62;he/she/it is, il/elle/neutre est&amp;#60;br&amp;#62;we are, nous sommes&amp;#60;br&amp;#62;you are, vous êtes&amp;#60;br&amp;#62;they are ils/elles sont&amp;#60;br&amp;#62;Hormis à la première et la troisième personne du singulier, la forme unique est &amp;#60;strong&amp;#62;are&amp;#60;/strong&amp;#62;.&amp;#60;br&amp;#62;&amp;#60;strong&amp;#62;I am&amp;#60;&amp;#47;strong&amp;#62;, &amp;#60;i&amp;#62;je suis&amp;#60;&amp;#47;i&amp;#62;, est souvent écrit et prononcé sous sa forme contractée, &amp;#60;strong&amp;#62;I'm&amp;#60;&amp;#47;strong&amp;#62;. De même &amp;#60;strong&amp;#62;he is&amp;#60;&amp;#47;strong&amp;#62; est souvent écrit et prononcé &amp;#60;strong&amp;#62;he's&amp;#60;&amp;#47;strong&amp;#62;.&lt;/francais&gt;
      &lt;espanol&gt;&amp;#60;strong&amp;#62;Pronombres sujetos y el verbo "to be"&amp;#60;&amp;#47;strong&amp;#62; &amp;#60;i&amp;#62;ser, estar&amp;#60;&amp;#47;i&amp;#62;: &amp;#60;strong&amp;#62;he is&amp;#60;&amp;#47;strong&amp;#62;&amp;#60;br&amp;#62;1) pronombres sujetos:&amp;#60;br&amp;#62;I, yo&amp;#60;br&amp;#62;you, t&amp;#250;/usted&amp;#60;br&amp;#62;he/she/it, él/ella/pronombre neutro&amp;#60;br&amp;#62;we, nosostros&amp;#60;br&amp;#62;you, vosotros/ustedes&amp;#60;br&amp;#62;they, ellos/ellas&amp;#60;br&amp;#62;El pronombre personal de la primera persona del singular, I, siempre se escribe en mayúscula, incluso en medio de una frase.&amp;#60;br&amp;#62;No hay una distinción entre tú y vosotros. En cualquier caso, el pronombre es &amp;#60;strong&amp;#62;you&amp;#60;/strong&amp;#62;.&amp;#60;br&amp;#62;2) conjugación del verbo &amp;#60;strong&amp;#62;to be&amp;#60;/strong&amp;#62;, &amp;#60;i&amp;#62;ser / estar&amp;#60;/i&amp;#62;:&amp;#60;br&amp;#62;I am, yo soy/estoy&amp;#60;br&amp;#62;you are, tú/usted eres/estás/es/está&amp;#60;br&amp;#62;he/she/it is, él/ella/neutro es/está&amp;#60;br&amp;#62;we are, nosotros somos/estamos&amp;#60;br&amp;#62;you are, vosotros/ustedes sois/estáis/son/están&amp;#60;br&amp;#62;they are ellos/ellas son/están&amp;#60;br&amp;#62;A excepción de la primera y la tercera persona del singular, la forma única es &amp;#60;strong&amp;#62;are&amp;#60;/strong&amp;#62;.&amp;#60;br&amp;#62;&amp;#60;strong&amp;#62;I am&amp;#60;&amp;#47;strong&amp;#62;, &amp;#60;i&amp;#62;yo soy&amp;#60;&amp;#47;i&amp;#62;, a menudo se escribe y se pronuncia en su forma contraída, &amp;#60;strong&amp;#62;I'm&amp;#60;&amp;#47;strong&amp;#62;. También &amp;#60;strong&amp;#62;he is&amp;#60;&amp;#47;strong&amp;#62; &amp;#8594; &amp;#60;strong&amp;#62;he's&amp;#60;&amp;#47;strong&amp;#62;.&lt;/espanol&gt;
      &lt;chinois&gt;&amp;#60;strong&amp;#62;人称代词主格及动词“to be”：he is&amp;#60;&amp;#47;strong&amp;#62;&amp;#60;br&amp;#62;1) 人称代词主格&amp;#60;br&amp;#62;I, 我&amp;#60;br&amp;#62;you, 你&amp;#60;br&amp;#62;he, she, it, 他，她，它&amp;#60;br&amp;#62;we, 我们&amp;#60;br&amp;#62;you, 你们&amp;#60;br&amp;#62;they, 他们，她们，它们&amp;#60;br&amp;#62;第一人称单数人称代词，我，通常以大写形式书写&amp;#60;br&amp;#62;日常英语中第二人称单数和复数使用同样的代词：you。&amp;#60;br&amp;#62;2) 动词&amp;#60;strong&amp;#62;to be&amp;#60;/strong&amp;#62;的词形变化:&amp;#60;br&amp;#62;I am,  我 是&amp;#60;br&amp;#62;you are  你   是&amp;#60;br&amp;#62;he/she/it  is  他/她/它   是&amp;#60;br&amp;#62;we are 我们 是&amp;#60;br&amp;#62;you are 你们 是&amp;#60;br&amp;#62;they are 他们 是&amp;#60;br&amp;#62;“&amp;#60;strong&amp;#62;I am&amp;#60;&amp;#47;strong&amp;#62;(我是)”通常在书写和发音上使用缩写形式，&amp;#60;strong&amp;#62;I’m&amp;#60;&amp;#47;strong&amp;#62;。&amp;#60;strong&amp;#62;He is&amp;#60;&amp;#47;strong&amp;#62; 也是一样 &amp;#8594; &amp;#60;strong&amp;#62;he's&amp;#60;&amp;#47;strong&amp;#62;。&lt;/chinois&gt;
  &lt;/group&gt;
  </code></pre>
  
  <p>I undestand that there are several ways: SAX, XmlPullParser, DOM, and others. And SAX comes in different flavors.</p>
  
  <p>Having read someplace that XmlPullParser is the simplest, that's what I use in the following makeshift way</p>
  
  <pre><code>public void lireXML(String mot)
          throws XmlPullParserException, IOException
  {
  
      final TextView monMessage = (TextView) findViewById(R.id.zone_trado_scrollable);
  
      XmlResourceParser monFichierXML = getResources().getXml(R.xml.grammar);
  
      monFichierXML.next();
  
      int eventType = monFichierXML.getEventType();
  
      while (eventType != XmlPullParser.END_DOCUMENT)
      {
          if( (eventType == XmlPullParser.START_TAG) &amp;&amp; (monFichierXML.getName().equalsIgnoreCase("word"))  )
          {
              monFichierXML.next();
              if ( monFichierXML.getText().equalsIgnoreCase(mot) )
              {
  
                  monFichierXML.nextTag(); // word fermant
                  monFichierXML.nextTag(); // english ouvrant
                  monFichierXML.next();    // texte anglais
  
                  if (TextActivity.langueChoisie == "francais") {
                      monFichierXML.nextTag(); // english fermant
                      monFichierXML.nextTag(); // français ouvrant
                      monFichierXML.next();    // texte français
                  }
  
                  if (TextActivity.langueChoisie == "espanol") {
                      monFichierXML.nextTag(); // english fermant
                      monFichierXML.nextTag(); // français ouvrant
                      monFichierXML.next();    // texte français
                      monFichierXML.nextTag(); // français fermant
                      monFichierXML.nextTag(); // espanol ouvrant
                      monFichierXML.next();    // texte espanol
                  }
  
                  if (TextActivity.langueChoisie == "chinois") {
                      monFichierXML.nextTag(); // english fermant
                      monFichierXML.nextTag(); // français ouvrant
                      monFichierXML.next();    // texte français
                      monFichierXML.nextTag(); // français fermant
                      monFichierXML.nextTag(); // espanol ouvrant
                      monFichierXML.next();    // texte espanol
                      monFichierXML.nextTag(); // espagnol fermant
                      //monFichierXML.nextTag(); // russe ouvrant
                      //monFichierXML.next();    // texte russe
                      //monFichierXML.nextTag(); // russe fermant
                      monFichierXML.nextTag(); // chinois ouvrant
                      monFichierXML.next();    // texte chinois
                  }
  
                  // on affiche le texte à l'intérieur de la balise sélectionnée
                  //monMessage.setText(monFichierXML.getText());
                  monMessage.setText(Html.fromHtml(monFichierXML.getText()));
              }
          }
          eventType = monFichierXML.next();
      }
  }
  </code></pre>
  
  <p>It works, but I suspect I'm not using the best way to parse my xml file. Any suggestion?</p>