У меня есть список экземпляров следующим образом.
myinstances = ['word2vec', 'tf-idf', 'dijkstra's algorithm']
Для каждого myinstance
в приведенном выше списке я хочу найти:
1. What are the other instances of `myinstance`'s category (i.e. only one hop)
2. What are the instances of `myinstance`'s category's category (i.e. two hops)
Например, если мырассмотрим myinstance = word2vec
Какие другие экземпляры категории myinstance
(т.е. только один прыжок)?Как показано на рисунке ниже, другими экземплярами его непосредственного предка является GloVe.![enter image description here](https://i.stack.imgur.com/TDqtA.png)
Каковы примеры категории категории myinstance
(т.е. два прыжка)?Другими словами, каковы примеры embedding
(что в двух прыжках от word2vec
), как показано на рисунке ниже.
![enter image description here](https://i.stack.imgur.com/jTdqf.png)
Мне просто интересно, можно ли выполнять такие запросы в sparql?
Мой текущий код выглядит следующим образом.
SELECT * {
VALUES ?searchTerm { "word2vec" "tf-idf" "dijkstra's algorithm" }
SERVICE wikibase:mwapi {
bd:serviceParam wikibase:api "EntitySearch".
bd:serviceParam wikibase:endpoint "www.wikidata.org".
bd:serviceParam wikibase:limit 1 .
bd:serviceParam mwapi:search ?searchTerm.
bd:serviceParam mwapi:language "en".
?item wikibase:apiOutputItem mwapi:item.
?num wikibase:apiOrdinal true.
}
?item (wdt:P279|wdt:P31) ?type
}
Я с удовольствием предоставлю более подробную информацию, еслинеобходимо.