6. Serializing Origins (Serializzazione delle origini)
6. Serializing Origins (Serializzazione delle origini)
Questa sezione definisce come serializzare un'origine in una stringa Unicode [Unicode6] e in una stringa ASCII [RFC20].
6.1 Unicode Serialization of an Origin (Serializzazione Unicode di un'origine)
La serializzazione Unicode di un'origine è il valore restituito dal seguente algoritmo:
-
Se l'origine non è una tripla schema/host/porta, restituire la stringa
null(cioè la sequenza di code point U+006E, U+0075, U+006C, U+006C) e interrompere questi passaggi.
-
Altrimenti, sia
resultla parte schema della tripla dell'origine. -
Aggiungere la stringa "://" a
result. -
Aggiungere ciascun componente della parte host della tripla dell'origine (convertito come segue) a
result, separati da code point U+002E FULL STOP ("."):-
Se il componente è un A-label, utilizzare invece il corrispondente U-label (vedere [RFC5890] e [RFC5891]).
-
Altrimenti, utilizzare il componente testualmente.
-
-
Se la parte porta della tripla dell'origine è diversa dalla porta predefinita per il protocollo dato dalla parte schema della tripla dell'origine:
- Aggiungere un code point U+003A COLON (":") e la porta data, in base dieci, a
result.
- Aggiungere un code point U+003A COLON (":") e la porta data, in base dieci, a
-
Restituire
result.
6.2 ASCII Serialization of an Origin (Serializzazione ASCII di un'origine)
La serializzazione ASCII di un'origine è il valore restituito dal seguente algoritmo:
-
Se l'origine non è una tripla schema/host/porta, restituire la stringa
null(cioè la sequenza di code point U+006E, U+0075, U+006C, U+006C) e interrompere questi passaggi.
-
Altrimenti, sia
resultla parte schema della tripla dell'origine. -
Aggiungere la stringa "://" a
result. -
Aggiungere la parte host della tripla dell'origine a
result. -
Se la parte porta della tripla dell'origine è diversa dalla porta predefinita per il protocollo dato dalla parte schema della tripla dell'origine:
- Aggiungere un code point U+003A COLON (":") e la porta data, in base dieci, a
result.
- Aggiungere un code point U+003A COLON (":") e la porta data, in base dieci, a
-
Restituire
result.