def attributeValues(element)
result = [["xmi.id", xmiId(element)]]
eAllAttributes(element).select{|a| !a.derived}.each do |a|
val = element.getGeneric(a.name)
result << [a.name, val] unless val.nil? || val == ""
end
eAllReferences(element).each do |r|
next if r.derived
next if r.containment
next if r.eOpposite && r.eOpposite.containment && xmiLevel(element).nil?
next if r.eOpposite && r.many && !r.eOpposite.many
targetElements = element.getGenericAsArray(r.name)
targetElements.compact!
val = targetElements.collect{|te| xmiId(te)}.compact.join(' ')
result << [r.name, val] unless val == ""
end
result
end