URI, URL和URN的区别 http://www.360doc.com/content/08/0319/17/13829_1129384.shtml

时间:2021-10-14 08:40:51

以前一直没有搞明白这几个东东的关系。在baidu上查的中文资料大多只介绍了语法的细节,对这几个概念并没有解释的和明白。今天大概看了一下RFC3986后才算把这几个概念搞清楚。RFC关于URI是如下定义的:"A Uniform Resource Identifier (URI) is a compact sequence of characters that identifies an abstract or physical resource. "下面对组成URI的三个词分别做一下解释。

  • Uniform,统一。统一可以带来一些好处。. 它使得不同类型的资源标识符在同一个上下文中使用,即使对这些资源的访问方式有可能是不同的。
  • Resource,资源。这里的资源可以是任何东西,如电子文档、图片和服务等。而且也不一定是可以通过Internet访问到的资源,例如人、企业、图书馆里的书等。同样,资源也可以是抽象的概念,如关系(父母,雇员),数值(零,一,无穷)。
  • Identifier,标识符。标识符表示URI用来区分资源。这种标识可以有各种不同的形式,如用名字作为标识符,或者用访问这种资源的地址作为标识符。因此URL和URN是URI的子集,即URI = { URL, URN, ...}

      下面是一些URI的例子:

   ftp://ftp.is.co.za/rfc/rfc1808.txt

http://www.ietf.org/rfc/rfc2396.txt

ldap://[2001:db8::7]/c=GB?objectClass?one

mailto:John.Doe@example.com

news:comp.infosystems.www.servers.unix

tel:+1-816-555-1212

telnet://192.0.2.16:80/

      如果一个URI是URL则说明该URI包含了访问某一资源的方式,否则我们认为这个URI仅仅是一个URN。其实不必非要把一个URI归为URL或者URN两者中的某一类,有时一个URI可能既是一个URL也是一个URN,这要看发布该URI的机构怎么规定。
 转自:http://blog.csdn.net/alexmajy/archive/2007/06/07/1642314.aspx 
  URL = Uniform Resource Locator;
 URI = Uniform Resource Identifier;

 从字面上可以看出,URL强调得是“定位”,也就是说,更强调
位置这个概念,而URI则说明是“标识”,更为注重资源而不太注重位置;
URI对于定位Internet上的资源是更为通用的架构;

  给你举个例子吧。
  比如http://aa.com/bb.xml这个URL,注重得是aa.com这个地方得
bb.xml这个文件,当然我们通过这个URL可以访问其内容,如果这个
bb.xml被移动到cc.com上去,我们再通过上URL是访问不到bb.xml的,
但是我们如果将其看作URI则仍然可能访问的到。:)
  
  其实现在URI还在研究中,可以把URL看作一种原始的URI.
被当前软件所支持的唯一一种URI也就是URL,所以你在学习中在形式上就把
URI看作URL好了,但是一定要理解URI的思想。
 转自:http://www.smth.edu.cn/bbsanc.php?path=%2Fgroups%2Fdevelop.faq%2FXML%2Flist5%2F1%2F16%2FM.1003921984.A 
 必须首先说一下URI(Uniform Resource Identifier),中文通常称作“统一资源标识符”,它是语义网的根基。同现在互联网使用URL标识HTML页面一样,语义网同样需要一个类似的规范,用来唯一标识网络上的资源。语义网使用URI规范,具体的规范在RFC 2396里进行了详细的说明。任何组织和个人都可以*定义和使用URI。需要澄清的一个概念是,URI的使用与URL有很大区别。URL被用来标识一个网络路径,可以通过互联网在这个URL*问到对应的资源;但一个URI所标识的资源可能根本无法通过网络访问到,它标识而且仅仅是标识一个资源,并不同时包含该资源的访问路径。从概念上来讲,URI包含URL。
转自:http://my.donews.com/clickstone/2006/11/18/rhdgoctxquandbzrilghxuezqcraaspratyo/