Can a single transaction have multiple outputs going to the same address? I understand that a transaction can have multiple outputs. But can two outputs  in a transaction refer to the same target address?

Here's how this would like in pseudo style:

[vout] =&gt; Array
        (
            [0] =&gt; Array
                (
                    [value] =&gt; 0.01
                    [scriptPubKey] =&gt; Array
                        (
                            [addresses] =&gt; Array
                                (
                                    [0] =&gt; bitcoinaddress_xyz
                                )

                        )

                )

            [1] =&gt; Array
                (
                    [value] =&gt; 0.02
                    [scriptPubKey] =&gt; Array
                        (
                            [addresses] =&gt; Array
                                (
                                    [0] =&gt; bitcoinaddress_xyz
                                )

                        )

                )

        )


Here the same address "bitcoinaddress_xyz" appears in both outputs. 

I know that it would not make much sense to construct a transaction like this – I just would like to know if it is technically possible.

Thanks.
It is possible. Here is an example: http://blockchain.info/tx/4199f709bfab79f54938e80e11dc75c21a95e3183f8e8994306f5ff272fde42a

However, the bitcoin-qt GUI doesn't allow creating such transactions.

Such transactions might be useful in the context of colored coins, or where encoding information is involved.