1
0
mirror of https://github.com/bitcoin/bips.git synced 2024-11-19 01:40:05 +01:00

Improvements to BIP 122

Grammar, punctuation and labeling improvements meant to clarify the BIP and improve readability.
This commit is contained in:
Jonathan Cross 2016-01-24 16:47:40 +01:00
parent 2010cf4979
commit 6d701a3ea8

View File

@ -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==