2009-12-27 27 views
3

相關:How to store lightweight formatting (Textile, Markdown) in database?在數據庫中存儲什麼標記語言?

我想在我們的數據庫中以某種標記語言存儲註釋格式。但是,我們希望允許多種格式化語言(markdown,textile,restructuredText)。看來我們應該存儲它們的特徵的超集,以便我們可以在它們之間進行轉換。

  • 這項工作?
  • 有沒有這樣的超集?
  • 是否有庫在它們之間切換?
  • 我們應該在數據庫中保留更多結構化格式嗎?

(Python的/谷歌應用程序引擎,如果它的事項)

回答

9

你有沒有考慮更簡單的東西:存儲在其原始形式的意見,連同其格式,它被存儲在(降價,紡織一個額外的列說法等等...)?

我認爲任何超集要麼會導致一些信息的損失,只能通過存儲許多可能的不同方法之一來將語法寫入特定的標記中,否則將會過於複雜,因爲它會嘗試允許在所有允許的標記中使用特定語法的所有可能編碼。

+0

我確實在想這件事。我反對它的原因是我希望能夠在飛行中切換它們。但這是一個單獨的問題,它可能適用於有損解決方案。所以我認爲你可能是對的。 – 2009-12-27 20:40:15

+0

@Paul:Mark給了你一個很好的答案,但是如果你仍然希望能夠在不同格式之間進行轉換,可以試試HTML ex。 Markdown-> HTML-> Textile-> HTML-> restructuredText – Niteriter 2009-12-27 21:42:04

+0

超集我並不是指支持所有語法的語言。我的意思是像HTML一樣(也許b,我,a,blockquote只)。我會將reST/markdown/etc轉換爲HTML。我傾向於這一點,因爲這意味着所有轉換都可以使用一些規範格式,而不是爲每對格式編寫/查找轉換庫。 – 2009-12-27 23:18:57

相關問題