directives as $d ) {
$schema->add ( $d->id->key, $d->default, $d->type, $d->typeAllowsNull );
if ($d->allowed !== null) {
$schema->addAllowedValues ( $d->id->key, $d->allowed );
}
foreach ( $d->aliases as $alias ) {
$schema->addAlias ( $alias->key, $d->id->key );
}
if ($d->valueAliases !== null) {
$schema->addValueAliases ( $d->id->key, $d->valueAliases );
}
}
$schema->postProcess ();
return $schema;
}
}
// vim: et sw=4 sts=4