diff --git a/bip-0122.mediawiki b/bip-0122.mediawiki index d59e3537..17003aa5 100644 --- a/bip-0122.mediawiki +++ b/bip-0122.mediawiki @@ -10,13 +10,13 @@ ==Abstract== -This BIP propose an URI scheme for looking up blocks, transactions, addresses on a Blockchain explorer, or in general to make proper Blockchain references +This BIP proposes a URI scheme for looking up blocks, transactions and addresses on a Blockchain explorer, or in general to make proper Blockchain references. ==Motivation== The purpose of this URI scheme is to enable users to handle all the requests for details about blocks, transactions, etc. with their preferred tool (being that a web service or a local application). -Currently a Bitcoin client usually points to an arbitrary blockchain explorer when the user looks for the details of a transaction, or let him choose from a limited list of possible alternatives. -Other times resorting to cut&paste is needed. +Currently a Bitcoin client usually points to an arbitrary blockchain explorer when the user looks for the details of a transaction or allows the user to choose from a set of alternatives. +Resorting to copy + paste into a browser is often required. The same happens with posts and messages that reference some particular txs or blocks, if they provide links at all. ==Specification== @@ -30,7 +30,7 @@ Where: {| class="wikitable" ! style="text-align: center;" | Element ! colspan="2" style="text-align: center;" | Description -! +! Required? |- | chain | colspan="2" | '''chain ID''' (see below) of the desired chain, leading 0s included. If omitted (which would be the usual case), Bitcoin main net is assumed. @@ -39,7 +39,7 @@ Where: | rowspan="3" | type | tx | for transactions. -| rowspan="3" | +| rowspan="3" | required |- | block | for blocks (supports both hash or height). @@ -49,7 +49,7 @@ Where: |- | hash | colspan="2" | the relevant hash to refer to (leading zeros included), or block height. -| +| required |} ====ABNF grammar==== @@ -104,20 +104,20 @@ A transaction on Bitcoin test net: ==Rationale== -From the point of view of a wallet (or other Blockchain related tool) developer that need to show any kind of Blockchain references, using this scheme mean that he can simply make it a blockchain: link and be done with it, without having to worry about any specific Blockchain explorer or provide a means for the user to select one. +From the point of view of a wallet (or other Blockchain related tool) developers which need to reference Blockchain data, using this scheme mean that he can simply make it a `blockchain:` link without having to worry about any specific Blockchain explorer or provide a means for the user to select one. -Blockchain explorers in turn will simply offer to handle the blockchain: URI, the first time the user visit their website, or launch/install the application, or even set themselves if there isn't already one. +Blockchain explorers in turn will simply offer to handle the `blockchain:` URI schema, the first time the user visit their website, or launch/install the application, or even set themselves if there isn't already one. -Users get the convenience of using always their preferred explorer, which can be especially handy on mobile devices, where juggling with cut&paste is far from ideal. +Users can link directly to their preferred block explorer (avoiding copy + paste which can be awkward on mobile devices). == Sample implementation == [https://github.com/MarcoPon/blockchain-exploration Demo Blockchain: URI handler on GitHub] ==Acknowledgements== -Thanks to Btc Drak for suggesting to provide support for different networks. -Thanks to Jorge Timon for the idea of using genesis blocks hashes to identify them. -Thanks to Richard Moore, Matt Whitlock, Andreas Schildbach for suggestions about the structure and hierarchy of the URI scheme. + +Thanks to Btc Drak for suggesting support for different networks and Jorge Timon for the suggestion that we could identify each network by its genesis block hash. +Thanks to Richard Moore, Matt Whitlock, Andreas Schildbach for help with the structure and hierarchy of the URI scheme. ==Copyright==