2015-07-08 2 views
1

Я пытаюсь получить все синонимы для анатомических терминов из MeSH от NCBI, но кажется, что термины уровня low (est?) Опущены.Максимальная глубина или макс возвращенные строки из рекурсивного SPARQL?

«NK клетка», безусловно, является синоним «киллеры, Natural», http://purl.bioontology.org/ontology/MESH/D007694, который является потомком MeSH «Анатомия Категории» http://purl.bioontology.org/ontology/MESH/U000002

http://www.ncbi.nlm.nih.gov/mesh/68007694

Я загрузил тройки из http://bioportal.bioontology.org/ontologies/MESH на сервер Virtuoso в AWS/EC2.

"NK клетки" не появляется в запросе всех подклассов из сетки: U000002:

PREFIX mesh: <http://purl.bioontology.org/ontology/MESH/> 
PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#> 
PREFIX skos: <http://www.w3.org/2004/02/skos/core#> 
select ?s ?o where { 
    ?s skos:altLabel ?o 
    { select ?s 
    where { 
      { ?s rdfs:subClassOf* mesh:U000002 } . 
     } 
    } 
} 

Может ли быть

  • некоторые ограничения рекурсии или макс # строк лимиты в виртуозе?
  • Что-то особенное в отношении MeSH?

«NK клетки» появляется в запросе, начиная только один уровень ниже «клетки», http://purl.bioontology.org/ontology/MESH/D002477.

PREFIX mesh: <http://purl.bioontology.org/ontology/MESH/> 
PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#> 
PREFIX skos: <http://www.w3.org/2004/02/skos/core#> 
select ?s ?o where { 
    ?s skos:altLabel ?o 
    { select ?s 
    where { 
      { ?s rdfs:subClassOf* mesh:D002477 } . 
     } 
    } 
} 

ответ

2

Я увеличил ResultSetMaxRows в разделе [SPARQL] из virtuoso.ini от 10000 до 100000.

Мой запрос для всех анатомических синонимов теперь длиной около 35000 строк и включает в себя «NK клетки»

Там были несколько virtuoso.ini файлов в моей системе. Я редактировал /opt/virtuoso-opensource/var/lib/virtuoso/db/virtuoso.ini