note: using complex alternatives section ihier-part = "//" iauthority ipath-abempty / ipath-absolute / ipath-rootless / ipath-empty
ihier-part (first line) = "//" -> iauthority -> ipath-abempty
The final iri sections combining all other sections IRI = scheme ":" ihier-part [ "?" iquery ] [ "#" ifragment ]
note: using complex alternatives section ipath = ipath-abempty ; begins with "/" or is empty / ipath-absolute ; begins with "/" but not "//" / ipath-noscheme ; begins with a non-colon segment / ipath-rootless ; begins with a segment / ipath-empty ; zero characters
COMPLEX IRI SECTIONS: combining multiple atomic and complex sections separated by delineators to more sophisticated sections.
ATOMIC IRI SECTIONS: These IRI sections are the base building blocks of an IRI
DELINEATORS: defining available delineators of an IRI (e.g.: /,?,#,@...)