-
Notifications
You must be signed in to change notification settings - Fork 232
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
First draft of ipfs: URI spec, see #138 #139
Changes from 3 commits
fd687ae
001074a
f697953
95ea52f
bb43338
0de7fc8
143894e
621bef0
e1500be
e3e8b27
cc77625
9ce8165
8281b40
09d8263
5ae9cfc
6451bc8
bdbf3da
058d1b8
280c41b
328b91a
f274f17
979169e
aefa25f
36588ed
30eae90
f665f12
7733b53
f1143b6
63f2fc3
3f810ca
60bc999
33f9aae
e4d2294
4a446c1
9a19bce
a32964c
fa5a435
761a3d4
e49b237
5dc58b8
4436b98
c975a9a
a3bc19e
0bff981
1818bf2
78b4d2c
99b0293
d4166c6
5c04552
5d1d914
d641583
d80ede1
2d3e9df
f27c4ec
97ca93f
d0cec2b
f53f981
09e28aa
157eef3
c5afe96
7bd377c
71019eb
cf71f06
75e203e
9ed6cf5
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,41 @@ | ||
URI specifications | ||
================== | ||
|
||
Authors: [Patrik Wallström](github.com/pawal) | ||
|
||
Reviewers: | ||
|
||
* * * | ||
|
||
# Abstract | ||
|
||
For different applications to handle ipfs references there need to be URIs registered. In order to for applications to understand how to handle the references, the URIs needs to have specificaitions. The generic syntax for URIs are described in [RFC3986](https://tools.ietf.org/html/rfc3986). | ||
|
||
The consensus of which URIs need to be specified can be found here: https://github.com/ipfs/go-ipfs/issues/1678#issuecomment-157478515 | ||
|
||
# Status of this spec | ||
|
||
![](https://img.shields.io/badge/status-wip-orange.svg?style=flat-square) | ||
|
||
Note: These specifications are currently in the wip phase, things are likely to change. | ||
|
||
# Overview | ||
|
||
The discussion on what URI schemes that are needed is concluded [here](https://github.com/ipfs/go-ipfs/issues/1678#issuecomment-157478515). The discussion lead to the consensus that these URI schemas are needed: | ||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. I would add #152 (comment) here too |
||
|
||
* **canonical NURI** is a file system **path**. Does not need a URI specification. Examples, where **Qm...** is a [multihash](https://github.com/multiformats/multihash): | ||
* /ipfs/Qm... | ||
* /ipns/Qm... | ||
* /ipfs/Qm.../filename | ||
* /ipns/Qm.../dir/filename | ||
|
||
* **[ipfs://](./ipfs.md)** style URI that references IPFS content with the multihash and filepath. | ||
|
||
* **[fs://](./fs.md)** style URI referencing ipfs-specific AND non-ipfs specific hash resolution mechanisms | ||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. According to #152 (comment) |
||
* fs://ipns/Qm.../foo/bar | ||
|
||
# Notes | ||
|
||
Previous work has been done with URIs for naming hashes, most notably [RFC6920](https://tools.ietf.org/html/rfc6920). 6920 create the URI schemas ni: and nih: where the latter is a human-speakable name for the hash, both schemas are published in the [IANA registry](http://www.iana.org/assignments/uri-schemes/uri-schemes.xhtml). These schemas were created from the EU FP7 project [SAIL](http://www.sail-project.eu/), Scalable and Adaptive Internet Solutions. | ||
|
||
The guidelines to submitting URI schemas to the IANA registry is described in [RFC7595](https://tools.ietf.org/html/rfc7595). |
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,34 @@ | ||
(last updated 2016-09-30) | ||
|
||
Resource Identifier (RI) Scheme name: ipfs | ||
Status: provisional | ||
|
||
Applications/protocols that use this scheme name: ipfs | ||
|
||
Scheme syntax: | ||
ipfs://ipfs/<multihash> | ||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. I think we just go with |
||
ipfs://ipfs/<multihash>/path | ||
ipfs://ipns/<multihash> | ||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. ..and |
||
ipfs://ipns/<multihash>/path | ||
|
||
Scheme semantics: | ||
"ipfs links" | ||
|
||
Encoding considerations: | ||
Unknown, use with care. | ||
|
||
Applications/protocols that use this scheme name: | ||
Used by ipfs clients, providing a hash of a file or resource to be located on the network. | ||
|
||
Interoperability considerations: | ||
Unknown, use with care. | ||
Security considerations: | ||
Unknown, use with care. | ||
Contact: | ||
Scheme creator: Patrik Wallström on behalf of the IPFS project, [email protected] | ||
Author/Change controller: | ||
The IPFS project | ||
References: | ||
https://github.com/ipfs/specs/uri/ipfs.md, https://en.wikipedia.org/wiki/IPFS, https://ipfs.io/ | ||
|
||
(file created 2016-09-30) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I think this was updated and superseded by @lgierth's comment at #152 (comment), no?