Announcement

Collapse
No announcement yet.

Hilfe bei Xpath AUsdrücken

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • Hilfe bei Xpath AUsdrücken

    Hallo!

    Bin absoluter Neuling auf dem Gebiet Xpath und mache gerade die Übungen auf dieser Seite:

    http://learn.onion.net/language=de/9075/w3c-xpath

    Jetzt gibt es da ein paar, bei denen ich überhaupt nicht weiterkomme. Wäre nett, wenn mir da jemand Tipps geben könnte!

    Code:
    <numbers>
      <number>33</number>
      <number>34.4</number>
      <number>33.8</number>
      <number>33.43</number>
      <number>34.46</number>
      <number>35</number>
      <number>33.49</number>
      <number>33.00</number>
    </numbers>
    Aufgabe: Ermitteln Sie die Summe aller Zahlen, die gerundet 34 ergeben.

    Ergebnis soll sein: 102,66

    Mein Ansatz: /numbers/*[round(.) = 34]

    Weiter komme ich nicht...

    Und diese Aufgabe: http://learn.onion.net/language=de/taps=9075/2914 (ich denke, der link ist einfacher, als den ganzen Code zu posten)

    Mein Ansatz: //x:html//x:li/x:a (irgendwas in die Richtung...)

    Vielen Dank für Tipps!!

  • #2
    Hallo,
    zur ersten Aufgabe:
    Du bist an der Lösung schon fast dran. Die richtigen Elemente hast du schon selektiert. Eigentlich fehlt nur noch die Summe der Zahlen. Also einfach sum() um deinen Ausdruck und fertig.

    Zur zweiten Aufgabe:
    Dein Ansatz sieht schon richtig aus, nur hast du noch eine Bedingung übersehen. Es sollen alle Elemente unterhalb von document/content selektiert werden.
    D.h. es fehlt am Anfang vom Ausdruck eigentlich nur noch /document/content.
    Derzeit selektierst du halt noch das Element aus /document/teaser.

    Ich hoffe dir gefallen unsere Aufgaben.

    Grüße,
    David

    Comment


    • #3
      Hallo!

      Hast du an den Aufgaben mitgeschrieben??

      Ja, gefallen mit sehr gut! Ist echt ne gute Idee! Schade, dass es zu XML-Schema und XSLT noch nix gibt.

      Danke für die Antworten!

      Noch eine Frage zur zweiten Aufgabe: Wieso klappt es nicht mit diesem Pfad?
      /document/content/x:html/x:head/x:body/x:div/x:ul/x:li/x:a

      Comment


      • #4
        Hallo,
        nein die Aufgaben habe ich nicht geschrieben. Die gab es schon bevor ich bei der Firma angefangen habe.

        Zu deiner Frage:
        Zwei Fehler. Einmal befindet sich x:head auf gleicher Ebene wie x:body, so dass x:head in diesem Ausdruck falsch ist. Der zweite Fehler ist, dass zwei x:a in einer verschachtelten Liste sind, d.h. zwei Ebenen tiefer liegen. Daher muss // benutzt werden, um alle Anker aus allen Ebenen zu erwischen.


        Grüße,
        David

        Comment

        Working...
        X