跳到內容

XQuery/維基武器頁面

來自 Wikibooks,開放世界的開放書籍

在 Matt Turner 的部落格裡,他使用 MarkLogic 從維基頁面中獲取一箇中世紀武器列表,作為莎士比亞戲劇文字豐富化的第一步。

這是使用僅有的標準 XQuery 函式完成的另一項嘗試。同樣,我們很幸運維基頁面是格式良好的 XML。

declare namespace h= "http://www.w3.org/1999/xhtml" ;

let $url := "http://en.wikipedia.org/wiki/List_of_medieval_weapons"
let $wikipage := doc($url)
return 
    string-join($wikipage//h:div[@id="bodyContent"]//h:li[h:a/@title][empty(h:ul)]/h:a,',')

這裡的複雜路徑可以確保僅包含相關的li 標記,並且僅包含術語層次結構中的終端,因此可以檢查li 是否沒有ul 子元素。

華夏公益教科書