2009-04-08 102 views
0

我想設計一個web應用程序,它允許我對一組手冊頁進行排序,瀏覽和顯示各種屬性(例如標題,標籤,說明)。如何設計瀏覽文本手冊頁的網頁界面?

具體地,這些是R documentation files容納數據集的集合,由幾個人在SVN庫保持的R封裝內。這些文件的格式是.Rd,這與LaTeX相似,但不同。

R有將這些手冊頁轉換爲html或pdf的功能,但我希望能夠有一個Web界面,允許用戶點擊特定的關鍵字,並列出一個列表(和簡短的摘錄)對於在\ keyword {}標籤中包含該關鍵字的手冊頁。

而且,生成的HTML是有點醜陋,我希望能夠提供我自己的CSS。

一個顯而易見的選擇是所有我渴望元數據加載到數據庫如MySQL的,設計我的網站運行查詢並獲取相應的數據。

我想,以避免將來的維護,要儘量減少保養。文件數量很少(< 500),數據量很小(每個文件只有幾百行)。

我目前的傾向是有一個腳本,將所需的元數據從每個文件中抽取到摘要JSON文件中,然後使用PHP加載此summary.json文件,對其進行解碼並循環查找具有屬性的項目與當前查詢相匹配(例如,所有與關鍵字1和關鍵字2相關的文檔)。

我在那個方向有以下...

$contents=file_get_contents("summary.json"); 
$c=json_decode($contents,true); 
foreach ($c as $ind=>$val) { .... etc 

開始另一個想法是寫一個腳本,將這些.Rd文件轉換爲XML。在那種情況下,是否有任何輕量級框架可以輕鬆地對一小組xml文件進行排序和搜索?

我不知道,如果XQuery是矯枉過正,或者如果我有時間去鑽研它...

我想我從過於許多選項-綜合症與所有的AJAX誘惑。任何幫助是極大的讚賞。

我在尋找一個超級簡單的解決方案。你們有些人可能會怎麼做?

回答

1

我的方法是從文件解析關鍵字(從您的描述中我假設他們有一個特殊的標記來區分它們與正常的文字/文本),並將這些數據存儲爲searchindex的某處。不一定是mySQL,sqlite肯定會滿足你的項目。 搜索將非常簡單。

解析文件可以被自動化爲你的Subversion版本庫的post-commit-hook。

0

爲什麼不爲每個摘要字段創建帶有列的表摘要? 然後,您可以使用全文索引爲其編制索引,爲每個字段分配不同的權重。

你不需要MySQL,你可以使用SQLite裏面有Google的全文索引(FTS3)。