gpt4 book ai didi

semantic-web - 向网站添加语义的最佳实践

转载 作者:行者123 更新时间:2023-12-04 17:01:41 26 4
gpt4 key购买 nike

我对网站的语义有点困惑。我知道每个 URI 都应该代表一个资源。我假设网页内 RDFa 提供的所有信息都描述了该网页的 URI 表示的资源。我的问题是:为网站的子页面提供语义数据的最佳实践是什么。

就我而言,我想使用带有 schema.org 和 opengraph 词汇表的 RDFa 为名为 magma 的剧团创建一个网站。假设我有欢迎页面 ( http://magma.com/ )、联系页面 ( http://magma.com/contact/ ) 和个人播放页面 ( http://magma.com/play/<playid>/ )。

现在我认为欢迎页面和联系页面都代表相同的资源(岩浆),同时提供有关该资源的不同信息。然而,播放页面代表的只是碰巧由岩浆执行的播放。或者说播放页面也代表岩浆,但提供有关该组将执行的戏剧的信息是否更好?我偶然发现的第三个选项是 http://schema.org/WebPage .特别是像 ContactPage 这样的子类型似乎是相关的。

在实现方面,我应该将 RDFa 放在哪里?

最后:我的选择将如何改变第 3 方(谷歌、 Facebook 等)对待网站的方式?

我意识到这个问题有点模糊。为了使它更具体,我将添加一个您可能会批评的示例:

<html vocab="http://schema.org/" typeof="TheaterGroup">
<head>
<meta charset="UTF-8"/>
<title>Magma - Romeo and Juliet</title>

<!-- magma sematics from a template file -->
<meta property="name" content="Magma"/>
<meta property="logo" content="/static/logo.png"/>
<link rel="home" property="url" content="http://magma.com/"/>
</head>

<body>
<h1>Romeo and Juliet</h1>

<!-- semantics of the play -->
<div typeof="CreativeWork" name="Romeo and Juliet">
...
</div>

<h2>Shows</h2>

<!-- samantics of magma events -->
<ul property="events">
<li typeof="Event"><time property="startDate">...</time></li>
...
</ul>
</body>
</html>

最佳答案

I understand that every URI should represent a ressource. I assume that all information provided by RDFa inside a webpage describes the ressource represented by the URI of that webpage.


嗯,HTTP URI 可以识别页面本身或页面的内容。您无法通过简单的查看来判断 URI 是标识页面还是事物。
示例(在 Turtle 语法中):
<http://en.wikipedia.org/wiki/The_Lord_of_the_Rings> ex:author "John Doe"
这可能意味着带有 URI http://en.wikipedia.org/wiki/The_Lord_of_the_Rings 的 HTML 页面由“John Doe”撰写。或者这可能意味着该 HTML 页面(→ 小说)所描述的内容是由“John Doe”创作的。当然,这是一个重要的区别。
有多种方法可以区分 URI 代表什么,并且对此存在一些争议。围绕此问题的讨论被称为 httpRange-14 问题 .例如,参见维基百科文章 Web resource .
一种方法是使用 散列 URI ( see also this answer )。示例: http://magma.com/play/42可以识别该剧的页面, http://magma.com/play/42#play能认出戏。
另一种方法是使用 HTTP 状态码 303 .代码 200给出关于该事物的页面的表示,代码 303 See Other给出一个额外的 URI 标识事物。 DBpedia 使用此方法:
  • http://dbpedia.org/resource/The_Lord_of_the_Rings代表小说
  • http://dbpedia.org/page/The_Lord_of_the_Rings代表关于小说的页面
    (对应于 http://dbpedia.org/data/The_Lord_of_the_Rings 用于机器)

  • Choosing between 303 and Hash .
    现在,当使用 RDFa 时,您可以对页面本身和页面所代表的事物进行声明。只需使用相应的 URI 作为主题(例如,通过使用 resource attribute )。
    所以让我们说 http://magma.com/#magma代表剧团。现在,您可以在每个页面(/contact、/play/、...)上使用此 URI 来对组进行声明。引用组。
    <div resource="http://magma.com/#magma">
    <span property="ex:name">Magma</span>
    </div>

    <div resource="http://magma.com/">
    <span property="ex:name">Website of Magma</span>
    </div>

    关于semantic-web - 向网站添加语义的最佳实践,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16000064/

    26 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com