Contexto
Estoy escribiendo algunas preguntas de práctica de opción múltiple y me gustaría almacenarlas en un formato de datos de texto plano simple. Anteriormente he usado tabulación delimitada, pero eso hace que la edición en un editor de texto sea un poco incómoda. Me gustaría usar un formato un poco como bibtex.
P.ej,
@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",
}
Las propiedades importantes parecen ser:
- Los datos están formados por registros.
- Cada registro tiene múltiples pares de atributos-valores
- Cada par de atributo-valor puede registrarse en una nueva línea, pero puede abarcar varias líneas
- Fácil de ingresar manualmente datos de texto en un editor de texto
- Herramientas fácilmente disponibles para convertir en datos tabulares
Por ejemplo, aquí hay algo parecido a lo que podría funcionar
@
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
Si bien estoy interesado en el contexto específico de escribir preguntas de opción múltiple, también estoy interesado en el tema más amplio de representar datos en este u otro tipo de formato similar.
Pensamientos iniciales
Mis pensamientos iniciales incluyeron lo siguiente:
- Ñame
- JSON
- Datos delimitados con delimitadores de campo y registro personalizados que permiten registros de varias líneas
- Un formato de archivo personalizado con algún tipo de analizador personalizado
Solo he echado un vistazo rápido a YAML y JSON; Mis primeras impresiones son que podrían ser excesivos. La delimitación personalizada puede ser buena, pero probablemente requerirá que todos los campos estén presentes en un orden consistente para todos los registros. Escribir mi propio analizador suena un poco incómodo.