Since non-validating notaries in Corda are not performing input/output state validation of a transaction, how does a notary service know that a transaction initiator is allowed to consume specific input states?
For instance, in this simple cash example:
State0{} -issueCashTX-> State1{owner:issuer, amount: 1000}
-transferTX-> State2{owner:issuer, amount: 500}
State3{owner:CompanyA, amount: 500}
Smart Contract Rules validate that transfer
transactions are only valid, if input state is owner by the transaction initiator and sum of output amounts is equal to sum of input amounts.
[Q]: How the non-validating notary knows that consuming State1
is ok, since it has no idea about the validation rules?