XMLSEARCH  
Description

Uses an XPath language expression to search an XML document object.

 
Returns

An array of XML object nodes that match the search criteria.

 
Category

XML functions

 
Function syntax
XmlSearch(xmlDoc, xPathString)
 
See also

cfxml, IsXML, XmlChildPos, XmlParse, XmlTransform; Chapter 35, "Using XML and WDDX" in ColdFusion MX Developer's Guide

 
History

ColdFusion MX 7: Added support for attribute searches.

ColdFusion MX: Added this function.

 
Parameters

 
Usage

The XmlSearch function does not support complete XPath syntax. It only supports XPath expressions that return one or more XML nodes and attribute searches. XPath expressions that return any other type of value, such as a string, number, or Boolean, generate errors.

XPath is specified by the World Wide Web Consortium (W3C). For detailed information on XPath, including XPath expression syntax, see the W3C website at www.w3.org/TR/xpath.

 
Example

The following example extracts the elements named last, which contain employee last names, from an XML file, and displays the names.

The employeesimple.xml file contains the following XML:

<?xml version="1.0" encoding="UTF-8"?>
<employee>
<!-- A list of employees -->
 <name EmpType="Regular">
  <first>Almanzo</first>
  <last>Wilder</last>
 </name>
 <name EmpType="Contract">
  <first>Laura</first>
  <last>Ingalls</last>
 </name>
</employee>

The CFML file contains the following lines:

<cfscript>
   myxmldoc = XmlParse("C:\CFusionMX7\wwwroot\examples\employeesimple.xml");
   selectedElements = XmlSearch(myxmldoc, "/employee/name/last");
   for (i = 1; i LTE ArrayLen(selectedElements); i = i + 1)
      writeoutput(selectedElements[i].XmlText & "<br>");
</cfscript>

XML document object

XMLDOC  

XPath expression

XPATHSTRING