handle correctly alias.
make all fields optional.