/**
  * returns a dl element
  *
  * @param  string $data
  * @param  array  $options
  * @param  array  $dtOpts
  * @param  array  $ddOpts
  * @return string
  */
 public function descriptionList($data, $options = [], $dtOpts = [], $ddOpts = [])
 {
     if (empty($data) || !is_array($data)) {
         return false;
     }
     $out = [];
     $dtOptions = parent::_parseAttributes($dtOpts);
     $ddOptions = parent::_parseAttributes($ddOpts);
     foreach ($data as $descr => $value) {
         $out[] = sprintf($this->_tags['dt'], $dtOptions, $descr);
         $out[] = sprintf($this->_tags['dd'], $ddOptions, $value);
     }
     $dl = sprintf($this->_tags['dl'], parent::_parseAttributes($options), implode("\n", $out));
     return $dl;
 }