We describe an oracle for smart contracts for strengthening the functionality of their execution, thus making them amenable to any future changes that may be critical for sustained use. The oracle is supported by an ontology-specifically, constraints for transactions can be represented by semantic rules, and as such, this ontology-based oracle can help resolve break glass in case of emergency type scenarios that require going beyond pre-defined rules in the smart contracts that are already deployed in the distributed ledger platform. The issue of resolving an unexpected situation that was not explicitly considered in the code can be thought of as dynamic changes to attributes of assets and participants involved in a smart contract, which is equivalent to changing rules for a transaction. One way to implement such changes could be by having users vote on different proposals to change the rule. In our case, such a change can be invoked using the ontology and contextual information associated with the smart contract itself. The ontology also helps constrain the voting system itself, imposing a form of access control to allow only valid changes in rules.