353
Chapter 14: Using XML Data
14
XML Data Type Methods
The XML data type supports a number of methods providing various operations on the XML
document. An operation on an XML document is applied to one or more elements or attri-
butes at a specifi c location. To perform an operation, the location of the specifi c element
needs to be specifi ed.
Common operations on XML documents typically involve reading values from elements or
attributes, querying for information, or making modifi cations to the XML document by
inserting, updating, or deleting elements or attributes.
This section begins with an overview of the XPath language to provide a foundation in
which to cover the methods.
XPath
XPath is an expression language that provides quick and effi cient processing of values and
the locating of XML elements and attributes in an XML document. It also allows for easy
navigation through an XML tree.
The concept is that each element and attribute has a unique “path,” for example:
<Items>
<ItemNumber>1234</ItemNumber>
<ItemNumber>2345</ItemNumber>
</Items>
In the preceding code, the path to the fi rst ItemNumber element is /Items/
ItemNumber[1], and the path to the second ItemNumber element is /Items/
ItemNumber[2]. Each element and attribute within an XML document can be uniquely
identifi ed and processed using an XPath expression.
All the XML data type methods accept XPath expressions to specify the target element or
attribute on which the given operation is performed.
XPath is a language used to create expressions that can address parts of an XML document.
It can also be used to manipulate numbers and strings, and can match a set of nodes in an
XML document. As such, we can use XPath to identify nodes in an XML document based on
their type, name, and values.
value()
The value() method is the most useful of the methods, providing the ability to retrieve
scalar values from an XML document as relational columns. The value() method takes an
c14.indd 353c14.indd 353 7/30/2012 4:49:02 PM7/30/2012 4:49:02 PM
http://www.it-ebooks.info