<body>
  <A>Vormerkung<t:s>book.orderable := true(), book._order-url := @href</t:s></a>?
 
 <t:s>declare function local:parse-column($node){
   $node ! (
     let $weirdscript := 'document.write(convert_special_characters("'
     return if (.//script[contains(., $weirdscript)]) then
       string-join( .//text()!(
         if (../name() eq "script") then 
           . => substring-after($weirdscript) => substring-before('"));')
         else .
       ) , " ")
     else string()
   )     
 }; ()</t:s>
 
            <TABLE  class="inRecordHeader">
              <TR>
                <TD>
                  <TABLE >
                    <t:loop>
                      <t:switch>
                        <TR><TD>Titel</TD><TD/><TD/><TD>{$book.title}</TD></TR>
                        <TR><TD>Verfasser</TD><TD/><TD/><TD>{$book.author}</TD></TR>
                        <TR><TD>Signatur</TD><TD/><TD/><TD>{$book.id}</TD></TR>
                        <TR><TD>Jahr</TD><TD/><TD/><TD>{book.year := extract(., "^ *[0-9]+")}</TD></TR>
                        <TR><TD>{$temp}</TD><TD/><TD/><TD>{$book(concat($temp, "!")) := .}</TD></TR>
                      </t:switch>
                    </t:loop>
                  </TABLE>
                </TD>
              </TR>
            </TABLE>
 
 
      <TABLE >
        <TR>
          <TD>
            <TABLE>
              <t:loop>
                <t:switch>
                  <TR><TD>Titel</TD><TD/><TD>{$book.title := local:parse-column(.)}</TD></TR>
                  <TR><TD>Person</TD><TD/><TD>{$book.author := local:parse-column(.)}</TD></TR>
                  <TR><TD>Autor</TD><TD/><TD>{$book.author := local:parse-column(.)}</TD></TR>
                  <TR><TD>Erschienen</TD><TD/><TD>{
                    let $temp := local:parse-column(.)
                    return (
                      book.year := extract($temp, "[0-9]+ *$"),
                      if (contains($temp, ":")) then (
                        book.location := substring-before($temp, ":"),
                        book.publisher := translate(substring-after($temp, ":"), "0123456789", "")
                      ) else ()
                    )
                  }</TD></TR>
                  <TR><TD>ISBN</TD><TD/><TD>{book.isbn := local:parse-column(.) ! ( if (contains(., ":")) then substring-before(., ":") else . )}</TD></TR>
                  <TR><TD>EAN</TD><TD/><TD>{$book(if (not($book.isbn)) then "isbn" else "EAN!") := local:parse-column(.) ! (if (contains(., ":")) then substring-before(., ":") else .)}</TD></TR>
                  <TR><TD>Signatur</TD><TD/><TD>{$book.id := local:parse-column(.)}</TD></TR>
                  <TR><TD>{$temp}</TD><TD/><TD>{$book(concat($temp, "!"))  := local:parse-column(.)}</TD></TR>
                </t:switch>
              </t:loop>
            </TABLE>
          </TD>
        </TR>
      </TABLE>
 
    <DIV>Bestand<t:s> i := 0, header := (),
      let $divs := following::div
      for $div in $divs
      (:for tumbling window $window in $divs start when true() end next $n when starts-with($n/@id, 'stock_header'):) 
      let $id := $div/@id
      return (
        if (starts-with($id, "stock_header")) then 
          $header := $div/string()
        else if (starts-with($id, "stock_content")) then 
          for tumbling window $lines in $div/(text()|element()) start when true() end $e when $e/self::br return
          let $t := $lines!normalize-space(inner-text())[.] where exists($t) return
          $book(concat("Exemplar ", $i := $i + 1, "!")) := join(($header, $lines), "&#10;")
        else ()
      )[0]      
    </t:s></DIV>?
  

</body>