Feeds XPath Parser

Rozšiřuje možnosti modulu Feeds o import XML nebo HTML dat.

U všech elementů (u atributů ne) je vhodné nastavit vícepoložkové pole (multiple field), protože jich může být více viz např. jazykové znalosti v příkladu níže.

Příklad

Zdrojová data:

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<world>
  <regions>
    <region regionId="1" name="North America"></region>
    <region regionId="2" name="South and Central America"></region>
    <region regionId="3" name="Europe"></region>
    <region regionId="4" name="Africa and Middle East"></region>
    <region regionId="5" name="South Asia and Oceania"></region>
    <region regionId="6" name="North Asia">
      <notes title="Important">My important text
        <description>Help text</description>
      </notes>
      <language title="English" level="3"></language>
      <language title="German" level="2"></language>
      <language title="French" level="1"></language>
    </region>
  </regions>
</world>

Příklad nastavení importu:

  • Content:
    • //region
  • name:
    • @name
  • description:
    • @regionId
  • notes:
    • notes
  • description
    • notes/description
  • terms (multiple field):
    • concat(language/@title, " – ", language/@level)
  • all data
    • . (jen tečka, např. import "úplných" XML dat)

U importu "úplných" XML dat je vhodné v nastavení XPath XML parseru v sekci "Select the queries you would like to return raw XML or HTML" zaškrtnou příslušné pole.

Funkce:

  • concat – umožňuje spojit řetězce
  • string-join – umožňuje vložit oddělovač polí, ovšem není součástí XPath 1.0 no
    • string-join(language/@title, ', ')

Operátory:

  • | oddělovač polí
  • + součet: price[+1]
  • * násobení
  • podmínky výběru:
    • když je měna Kč: currency[@ccy="Kč"]
    • když je cena 2: book[price=2]
    • první položka pole: item[1]

Nápověda:

Další moduly:

Porovnání modulů pro převod XML dat na Text pomocí XSLT trasformace:

Výkon Modul Databáze Formát (filtr) – správa polí Formáter – způsob zobrazení
1. Feeds XSLT Pipeline Parser Text    
2. XML Transform (Sandbox) XML Text  
3. XSL formatter XML XML Text

Zhlediska rychlosti je nejvýhodnější Feeds XSLT Pipeline Parser, kde k převodu dochází již při importu. U ostatních modulů je výhodou zachování zdrojových XML dat – při vysypání cache se převod (XSLT trasformace na text) provádí znovu.

Podobné moduly:


Poznámky: