Yaml - это простой шаг по сравнению с базовой текстовой конфигурацией, он позволяет использовать больше структур и типов данных (включая те, которые вы упомянули), чем файлы свойств, и для многих языков (включая Java: Jyaml ) он даже поддерживает сериализацию, поэтому отображение в / из ваших классов часто очень просто.
Yaml также легче и его легче начать, чем перейти к XML.