better handle empty string case
add plain xml serializer