sparql - 时尚相关内容查询(DBpedia 或 Freebase)

标签 sparql semantic-web freebase dbpedia

我正在尝试弄清楚如何进行一些查询,通过这些查询我应该获得时尚相关的内容,例如已知布料类型、布料制造商或知名时装设计师的列表。 在过去的几天里,我一直试图弄清楚如何通过 DBpedia 或 Freebase 进行这样的查询,但我似乎无法弄清楚。我找不到与我需要的内容相匹配的示例...

有人可以帮我解决这个问题吗?一些我可以开始研究的简短示例或一些教程来解释我如何实现这样的目标?

谢谢


稍后编辑


我还发现 DBpedia 包含本体属性“dressCode”,并且我找到了这些页面:http://en.wikipedia.org/wiki/Dress_code_(Western)http://en.wikipedia.org/wiki/Dress_code其中列出了一些基本的着装要求,例如“正式”、“休闲”...... 现在我的想法是从这些子类别中的每一个中获取属性(或者它们在 DBpedia 上的定义,因为我发现它们彼此不同)。 关于如何执行此操作有什么建议吗?


稍后编辑


我已经成功地进行了一些查询,以显示一些实际上可以帮助我的信息:

SPARQL - list of social events

SELECT DISTINCT (?label as ?sub) WHERE { { ?sub skos:broader <http://dbpedia.org/resource/Category:Social_events> . ?sub rdfs:label ?label. OPTIONAL {?subsub dcterms:subject ?sub} }<br/> }

SPARQL - list of dress codes

SELECT DISTINCT (?label as ?dressCode) WHERE { { ?dressCode dcterms:subject <http://dbpedia.org/resource/Category:Dress_codes> . ?dressCode rdfs:label ?label. filter(langMatches(lang(?label),"EN")) }<br/> }

现在我想检索每个着装规范的“主题”,以便我可以以某种方式将着装规范与社交事件联系起来,但我在执行此操作时遇到了问题。


稍后编辑


我得出的结论是,我找不到真正符合我需求的本体。基本上我需要根据事件类型获取布料属性,以便我可以提出布料建议。除了事件类型的限制之外,我还想添加其他属性,例如当前的时尚趋势、事件举办的季节、地理位置(如果可能)以及其他类似的小细节。 现在我正在尝试使用 DBpedia 和 Freebase 上现有的本体和数据,例如:“着装规范”、“事件类型”、“颜色”、“时装设计师”、“ Fabric ”、“纹理”、“制造商” 、“尺寸”并将它们组合成一个本体,我可以在我的项目中实际使用它来实际提出布料建议。

任何人都可以帮助我提供一些有关如何执行此操作的指南吗?我尝试使用Protege来组合一些本体并随后对其进行扩展,但最终我未能做到这一点。

最佳答案

您可以首先开始的地方之一可能是 DBpedia ontology 。当我搜索“Fashion”这样的关键字时,我可以看到有“FashionDesigner”这样的类。因此,我可以使用 DPpedia 公共(public) SPARQL 端点,通过简单的 SPARQL 查询来检查 DPpedia 中有关时装设计师的信息,如下所示。

(a) a list of fashion designers :

select distinct ?fashionDesigner 
where {
 ?fashionDesigner a dbpedia-owl:FashionDesigner
} 
LIMIT 100

(b) what are the information generally available about a fashion designer

select distinct ?property
where {
 ?fashionDesigner a dbpedia-owl:FashionDesigner;
                  ?property ?value .

}

我还可以选择查询(a)的结果之一,例如Donna Karan看看她有什么样的信息。

所以现在,我的任务是看看谁是著名的时装设计师。我对时尚不太了解,但我看到他们中的一些人获得了奖项。这样我就可以查询得过奖的时装设计师了。

(c) Fashion designers who have won awards

   select distinct ?fashionDesigner ?award
    where {
     ?fashionDesigner a dbpedia-owl:FashionDesigner;
             dbpprop:awards ?award .
    } 

我只使用了非常基本的 SPARQL 查询,但当您更多地了解数据中与时尚相关的概念和属性时,您可以使用更复杂的查询。

您可以对 LineOfFashion 等类采用类似的方法。 , Clothing

例如 (d)a list of clothing manufactures

选择不同的?公司,其中{ ?公司 dbpedia-owl:产品 dbpedia:服装; dcterms:主题类别:Clothing_brands 。 } 限制 100

您探索得越多,您就可以构建更好的查询。我希望这能帮助您入门。

关于sparql - 时尚相关内容查询(DBpedia 或 Freebase),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28124346/

相关文章:

c# - 如何获取 dbpedia 中的所有类别?

sparql - 如何列出自定义 Wikibase 实例上的所有属性

rdf - 在现实世界的应用程序中使用语义Web技术的示例

sparql - 如何在 SPARQL 查询(联合)中引用不同的存储库?

php - 在 Freebase 中检索/存储所有相关的 Actor

python - 当查询结果超过一定数量时,Freebase + GoogleAPI 查询返回错误

regex - SPARQL REPLACE 反向引用语法 $ 或反斜杠?

java - Virtuoso Jena 提供程序查询别名语法

xml - OWL、RDF、RDFa、Dublin Core 和 FOAF 之间有什么关系?

seo - 让我的信息显示在 Google 知识图谱中