O'Reilly logo

XSLT, 2nd Edition by Doug Tidwell

Stay ahead with the world's most comprehensive technology and business learning platform.

With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, tutorials, and more.

Start Free Trial

No credit card required

Name

[2.0] prefix-from-QName()

Given an xs:QName value, returns its namespace prefix.

Syntax

xs:NCName? prefix-from-QName(xs:QName?)

Input

An xs:QName value.

Output

An xs:NCName (“noncolonized” name) representing the prefix from the QName. If the QName doesn’t have a prefix or the xs:QName argument is the empty sequence, prefix-from-QName() returns the empty sequence.

Defined in

XQuery 1.0 and XPath 2.0 Functions and Operators section 11.2, “Operators and Functions Related to QNames.”

Example

As usual, when we’re working with namespaces, we’ll use our Shakespearean sonnet as our XML input document:

<?xml version="1.0"?>
<!-- sonnet.xml --> <sonnet type='Shakespearean'> <auth:author xmlns:auth="http://www.authors.com/"> <last-name>Shakespeare</last-name> <first-name>William</first-name> <nationality>British</nationality> <year-of-birth>1564</year-of-birth> <year-of-death>1616</year-of-death> </auth:author> <!-- Is there an official title for this sonnet? They're sometimes named after the first line. --> <title>Sonnet 130</title> <lines> <line>My mistress' eyes are nothing like the sun,</line> <line>Coral is far more red than her lips red.</line> <line>If snow be white, why then her breasts are dun,</line> <line>If hairs be wires, black wires grow on her head.</line> <line>I have seen roses damasked, red and white,</line> <line>But no such roses see I in her cheeks.</line> <line>And in some perfumes is there more delight</line> <line>Than in the breath that from my mistress reeks.</line> <line>I ...

With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, interactive tutorials, and more.

Start Free Trial

No credit card required