subroutine dump_pseudo_atom_spec(xf,ps)
use xmlf90_wxml
type(xmlf_t), intent(inout) :: xf
type(ps_t), intent(in), target :: ps
type(header_t), pointer :: h
h => ps%header
call xml_NewElement(xf,"pseudo-atom-spec")
call my_add_attribute(xf,"atomic-label",trim(h%atomic_label))
call my_add_attribute(xf,"atomic-number",str(h%z))
call my_add_attribute(xf,"z-pseudo",str(h%zpseudo))
call my_add_attribute(xf,"flavor",trim(h%flavor))
call my_add_attribute(xf,"relativity",trim(h%relativity))
if (h%polarized) then
call my_add_attribute(xf,"spin-dft","yes")
else
call my_add_attribute(xf,"spin-dft","no")
endif
call my_add_attribute(xf,"core-corrections",trim(h%core_corrections))
call my_add_attribute(xf,"meta-gga",trim(h%meta_gga))
call dump_annotation(xf,h%annotation)
call dump_xc_info(xf,ps%xc_info)
call dump_config_val(xf,ps%config_val)
call xml_EndElement(xf,"pseudo-atom-spec")
end subroutine dump_pseudo_atom_spec