:Block


URI

http://ethon.consensys.net/Block

Label

Block

Description

A block is the basic element of a 'blockchain'. It functions as an entry in a distributed ledger, recording a series of transactions together with a reference to the previous block. A block is chained to its preceeding block by a cryptographic hash of its contents as a means of reference. Blocks contain an identifier for the final state after all transactions contained in it are validated. There is a consensus mechanism that provides incentives for nodes adding new blocks to the chain ("miners" in the Proof of Work protocol used by the main Ethereum network) that comply with the rules of Ethereum by issuing newly generated tokens ('Ether') to an account specified by the block's author.

Usage

Instances of :Block can have the following properties:

PROPERTYTYPEDESCRIPTIONRANGE
From class :Block
:hasParentBlock owl:AsymmetricProperty Relates a block to its parent in the chain. It always points to the block with a number that is decreased by one, compared to the block it originates from. The relation is asymmetric because if block A is parent to block B then block B can not be parent to block A. It is also irreflexive because a block cannot be parent to itself. :Block
:blockBeneficiaryReward owl:DatatypeProperty The reward the beneficiary receives for mining a block. It is comprised of the base reward (5ETH), rewards for including uncles (1/32 of block reward per uncle) and the fees of the Tx in the block. xsd:integer
:blockSize owl:DatatypeProperty The size of the block header in RLP format in bytes. xsd:integer
:createsPostBlockState owl:FunctionalProperty Relates a block to the global state of the system after all transactions in the block have been executed. :WorldState
:hasAuthorBeneficiary owl:FunctionalProperty Relates a block to an account to which the fees from gas costs, the static mining reward and the reward for including uncles are transferred. :Account
:hasReceiptsTrie owl:FunctionalProperty Relates a block to the trie that contains the block's receipt data. :ReceiptsTrie
:hasTxTrie owl:FunctionalProperty Relates a block to the trie that contains the data of the transactions contained in the block. :TxTrie
:containsTx owl:InverseFunctionalProperty Relates a block to a transaction included in it. All containsTx relations of a block comprise the block's transaction list. The order of the transactions is determined by their index value. The property is inverse functional because a transaction can only be included in one block. :Tx
:conformsTo owl:ObjectProperty Relates a Block to the protocol variant it conforms to. :ProtocolVariant
:hasBeneficiary owl:ObjectProperty Relates a block to an account to which fees or mining rewards from the successful mining of this block are transferred. :Account
:hasUncleBeneficiary owl:ObjectProperty Relates a block to an account to which the reward for mining an uncle is transferred. :Account
:includesUncle owl:ObjectProperty Relates a block to another block by including it as an uncle. Block B can be an uncle of block A if it is the direct child of the k'th generation ancestor of block B, where 2<=k<=7 but not a direct ancestor of block A. Uncles are blocks found by a miner, when a different miner has already found another block for the corresponding place in the blockchain. They are also known as “stale blocks”. owl:Thing
From class :BlockConcept
:BlockDataProperty owl:DatatypeProperty Groups all data properties that are specific to a block. These properties are usually functional because a block can only be associated with a single instance of them. owl:Thing
From class :EthOnConcept
:simpleDefinition owl:AnnotationProperty This property relates an EthOn concept to a definition in Simple English, intended especially for non-technical users. owl:Thing
:suggestedStringRepresentation owl:AnnotationProperty This property relates an EthOn concept with a suggested string representation. It can be used to give the term a name, e.g. in program code. owl:Thing
From class :StateTransition
:createsState owl:ObjectProperty Relates a transition to the state it creates. :State
From class :StateConcept
:StateDataProperty owl:DatatypeProperty -- owl:Thing
From class owl:Thing
:AccountObjectProperty owl:ObjectProperty Groups all EthOn account object properties owl:Thing
:BlockObjectProperty owl:ObjectProperty Groups all EthOn block object properties owl:Thing
:EthOnAnnotationProperty owl:AnnotationProperty Superclass of all EthOn specific annotation properties. owl:Thing
:EthOnDataProperty owl:DatatypeProperty Groups all data properties specific to EthOn. owl:Thing
:EthOnObjectProperty owl:ObjectProperty Groups all EthOn object properties owl:Thing
:MessageObjectProperty owl:ObjectProperty Groups all EthOn message object properties. owl:Thing
:NetworkDataProperty owl:DatatypeProperty Groups all EthOn network data properties. owl:Thing
:NetworkObjectProperty owl:ObjectProperty Groups all EthOn network object properties. owl:Thing
:StateObjectProperty owl:ObjectProperty Groups all EthOn state object properties. owl:Thing
:createsPostMsgState owl:FunctionalProperty Relates a message to the global state of the system after all the message has been executed. owl:Thing
:hasAccountStorage owl:FunctionalProperty Relates an account to the Merkle Patricia tree that encodes its storage contents at a certain account state. This property is Functional because an account state can have only one instance of account storage and inverse functional because an account storage can have only one associated account state. :AccountStorage
:hasTransition owl:ObjectProperty Relates a state to a transition (i.e. a message) that creates a new state. owl:Thing
:partOf owl:ObjectProperty This is a general relation to express part of relationships. The classic study of parts and wholes, mereology, has three axioms: 1. the part-of relation is Transitive - "parts of parts are parts of the whole" - If A is part of B and B is part of C, then A is part of C Reflexive - "Everything is part of itself" - A is part of A Antisymmetric - "Nothing is a part of its parts" - if A is part of B and A != B then B is not part of A. owl:Thing

Implementation

@prefix : <http://ethon.consensys.net/> .
@prefix dc: <http://purl.org/dc/elements/1.1/> .
@prefix ns: <http://www.w3.org/2003/06/sw-vocab-status/ns#> .
@prefix owl: <http://www.w3.org/2002/07/owl#> .
@prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> .
@prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> .
@prefix sh: <http://www.w3.org/ns/shacl#> .
@prefix skos: <http://www.w3.org/2004/02/skos/core#> .
@prefix v0: <http://ethon.consensys.net/v0/> .
@prefix vann: <http://purl.org/vocab/vann/> .
@prefix void: <http://rdfs.org/ns/void#> .
@prefix xml: <http://www.w3.org/XML/1998/namespace> .
@prefix xsd: <http://www.w3.org/2001/XMLSchema#> .

:Block a owl:Class ;
    rdfs:label "Block"@en ;
    :simpleDefinition "A block is an entry in a blockchain. It contains a series of transactions as well as a cryptographic hash linking it to the previous block in the chain." ;
    :suggestedStringRepresentation "Block"@en ;
    rdfs:comment "A block is the basic element of a 'blockchain'. It functions as an entry in a distributed ledger, recording a series of transactions together with a reference to the previous block. A block is chained to its preceeding block by a cryptographic hash of its contents as a means of reference. Blocks contain an identifier for the final state after all transactions contained in it are validated. There is a consensus mechanism that provides incentives for nodes adding new blocks to the chain (\"miners\" in the Proof of Work protocol used by the main Ethereum network) that comply with the rules of Ethereum by issuing newly generated tokens ('Ether') to an account specified by the block's author."@en ;
    rdfs:subClassOf :BlockConcept,
        :StateTransition ;
    owl:hasKey [ a rdf:List ;
            rdf:first :blockHash ;
            rdf:rest () ] ;
    ns:term_status "unstable" .