This ontology aims to represent the ABI of a Solidity smart contract in Ethereum
Relationship between the main application binary interface and its specific components
Relationship between the ABI and its errors
Indicates which parameters are associated with a specific error
Relationship between the ABI and its events
Denotes which input parameters are associated with a specific event
Relate the ABI to the representation of the source code
Relationship between the ABI and its functions
Indicates which state mutability has the method
Indicates that an abi:Component contains another component
The address of the contract on the blockchain
For events, indicates whether a parameter is indexed, which affects how logs are stored and searchable
Indicates whether an event is anonymous, which affects how logs are recorded in Ethereum
Indicates if a method is constant, that is, if it only reads data and does not modify the state
The name of the contract associated to an address
Data type of the component (e.g. uint256, address)
Represents the contract implementation (Solidity ontology)
The main interface that defines how to interact with a contract (knows as ABI)
Defines the function that is executed when a contract is deployed
Defines specific errors that a contract may emit
Contracts in Ethereum can emit events to record notable activities
A function that executes if no other function matches or if no data is provided in a transaction
Specifies a typical function in a contract that can have inputs and outputs and can change the state of the contract
Represent specific input parameters for events
Represents a specific function inside a smart contract
Details the types and names of parameters used in functions and events
A special function that is executed when Ether is sent to a contract without additional data
Indicates how a function interacts with the contract storage, determining whether it modifies the state or simply reads the state
Denotes that a function cannot receive Ether
Denotes that a function can receive Ether along with its invocation
Denotes that a function does not read or write data to the contract; it is purely computational
Denotes that a function only reads data from the contract but does not modify its state