Existe sintaxis YAML para compartir parte de una lista o mapa?

Entonces, sé que puedo hacer algo como esto:

sitelist: &sites
  - www.foo.com
  - www.bar.com

anotherlist: *sites

Y tienesitelist yanotherlist ambos contienenwww.foo.com ywww.bar.com. Sin embargo, lo que realmente quiero es paraanotherlist aademá Contienewww.baz.com, sin tener que repetirwww.foo.com ywww.baz.com.

Hacer esto me da un error de sintaxis en el analizador YAML:

sitelist: &sites
  - www.foo.com
  - www.bar.com

anotherlist: *sites
  - www.baz.com

Solo usando anclas y alias, no parece posible hacer lo que quiero sin agregar otro nivel de subestructura, como:

sitelist: &sites
  - www.foo.com
  - www.bar.com

anotherlist:
  - *sites
  - www.baz.com

Lo que significa que el consumidor de este archivo YAML debe ser consciente de ello.

¿Existe una forma pura de YAML de hacer algo como esto? ¿O tendré que usar algún procesamiento posterior a YAML, como implementar la sustitución de variables o el levantamiento automático de ciertos tipos de subestructura? Ya estoy haciendo ese tipo de procesamiento posterior para manejar un par de otros casos de uso, por lo que no soy totalmente reacio a ello. Pero mis archivos YAML serán escritos por humanos, no generados por máquina, por lo que me gustaría minimizar la cantidad de reglas que mis usuarios deben memorizar además de la sintaxis YAML estándar.

También me gustaría poder hacer cosas análogas con los mapas:

namedsites: &sites
  Foo: www.foo.com
  Bar: www.bar.com

moresites: *sites
  Baz: www.baz.com

He tenido una búsqueda a través de laYAML spec, y no pude encontrar nada, así que sospecho que la respuesta es "no, no puedes hacer esto". Pero si alguien tiene alguna idea, sería genial.

EDITAR Dado que no ha habido respuestas, supongo que nadie ha visto nada que no haya en la especificación YAML y que esto no se puede hacer en la capa YAML. Así que estoy abriendo la pregunta a la idea para procesar posteriormente el YAML para ayudar con esto, en caso de que alguien encuentre esta pregunta en el futuro.

Respuestas a la pregunta(10)

Su respuesta a la pregunta