this.schema=schema;
ArrayList<AttributeDescriptor> notMapped = new ArrayList<AttributeDescriptor>();
if( schema.getGeometryDescriptor()!=null )
bounds=schema.getGeometryDescriptor().getName().getLocalPart();
for( int i=0; i<schema.getAttributeCount();i++ ){
AttributeDescriptor att = schema.getDescriptor(i);
if( att==schema.getGeometryDescriptor() )
continue;
if( bounds==null && att.getType().getBinding().isAssignableFrom(MultiPolygon.class) ){
bounds=att.getName().getLocalPart();
continue;
}
if( isExtensionID(att) && extensionId==null ){
extensionId=att.getName().getLocalPart();
continue;
}
if( isViewMemento(att) && viewMemento==null){
viewMemento=att.getName().getLocalPart();
continue;
}
if( isMemento(att) && memento==null){
memento=att.getName().getLocalPart();
continue;
}
if( isGroupId(att) && groupId==null){
groupId=att.getName().getLocalPart();
continue;
}
if( isId(att) && id==null){
id=att.getName().getLocalPart();
continue;
}
if( isResolution(att) && resolution==null){
resolution=att.getName().getLocalPart();
continue;
}
if( isPriority(att) && priority==null){
priority=att.getName().getLocalPart();
continue;
}
if( isDescription(att) && description==null){
description=att.getName().getLocalPart();
continue;
}
notMapped.add(att);
}