统一资源标志符

統一資源識別元（英語：Uniform Resource Identifier，縮寫：URI）在電腦術語中是一個用於標識某一網際網路資源名稱的字串。
該種標識允許用戶對網路中（一般指全球資訊網）的資源通過特定的協定進行互動操作。URI的最常見的形式是統一資源定位符（URL），經常指定為非正式的網址。更罕見的用法是統一資源名稱（URN），其目的是通過提供一種途徑。用於在特定的命名空間資源的標識，以補充網址。

與URL和URN的關係

URI可被視為定位符（URL），名稱（URN）或兩者兼備。統一資源名（URN）如同一個人的名稱，而統一資源定位符（URL）代表一個人的住址。換言之，URN定義某事物的身分，而URL提供尋找該事物的方法。
用於標識唯一書目的ISBN系統是一個典型的URN使用範例。例如，ISBN 0-486-27557-4無二義性地標識出莎士比亞的戲劇《羅密歐與朱麗葉》的某一特定版本。為獲得該資源並閱讀該書，人們需要它的位置，也就是一個URL位址。在類Unix作業系統中，一個典型的URL位址可能是一個檔案目錄，例如file:///home/username/RomeoAndJuliet.pdf。該URL標識出儲存於本地硬碟中的電子書檔案。因此，URL和URN有著互補的作用。

技術觀點

URL是一種URI，它標識一個網際網路資源，並指定對其進行操作或取得該資源的方法。可能通過對主要存取手段的描述，也可能通過網路「位置」進行標識。例如，http://www.wikipedia.org/這個URL，標識一個特定資源（首頁）並表示該資源的某種形式（例如以編碼字元表示的，首頁的HTML程式碼）是可以通過HTTP協定從www.wikipedia.org這個網路主機獲得的。URN是基於某命名空間通過名稱指定資源的URI。人們可以通過URN來指出某個資源，而無需指出其位置和獲得方式。資源無需是基於網際網路的。例如，URN urn:ISBN 0-395-36341-1 指定標識系統（即國際標準書號ISBN）和某資源在該系統中的唯一表示的URI。它可以允許人們在不指出其位置和獲得方式的情況下談論這本書。
技術刊物，特別是IETF和W3C發布的標準中，通常不再使用「URL」這一術語，因為很少需要區別URL和URI。 但是，在非技術文獻和全球資訊網軟體中，URL這一術語仍被廣泛使用。此外，術語「網址」（沒有正式定義）在非技術文獻中時常作為URL或URI的同義詞出現，雖然往往其指代的只是「http」和「https」協定。

RFC 3305

關於URI的討論多源於題目為《W3C/IETF URI規劃聯合小組報告：統一標識資源符（URI），URL和統一資源名（URN）：闡明與建議》的 RFC3305 檔案。這一RFC檔案描述了一個，以統一W3C和IETF內部對於各種「UR*」術語之間關係的不同看法為目的而設立的，W3C/IETF聯合工作小組的工作。雖然未作為標準被這兩個組織所發布，但該檔案確立了上述種種共識，並就此催生了許多標準的誕生。

文法

URI文法由URI協定名（例如http、ftp、mailto、file），一個冒號，和協定對應的內容所構成。特定的協定定義了協定內容的語法和語意，而所有的協定都必須遵循一定的URI文法通用規則，亦即為某些專門目的保留部分特殊字元。URI文法同時也就各種原因對協定內容加以其他的限制，例如，保證各種分層協定之間的協同性。百分號編碼也為URI提供附加資訊。
通用URI的格式如下：
[協定名]://[用戶名稱]:[密碼]@[主機名]:[埠]/[路徑]?[查詢參數]#[片段ID]

例子

下圖展示了兩個 URI 例子及它們的組成部分。
                    hierarchical part
        ┌───────────────────┴─────────────────────┐
                    authority               path
        ┌───────────────┴───────────────┐┌───┴────┐
  abc://username:password@example.com:123/path/data?key=value&key2=value2#fragid1
  └┬┘   └───────┬───────┘ └────┬────┘ └┬┘           └─────────┬─────────┘ └──┬──┘
scheme  user information     host     port                  query         fragment

  urn:example:mammal:monotreme:echidna
  └┬┘ └──────────────┬───────────────┘
scheme              path

命名、定位與標識資源

URI與URL有著共同的歷史。在1990年，提姆·柏內茲-李的關於超文字的提案 間接地引入了使用URL作為一個表示超連結目標資源的短字串的概念。當時，人們稱之為「超文字名」 或「文件名」。
在之後的三年半中，由於全球資訊網的超文件標示語言核心技術、HTTP與瀏覽器都得到了發展，區別提供資源存取和資源標記的兩種字串的必要性開始顯現。雖然其時尚未被正式定義，但「統一資源定位符」這一術語開始被用於代表前者，而後者則由「統一資源名稱」所表示。
在關於定義URL和URN的爭論中，人們注意到兩者事實上基於同一個基礎的「資源標識」的概念。在1994年6月，IETF發布了Berners-Lee的RFC 1630，（非正式地）指出了URL和URN的存在，並進一步定義了「通用資源識別元」——語意和語法由具體協定規定的類URL字串的規範文法。此外，該RFC文件亦嘗試定義了其時正被使用著的URL協定的文法，同時指出（但並未標準化）了相對URL和片段識別元的存在。

標準改良

1994年12月，RFC 1738 正式定義了絕對和相對URL，改進了URL文法，定義了如何解析URL為絕對形式，並更加完善地列舉了其時正處於使用中的URL協定。而URN定義和文法直到1997年5月RFC 2141公布後才正式統一。
1998年8月，隨著RFC 2396的發表，URI文法形成了獨立的標準，同時RFC 1630和1738中關於URI和URL的許多部分也得到了修訂和增補。。新RFC修改了「URI」中「U」的含義：它開始代表統一（Uniform）而不再是通用（Universal）。RFC 1738中總結了既存URL協定的部分被移至另外一篇獨立文件中。IANA 保留著這些協定的註冊資訊，而RFC 2717首次描述了註冊它們的流程。
在1999年12月，RFC 2732對RFC 2396進行了小幅更新，開始允許URI包括IPv6位址。一段時間以後，在兩個標準中暴露出的一些問題促使了一系列的修訂草案的發展，這些草案被統稱為rfc2396bis。這一由RFC 2396的共同作者Roy Fielding啟動協調的集體努力，由2005年1月RFC 3986的發布推至了頂峰。該RFC文件成為了現今（2009年）於網際網路上被推薦使用的URI文法版本，並使得RFC 2396成為了歷史。然而，它卻並未替代現有的URL協定細節；RFC 1738繼續管轄著大多數協定，除了某些已被它取而代之的場合——例如被RFC 2616改良的」HTTP」協定等。與此同時，IETF發布了RFC 3986，亦即完整的STD 66標準，標識著URI通用文法正式成官方網際網路協定。
在2002年8月，RFC 3305指出，雖然術語「URL」仍被廣泛地用於日常用語之中，但其本身已幾乎被廢棄。其現在的功用，僅是作為對於某些URI因包含某種指示著網路可達性的協定而作為位址存在的提醒而已。基於URI的眾多標準，例如資源描述框架等，已經清楚地表明，資源標識本無需指出通過網際網路獲得資源副本的方法，亦無須指出資源是否基於網路。
在2006年11月1日，W3C技術架構小組（W3C's Technical Architecture Group，TAG）公布了《連接替代副本使尋找和發布可行化》，一個對於發布給定資源的多個版本的權威URI和其最佳實踐的指導。例如，內容可能因用於存取資源的裝置的支援性和設定不同，而語言或大小上有所調整已適應這種差異。
語意網使用HTTP URI協定以標識文件和現實世界中的概念：這使得人們就如何區分二者產生了一些困擾。W3C技術架構小組在2005年6月發布了一封關於如何解決這一問題的電子郵件，該郵件被稱為「http範圍-14 決議」 。
為了擴充這個（相當簡短的）電子郵件，W3C在2008年3月發布了網際網路組注釋《用於語意網的酷URI》。這一文件詳細闡釋了內容協商和303重新導向碼的使用。

URI參照

另一種類型的字串——「URI參照」——代表一個URI並（相應地）代表被該URI所標識的資源。非正式使用中，URI和URI參照的區別少有被提及，但協定文件自然不應允許歧義的存在。
URI參照可取用的格式包括完整URI，URI中協定特定的部分，或其後附部分——甚至是空字串。一個可選的片段識別元以#開頭，可出現在URI參照的結尾。參照中，#之前的部分間接標識一個資源，而片段識別元則標識資源的某個部分。
為從URI參照獲得URI，軟體將URI參照與一個絕對「基址」基於一個固定演算法合併，並轉換為「絕對」形式。系統將URI參照視作相對於基址URI，雖然在絕對參照的情況下基址並無意義。基址URI一般標識包含URI參照的文件，但仍可被文件內包含的聲明，或外部資料傳輸協定所包括的聲明覆寫。若基址URI包括一個片段識別元，則該識別元在合併過程中被忽略。如果在URI參照中出現片段識別元，則在合併過程中被保留。
網路文件標記式語言時常使用URI參照指向其它資源，如外部文件或同一邏輯文件的其他部分等。

URI解析

「解析」一個URI意味著將一個相對URI參照轉換為絕對形式，或者通過嘗試取得一個可解引URI或一個URI參照所代表的資源來解除參照這個URI。文件處理軟體的「解析」部分通常同時提供這兩種功能。
一個URI參照可以是一個同文件參照：一個指向包含URI參照自身的文件的參照。文件處理軟體可有效地使用其目前的文件資源來完成對於同文件參照的解析而不需要重新取得一份資源。這只是一個建議——文件處理軟體自然可以選用另外的方法來決定是否取得新資源。
目前截至2009 年的URI規範，RFC 3986，將一個同文件參照的URI定義為「當解析為絕對形式時與參照的基文件位址完全一致的文件」。一般來說，基文件URI就是包含參照的文件的URI。例如，XSLT 1.0包括document()函式以實現這一功能。RFC 3986同時也正式定義了URI等效性，一個可以被用來判斷一個與基URI不同的URI是否表示同一個資源，並因此可以被認為是同文件參照。
RFC 2396給出了一個不同的判斷同文件參照的方法；RFC 3986替代了RFC 2396，但RFC 2396仍舊作為許多規範和實現的基礎而存在。這一規範將一個空字串或僅包括#字元和可選的片段識別元組成的URI參照定義為同文件參照。

與XML命名空間的關係

XML擁有一個叫命名空間的，一個可包含元素集和屬性名稱的抽象域的概念。命名空間的名稱（一個必須遵守通用URI文法的字串）用於標識一個XML命名空間。但是，命名空間的名稱一般不被認為是一個URI，因為URI規範定義了字串的「URI性」是根據其目的而不是其詞法組成決定的。一個命名空間名稱同時也並不一定暗示任何URI協定的語意；例如，一個以「http:」開頭的命名空間名稱很可能與HTTP協定沒有任何關係。XML專家們就這一問題在XML開發電子郵寄清單上進行了深入的辯論；一部分人認為命名空間名稱可以是URI，由於包含一個具體命名空間的名稱集可以被看作是一個被標識的資源，也由於「XML中的命名空間」規範的一個版本指出過命名空間名稱「是」一個URI參照。 但是，集體共識似乎指出一個命名空間名稱只是一個湊巧看起來像URI的字串，僅此而已。
早先，命名空間名稱是可以符合任何非空URI參照的語法的，但後來的一個對於「XML命名空間建議」的訂正廢棄了相對URI參照的使用。一個獨立的、針對XML 1.1的命名空間的規範允許使用IRI參照作為命名空間名稱的基準，而不僅是URI參照。
為了消除XML新人中產生的對於URI（尤其是HTTP URL）的使用的困惑，一個被稱為RDDL（資源目錄描述語言）的描述語言被建立了，雖然RDDL的規範並沒有正式地位，也並沒有獲得任何相關組織（例如W3C）的檢查和支援。一個RDDL文件可以提供關於一個特定命名空間和使用它的XML文件的，機器與人類都能讀懂的資訊。XML文件的作者鼓勵使用RDDL文件，這樣一旦文件中的命名空間名稱被索引，（系統）就會取得一個RDDL文件。這樣，許多開發者對於讓命名空間名稱指向網路可達資源的需求就能得到滿足。