bitcoin:12345 *is* a "real" URI. It's just not an absolute, hierarchical URI 
(a.k.a. a URL); rather, it's an opaque URI.

And your suggestion is actually in violation of the URI spec, since 
"blockhash", "txid", "block", and "address" are not host names.

More correct would be:

blockchain:?blockhash=00000000000000001003e880d500968d51157f210c632e08a652af3576600198
blockchain:?txid=3b95a766d7a99b87188d6875c8484cb2b310b78459b7816d4dfc3f0f7e04281a
blockchain:?block=189000
blockchain:?address=1RicMooMWxqKczuRCa5D2dnJaUEn9ZJyn

You should read the URI syntax RFC: https://tools.ietf.org/html/rfc3986


On Saturday, 29 August 2015, at 12:31 pm, Richard Moore via bitcoin-dev wrote:
> I like the idea of having a standard for this, that all explorers (and even 
> core, eventually) would understand.
> 
> I would recommend 2 changes though. First, using a real URI scheme, 
> blockchain:// so that we can just use normal URL parsing libraries. The 
> bitcoin: thing leads to additional code to mutate it into a proper URI before 
> passing it to URL parsing. And I think it would be fine to include the type 
> looking up. For example:
> 
> blockchain://blockhash/00000000000000001003e880d500968d51157f210c632e08a652af3576600198
> blockchain://txid/3b95a766d7a99b87188d6875c8484cb2b310b78459b7816d4dfc3f0f7e04281a
> blockchain://block/189000
> blockchain://address/1RicMooMWxqKczuRCa5D2dnJaUEn9ZJyn
> 
> I think this would help the URI be more human understandable as well as give 
> the explorers the ability to optimize a bit what they are looking for when 
> hitting various databases.
> 
> A possible future path could also include blockchain://tx/123000/4 for block 
> height, tx index... Another possibility could be blockchain://version which 
> would return a list of supported paths, version of the BIP supported, etc.
> 
> The BIP should also specify little endian searching. I'm not sure, but would 
> it also make sense for this BIP to include what the return results should 
> look like? Maybe another, related BIP.
> 
> > On Aug 29, 2015, at 7:48 AM, Marco Pontello via bitcoin-dev 
> > <bitcoin-dev@lists.linuxfoundation.org> wrote:
> > 
> > Hi!
> > My first post here, hope I'm following the right conventions.
> > I had this humble idea for a while, so I thought to go ahead and propose
> > it.
> > 
> > BIP: XX
> > Title: URI scheme for Blockchain exploration
> > Author: Marco Pontello
> > Status: Draft
> > Type: Standards Track
> > Created: 29 August 2015
> > 
> > Abstract
> > ========
> > This BIP propose a simple URI scheme for looking up blocks, transactions,
> > addresses on a Blockchain explorer.
> > 
> > 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 point to an arbitrary blockchain
> > explorer when the user look for the details of a transaction (es. Bitcoin
> > Wallet use BitEasy, Mycelium or Electrum use Blockchain.info, etc.).
> > Other times resorting to cut&paste is needed.
> > The same happens with posts and messages that reference some particular
> > txs or blocks, if they provide links at all.
> > 
> > Specification
> > =============
> > The URI follow this simple form:
> > 
> > blockchain: <hash/string>  
> > 
> > Examples:
> > 
> > blockchain:00000000000000001003e880d500968d51157f210c632e08a652af3576600198
> > blockchain:001949
> > blockchain:3b95a766d7a99b87188d6875c8484cb2b310b78459b7816d4dfc3f0f7e04281a
> > 
> > Rationale
> > =========
> > I thought about using some more complex scheme, or adding qualifiers to
> > distinguish blocks from txs, but in the end I think that keeping it simple
> > should be practical enough. Blockchain explorers can apply the same
> > disambiguation rules they are already using to process the usual search
> > box. 
> > 
> > From the point of view of a wallet developer (or other tool 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.
> > 
> > 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.
> > 
> > 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.

_______________________________________________
bitcoin-dev mailing list
bitcoin-dev@lists.linuxfoundation.org
https://lists.linuxfoundation.org/mailman/listinfo/bitcoin-dev

Reply via email to