Web services REST/HATEOAS微格式/FOAF/Schema特定于域的混淆

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、

在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 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>