functx:id-from-element

Pega o ID de um elemento XML

Descrição

A função functx:id-from-element pega o elemento $element e devolve o atributo dele do tipo xs:ID (só pode haver um). Se não houver esse atributo, ou se o argumento for a sequência vazia, devolve a sequência vazia. Para a função devolver o atributo, ele precisa ter sido declarado como xs:ID num schema, e o documento precisa ter sido validado por esse schema.

Parâmetros

Descrição

element:element()

o elemento

Exemplos

Os exemplos abaixo usam este documento de entrada:

<xsl:variable name="book" select="doc('http://www.functx.com/input/book.xml')"/>

<!-- content of book.xml -->
<!DOCTYPE book [
  <!ELEMENT book (section*) >
  <!ELEMENT section ANY >
  <!ATTLIST section id ID #REQUIRED >
  <!ELEMENT fn ANY >
  <!ATTLIST fn fnid ID #REQUIRED >
  <!ELEMENT fnref EMPTY >
  <!ATTLIST fnref ref IDREF #REQUIRED >
  <!ELEMENT secRef EMPTY >
  <!ATTLIST secRef refs IDREFS #REQUIRED >
]>
<book>
  <section id='preface'>This book introduces XQuery...
    The examples are downloadable<fnref ref="fn1"/>...
  </section>
  <section id='context'>...</section>
  <section id='language'>...Expressions, introduced
   in <secRef refs='context'/>, are...
  </section>
  <section id='types'>...As described in
    <secRef refs='context language'/>, you can...
  </section>
  <fn fnid='fn1'>See http://datypic.com.</fn>
</book>

XPath

Resultado

Explicação

functx:id-from-element($book/book/section[1])

preface

Supõe que o atributo id de $element foi declarado como xs:ID.

Veja também