XQUERY FILE()
Contents
Purpose
Used to parse an XML file using XPath notation
Syntax
XQUERY_FILE(<expC1>, <expC2>)
See Also
MQCLOSE(), MQCREATE(), MQCURMSGS(), MQOPEN(), MQSEND(), MQRECEIVE(), MQUNLINK(), PRINT_XML(), XML, XML_DECODE(), XML_DECODE_FILE(), PRINT XML(), XML_ENCODE(), XML_GATHER(), XML_SCATTER(), XQUERY(), XQUERY_ATTRIBUTES(), XQUERY_CLOSE(), XQUERY_COUNT(), XQUERY_DECODE(), XQUERY_FIND(), XQUERY_NODE(), XQUERY_OPEN(), XQUERY_SELECT()
Description
The XQUERY_FILE() function is used to parse XML files using XPath notation. The XQUERY_FILE() function returns a character string. The character expression <expC1> is the XML file; <expC2> is the XML node name.
XQuery functions:
The XQUERY_OPEN() function is used to open an XML file for parsing using XPath notation. After opening using XQUERY_OPEN(), the XQUERY_FIND() or XQUERY_NODE() functions can be used to find and return a specified XML node value. The XQUERY_ATTRIBUTES() function finds and returns a complete node and its attributes. XQUERY_COUNT() returns a count of a specified XML node. The XQUERY_SELECT() function provides the ability to query nodes by attribute and value. The XQUERY_CLOSE() function is closes the XML file.
The XQUERY() function is used to parse XML strings using XPath notation.
The XQUERY_FILE() function is used to parse XML files using XPath notation.
The XQUERY_DECODE() function is used to return an object from an XML string.
Example
mybooks.xml
<?xml version="1.0" encoding="UTF-8"?> <bookstore> <book category="COOKING"> <title lang="en">Pulse</title> <author>Jenny Chandler</author> <year>2013</year> <format>Hardback</format> </book> <book category="COOKING"> <title lang="en">Riverford Farm Cook Book</title> <author>Guy Watson</author> <author>Jane Baxter</author> <year>2008</year> <format>Paperback</format> </book> <book category="CHILDREN"> <title lang="en">The House At Pooh Corner</title> <author>A. A. Milne</author> <year>1928</year> <format>Hardback</format> </book> <book category="CRIME"> <title lang="en">Knots and Crosses</title> <author>Ian Rankin</author> <year>2008</year> <format>EPUB</format> </book> <book category="PHILOSOPHY"> <title lang="fr">Le mythe de Sisyphe</title> <author>Albert Camus</author> <year>1943</year> <format>Paperback</format> </book> </bookstore>
// Examples using mybooks.xml cBook = xquery_file("mybooks.xml","/bookstore/book[2]") ? cBook <title lang="en">Riverford Farm Cook Book</title> <author>Guy Watson</author> <author>Jane Baxter</author> <year>2008</year> <format>Paperback</format> cTitle = xquery_file("mybooks.xml","/bookstore/book[2]/title") ? cTitle Riverford Farm Cook Book nCount = 1 do while .T. cTitle = xquery_file("mybooks.xml","/bookstore/book[&nCount]/title") if empty(cTitle) exit endif ? cTitle ++ nCount enddo Pulse Riverford Farm Cook Book The House At Pooh Corner Knots and Crosses Le mythe de Sisyphe