SKOS(语义Web)的Haskell数据结构

SKOS(语义Web)的Haskell数据结构,第1张

概述介绍 我正在编写haskell中的语义Web应用程序. 使用hsparql http://hackage.haskell.org/package/hsparql,我可以访问我的Tripple商店.目前我使用http://4store.org/(主要是因为它易于安装).我使用snap http://snapframework.com/进行servlet编程(Yesod非常酷!!). 目前,我使用SK 介绍

我正在编写haskell中的语义Web应用程序.

使用hsparql http://hackage.haskell.org/package/hsparql,我可以访问我的Tripple商店.目前我使用http://4store.org/(主要是因为它易于安装).我使用snap http://snapframework.com/进行servlet编程(Yesod非常酷!!).

目前,我使用SKOS来表示RDF中的书签类别.

关于SKOS的链接:

> http://www.w3.org/TR/skos-reference/
> http://www.athenaeurope.org/athenawiki/index.php/SKOS

基本上,Skos概念是一个类别.它有一个URL(作为一种ID)
和一个标签.进一步的Skos Concepts可以有子概念,定义为“更广泛”
和“更窄”.

例如,在我的书签中有SKOS概念“所有书签”,带有子概念
“哈斯克尔书签”.这两个概念都有一个URL(例如ID)和一个Label.
“haskell书签”也有一个关系,即更广泛的概念是“所有书签”.

我的问题

我需要一个针对SKOS的haskell数据结构.

我现在的是:

-- Type Aliases.type Url = Stringtype Label = String-- Date Structure.data SkosConcept = SkosConcept {      url :: Url,label :: Label,subConcepts :: [SkosConcept]    } deriving (Show)

我认为这不是一个好方法,但我不知道更好的方法.

此外,将来数据结构需要扩展到多个标签,
以及存储相关概念的方法,……

一些概念也可能没有任何子概念.

关于如何改进数据结构或“做对”的任何指示?

=====编辑:======

问题是skos概念可能有多个更广泛的skos概念.
因此,我的“haskell书签”可以有两个更广泛的skos概念(例如类别),名为“编程书签”和“我的重要书签”.

我现在能想到的唯一解决方案是使用:

> skos概念“更广泛”关系的有向图
>二进制关系“更广泛”(但我不知道是否有良好的haskell支持)
>没有中间数据结构,我的所有函数都在查询RDF Tripple Store

解决方法 与其试图直接存储双向结构,为什么不使用标准的Graph方法,并存储包含这两组概念的元组,并包含概念之间的关系集?

cf:http://hackage.haskell.org/package/fgl

总结

以上是内存溢出为你收集整理的SKOS(语义Web)的Haskell数据结构全部内容,希望文章能够帮你解决SKOS(语义Web)的Haskell数据结构所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/1054050.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-25
下一篇 2022-05-25

发表评论

登录后才能评论

评论列表(0条)

保存