I appreciate how many applications in theory could be implemented as custom transactions (instead of on-chain smart contracts etc). I fail to understand however how to implement them.
Say for example we want:
- An asset of which you can only have either 0 or 1, or
- A trade deal following an exchange rate published earlier on the chain, or
- An asset you can only trade once each day, or 10 units per 24h, or set number of blocks, or
- Assets of which you can have a negative number, possibly limited by data published by a different party
- etc, etc
How can I build in these restrictions in the mining? They seem simple enough and reading through your (excellent!) blogposts I get the impression it's well within the possibilities of MultiChain.
The only options I see though are currency-like assets, which behave according to a unchangeable number of validations, and streams, which as far as I see do not follow validation rules.
Am I overlooking some functionality or documentation?