Web services REST/HATEOAS微格式/FOAF/Schema特定于域的混淆
在RESTful服务中,您可以定义指向资源的链接,如下所示:Web services REST/HATEOAS微格式/FOAF/Schema特定于域的混淆,web-services,api,rest,rdf,hateoas,Web Services,Api,Rest,Rdf,Hateoas,在RESTful服务中,您可以定义指向资源的链接,如下所示: 或JSON-LD示例: { “@context”:{ “名称”:http://xmlns.com/foaf/0.1/name", “主页”:{ “@id”:”http://xmlns.com/foaf/0.1/homepage", @type:“@id” } }, “名称”:“Manu Sporny”, “主页”:http://manu.sporny.org/" } 或vCard示例: 、www.schema.org/name、
或JSON-LD示例:
{
“@context”:{
“名称”:http://xmlns.com/foaf/0.1/name",
“主页”:{
“@id”:”http://xmlns.com/foaf/0.1/homepage",
@type:“@id”
}
},
“名称”:“Manu Sporny”,
“主页”:http://manu.sporny.org/"
}
或vCard示例:
、www.schema.org/name、json schema等。我什么时候创建自己的微格式/模式,什么时候使用在这些不同区域(vCards、hcards、foaf、productontology、schema.org)中定义的公共格式?我知道RDFa、微格式等实际上是关于数据的公共元数据,但我在哪里可以找到它们的完整列表
如果我要创建自己的rel,比如rel=”http://mydomain.example.org/user“
,定义用户对象,我应该如何记录它?有什么标准我可以遵循吗?有些地方建议使用人类可读的发现文档,或者在该位置使用JSON/XML模式来描述契约和版本
一个建议是使用不同版本的服务规范与不同版本的进行对话,这样现有客户机就不会因版本更改而中断
请帮助我找出这种混淆,或者我应该使用的关于微格式、RDF、微数据、模式等的术语。当我刚开始学习RDF/Ontology时,我也有同样的混淆。
有很多来自不同组织的歌手。关键是要使用那些已经确立并被其他人采用的方法;但更重要的是,确保使用代表您想要表达的“语义”的“术语”。
要回答您的具体问题:
1) 您“可以”创建自己的术语,但关键是当其他应用程序解析您的术语时,应用程序需要知道您的术语的真正含义。如果您使用FOAF:homepage,那么所有应用程序都知道它的语义和它所指的内容,并且从中可以看出,无论谁是FOAF:homepage的主题(rdf三元组中的主题),都是FOAF:Person。开放式链接数据就是其中之一。
2) 我自己对RDFa/Microfromat没有太多经验,我的理解是这些技术希望在HTML层提供机器可理解的语义术语。我认为,如果存在现有的术语,您可能不想创建自己的术语,但您可以在现有术语之外定义自己的术语
3) 您可以使用OWL或RDFS定义术语
刚看到这个,可能有用。。
但在我的light way项目中,我们只是通过指定名称空间、术语名称及其含义来创建术语。。您可以按照以下步骤定义术语:
JSON/XML/N3…只是不同的序列化格式,同一术语可以使用许多不同的格式进行序列化。需要记住的重要一点是,您定义了术语的语义,它们将被序列化为不同的格式。并非格式不重要,而是所有格式都指向相同的术语和相同的含义
4) 我自己的声音。。但我对最佳实践没有太多见解
希望这有帮助 这在RDFa中有一个众所周知的表达:
<html><body vocab="http://purl.org/dc/terms/">
<div typeof="foaf:Person">
<span property="creator">manu sporny</span>
<span property="foaf:age" content="66"/>
<span property="foaf:homepage" resource="http://x.com"/>
</div>
</body></html>
马努斯波尼
RDFa默认使用“foaf”前缀。没有上下文可定义。
“dc”前缀为默认值,“创建者”不需要前缀
这是标准,别管别的了
可直接使用的前缀列表由提供
您可以在这里找到许多有用的概念,实际上是所有公共模式
请注意此处定义的词汇表的“schema”前缀:
它特别丰富,用途广泛。
还请注意,它试图定义一个微格式来与RDFa表示法竞争。放下它,将词汇表与RDFa一起使用 是的,我把我的头绕在它周围,谢谢你的链接。。。我想我会有更多的阅读要做。我发现这个网站上的答案很有用
<html><body vocab="http://purl.org/dc/terms/">
<div typeof="foaf:Person">
<span property="creator">manu sporny</span>
<span property="foaf:age" content="66"/>
<span property="foaf:homepage" resource="http://x.com"/>
</div>
</body></html>