Мне нужен очень простой язык ввода для нужд моих клиентов. Среди тех, кого я знаю (XML
, JSON
, YAML
,), XML
и JSON
не могут быть использованы («не проклятье для человека»).Проще чем YAML, лучше, чем CSV
CSV
слишком прост для моих задач (есть несколько иерархий, и некоторые атрибуты, может быть присоединены к «элементам»)
и YAML
является слишком сложными. ("Документация TL;? DR")
Есть некоторые хорошо известный стандарт, который может заполнить пробел между YAML
и CSV
? Или мне нужно сделать это самостоятельно?
Вопрос возник из-за того, что у меня нет времени изобретать колеса.
UPD: (после некоторого обсуждения)
Мой "язык" должен быть похож на CSV, но не так просто.
Существует определение (схема, шаблон, шаблон) древовидной структуры (где-то, это не моя сделка).
Я должен определить язык, читаемый человеком, для его хранения данных.
Неформальные примеры различных "моделей":
Class -> kind -> species
Menu -> submenu -> sub-submenu
Panel -> subpanel -> control
Примеры соответствующего содержания
animals [cat, dog, elephant {big, gray}],
plants [deciduous [oak, maple, baobab],
other [fir, cactus]
]
File [New, Open, Save, Remove {disabled}],
View [Text [ANSI {default}, UTF-8],
Binary, HTML],
Help [On-line, Forum, About]
Header {height:10} [Welcome, Controls [Help Button, Search Pane]],
Main [Teaser, News, Articles [1, 2, ..., N]],
Footer [Status Bar [?, ?], Powered By, Copyright notice {color: gold}]
Так что мое предварительное определение требуемого языка:
Nodes are delimited by ',' (comma) or \n (line feed)
Node may have optional set of attributes (in curly brackets)
Node may have optional set (array) of subnodes (in square brackets)
Если есть что-то подобное в используемом мире, тогда я должен увидеть это, чтобы избежать ловушек.
В противном случае я должен запатентовать мой новый гениальный язык))
глупый вопрос: почему вы хотите отвлечь колесо и не использовать то, что уже широко используется? Люди, которым придется иметь дело с вашей обычной «более простой, чем ямль-лучше, чем-csv» (поддерживающими), будут ненавидеть вас за то, что они вынуждены учиться. Язык разметки Anoter (каламбур не предназначен). – sfat
Очень хороший вопрос) Я просто не хотел ничего изобретать. Я предложил им использовать XML. Проблема возникла, когда было обнаружено, что все теги превратились в === ''. Они ненавидят ненужные угловые скобки ... Так что мне нужно «как XML», но без тэгов (?). –