What are XRI-normal, IRI-normal, and URI-normal forms?
Just as the IRI specification (RFC 3987) defines a transformation of an IRI into a valid URI for applications that can only accept URIs, the XRI Syntax specification defines a transformation of an XRI into an IRI for applications that can only accept an IRI (which can then be transformed into a URI following the rules in the IRI specification.) Thus an XRI can exist in three different normalization forms, depending on where it is being used. These forms differ only in what characters are percent-encoded and which ones are not. An XRI is considered equivalent in all three normal forms. • XRI normal form is the most minimally escaped form. In this form, any Unicode characters allowed by IRI syntax but not URI syntax are normalized according to Unicode Normalization Form KC (NFKC) and UTF-8 encoded. Other than this, no further escaping is performed. This is the preferred form for applications, languages, and protocols that accept XRIs. • IRI normal form requires escaping of the small set