protected function unmarshall(DOMElement $element)
    {
        $object = new TimeLimits();

        if (($value = $this->getDOMElementAttributeAs($element, 'minTime', 'string')) !== null) {
            $object->setMinTime(StorageUtils::stringToDatatype("PT${value}S", BaseType::DURATION));
        }

        if (($value = $this->getDOMElementAttributeAs($element, 'maxTime', 'string')) !== null) {
            $object->setMaxTime(StorageUtils::stringToDatatype("PT${value}S", BaseType::DURATION));
        }

        if (($value = $this->getDOMElementAttributeAs($element, 'allowLateSubmission', 'boolean')) !== null) {
            $object->setAllowLateSubmission($value);
        }

        return $object;
    }