RFC 8820 - Progettazione e proprietà degli URI (URI Design and Ownership)
Data di pubblicazione (Published): Giugno 2020
Stato (Status): Best Current Practice
BCP: 190
Rende obsoleto (Obsoletes): RFC 7320
Aggiorna (Updates): RFC 3986
Autore (Author): M. Nottingham
Sommario (Abstract)
La sezione 1.1.1 dell'RFC 3986 definisce la sintassi URI come "un sistema di denominazione federato ed estensibile in cui la specifica di ciascuno schema può ulteriormente limitare la sintassi e la semantica degli identificatori che utilizzano tale schema". In altre parole, la struttura di un URI è definita dal suo schema. Sebbene sia comune che gli schemi deleghino ulteriormente la loro sotto-struttura al proprietario dell'URI, la pubblicazione di standard indipendenti che impongono forme particolari di sotto-struttura negli URI è spesso problematica.
Questo documento fornisce indicazioni sulla specifica della sotto-struttura URI negli standard.
Questo documento rende obsoleto l'RFC 7320 e aggiorna l'RFC 3986.
Stato di questo memo (Status of This Memo)
Questo memo documenta una Best Current Practice di Internet.
Questo documento è un prodotto dell'Internet Engineering Task Force (IETF). Rappresenta il consenso della comunità IETF. Ha ricevuto una revisione pubblica ed è stato approvato per la pubblicazione dall'Internet Engineering Steering Group (IESG). Ulteriori informazioni sui BCP sono disponibili nella sezione 2 dell'RFC 7841.
Le informazioni sullo stato attuale di questo documento, eventuali errata e come fornire feedback possono essere ottenute all'indirizzo: https://www.rfc-editor.org/info/rfc8820
Avviso sul copyright (Copyright Notice)
Copyright (c) 2020 IETF Trust e le persone identificate come autori del documento. Tutti i diritti riservati.
Questo documento è soggetto al BCP 78 e alle disposizioni legali dell'IETF Trust relative ai documenti IETF (https://trustee.ietf.org/license-info) in vigore alla data di pubblicazione di questo documento. Si prega di leggere attentamente questi documenti, poiché descrivono i vostri diritti e le restrizioni relative a questo documento. I componenti di codice estratti da questo documento devono (MUST) includere il testo della licenza BSD semplificata come descritto nella sezione 4.e delle disposizioni legali del Trust e sono forniti senza garanzia come descritto nella licenza BSD semplificata.
Sommario (Table of Contents)
- 1. Introduzione (Introduction)
- 2. Migliori pratiche attuali per la standardizzazione di URI strutturati (Best Current Practices for Standardizing Structured URIs)
- 3. Alternative alla specifica della struttura negli URI (Alternatives to Specifying Structure in URIs)
- 4. Considerazioni sulla sicurezza (Security Considerations)
- 5. Considerazioni IANA (IANA Considerations)
- 6. Riferimenti (References)
Appendici (Appendices)
- Appendice A. Modifiche rispetto all'RFC 7320 (Appendix A. Changes from RFC 7320)
- Ringraziamenti (Acknowledgments)
- Indirizzo dell'autore (Author's Address)
Punti chiave (Key Points)
Principi di proprietà degli URI (URI Ownership Principles)
La struttura di un URI dovrebbe essere controllata dal suo proprietario (Owner) e non imposta da standard esterni. Gli autori di specifiche standard dovrebbero (SHOULD) evitare di imporre requisiti rigorosi sulla struttura interna degli URI quando progettano protocolli che coinvolgono URI.
Problemi potenziali (Potential Issues)
L'imposizione di strutture URI può causare:
- Collisioni: Conflitti tra convenzioni URI di standard diversi
- Diluizione: Riduzione della stabilità degli URI a causa di informazioni temporanee
- Rigidità: La sintassi URI fissa ostacola i modelli di distribuzione desiderati
- Difficoltà operative (Operational Difficulty): Difficoltà nel supportare determinate convenzioni URI in implementazioni specifiche
- Assunzioni del client (Client Assumptions): I client presumono erroneamente l'uso universale delle convenzioni standard
Approcci consigliati (Recommended Approaches)
Utilizzare i seguenti meccanismi invece di imporre strutture URI:
- RFC 8288 - Web Linking e tipi di relazione (Relation Types)
- RFC 6570 - Template URI (URI Templates)
- RFC 8615 - URI ben noti (Well-Known URIs)
Standard correlati (Related Standards):
- RFC 3986 - Sintassi generica URI
- RFC 7320 - Progettazione e proprietà degli URI (reso obsoleto da questo documento)
- RFC 8615 - Identificatori di risorse uniformi ben noti