分享
 
 
 

在HTML中使用DC元数据

王朝html/css/js·作者佚名  2008-05-31
窄屏简体版  字體: |||超大  

本备忘录状态

本备忘录为Internet社区提供一些信息,但没有规定任何Internet标准。本备忘录的发布不受限制

版权信息

Copyright (C) The Internet Society (1999)。版权所有。

目录

1. 摘要 1

2. Html、Dublin核心元数据及其他原数据 1

3.META标签 2

4、LINK标签 2

5、编码建议 3

6、DC元数据的实际应用 4

7、DC元素编码 4

8、安全性问题 10

9、附录——处理用META标签编码的元数据的Perl脚本程序 10

10. 作者地址 15

11、参考资料 15

12、版权声明 17

1. 摘要

Dublin核心元数据 [DC1]是描述信息资源的小的元数据元素集合,本文讨论如何在HTML文档[HTML4.0]中通过META和LINK标签表示这些元素。嵌入HTML的元数据用于描述文档本身的信息。本文通过一些例子说明了如何用现有的软件来检索、显示和处理这些元数据,软件包括附录中列出的[SWISH-E]、[freeWAIS-sf2.0]、[GLIMPSE]、 [HARVEST]、 [ISEARCH]以及Perl[PERL]脚本语言等。

2. HTML、Dublin核心元数据及其他原数据

[DCHOME]发起的Dublin核心元数据推出了一组少量的资源描述类别DC1,或者叫元数据元素(从字面上看就是关于数据的数据)。一般而言,元数据元素相对它们所描述的资源要小得多,而且假如资源格式支持可以把元数据嵌入到资源中。支持嵌入元数据的有两类资源:超文本标记语言(HTML)与扩展标记语言(XML)。HTML已经得到了广泛的应用,但是一旦标准化,XML与资源描述框架(RDF)一起有望提供对源数据进行编码的更有效的方式。RDF规范实际上描述了在HTML文档中按照一种简洁语法应用RDF的方法。

本文讲述了如何在HTML4.0中对元数据进行编码,这些元数据元素的语义在其他文档中定义。为了方便说明,文中提及了某些元数据的语义,但不应把这些语义看作是定义性的。

HTML编码答应DC元数据元素与其它元素混合使用(前提是那些元素的用法支持混合使用)。DC元素使用前缀“DC”标记,其他元素则使用另外的标记,比方说AC表示来自A-Core[AC]的元素。

3.META标签

HTML中的META标签用于已经命名的元数据元素进行编码,每个元素描述了文档或者其他信息资源的一个方面。比方说

,这个元素说明创作者是Homer Simpson,其中Creator是DC元素集中定义的一个元素。更一般的形式为:

content = "ELEMENT_VALUE">

大写部分表示在应用时要换成真正的标记符,在上面的例子中,ELEMENT_NAME是Creator, ELEMENT_VALUE是Simpson, Homer而PREFIX则是DC。

在META标签中,DC元素名的第一个字母要大写,但对元素值的大小写没有要求,也没有限制同时出现的META元素的个数与顺序。同一个DC元素可以出现多次,每个DC元素都是可选的。下面的例子是对一本书的说明,它有两位作者、两个标题:

content = "The Communist Manifesto">

content = "Marx, K.">

content = "Engels, F.">

content = "Capital">

使用META编码的所有DC元素都带有“DC”前缀,与后面的元素名之间用点号(“.”)隔开。每个非DC元素的编码都应该有相应的前缀以便于跟踪其来源和定义,前缀与元素定义之间的联系通过LINK元素来完成,参阅下一节的说明。非DC元素,比如来自AC的Email可以与DC元素混合使用:

content = "Da Costa, José">

content = "dacostaj@peoplesmail.org">

content = "Jesse "The Body" Ventura--A Biography">

这个例子还说明了非凡字符的编码,第一个元素作者名中使用HTML字符实体引用表示一个音标符号——带有重音号的字母E。类似的,最后一行中有两个双引号使用的是数字字符引用,以便于元素内容分隔符区别开。

4、LINK标签

HTML的LINK可以把元素名前缀与元素的参考定义关联在一起。假如没有LINK标签与相应的定义文档关联,只有META标签描述的资源是不完整的。前面的例子再加上以下两个元素就可以认为是完整的了:

href = "http://purl.org/DC/elements/1.0/">

href = "http://metadata.net/ac/2.0/">

一般来说这种联系通常采用如下的形式:

其中的PREFIX要代换为实际使用的前缀,LOCATION_OF_DEFINITION则是定义文档的URL或URN。嵌入在HTML文档HEAD部分的LINK和META序列,描述的是该HTML文档自身的信息。下面是带有描述信息的一个完整的HTML文档。

href = "http://purl.org/DC/elements/1.0/">

content = "A Dirge">

content = "Shelley, Percy Bysshe">

content = "poem">

content = "1820">

content = "text/html">

content = "en">

Rough wind, that moanest loud

Grief too sad for song;

Wild wind, when sullen cloud

Knells all the night long;

Sad storm, whose tears are vain,

Bare woods, whose branches strain,

Deep caves and dreary main, -

Wail, for the world's wrong!

5、编码建议

与这里推荐的元数据编码方式相比,在原理上和实际应用中HTML对元数据编码的要求更加宽松,不过稍加限制更有助于元数据解码和处理软件的开发。在目前的发展阶段,一些简单的原型和试验促进了实用标准的开发。

因此最好按照本文以下所举例子的标记方法在HTML中书写元数据:前缀及元素名用大写、属性值用双引号括起来,一行中最多只有一个META元素。当然实际编写元数据代码的伸缩性很大,不过选择并始终坚持这种风格似乎更有助于元数据的处理与编辑。下面的三个标签都符合上面的建议,内容也相同但是书写风格不一致:

CONTENT="text/html; 12 Kbytes">

Content = "text/html; 12 Kbytes"

Name = "DC.Format"

>

按照上述建议编码有助于使元数据被一些广泛使用的免费软件包所接受、检索和处理,比如[SWISH-E]、[freeWAIS-sf2.0]、[GLIMPSE]、[HARVEST]和[ISEARCH]。这些约定还可以与附录中的脚本,以及[DCHOME]网站上的大部分[DCPROJECTS]应用程序协同工作。支持LINK标签和修饰符约定(下一节)的软件现在还不多。

元数据元素的顺序一般是不固定的。检索并显示元数据的软件的开发者应该尽量保持同名的META标签元素的相对顺序(比方说多个文档作者),但是假如通过不明系统传输,元数据的提供者与检索程序并不能保证元数据的先后顺序保持不变。

6、DC元数据的实际应用

在实际用与资源描述时,为了表达含义上的细微差别,经常需要对DCC元素作一些修饰。虽然这些修饰符的应用原则和具体语义超出了本文的范围,为了方便日常应用,后面通过一些例子介绍修饰语法。对下述在META标签中应用元数据描述符的三种语法(可能发生变化)不再作进一步的说明。

据此,某部西班牙语的遗作可以写为:

scheme = "rfc1766"

content = "es">

lang = "es"

content = "La Mesa Verde y la Silla Roja">

lang = "en"

content = "The Green Table and the Red Chair">

content = "1935">

content = "1939">

需要注重,本文例中所使用的修饰符语法和标签后缀(跟在元素名和点号后)仅仅反映了修饰符HTML编码的趋势,这种语法格式和后缀既非标准也不建议这么做。

7、DC元素编码

这一节针对不同的DC元素举出了相应的应用实例:

Title (给出的资源名)

-----

content = "Polycyclic aromatic hydrocarbon contamination">

content = "Crime and Punishment">

content = "Methods of Information in Medicine, Vol 32, No 4">

content = "Still life #4 with flowers">

lang = "de"

content = "Das Wohltemperierte Klavier, Teil I">

Creator (常见内容的实体)

-------

content = "Gogh, Vincent van">

content = "van Gogh, Vincent">

content = "Mao Tse Tung">

content = "Mao, Tse Tung">

content = "Plato">

lang = "fr"

content = "Platon">

content = "Sturges, Preston">

content = "Hecht, Ben">

content = "Chaplin, Charles">

Subject (主题或要害字)

-------

content = "heart attack">

scheme = "MESH"

content = "Myocardial Infarction; Pericardial Effusion">

content = "vietnam war">

scheme = "LCSH"

content = "Vietnamese Conflict, 1961-1975">

content = "Friendship">

scheme = "ddc"

content = "158.25">

Description (说明、小结与摘要)

-----------

lang = "en"

content = "The Author gives some Account of Himself and Family

-- His First Inducements to Travel -- He is

Shipwrecked, and Swims for his Life -- Gets safe on

Shore in the Country of Lilliput -- Is made a

Prisoner, and carried up the Country">

content = "A tutorial and reference manual for Java.">

content = "Seated family of five, coconut trees to the left,

sailboats moored off sandy beach to the right,

with volcano in the background.">

Publisher (出版商、发布方)

---------

content = "O'Reilly">

content = "Digital Equipment Corporation">

content = "University of California Press">

content = "State of Florida (USA)">

Contributor (其他贡献者)

-----------

content = "Curie, Marie">

content = "Adams, Ansel">

content = "Sendak, Maurice">

content = "Starr, Kenneth">

Date (该资源生命期中的某个时点; 推荐[WTN8601])

----

content = "1972">

content = "1998-05-14">

scheme = "WTN8601"

content = "1998-05-14">

content = "1998-05-14">

content = "1998-05-21">

content = "1998-05-28">

content = "triassic">

content = "1957">

scheme = "WTN8601"

content = "1998-12-02T16:59">

scheme = "ISO8601"

content = "98-W49-3T1659">

scheme = "ANSI.X3.X30-1985"

content = "19980514">

Type (性质、流派、类别; 建议用[DCT1])

----

content = "poem">

scheme = "DCT1"

content = "software">

content = "software program source code">

content = "interactive video game">

scheme = "DCT1"

content = "dataset">

content = "web home page">

content = "web bibliography">

content = "painting">

content = "image; woodblock">

scheme = "AAT"

content = "clipeus (portrait)">

lang = "en-US"

content = "image; advertizement">

scheme = "DCT1"

content = "event">

content = "event; periodic">

Format (物理或逻辑格式以及可选的资源大小)

------

content = "text/xml">

scheme = "IMT"

content = "text/xml">

scheme = "IMT"

content = "image/jpeg">

content = "A text file with mono-spaced tables and diagrams.">

content = "video/mpeg; 14 minutes">

content = "unix tar archive, gzip compressed; 1.5 Mbytes">

content = "watercolor; 23 cm x 31 cm">

Identifier (资源标识符)

----------

content = "http://foo.bar.org/zaf/">

content = "urn:ietf:rfc:1766">

scheme = "ISBN"

content = "1-56592-149-6">

scheme = "LCCN"

content = "67-26020">

scheme = "DOI"

content = "10.12345/33-824688ab">

Source (来源)

------

content = "Shakespeare's Romeo and Juliet">

content = "http://a.b.org/manon/">

Language (内容所使用的语言;建议使用[RFC1766])

--------

content = "en">

scheme = "rfc1766"

content = "en">

scheme = "ISO639-2"

content = "eng">

scheme = "rfc1766"

content = "en-US">

content = "zh">

content = "ja">

content = "es">

content = "de">

content = "german">

lang = "fr"

content = "allemand">

Relation (相关资源)

--------

content = "http://foo.bar.org/abc/proceedings/1998/">

content = "http://foo.bar.org/cd145.sgml">

content = "http://foo.bar.org/draft9.4.4.2">

content = "urn:isbn:1-56592-149-6">

content = "Shakespeare's Romeo and Juliet">

content = "LWP::UserAgent; HTML::Parse; URI::URL;

Net::DNS; Tk::Pixmap; Tk::Bitmap; Tk::Photo">

Coverage (内容所涉及的范围)

--------

content = "US civil war era; 1861-1865">

content = "Columbus, Ohio, USA; Lat: 39 57 N Long: 082 59 W">

scheme = "TGN"

content = "Columbus (C,V)">

content = "Commonwealth of Australia">

Rights (版权治理声明)

------

lang = "en"

content = "Copyright Acme 1999 - All rights reserved.">

content = "http://foo.bar.org/cgi-bin/terms">

8、安全性问题

本文所讨论的在HTML中应用DC元数据的语法规则不会给计算机和网络带来直接的危险。这些规则可能被用于编制不准确甚至有意误导(造成“垃圾检索信息”)的元数据信息,这反映了对HTML META标签的滥用,而且也不仅限于对DC元数据的编码。即使传统的元数据编码方案(比如[MARC])也不能免于错误,虽然错误通常发生在数据量远远超出普通网站水平的情况下。

对使用META标签进行编码的元数据进行处理的系统,应该作为设计与实现的一部分考虑与元数据的正确性和有效性有关的问题,使用这些系统的用户也要考虑系统设计和实现中的要求。不同的应用程序可能采用不同的方法,比方说增加元数据来源的声明、对元数据是用数字签名以及元数据创建过程中某些方面的自动化,但是这些都超出了本文以及META标签语法的范畴。

9、附录——处理用META标签编码的元数据的Perl脚本程序

这一节包括两个程序,适用于4和5版本的PERL脚本语言解释器。这两个程序可以自由地用于本单位的需要、研究目的或者风险资本的召唤。根据这些程序,程序员可以很轻易把它们改造成其它的应用。

脚本一:源数据格式转换

这是一个简单的Perl脚本程序,能够正确识别本文所有例子中的元数据编码。这个例子说明如何用普通的脚本开发把元数据从一种格式转到另一种格式的实用程序,只要稍作改变就可以支持多种输出格式。

#!/depot/bin/perl

#

# This simple perl script extracts metadata embedded in an HTML file

# and outputs it in an alternate format. Issues warning about missing

# element name or value.

#

# Handles mixed case tags and attribute values, one per line or spanning

# several lines. Also handles a quoted string spanning multiple lines.

# No error checking. Does not tolerate more than one "

print "@(urc;\n";

while (<>) {

next if (! /

($meta) = /(

if (! //i) {

while (<>) {

$meta .= $_;

last if (/>/);

}

}

$name = $meta =~ /name\s*=\s*"([^"]*)"/i

? $1 : "MISSING ELEMENT NAME";

$content = $meta =~ /content\s*=\s*"([^"]*)"/i

? $1 : "MISSING ELEMENT VALUE";

($scheme) = $meta =~ /scheme\s*=\s*"([^"]*)"/i;

($lang) = $meta =~ /lang\s*=\s*"([^"]*)"/i;

if ($lang $scheme) {

$mod = " ($lang";

if (! $scheme)

{ $mod .= ")"; }

elsif (! $lang)

{ $mod .= "$scheme)" }

else

{ $mod .= ", $scheme)"; }

}

else

{ $mod = ""; }

print " @$name$mod; $content\n";

}

print "@)urc;\n";

# ---- end of Perl script ----

假如该程序用于第四节中的元数据例子,则输出结果如下:

@(urc;

@DC.Title; A Dirge

@DC.Creator; Shelley, Percy Bysshe

@DC.Type; poem

@DC.Date; 1820

@DC.Format; text/html

@DC.Language; en

@)urc;

脚本二——元数据创建自动化

假如没有一些自动化的帮助——预先设定缺省值、语法检查、数据范围验证以及拼写检查等——创建和维护高质量的元数据可能非常困难。假如有某个脚本程序能够仅仅通过文档标题来加入相应的元数据内容,就可以极大减轻用户的工作量。下面的程序就可完成这项工作。HTML作者可以把整个内嵌资源描述缩写放在HTML注释声明中:

我们的脚本程序把该声明看作是一种专门的带有文档标题的“元数据块声明”。一般形式为:

该声明的工作方式非常类似于“服务器端引入”,脚本程序用完整的元数据块代替该声明并机或其他的替换。装上后,该脚本就会生成与用户产品Web服务器程序兼容的HTML文件。

文档提供者应该保有一份单独的文档模板,保存很少改变的预设值和元数据元素假如用户的需要非常简单,两份文档除了标题之外都相同,那么这些元素就能自动生成。使用该脚本程序,这些元数据的值可以向变量那样在模板或者HTML文档中引用。变量的引用形式类似于“(--mbVARNAME)”,模板中的格式如下:

content = "Simpson, Homer">

content = "(--mBTitle)">

content = "(--mbfilemodtime)">

content = "(--mbbaseURL)/(--mbfilename)">

content = "text/html; (--mbfilesize)">

content = "(--mblanguage)-BUREAUCRATESE">

content = "Springfield Nuclear">

href = "http://purl.org/DC/elements/1.0/">

href = "http://nukes.org/ReactorCore/rc">

只要把其中的变量引用代入实际值,上面的模板就可作为描述文档的元数据块。 根据我们的脚本,下述变量要同时在模板和文档中替换:

(--mbfilesize) size of the final output file

(--mbtitle) title of the document

(--mblanguage) language of the document

(--mbbaseURL) beginning part of document identifier

(--mbfilename) last part (minus .html) of identifier

(--mbfilemodtime) last modification date of the document

这是一个应用该脚本的HTML文档:

content = "Memorandum">

From: Acting Shift Supervisor

To: Plant Control Personnel

RE: (--mbtitle)

Date: (--mbfilemodtime)

Pursuant to directive DOH:10.2001/405aec of article B-2022,

subsection 48.2.4.4.1c regarding staff morale and employee

productivity standards, the current allocation of doughnut

acquisition funds shall be increased effective immediately.

由于替换在整个文档范围内进行,作者只要输入标题一次就可以了(通常标题要在首部和HTML文档体内输入两次)。运行脚本程序后,上面的文件就被转换成:

content = "Simpson, Homer">

content = "Nutritional Allocation Increase">

content = "1999-03-08">

content = "http://moes.bar.com/doh/homer.html">

content = "text/html; 1320 bytes">

content = "en-BUREAUCRATESE">

content = "Springfield Nuclear">

href = "http://purl.org/DC/elements/1.0/">

href = "http://nukes.org/ReactorCore/rc">

content = "Memorandum">

From: Acting Shift Supervisor

To: Plant Control Personnel

RE: Nutritional Allocation Increase

Date: 1999-03-08

Pursuant to directive DOH:10.2001/405aec of article B-2022,

subsection 48.2.4.4.1c regarding staff morale and employee

productivity standards, the current allocation of doughnut

acquisition funds shall be increased effective immediately.

下面是完成这一转换过程的脚本:

#!/depot/bin/perl

#

# This Perl script processes metadata block declarations of the form

# and variable references of the

# form (--mbVARNAME), replacing them with full metadata blocks and

# variable values, respectively. Requires a "template" file.

# Outputs an HTML file.

#

# Invoke this script with a single filename argument, "foo". It creates

# an output file "foo.html" using a temporary working file "foo.work".

# The size of foo.work is measured after variable replacement, and is

# later inserted into the file in such a way that the file's size does

# not change in the process. Has little or no error checking.

$infile = shift;

open(IN, "< $infile")

or die("Could not open input file \"$infile\"");

$workfile = "$infile.work";

unlink($workfile);

open(WORK, "+> $workfile")

or die("Could not open work file \"$workfile\"");

@offsets = (); # records locations for late size replacement

$title = ""; # gets the title during metablock processing

$language = "en"; # pre-set language here (not in the template)

$baseURL = "http://moes.bar.com/doh"; # pre-set base URL here also

$filename = "$infile.html"; # final output filename

$filesize = "(--mbfilesize)"; # replaced late (separate pass)

($year, $month, $day) = (localtime( (stat IN) [9] ))[5, 4, 3];

$filemodtime = sprintf "%s-%02s-%02s", 1900 + $year, 1 + $month, $day;

sub putout { # outputs current line with variable replacement

if (! /\(--mb/) {

print WORK;

return;

}

if (/\(--mbfilesize\)/) # remember where it was

{ push @offsets, tell WORK; } # but don't replace yet

s/\(--mbtitle\)/$title/g;

s/\(--mblanguage\)/$language/g;

s/\(--mbbaseURL\)/$baseURL/g;

s/\(--mbfilename\)/$filename/g;

s/\(--mbfilemodtime\)/$filemodtime/g;

print WORK;

}

while () { # main loop for input file

if (! /(.*)

&putout;

next;

}

$title=$2;

$_=$1;

&putout;

if($title=~s/\s*--(.*)//) {

$remainder = $1;

}

else {

while () {

$title .= $_;

last if (/(.*)\s*-->(.*)/);

}

$title .= $1;

$remainder = $2;

}

open(TPLATE, "< template")

or die("Could not open template file");

while () # subloop for template file

{ &putout; }

close(TPLATE);

$_ = $remainder;

&putout;

}

close(IN);

# Now replace filesize variables without altering total byte count.

select( (select(WORK), $ = 1) [0] ); # first flush output so we

if (($size = -s WORK) < 100000) # can get final file size

{ $scale = 0; } # and set scale factor or

else { # compute it, keeping width of size field low

for ($scale = 0; $size >= 1000; $scale++)

{ $size /= 1024; }

}

$filesize = sprintf "%7.7s %sbytes",

$size, (" ", "K", "M", "G", "T", "P") [$scale];

foreach $pos (@offsets) { # loop through saved size locations

seek WORK, $pos, 0; # read the line found there

$_ = ;

# $filesize must be exactly as wide as "(--mbfilesize)"

s/\(--mbfilesize\)/$filesize/g;

seek WORK, $pos, 0; # rewrite it with replacement

print WORK;

}

close(WORK);

rename($workfile, "$filename")

or die("Could not rename \"$workfile\" to \"$filename\"");

# ---- end of Perl script ----

10. 作者地址

John A. Kunze

Center for Knowledge Management

University of California, San Francisco

530 Parnassus Ave, Box 0840

San Francisco, CA 94143-0840, USA

Fax: +1 415-476-4653

EMail: jak@ckm.ucsf.edu

11、参考资料

[AAT]Art and Architecture Thesaurus, Getty Information Institute.

http://shiva.pub.getty.edu/aat_browser/

[AC]The A-Core: Metadata about Content Metadata, (inprogress)

http://metadata.net/ac/draft-iannella-admin-01.txt

[DC1]Weibel, S., Kunze, J., Lagoze, C. and M. Wolf,"Dublin Core Metadata for Resource Discovery", RFC2413, September 1998.

FTP://ftp.isi.edu/in-notes/rfc2413.txt

[DCHOME]Dublin Core Initiative Home Page.

http://purl.org/DC/

[DCPROJECTS]Projects Using Dublin Core Metadata.

http://purl.org/DC/projects/index.htm

[DCT1]Dublin Core Type List 1, DC Type Working Group, March 1999.

http://www.loc.gov/marc/typelist.html

[freeWAIS-sf2.0] The enhanced freeWAIS distribution, February 1999.

http://ls6-www.cs.uni-dortmund.de/ir/projects/freeWAIS-sf/

[GLIMPSE]Glimpse Home Page.

http://glimpse.cs.arizona.edu/

[HARVEST]Harvest Web Indexing.

http://www.tardis.ed.ac.uk/harvest/

[HTML4.0]Hypertext Markup Language 4.0 Specification, April 1998.

http://www.w3.org/TR/REC-html40/

[ISEARCH]Isearch Resources Page.

http://www.etymon.com/Isearch/

[ISO639-2]Code for the representation of names of languages, 1996.

http://www.indigo.ie/egt/standards/iso639/iso639-2-en.html

[ISO8601]ISO 8601:1988(E), Data elements and interchange formats -- Information interchange - Representation of dates and times, International Organization for standardization, June 1988.

http://www.iso.ch/markete/8601.pdf

[MARC]USMARC Format for Bibliographic Data, US Library of Congress.

http://lcweb.loc.gov/marc/marc.html

[PERL]L. Wall, T. Christiansen, R. Schwartz, Programming Perl, Second Edition, O'Reilly, 1996.

[RDF]Resource Description Framework Model and Syntax Specification, February 1999.

http://www.w3.org/TR/REC-rdf-syntax/

[RFC1766]Alvestrand, H., "Tags for the Identification of Languages", RFC1766, March 1996.

ftp://ftp.isi.edu/in-notes/rfc1766.txt

[SWISH-E]Simple Web Indexing System for Humans - Enhanced.

http://sunsite.Berkeley.EDU/SWISH-E/

[TGN]Thesaurus of Geographic Names, Getty Information Institute.

http://shiva.pub.getty.edu/tgn_browser/

[WTN8601]W3C Technical Note - Profile of ISO 8601 Date and Time Formats.

http://www.w3.org/TR/NOTE-datetime

[XML]Extensible Markup Language (XML).

http://www.w3.org/TR/REC-xml

12、版权声明

Copyright (C) The Internet Society (1999). All Rights Reserved.

This document and translations of it may be copied and furnished to others, and derivative works that comment on or otherwise eXPlain it or assist in its implementation may be prepared, copied, published and distributed, in whole or in part, without restriction of any kind, provided that the above copyright notice and this paragraph are included on all such copies and derivative works. However, this document itself may not be modified in any way, such as by removing the copyright notice or references to the Internet Society or other Internet organizations, except as needed for the purpose of developing Internet standards in which case the procedures for copyrights defined in the Internet Standards process must be followed, or as required to translate it into languages other than English.

The limited permissions granted above are perpetual and will not be revoked by the Internet Society or its successors or assigns.

This document and the information contained herein is provided on an "AS IS" basis and THE INTERNET SOCIETY AND THE INTERNET ENGINEERING TASK FORCE DISCLAIMS ALL WARRANTIES, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTY THAT THE USE OF THE INFORMATION HEREIN WILL NOT INFRINGE ANY RIGHTS OR ANY IMPLIED WARRANTIES OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE.

Acknowledgement

Funding for the RFCEditor function is currently provided by the Internet Society.

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
2023年上半年GDP全球前十五强
 百态   2023-10-24
美众议院议长启动对拜登的弹劾调查
 百态   2023-09-13
上海、济南、武汉等多地出现不明坠落物
 探索   2023-09-06
印度或要将国名改为“巴拉特”
 百态   2023-09-06
男子为女友送行,买票不登机被捕
 百态   2023-08-20
手机地震预警功能怎么开?
 干货   2023-08-06
女子4年卖2套房花700多万做美容:不但没变美脸,面部还出现变形
 百态   2023-08-04
住户一楼被水淹 还冲来8头猪
 百态   2023-07-31
女子体内爬出大量瓜子状活虫
 百态   2023-07-25
地球连续35年收到神秘规律性信号,网友:不要回答!
 探索   2023-07-21
全球镓价格本周大涨27%
 探索   2023-07-09
钱都流向了那些不缺钱的人,苦都留给了能吃苦的人
 探索   2023-07-02
倩女手游刀客魅者强控制(强混乱强眩晕强睡眠)和对应控制抗性的关系
 百态   2020-08-20
美国5月9日最新疫情:美国确诊人数突破131万
 百态   2020-05-09
荷兰政府宣布将集体辞职
 干货   2020-04-30
倩女幽魂手游师徒任务情义春秋猜成语答案逍遥观:鹏程万里
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案神机营:射石饮羽
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案昆仑山:拔刀相助
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案天工阁:鬼斧神工
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案丝路古道:单枪匹马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:与虎谋皮
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:李代桃僵
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:指鹿为马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:小鸟依人
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:千金买邻
 干货   2019-11-12
 
推荐阅读
 
 
 
>>返回首頁<<
 
靜靜地坐在廢墟上,四周的荒凉一望無際,忽然覺得,淒涼也很美
© 2005- 王朝網路 版權所有