home contribute faq download

FunctX XQuery Functions

functx:wrap-values-in-elements

Wraps a sequence of atomic values in XML elements

Google
Webxqueryfunctions.com

Description

The functx:wrap-values-in-elements function takes a sequence of atomic values and places each one inside an element with the name specified in $elementName.

The name must be specified as an xs:QName value. QNames can be constructed with calls to the xs:QName type constructor or the fn:QName function, as shown in the examples.

Arguments and Return Type

NameTypeDescription
$values xs:anyAtomicType* the values to wrap in elements
$elementName xs:QName the name of the elements to construct
return value element()*

XQuery Function Declaration

See XSLT definition.
declare namespace functx = "http://www.functx.com";
declare function functx:wrap-values-in-elements
  ( $values as xs:anyAtomicType* ,
    $elementName as xs:QName )  as element()* {

   for $value in $values
   return element {$elementName} {$value}
 } ;

Examples

declare namespace new = "http://newns";
XQuery ExampleResults
functx:wrap-values-in-elements(
   (1,2,3),
   xs:QName('num'))
<num>1</num>
<num>2</num>
<num>3</num>
functx:wrap-values-in-elements(
      (1,2,3),
      xs:QName('new:num'))
<new:num xmlns:new="http://newns">1</new:num>
<new:num xmlns:new="http://newns">2</new:num>
<new:num xmlns:new="http://newns">3</new:num>
functx:wrap-values-in-elements(
   (1,2,3),
   QName('http://newns','num'))
<num xmlns="http://newns">1</num>
<num xmlns="http://newns">2</num>
<num xmlns="http://newns">3</num>
functx:wrap-values-in-elements(
   (1,2,3),
   QName('http://newns','new:num'))
<new:num xmlns:new="http://newns">1</new:num>
<new:num xmlns:new="http://newns">2</new:num>
<new:num xmlns:new="http://newns">3</new:num>

History

Published OnLast UpdatedContributor(s)
2006-06-272007-02-26Priscilla Walmsley, Datypic, pwalmsley@datypic.com, http://www.datypic.com
Datypic XQuery Services

Recommended Reading:

XQuery