title: rvest scrape multiple values per node
body: <p>Taking this example XML</p>
  
  <pre><code>&lt;body&gt;
    &lt;items&gt;
      &lt;item&gt;
        &lt;name&gt;Peter&lt;/name&gt;
      &lt;/item&gt;
    &lt;/items&gt;
    &lt;items&gt;
      &lt;item&gt;
        &lt;name&gt;Paul&lt;/name&gt;
      &lt;/item&gt;
      &lt;item&gt;
        &lt;name&gt;Claudia&lt;/name&gt;
      &lt;/item&gt;
    &lt;/items&gt;
    &lt;items/&gt;
  &lt;/body&gt; 
  </code></pre>
  
  <p>Question: What is the easiest way to get the following result?</p>
  
  <pre><code>"Peter"   "Paul"   ""
  </code></pre>
  
  <p>By now i achieve this as follows:</p>
  
  <pre><code>require(rvest)
  require(magrittr)
  my_xml &lt;- xml("&lt;items&gt;&lt;item&gt;&lt;name&gt;Peter&lt;/name&gt;&lt;/item&gt;&lt;/items&gt;&lt;items&gt;&lt;item&gt;&lt;name&gt;Paul&lt;/name&gt;&lt;/item&gt;&lt;item&gt;&lt;name&gt;Claudia&lt;/name&gt;&lt;/item&gt;&lt;/items&gt;&lt;items&gt;&lt;/items&gt;")
  items &lt;- my_xml %&gt;% xml_nodes("items") %&gt;% xml_node("item")
  sapply(items, function(x){
    if(is.null(x)){
      ""
    } else {
      x %&gt;% xml_node("name") %&gt;% xml_text()
    }
  })
  </code></pre>
  
  <p>To me this <code>sapply</code> construction seams like mistreating either <code>rvest</code> or css-selectors.</p>