So `novacoind getrawtransaction 7473c894134d83bf4a0a5207310520c12edb9bf69411e27b672d77a847d553a0 1` results in:
error: {"code":-5,"message":"No information available about transaction"}
It's a normal behavior for 0.4.4.7 clients family. Coinbase transactions of proof-of-stake blocks are ignored by block connection procedures. That's why these transactions are unavailable through RPC.
If there are no inputs or outputs to these marker transactions, what purpose do they serve?
Empty coinbase transaction initially was used as a marker of proof-of-stake block. It's not used anymore but wasn't removed in order to keep a formal compatibility of block schema. Maybe it will be removed in the future versions.
I was doing a progressive scan through the blockchain when I encountered this issue. It appears that all POS transactions have two sub transactions, one of which is unparsable (by novacoind) and occupies the 0th index in the transaction list for the block. The second PoS sub transaction contains the actual generation.
Proof-of-Stake transaction is marked using empty output.
It could contain any amount of outputs, but the first output must be empty and the public key of second output destination must be matched with destination of the first input. I.e. this transaction can look as something like this:
Address -> | | -> Empty output
| | -> Address
| |
or
Address -> | | -> Empty output
| | -> Address
| | -> Address
Address -> | | -> Empty output
Address -> | |
Address -> | |
or even
Address -> | | -> Empty output
Address -> | | -> Address
Address -> | | -> Address