環境
私はいくつかの多肢選択問題の質問を書いており、それらを単純なプレーンテキストデータ形式で保存したいと考えています。以前はタブ区切りを使用していましたが、テキストエディターでの編集は少し厄介です。ビブテックスのようなフォーマットを使いたいのですが。
例えば、
@Article{journals/aim/Sloman99,
title = "Review of Affective Computing",
author = "Aaron Sloman",
journal = "AI Magazine",
year = "1999",
number = "1",
volume = "20",
url = "http://dblp.uni-trier.de/db/journals/aim/aim20.html#Sloman99",
pages = "127--133",
}
重要なプロパティは次のようです:
- データはレコードで構成されています
- 各レコードには複数の属性と値のペアがあります
- 各属性と値のペアは新しい行に記録できますが、複数の行にまたがることができます
- テキストエディターにテキストデータを手動で入力するのは簡単
- 表形式のデータに変換するためのすぐに利用できるツール
たとえば、これはうまくいくかもしれないもののようなものです
@
id: 1
question: 1 + 1
a: 1
b: 2
c: 3
d: 4
correct: b
@
id: 2
question: What is the capital city of the country renowned for koalas,
emus, and kangaroos?
a: Canberra
b: Melbourne
c: Sydney
d: Australia
correct: a
私は複数選択の質問を書くという特定のコンテキストに興味がありますが、この形式または類似の形式でデータを表現するというより広範な問題にも興味があります。
最初の考え
私の最初の考えは以下を含みました:
- YAML
- JSON
- 複数行のレコードを許可するカスタムフィールドとレコード区切り記号を使用して区切られたデータ
- 何らかの形式のカスタムパーサーを含むカスタムファイル形式
私はYAMLとJSONをざっと見てきました。私の第一印象は、彼らはやり過ぎかもしれないということです。カスタム区切りは良いかもしれませんが、それはおそらくすべてのレコードに対して一貫した順序ですべてのフィールドが存在することを必要とするでしょう。私自身のパーサーを書くのは少し面倒です。