Comment for bug that needs to get fixed.
[htmlpurifier.git] / library / HTMLPurifier / ConfigSchema / Interchange.php
blob91a5aa7303f0582dc55cd351d36fe241162ce786
1 <?php
3 /**
4 * Generic schema interchange format that can be converted to a runtime
5 * representation (HTMLPurifier_ConfigSchema) or HTML documentation. Members
6 * are completely validated.
7 */
8 class HTMLPurifier_ConfigSchema_Interchange
11 /**
12 * Name of the application this schema is describing.
14 public $name;
16 /**
17 * Array of Directive ID => array(directive info)
19 public $directives = array();
21 /**
22 * Adds a directive array to $directives
24 public function addDirective($directive) {
25 if (isset($this->directives[$i = $directive->id->toString()])) {
26 throw new HTMLPurifier_ConfigSchema_Exception("Cannot redefine directive '$i'");
28 $this->directives[$i] = $directive;
31 /**
32 * Convenience function to perform standard validation. Throws exception
33 * on failed validation.
35 public function validate() {
36 $validator = new HTMLPurifier_ConfigSchema_Validator();
37 return $validator->validate($this);
42 // vim: et sw=4 sts=4