加载中…
个人资料
一问
一问
  • 博客等级:
  • 博客积分:0
  • 博客访问:12,280
  • 关注人气:27
  • 获赠金笔:0支
  • 赠出金笔:0支
  • 荣誉徽章:
相关博文
推荐博文
谁看过这篇博文
加载中…
正文 字体大小:

看得见的元数据

(2009-11-08 20:38:15)
标签:

元数据

杂谈

看得见的元数据

       一般人认识新东东,都是从现象开始再到抽象的概念的。讨论元数据的人不多,窃以为跟它不符合这个认识规律有关。可以去这里看看一般是怎样介绍元数据的。
      这个贴里的字都认得,描述也很全面很专业,但偶要承认,象偶这样的菜鸟,看完这些还是不明白元数据是什么。因为,按照语言学“用法即意义”的原理,在没有对元数据的应用思路,从哪里来,到哪里去,表现成什么样子,表现成这个样子有什么用知道个大概之前,对元数据是说不上理解的。还有一种直截了当的解释:元数据就是关于数据的数据!这个似乎是国家标准术语,但听着就更迷糊了:数据的数据有什么用啊?为什么要搞数据的数据啊?为了互操作?那互操作为什么一定要数据的数据呢?这些问题可以一直问下去,问到最后,估计能回答清楚不是很多。与其问得这么辛苦,不如看看元数据在实际应用中大概表现成什么样?如何运用来了解还来的实在些。
      看一个DC的XML文档,引自http://dublincore.org/documents/2002/04/14/dcq-rdf-xml/
<?xml version="1.0"?>
<rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
            xmlns:dc="http://purl.org/dc/elements/1.1/">
  <rdf:Description>
    <dc:creator>Karl Mustermann</dc:creator>
       <dc:title>Algebra</dc:title>
       <dc:subject>
        <rdf:Description dc:language="en">
        <rdf:value xml:lang="en">mathematics</rdf:value>
        </rdf:Description>
       </dc:subject>
  </rdf:Description>
</rdf:RDF>
      看惯HTML觉得代码很眼熟。不过,XML和HTML除了都是标记语言外,基本上是不同的。简单的说,HTML是拿来排版给人看的,或者说是控制内容的显示的。HTML正式名称叫超文本标记语言,既然是文本,自然是给人看的,看它的控制元素都是什么window、alter、tabel、checkedbox、radiobox、listbox一类,功能和一般的GUI控件一样,应该就很清楚了。
     XML正式名字叫扩展标记语言,是给计算机而不是给用户看的。和HTML最大的不同有几点:一是它的标记是可以自定义的;二是它的标记一般都不用于界面显示,而是用于内容控制;三是它的内容都有一个根文档,整个文档呈树状结构。这对内容结构的控制很重要。第一个特点是为了足够灵活,后两个特点是为了便于计算机的理解。
      HTML和XML的关系,做个不很恰当的比喻,就像doc和HTML的差别,doc另存为html时,文档结构就丢失了。XML的基本作用就有点象文档结构控制。当然了,后来又出了个XHTML,那是个XML化的HTML标准。但分开理解更容易一点。
     仅仅XML和HTML的区别还不足以完全理解这个文档。因为里面还有个RDF,RDF(资源描述框架)可以看成是XML用来描述资源时的基本规则。而DC则是个内容方面的标准。因为XML能标记的东东太多了,于是针对标记资源,准确的说似乎是进入共同交换领域的资源的需要,搞了个RDF。这样,DC这类元数据的标准规定了标记的语义,而RDF则提供了描述资源细节的方法,比如取值范围的表示。这是目前能看出了的一些结果,对不对还不能定。
     总之,XML+RDF+元数据标准,共同搞定了元数据的表示问题。这里面,DC规定了标记的语义,但如何表示元数据记录之间的关系,还需要更高级的东西,这就是OWL(大名叫web本体语言)了。比如起点到终点的距离和终点到起点的距离,只要写一个,然后设定两者为等价关系就可以了。按照这种逻辑,可以给本体一个很土的认识:本体就是能和其他资源进行基本关系运算的资源描述体。
    所谓标记的语义,偶以为就表现在标记之间的关系和取值类型以及范围上面,完全是明确的、给机器识别的东西。记得在K兄的博客上看过《语义技术不是什么》,说得很清楚,除去那些东西,语义就只能是标记、标记之间的关系、取值类型以及范围。机器认得的所有东西也就这些。
    为什么要搞元数据这个东西来呢?这个用“关于数据的数据”解释不清楚。从抽象的角度看,说元数据是关于数据的数据自然是没错。但从实际看,元数据是为了适应异构数据的通讯而产生的。定义一套标识和语义确定的符号,供异构数据在通讯时使用。
    那Z39.50也可以成为异构数据的通讯标准,为什么还要搞元数据呢?因为,Z39.50一来是图书馆界专用的,二来是格式基于marc,marc是流式格式,无法实现结构化存取,三是层次结构表现不明确。而元数据使用XML这种在web之上的格式来表示,避免了这些缺点。尽管这不见得是必须的,但实际上却是最方便,这种方便就是在各异构系统之外的web公共区域交换数据的方便。如果只是两个系统之间交换隐秘数据,元数据不见得是好的选择。
     元数据的后面是异构数据,前面是一致性的运算,这一截是可以看见的元数据。

 


 

 

0

阅读 评论 收藏 转载 喜欢 打印举报/Report
  • 评论加载中,请稍候...
发评论

    发评论

    以上网友发言只代表其个人观点,不代表新浪网的观点或立场。

      

    新浪BLOG意见反馈留言板 电话:4000520066 提示音后按1键(按当地市话标准计费) 欢迎批评指正

    新浪简介 | About Sina | 广告服务 | 联系我们 | 招聘信息 | 网站律师 | SINA English | 会员注册 | 产品答疑

    新浪公司 版权所有