J'ai une section d'un schéma pour un modèle que j'ai besoin d'analyser. Disons que cela ressemble à ceci.boost :: Spirit Grammar pour un schéma non trié
{
type = "Standard";
hostname="x.y.z";
port="123";
}
Les propriétés sont les suivantes:
- Les éléments peuvent apparaître non ordonnée.
- Tous les éléments qui font partie du schéma doivent apparaître, et aucun autre.
- Tous les attributs synthétisés des éléments entrent dans une structure.
- (facultatif) Le schéma pourrait à l'avenir dépendre du champ de type - c'est-à-dire, des champs différents en fonction du type - mais je ne suis pas concerné pour le moment. Selon les forums Spirit, la réponse est la suivante:
"Seuls les éléments souhaités peuvent apparaître (spécifiés par des noms de type)": la valeur de la clé 'type' dicte quelles autres clés sont valides dans la section? –
@Somebody: pas dans ce cas - mais c'est un bon point, et je pourrais bénéficier de ces idées - après tout type = "erlang" pourrait nécessiter plus que le nom d'hôte et le port. –