Skip to content
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

[ARC-80] Querying blockchain information using a URI format #324

Open
wants to merge 6 commits into
base: main
Choose a base branch
from

Conversation

SudoWeezy
Copy link
Collaborator

URI Scheme for Blockchain Information Querying (ARC-80)

This ARC proposes a standardized URI scheme for querying blockchain information.

It introduces new URI formats for retrieving data on application states and asset fields directly, supporting read-only queries.
Inspired by ARC-26, it provides a consistent method for accessing blockchain data without using an SDK.

Using account instead of address to refer to a foreign address
ARCs/arc-0080.md Outdated Show resolved Hide resolved
@emg110
Copy link
Contributor

emg110 commented Nov 26, 2024

Hello @SudoWeezy, great and much-needed ARC.

Just a humble suggestion given the fact that proposed URI format (e.g. algorand:app:// or algorand:asset://) is not completely compliant to RFC 3986.

I suggest making this small change and move App and Asset to URI authority in URI scheme, like:

algorand://app/12345?global=Z2xvYmFsX2tleQ==

  • Scheme: algorand.
  • Authority: app or asset.
  • Path: /12345 — A hierarchical path.
  • Query: global=Z2xvYmFsX2tleQ== — A properly formatted query.

Rational:

  • RFC 3986 full compliance (scheme:[//authority]path[?query][#fragment])
  • ARC 26 compliance and no breaking changes in Algorand scheme
  • Scheme is ususally the ontology root of the system (Algorand in this case) and does not accept fragmentation.
  • app or asset are best considered different ontology authorities (subjective system territories) as Account (EOA), ASC and ASA are to Algorand. As ARC-26 already covers Account Authority, by proposing App and Asset Authorities ARC80 extends ARC26 in most effective and RFC compliant way.

I humbly believe that this way we will have ARC80:

  • 100% compliant with RFC 3986
  • Extending and 100% inheriting from and compliant to ARC26

@SudoWeezy
Copy link
Collaborator Author

Hello @SudoWeezy, great and much-needed ARC.

Just a humble suggestion given the fact that proposed URI format (e.g. algorand:app:// or algorand:asset://) is not completely compliant to RFC 3986.

I suggest making this small change and move App and Asset to URI authority in URI scheme, like:

algorand://app/12345?global=Z2xvYmFsX2tleQ==

  • Scheme: algorand.
  • Authority: app or asset.
  • Path: /12345 — A hierarchical path.
  • Query: global=Z2xvYmFsX2tleQ== — A properly formatted query.

Rational:

  • RFC 3986 full compliance (scheme:[//authority]path[?query][#fragment])
  • ARC 26 compliance and no breaking changes in Algorand scheme
  • Scheme is ususally the ontology root of the system (Algorand in this case) and does not accept fragmentation.
  • app or asset are best considered different ontology authorities (subjective system territories) as Account (EOA), ASC and ASA are to Algorand. As ARC-26 already covers Account Authority, by proposing App and Asset Authorities ARC80 extends ARC26 in most effective and RFC compliant way.

I humbly believe that this way we will have ARC80:

  • 100% compliant with RFC 3986
  • Extending and 100% inheriting from and compliant to ARC26

Thanks, I made the update based on your wise comment!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants