Sure, you don’t have to combine transmit and receive functionality on the same chiplet, but (hopefully) you can do it, and – important! – it saves space. In the more recent presentations, which are showing POET’s optical engines schematically, you can see that.
By the way, those optical engines which can only transmit or only receive are marked with TX resp. RX. Those optical engines, which can do both (transceiver), do not have any special marking, e.g., there is no “TXRX” or similar. Example: “400G FR4 OE”.
Therefore, I consider the combination of transmit and receive functionality in a single transceive optical engine to be the desired standard case.