URN
RFC 8141 Uniform Resource Names (URNs)
RFC 2276 Architectural Principles of Uniform Resource Name Resolution
登録ネームスペースの一覧
RFC 9517 A URN Namespace for the Data Documentation Initiative (DDI)
旧
RFC 2141
RFC 3406 URNネームスペースの登録
既存の名前空間を束ねるためのもので登録制ではない新しいもの(acctなど)はURIベースになるのか、という感じ?
表記 urn:<NID>:<NSS>
urn: を省略している場合はURNではなくURLとして扱う
code:URI Syntax
namestring = assigned-name
assigned-name = "urn" ":" NID ":" NSS
NID = (aplhanum) 0*30(ldh) (alphanum)
ldh = alphanum / "-"
NSS = pchar *(pchar / "/")
r-components = pchar *( pchar / "/" / "?" )
q-components = pchar *( pchar / "/" / "?" )
f-components = fragment
; alphanum, fragment, pchar は RFC 3986
r-components URN解決サービス(DNS的なもの)に渡す何か (未定義)
q-components パラメータ的なものを渡したいときの何か
f-components 書籍の章など指定したいときの何か
例
urn:ietf:rfc:3986
urn:isbn:
code:oid NSS ABNF
oid = number *( DOT number )
number = DIGIT / ( LEADDIGIT 1*DIGIT )
LEADDIGIT = %x31-39 ; 1-9
DIGIT = %x30 / LEADDIGIT ; 0-9
DOT = %x2e ; period
urn:xmpp: RFC 4854 (RFC 5122 xmpp: とは別)