我需要從互聯網上讀取一個XML文件並重新塑造它。 這是XML文件和我到目前爲止的代碼。如何讀取XML輸入文件,操作某些節點(刪除並重命名某些文件)並將輸出寫入新的XML輸出文件?
library(XML)
url='http://ClinicalTrials.gov/show/NCT00001400?displayxml=true'
doc = xmlParse(url,useInternalNode=TRUE)
我能夠在XML封裝中使用某些功能sucess(例如,getNodeSet),但我不是專家,也有在互聯網上的一些例子,但我沒能破解這個問題我自己。我也知道一些XPath,但這是4年前的事情,我不是熟練使用Sapply和類似功能的專家。
但我的目標是:
我需要刪除了一整套關於位置XML孩子分支機構。
<location> ... anything </location>
可存在與位置數據的多個節點。我只是不需要輸出中的細節。
上面的XML文件始終符合XSD架構。根節點是。
2. 所得簡化文件應該被寫入一個新的XML文件名爲數據changed.xml
3. 我還需要重命名和老嵌套的地方
<eligibility>
<criteria>
<textblock>
Inclusion criteria are xyz
</textblock/>...
移動一個分支
在新的輸出(data-changed.xml)中,結構應該表示不同的XML節點並且直接位於根節點下。
入選標準是XYZ
所以我需要 - 讀取XML到內存 - 操作樹(修剪它的地方) - 移動某些XML節點到一個新的地方,並以新名稱和 - 編寫生成的XML輸出文件。
任何想法非常感激?另外,如果你知道關於R中XML解析的一個很好的(最近的!)教程(或者解決它的書籍章節,請分享參考資料)。 (我讀過鄧肯的小插曲,這些插圖太過先進(太簡明))。
確定。我過去寫過一些XSLT。但它並沒有完全解決我的問題。我搜索了R的原生XSLT庫,但無法找到它。只有通過系統命令我可能會調用一些外部XSLT分析器。它仍然需要很多我無法編寫的R代碼。 你知道如何在R中實現這樣的事情: outputXML < - 過程(XMLfile,withTHISxsltFile) – userJT 2012-01-05 22:34:34