You cannot pass data to a stream in appendrawexchange, because of various intricacies of the partial signatures used in atomic exchanges. You can only pass data to a stream in the last step of the exchange, which is why it's only available in completerawexchange.
The data is actually published to the stream in sendrawtransaction. In fact, before this is called, nothing has happened on the blockchain at all – you've just been building the exchange transaction off-chain.