URI,URL,URN三者关系之个人理解
2014-02-12 10:02
155 查看
首先URI,URL,URN的全称如下:
URI(Uniform Resource Identifier) :统一资源标识
URL(Uniform ResourceLocator)
:统一资源定位符
URN(Uniform ResourceName) :统一资源名称
1 要弄清三者之间的关系,首先要了解什么是互联网资源?
我们比较常见的,某网站或某服务器上的图片,mp3音乐,电影,电子书等等这些都是互联网资源。广义上讲,互联网上任何有意义的数据信息都可以称为互联网资源。
2 面对海量的互联网的资源,如何来标识这些资源呢?
URN:从为每一个资源起一个唯一的名称的角度出发。比如用于唯一标识书目的ISBN系统是一个典型的URN使用范例。例如,ISBN0-486-27557-4(urn:isbn:0-486-27557-4)无二义性地标识出莎士比亚的戏剧《罗密欧与朱丽叶》的某一特定版本。由于为每一个资源起一个唯一的名称显然需要专门的组织机构来管理,所以并不是所有的资源都有URN.
URL:从资源存储位置的角度来标识资源,URL唯一的标识了资源的路径以及通过什么协议可以获取到该资源等信息。
3 URI,URN,URL的三者关系
它们都是基于“资源标识”的概念产生的,从不同的角度对资源进行标识,URN(统一资源)类似一个人的名称,而URL(统一资源定位符)类似一个人的住址,换言之,URN定义某事物的身份,而URL提供查找该事物的方法。但他们不存在一一对应关系。比如《罗密欧与朱丽叶》这本书的urn:isbn:0-486-27557-4是唯一的。但新浪和网易都提供这本书的下载(所以URL有两个)。这个问题其实很好理解,就像我们在网络上根据歌名搜索歌曲时可以搜索到N个URL(网友习惯称之为网络链接)。
URI(统一资源标识)则是更抽象一层的概念,URI可以是URL,也可以是URN或两者兼备。他们的关系有点类似面向对象编程语言中的父类子类关系。URI是一个抽象的类,用来描述互联网资源。URN和URL则是URI的子类,实类。所以URI可以是URN也可以是URL.如果你关心的是网络资源的名称那么你可以将URI定义成URN的形式,如果你关心的是如何获取到该资源,那么你可以将URI定义成URL的形式。
ftp://example.org/resource.txt
urn:issn:1535-3613
显然第一,二个URI其实就是URL,第三个URI则是URN。所以URL一定是URI,但URI不全是URL.
URI(Uniform Resource Identifier) :统一资源标识
URL(Uniform ResourceLocator)
:统一资源定位符
URN(Uniform ResourceName) :统一资源名称
1 要弄清三者之间的关系,首先要了解什么是互联网资源?
我们比较常见的,某网站或某服务器上的图片,mp3音乐,电影,电子书等等这些都是互联网资源。广义上讲,互联网上任何有意义的数据信息都可以称为互联网资源。
2 面对海量的互联网的资源,如何来标识这些资源呢?
URN:从为每一个资源起一个唯一的名称的角度出发。比如用于唯一标识书目的ISBN系统是一个典型的URN使用范例。例如,ISBN0-486-27557-4(urn:isbn:0-486-27557-4)无二义性地标识出莎士比亚的戏剧《罗密欧与朱丽叶》的某一特定版本。由于为每一个资源起一个唯一的名称显然需要专门的组织机构来管理,所以并不是所有的资源都有URN.
URL:从资源存储位置的角度来标识资源,URL唯一的标识了资源的路径以及通过什么协议可以获取到该资源等信息。
3 URI,URN,URL的三者关系
它们都是基于“资源标识”的概念产生的,从不同的角度对资源进行标识,URN(统一资源)类似一个人的名称,而URL(统一资源定位符)类似一个人的住址,换言之,URN定义某事物的身份,而URL提供查找该事物的方法。但他们不存在一一对应关系。比如《罗密欧与朱丽叶》这本书的urn:isbn:0-486-27557-4是唯一的。但新浪和网易都提供这本书的下载(所以URL有两个)。这个问题其实很好理解,就像我们在网络上根据歌名搜索歌曲时可以搜索到N个URL(网友习惯称之为网络链接)。
URI(统一资源标识)则是更抽象一层的概念,URI可以是URL,也可以是URN或两者兼备。他们的关系有点类似面向对象编程语言中的父类子类关系。URI是一个抽象的类,用来描述互联网资源。URN和URL则是URI的子类,实类。所以URI可以是URN也可以是URL.如果你关心的是网络资源的名称那么你可以将URI定义成URN的形式,如果你关心的是如何获取到该资源,那么你可以将URI定义成URL的形式。
URI举例:
http://example.org/absolute/URI/with/absolute/path/to/resource.txtftp://example.org/resource.txt
urn:issn:1535-3613
显然第一,二个URI其实就是URL,第三个URI则是URN。所以URL一定是URI,但URI不全是URL.
相关文章推荐
- URI,URN,URL三者的关系
- Uri,Url,Urn,src,href的解释和区别,个人查资料理解,不严谨,只供参考
- 你知道URL、URI和URN三者之间的区别吗?
- URL、URI和URN三者之间的区别
- uri和url以及urn的关系
- URL、URI和URN三者之间的区别
- 你知道URL、URI和URN三者之间的区别吗?
- URI、URL与URN的关系
- URL、URI和URN三者之间的区别
- URL、URI和URN三者之间的区别
- URI、URL、URN的理解与区分
- Http权威指南笔记(一) URI URL URN 关系
- Uri、URL和URN三者的区别
- 网络随笔(六)------URL,URI和URN的理解
- 几句话搞懂URI、URL、URN之间的关系
- URI URL URN 关系
- URL,URI和URN的理解
- 你知道URL、URI和URN三者之间的区别吗?
- URI URL和URN的关系
- URI 、URL、URN 简单理解