Hlavní navigace

Názory k článku
Modelování konfiguračních dat v jazyku YANG

Vuk
Vuk (neregistrovaný) ---.82.broadband6.iol.cz
7. 5. 2012 16:19 Nový

"Datové modely mají být velmi dobře čitelné pro lidi i software."

celé vlákno

Nojo, jenže zkuste v Yangu něco trochu komplikovanějšího namodelovat. Žádné cykly, podmínky, substituce/ma­kra/... Východisko - generovaný Yang. Ne že by Yang nešel generovat, ale trochu to ztrácí pointu, XML tady poslouží stejně, ne-li líp.

Ladislav Lhotka aura:43
7. 5. 2012 16:48 Nový

Re: "Datové modely mají být velmi dobře čitelné pro lidi i software."

celé vlákno

Už se s tím udělaly i poměrně složité věci.

Jaké cykly máte na mysli? Je to deklarativní jazyk, nikoli procedurální.

Pokud jde o ty ostatní věci:

1. podmínky: je tam např. 'when', to je ukázáno v příkladu, kromě toho se dají zadávat podmínky pomocí 'must'.

2. substituce/makra: je možné definovat 'grouping', což je podobá makrům nebo pojmenovaným vzorům (named patterns) v RELAX NG.

V článku jsem se nemohl všemu věnovat, doporučuji RFC 6020 (je to docela pěkné čtení:-).

Vuk
Vuk (neregistrovaný) ---.82.broadband6.iol.cz
9. 5. 2012 16:06 Nový

Re: "Datové modely mají být velmi dobře čitelné pro lidi i software."

celé vlákno

Ano, modelovat se tím dá ledacos, router od Juniperu například (ačkoli to asi vzniklo nějakou konverzí z něčeho jiného, podle toho, jak to vypadá). 'grouping', 'when', ani 'refine' nejsou v některých situacích dost silné a k vybřednutí z copy-paste to nemusí stačit. (Trochu ujetý příklad - 40 podobných kontejnerů lišících se například v typu či jménu některého uzlu.)

Čímž nechci říct, že YANG je na nic, ale někdy bohužel poslouží leda jako mezijazyk, k čemuž zas tak úplně stavěný není.

MNO
MNO (neregistrovaný) ---.cngroup.cz
9. 5. 2012 9:23 Nový

Re: "Datové modely mají být velmi dobře čitelné pro lidi i software."

celé vlákno

Existuje Groovy yangbuilder, kterym lze generovat i slozite yangy se syntaxi podobnou jako ma yang.

https://bitbucket.org/bubbles.way/yangbuilder

Lze tak 'kombinovat' yang + groovy (programovani)

Napr.
https://bitbucket.org/bubbles.way/yangbuilder/src/c8dc63ba13fb/templates/scripts/example1Yang.groovy

Zasílat nově přidané příspěvky e-mailem