2009-12-20 63 views
1

是否可以通過webform動態更新用戶生成輸入的rdf文件?確切的情況是beskos概念定義是通過用戶輸入到html表單創建和更新的。動態更新RDF文件

我正在考慮xpath,但有沒有更好的/普遍接受/最好的做法做這種事情?

回答

1

對於這種類型的事情有IMO兩種方法:

1 - 在三重商店使用命名圖

不是相反編輯實際的固定文件使用何種存儲爲一個名爲圖表的圖表在支持三級更新的三重商店(即您可以更改圖表中的單個三元組)。例如,您可以使用像Virtuoso或基於Jena的商店(Jena SDB/TDB)這樣的商店,基本上支持SPARUL語言的商店或具有它自己的等效商店的商店。

2 - 使用一個固定的RDF文件,並改變它

從你的XPath提到我假設你打算存儲你的文件作爲RDF/XML。雖然XPath可能會爲此工作,但它將依賴於文件的確切序列化,並且可能會變得非常複雜。如果您的應用程序要允許用戶提交和編輯自己的文件,那麼他們將無法保證RDF如何被序列化爲RDF/XML,因此您的XPath表達式可能無法正常工作。如果您控制RDF/XML的所有序列化和處理,那麼您可以將其保存爲XPath可以使用的格式。

從我的角度來看,執行此方法的最簡單方法是使用適當的RDF庫將文件加載到內存中,在內存中對其進行操作,然後在用戶完成時將整個事件保存回磁盤(或定期或任何適合您的應用程序)

+0

如果PHP是你的語言(假設http://www.semanticoverflow.com/questions/432/dynamic-skos-concepts是你的問題),那麼你應該看看ARC框架http://arc.semsol.org/ – RobV 2009-12-20 22:19:32

+0

嗨,首先感謝您的答覆。嗯,我現在有點困惑 - 這對我來說都很新,所以對不起,如果我在這裏沒有意義。我的理解是,我會創建uri,它將保存skos概念(是以rdf/xml格式)。那麼你是否說我不需要這樣做,只需要使用我用tripe store打開的模板 - arc並使用sparql進行編輯,添加我需要的節點等等? – David 2009-12-20 22:23:18