/**
  * Class constructor
  *
  * Repeat element can understand the following keys in $data parameter:
  *   - 'prototype': a Container to be repeated. Passed to {@link setPrototype()}.
  *
  * @param string       $name       Element name
  * @param string|array $attributes Attributes (either a string or an array)
  * @param array        $data       Additional element data
  */
 public function __construct($name = null, $attributes = null, array $data = array())
 {
     if (!empty($data['prototype'])) {
         $this->setPrototype($data['prototype']);
     }
     unset($data['prototype']);
     parent::__construct($name, $attributes, $data);
 }