我希望建立一个使用RDF数据库(目前正在考虑AllegroGraph)的网站,并试图弄清楚如何构建URL和数据本身。以下是正确的方法吗?任何指导都将非常感谢!
- 定义 -
参考'全球'RDF定义:
@prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> .
@prefix foaf: <http://xmlns.com/foaf/0.1/> .
参考我的网站特定定义:
@prefix r: <http://www.simpsons.com/relationships/#> .
例如
http://www.simpsons.com/relationships/#parent
加载描述父定义的页面以及指向母亲/父亲的子类型的超链接例如
http://www.simpsons.com/relationships/#son
加载一个描述儿子是什么的页面
@prefix p: <http://www.simpsons.com/people/#> .
例如
http://www.simpsons.com/people/#Lisa
加载包含该人的传记和照片的页面
@prefix f: <http://www.simpsons.com/features/#> .
例如
http://www.simpsons.com/features/#hair
加载描述物理特征和子类型的页面
@prefix pro: <http://www.simpsons.com/professions/#>
。
例如
http://www.simpsons.com/professions/bar-tender
加载描述专业的页面
- DATA TRIPLES -
p:"#Homer"
foaf:name "Homer Simpson" ;
r:husband p:"Marge Simpson" ;
r:parent p:"Bart Simpson" ;
f:hair "2 hairs";
foaf:title pro:"Nucleur safety inspector" .
p:"#Bart"
foaf:name [rdf:Alt; rdf:_1 "Bart Simpson"; rdf:_2 "Boy"] ;
r:"Son" p:"#Homer" .
答案 0 :(得分:0)
你的问题的答案非常主观,这就是为什么......
URL是用于在Web上定位资源的特定类型的标识符(URI)。正式定义可在RCF 3986中找到。这些并不特定于RDF,但非常有用,因为RDF是资源描述的格式(如名称中所述):用于本地化所描述资源的实用解决方案。
首先,URL是作为RDF文档组件之前Web的组件。
<强>不透明度强>
在评论中提到了URL的不透明度问题。这是Tim Berners Lee于1996年在design issues of the Web作为个人观点首次提出的想法。
section 2.5. URI Opacity中的WorlWideWeb Volume One 文档的W3C 架构中提供了对该点的更正式定义。由于URL是URI(c.f。RFC 3968),这意味着不应使用URL的内容来确定资源的任何功能:
通过检查标识资源的URI来猜测资源的性质是很诱人的。但是,Web的设计使代理通过表示而不是标识符来传达资源信息状态。通常,通过检查该资源的URI,无法确定资源表示的类型。例如,“http://example.com/page.html”末尾的“.html”不保证所识别资源的表示将与Internet媒体类型“text / html”一起提供。
<强>层次强>
关于要关注的URL的组织以及不透明点,有一点是:这是URL的结构。
回到定义,您将在section 3 of the RFC 3986中找到URI的语法模型(以及URL的专业化)。这里定义了URI的组件。我们应该注意一个特定的组件:路径。
section 3.3中提供了有关路径组织的详细信息:
路径组件包含通常以分层形式组织的数据,与非分层查询组件(第3.4节)中的数据一起用于标识URI方案和命名权限范围内的资源(如果有的话) )。
此处明确说明了层次结构。
<强>结论强>
很容易得出结论,URL应该没有实际意义,但这是非常主观的(我个人的观点在这里:我们不应该忘记Web是人类用户的第一位)。资源层次是一个需要考虑的重要方面。除此之外,一个微妙的问题是它与不透明度的关系。 Roy {a mail exchange中的罗伊菲尔丁认为,不透明只适用于客户,这使事情变得非常简单。这符合WorlWideWeb Volume One 文档的架构的条款(上面引用的文字)。
层次结构是一种特定的关系,语义接受真正丰富的各种关系。以下是您在考虑数据结构时应该考虑的事项。
简而言之,这更像是RESTful architecture的问题,而不是语义问题。有关该点的更多详细信息,请参阅section on the topic in the microformats website。