do a translate on deserialized xml to switch null with '', then re-serialize your xml and the '' will be in there. Or when you're building your query, depending on the DBMS, you can do a SELECT CASE <field> IS NULL THEN '' ELSE <field> FROM <table>;
As to why it puts the null string literal in the xml, I can only speculate (and that may be wrong).
SELECT COALESCE(Foo,''),COALESCE(Foo1,'') FROM mytable;
The above query will return '' (empty string) if the columns has NULL value.
This is another solution.
Third solution is to apply XSL and remove NULL value.
This is all very true.
If I add int he XSLT, there is no way to determine if the results is db null or string null. So just striping it out is not great.
I'm just more interested in why the activity don't tell us if it is a db null or a true string null.