// and verify that any that are NOT optional, exist in the object.
Map<Integer,DmcAttributeInfoRef> mai = obj.getConstructionClassInfo().getIdToAttr();
if (mai != null){
Iterator<DmcAttributeInfoRef> it = mai.values().iterator();
while(it.hasNext()){
DmcAttributeInfoRef air = it.next();
if (air.mandatory){
if (obj.get(air.info.id) == null){
if (exceptions == null)
exceptions = new DmcRuleExceptionSet();
exceptions.add(new DmcRuleException("Mandatory attribute is missing: " + air.info.name, this));