XmlXpath
Ukázka práce s XML a XPath
Popis
declare function LoadXML dll "ActualDocument" (String): Boolean declare function GetXMLCount dll "ActualDocument" (String): Integer declare function GetXMLValue dll "ActualDocument" (String): String declare function GetLastErrorMessage dll "ActualDocument" (): String script Example(): Boolean var XmlData: string Loaded: Boolean NodeCount: Integer I: Integer NodeValue: string XPath: string begin XmlData := "<animals>" + " <animal name=""Dog"">1</animal>" + " <animal name=""Cat"">2</animal>" + " <animal name=""Mouse"">3</animal>" + "</animals>" Loaded := LoadXML(XmlData) if Loaded then NodeCount := GetXMLCount("//animal") for I := 1 to NodeCount do XPath := "//animal[" + I + "]/@name" NodeValue := GetXMLValue(XPath) write(NodeValue) // Dog, Cat, Mouse end else write(GetLastErrorMessage()) Result := False end Result := True end
Ukázky XPath
XPath | Popis |
---|---|
/animals/animal | všechny uzly animal v kořenovém uzlu animals |
//animal | všechny uzly animal v libovolné úrovni dokumentu |
/animals//animal | všechny uzly animal v libovolné pod-úrovni kořenového uzlu animals |
//animal[3] | třetí výskyt uzlu animal v dokumentu |
//animal/@name | atributy name ze všech uzlů animal |
//animal[3]/@name | atribut name třetího výskytu uzlu animal v dokumentu |
//animal[@name="Dog"] | všechny uzly animal , které mají atribut name s hodnotou Dog |