Comments (14)
I agree that these would not qualify as URLs but only as URIs or URNs
I would keep it simple by just concatenating with colons to index standards
caip:10:eip155:1:0xab16a96d359ec26a11e2c2b3d8f8b8942d5bfcdb
from caips.
I think it makes more sense for CAIPs to maintain a registry rather than try and make the standard number part of the URI. Email URIs are mailto:[email protected]
, not rfc:822:[email protected]
. HTTP URLs aren't rfc2616://
. Part of the job of a URI is to be readable, and that means using human-comprehensible identifers whenever possible.
from caips.
more something like that?
blockchain:bip122:12a765e31ffd4059bada1e25190f6e98
cryptoaddress:cosmos:cosmoshub-3:cosmos1t2uflqwqe0fsj0shcfkrvpukewcw40yjj6hdc0
asset:cosmos:Binance-Chain-Tigris/slip44:714
from caips.
It should be easy to maintain a registry, then!
from caips.
As I'm wanting to start using CAIP-22 to address erc721's as compliant IANA URIs I was wondering what are the necessary steps towards registration with IANA. Does anyone know?
from caips.
My proposal would be to continue using colons as we have so far to index different CAIPs
caip:2:eip155:1
caip:10:eip155:1:0xab16a96d359ec26a11e2c2b3d8f8b8942d5bfcdb
This we could then extended it more easily for new standards but still have more efficient parsing
from caips.
linking this discussion mentioned in the call: ipfs/kubo#1678
and I suggest:
caip://2/eip155:1 ^^^ scheme ^ authority (CAIP number) ^^^^^^^^ path (CAIP content)
this might be less correct AFAIR (need to read up on this again - very long ago since I digged into this) - but more tooling sees things like this as an actual URL and sees caip as a scheme one can associate to.
from caips.
@ligi A CAIP number is not an 'authority' in the RFC 3986 meaning of the word:
Many URI schemes include a hierarchical element for a naming
authority so that governance of the name space defined by the
remainder of the URI is delegated to that authority (which may, in
turn, delegate it further). The generic syntax provides a common
means for distinguishing an authority based on a registered name or
server address, along with optional port and user information.
I'd strongly suggest not trying to make this an 'authority' for cargo cult reasons (eg, people are familiar with the ://
syntax). Also, I don't think these quality as URLs, because they don't provide a primary means of locating the resource; they're URIs or URNs.
It seems to me that the simplest and most sensible scheme would be to specify that the first part of the path is drawn from a registry maintained by the CAIP maintainers, and can include eip155
and any others that are defined from time to time, and that the syntax of the remainder of the path depends on the first component.
from caips.
While it'd be nice to have a URI scheme for each CAIP, it's probably more realistic to be something like caip:eip155:1:...
, and have a CAIP registry that defines how eip155
URIs work.
from caips.
We don't have that many types of CAIP. The most important one are
CAIP2 -> blockchain ID
CAIP10 -> Address
CAIP19 -> Asset Type and ID
from caips.
more something like that?
blockchain:bip122:12a765e31ffd4059bada1e25190f6e98
cryptoaddress:cosmos:cosmoshub-3:cosmos1t2uflqwqe0fsj0shcfkrvpukewcw40yjj6hdc0
asset:cosmos:Binance-Chain-Tigris/slip44:714
I think still using the "/" slash symbol here can cause compatibility issues when using e.g. CAIP-19 within an URL. See #81.
from caips.
I agree
from caips.
I think it makes more sense for CAIPs to maintain a registry rather than try and make the standard number part of the URI. Email URIs are
mailto:[email protected]
, notrfc:822:[email protected]
. HTTP URLs aren'trfc2616://
. Part of the job of a URI is to be readable, and that means using human-comprehensible identifers whenever possible.
I don't find the human-readability argument convincing. It'd be much clearer to my developer brain if we'd indeed start HTTP URLs with rfc2616 as then I'd exactly know where to look for a manual or protocol description.
Besides, it's not entirely clear where to look for the the mapping of scheme to RFC.
But I'd like to highlight another thing: For long ERC721 stood for NFTs, though now there seems to also be a ERC1155. So wouldn't registering a naming in a registry cause problems suddenly? Who'd decide what is the real "NFT"? In today's case too: I can't overrule what's considered an email and mailto
.
I like naming it by standards as there's a clear and permissionless way of reserving a name: Write a standard, get allocated a ascending integer, name your URIs.
from caips.
@TimDaub This is IANA URI scheme registry: https://www.iana.org/assignments/uri-schemes/uri-schemes.xhtml
Requests for permanent registration must be preceded by mailing list review,
per Section 7.2 of [RFC7595].
RFC7595, section 7.2: https://www.rfc-editor.org/rfc/rfc7595.html#section-7.2
from caips.
Related Issues (20)
- [CAIP-122] Why only ASCII? HOT 4
- [CAIP-171] - drop cryptographic/entropic UUID requirement? HOT 1
- 168ff88295830ada21c45d828a6551bf57861568
- [CAIP-196] UCANs with header entries HOT 3
- [CAIP-196] Timestamp precision
- Problem rendering list of CAIPS required HOT 1
- register CAIP URI scheme with IANA?
- CAIP for domain/address resolution protocols list HOT 1
- Converting Scopes into ReCaps
- [CAIP-19] Assets versus Actors or Entities? HOT 1
- [Multichain] Has anyone seen ERC-4804-style URI schemes for non-EVM chains?
- Supporting multiple chains with CAIP-122 HOT 2
- Implementer Feedback: CAIP-122<>EIP-4361 mismatch HOT 12
- CACAO v2/v3 confusion and varsig - are v3/varsig stale? HOT 1
- CAIP-122: address or account_id? HOT 2
- CAIP-2: chain ID alias HOT 2
- [CAIP-74] Signature Metadata type is not well defined HOT 1
- https://support.exodus.com/support/en/articles/8598833-walletconnect-in-exodus-mobile#qr-code کیف پول اکسود وس HOT 1
- 2
- 2
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from caips.