Vylepšená podpora XPath

Automaticky přeloženo z Deepl

XPath je jazyk umožňující snadnou práci s dokumenty XML. Je již použitelný prostřednictvím DOM Find XML element příkazu a ve verzi 4D v18 R3 byla podpora syntaxe XPath výrazně rozšířena. Pokud patříte mezi ty, kteří požadovali funkce, jako je použití zástupného znaku v cestě, pak čtěte dál!

Chcete-li novou syntaxi používat ve stávajících aplikacích, je třeba zaškrtnout nastavení kompatibility „Použít standardní XPath“. Nově vytvořené databáze používají novou syntaxi ve výchozím nastavení. Pro zjednodušení vyhledávání můžete nyní používat nové výrazy, jako jsou //, @, *, last().

Příklady zápisu predikátů

V následujících příkladech použijeme následující dokument XML:

<?xml version="1.0" encoding="UTF-8"?>
<bookstore>
<book>
  <title lang="en">The Wheel of Time</title>
  <title lang="fr">La roue du temps</title>
  <price>29.99</price>
</book>
<book>
  <title lang="en">Harry Potter</title>
  <price>50.00</price>
</book>
<book>
  <title lang="en">Learning XML</title>
  <price>39.95</price>
</book>
</bookstore>
  • Najděte předposlední prvek kniha, který je potomkem prvku knihkupectví:

$Dom_root2:=DOM Find XML element($Dom_root;"/bookstore/book[last()-1]";$arrAfound)
// Returns
//‹book›
// ‹title lang="en"›Harry Potter‹/title›
// ‹price›50.00‹/price›
//‹/book›

  • Najděte všechny elementy title, které mají atribut „lang“ s hodnotou „fr“:

$Dom_root2:=DOM Find XML element($Dom_root;"//title[@lang='fr']";$arrAfound)
// Returns ‹title lang="fr"›La roue du temps‹/title›

  • Najděte všechny prvky knihy, které mají cenu rovnou 39,95:

$Dom_root2:=DOM Find XML element($Dom_root; "book[price=39.95]";$arrAfound)</br />
// Returns
//‹book›
// ‹title lang="en"›Learning XML‹/title›
// ‹price›39.95‹/price›
//‹/book›

Toto je jen několik příkladů toho, co můžete s novými výrazy dělat. Můžete je více či méně složitě kombinovat, abyste našli výsledky, které potřebujete. Podrobnější informace o tom, co můžete s těmito novými vylepšeními dělat, najdete v dokumentaci.

Fabrice Mainguené
- Product Owner -Fabrice Mainguené se připojil k týmu 4D Program v listopadu 2016. Jako Product Owner má na starosti psaní uživatelských příběhů, které následně převádí do funkčních specifikací. Jeho úkolem je také zajistit, aby dodaná implementace funkcí splňovala potřeby zákazníků.Po získání bakalářského titulu v oboru informatiky na CNAM nastoupil Fabrice do malé softwarové vydavatelské společnosti jako vývojář Windev. Poté pracoval pro různé společnosti v oblasti průmyslu a obchodu jako vývojář aplikací Windev a webových aplikací a také jako technický poradce pro nové funkce.