什么是语义标记,为什么要使用它?

时间:2020-03-06 14:34:33  来源:igfitidea点击:

就像它说的那样。

解决方案

从http://www.digital-web.com/articles/writing_semantic_markup/:

semantic markup is markup that is descriptive enough to allow us and the machines we program to recognize it and make decisions about it. In other words, markup means something when we can identify it and do useful things with it. In this way, semantic markup becomes more than merely descriptive. It becomes a brilliant mechanism that allows both humans and machines to “understand” the same information.

使用语义标记意味着我们在页面中使用的(X)HTML代码包含描述其目的的元数据-例如,包含雇员姓名的<h2>可能会被标记为" class =" employee-name"。最初,有些人希望搜索引擎会使用此信息,但是随着Web的发展,语义标记已主要用于为CSS提供挂钩。

使用CSS和语义标记,我们可以将页面的视觉设计与标记分开。这样可以节省带宽,因为设计仅需下载一次,而设计则可以轻松修改,因为它不会与标记混在一起。

另一点是,所使用的元素应与其中包含的数据具有逻辑关系。例如,表格应用于表格数据," <p>"应用于文本段落," <ul>"应用于无序列表,等等。这与早期的Web设计相反,后者经常使用表格为了一切。

语义字面意思是使用"有意义的"语言。在Web开发中,这基本上意味着使用描述内容的标签和标识符。

例如,将诸如#Navigation,#Header和#Content之类的ID而不是#Left和#Main应用于<div>标签,或者将无序列表用于导航链接列表,而不是表。

主要好处在于将来的维护;我们可以轻松更改布局或者演示文稿,而不会失去内容的含义。导航栏可以从左向右移动,或者链接水平而不是垂直显示,而不会失去意义。

除了已经提到的允许软件"理解"数据的目标之外,还有更多的实际应用程序用于使用它在本体之间进行翻译,或者在不相似的数据表示之间进行映射而不必翻译或者标准化数据(这可能会导致信息丢失,并且通常会阻止我们将来对自己的理解有所提高)。

今年在OSCon上至少有2次关于语义技术使用的会议。一个是关于BigData的(幻灯片可以在这里找到:http://en.oreilly.com/oscon2008/public/schedule/proceedings,另一个是FreeBase的家伙。

BigData正在使用它在两个不同的数据模型之间进行映射(包括使用专门为处理语义数据集而创建的查询语言)。 FreeBase在不同数据集之间进行映射,然后执行进一步的分析以得出这些数据集的含义。

要研究的相关主题:OWL,OQL,SPARQL,Franz(AllegroGraph,RacerPRO和TopBraid)。