Mosaic & Aggregated Transactions

I am reading Nem’s Catapult’s Aggregated Transactions. In 1 example "Decentralized Swaps
"
Buyer sends 3,000 XEM transfers to the seller.
The license transfers to the buyer (which is a Mosaic).
A 6 XEM exchange fee transfers to the exchange.

In the above example, the license is a Mosaic, a digital representation of the License.
In the swap, we can be sure that a Mosaic was transferred but not the actual license. which would be say posted via snail mail or via email as an attachment. How can the buyer be sure that they will get the actual asset?

It makes me think that we need some type of Oracle to trigger the event(by signing the contract)

Can somebody explain me how would this work in real world.

Thanks.

Actual asset is mosaic, so the buyer can be sure, if he gets it. A mosaic is a representative of property, or a license in this example, that means, whoever holds mosaic in his account have rights to license. We don’t need oracles, like in eth blockchain with smart contracts. I believe decentralised swaps are small smart contracts on NEM blockchain.