protected function marshall(QtiComponent $component)
    {
        $element = self::getDOMCradle()->createElement('param');
        $this->setDOMElementAttribute($element, 'name', $component->getName());
        $this->setDOMElementAttribute($element, 'value', $component->getValue());
        $this->setDOMElementAttribute($element, 'valuetype', ParamType::getNameByConstant($component->getValueType()));

        if ($component->hasType() === true) {
            $this->setDOMElementAttribute($element, 'type', $component->getType());
        }

        return $element;
    }