Domain* DataDefinition::domain() const{
    Ilwis::IDomain ilwDom = (this->ptr().domain());
    if(ilwDom.isValid()){
        return new Domain(ilwDom);
    }else
        return NULL;
}
QString RepresentationSetter::activeValueType() const
{
    if ( layer() && layer()->drawer()){
        QVariant var = layer()->drawer()->attribute("activevisualattribute");
        if ( !var.isValid())
            return "";
        var = layer()->drawer()->attribute("visualattribute|domain|" + var.toString());
        Ilwis::IDomain dom = var.value<IDomain>();
        if ( !dom.isValid())
            return "";
        if ( hasType(dom->valueType(), itNUMBER))
            return "number";
        if ( hasType(dom->valueType(), itTHEMATICITEM|itNUMERICITEM|itTIMEITEM))
            return "item";
    }
    return "";
}