2016-07-26 9 views
0

私は試験のために学習しています。私がここで間違っていることをよく理解できません。Xpath属性とテキスト

私は、私は今、私はこの// WM [@jahr]のようなものを探すために持っていることを知って、オランダが優勝に参加されたすべての年を見つける必要があり、このXML

<?xml version="1.0"?> 
<schema xmlns="" 
    xmlns:xsi="link-2" 
    xsi:schemeLocation="link-3"> 

    <wm-stats> 
     <wm jahr="2014"> 
      <teilnehmer platz="1">Deutschland</teilnehmer> 
      <teilnehmer platz="2">Argentinien</teilnehmer> 
      <teilnehmer platz="3">Niederlande</teilnehmer> 
     </wm> 

     <wm jahr="2010"> 
      <teilnehmer platz="1">Spanien</teilnehmer> 
      <teilnehmer platz="2">Holland</teilnehmer> 
      <teilnehmer platz="3">Deutschland</teilnehmer> 
     </wm> 

     <wm jahr="2006"> 
      <teilnehmer platz="1">Italien</teilnehmer> 
      <teilnehmer platz="2">Frankreich</teilnehmer> 
      <teilnehmer platz="3">Deutschland</teilnehmer> 
     </wm> 

     <record name="Rekordtorschütze"> 
      <person> Miroslav Klose </person> hat in Brasilien ... 
     </record> 

     <record name="Rekordweltmeisterschaften"> 
      <ort> Brasilien </ort> ist mit 5 Weltmeistersiegen ... 
     </record> 
    </wm-stats> 
</schema> 

を得ました/ teilnehmer [text()= "Holland"] しかし、どうやってjahrの価値を得るのですか?位置するように正しいノードは、周りの

//wm[teilnehmer = "Holland"]/@jahr 

他の方法ヤール2010

+0

ヒント: 'WMを探している[...]/@ jahr' – Markus

答えて

1

だろうが、あなたのアプローチは[@jahr]は中に実際に不必要であることに注意してください* unsalvageableないが、どちらか

//wm[@jahr]/teilnehmer[. ="Holland"]/../@jahr 

この式

XPathでは、常に上向き(および横向き)に移動できます。

は、ナビゲーションのために利用可能なさまざまなXPathの軸を説明する、この包括的な画像を見てください:https://our.umbraco.org/wiki/reference/xslt/xpath-axes-and-their-shortcuts/

関連する問題