在AWS Neptune上使用外部本体

0

【以下的问题经过翻译处理】 你好,

我试图在 Neptune 中使用外部本体,但它们无法加载到图中。例如,当我使用 skos:http://www.w3.org/2004/02/skos/core# 时,它不会将这些本体加载到 Neptune 中。是否有一种将这些外部本体加载到 Neptune 中的方法,或者我必须手动将它们下载到 S3 存储桶中,并从那里将它们加载到 Neptune 实例中。

谢谢,

Justin

编辑:jtrugman,于2020年2月18日下午2:23编辑。

profile picture
EXPERTE
gefragt vor 5 Monaten21 Aufrufe
1 Antwort
0

【以下的回答经过翻译处理】 简短的答案是您需要使用 SPARQL Update LOAD 来将外部本体加载到 Neptune 中,类似于以下内容:

LOAD <http://www.w3.org/1999/02/22-rdf-syntax-ns#>

但是需要考虑几个注释/细节:

您必须“打洞”,以便 Neptune 可以从您的 VPC 中访问。使用 NAT 网关来完成此操作。此文档很有帮助: https://aws.amazon.com/premiumsupport/knowledge-center/internet-access-lambda-function/

此外,请注意 Neptune 使用 HTTP 内容协商以获取正确格式的 RDF 内容。请参阅此文件(“SPARQL UPDATE LOAD 可导入的媒体类型”部分):https://docs.aws.amazon.com/neptune/latest/userguide/sparql-media-type-support.html

一些外部本体可能不是“可协商内容”的,而是外部服务器使用一些 HTTP 重定向代码来通知客户端实际的 RDF 内容在哪里。Neptune 无法处理这些情况,因此您可能需要测试(例如,使用 curl)外部服务器的实际响应方式。我相信,例如 skos 就是这样设置的。

profile picture
EXPERTE
beantwortet vor 5 Monaten

Du bist nicht angemeldet. Anmelden um eine Antwort zu veröffentlichen.

Eine gute Antwort beantwortet die Frage klar, gibt konstruktives Feedback und fördert die berufliche Weiterentwicklung des Fragenstellers.

Richtlinien für die Beantwortung von Fragen