Snapquery/MetaQueries

From BITPlan cr Wiki
Jump to navigation Jump to search

https://snapquery.bitplan.com/docs has the available API

Scholia Jinja For Loops Example

RESTFul

curl -X 'GET' \
  'https://snapquery.bitplan.com/api/meta_query/scholia_jinja_for_loops' \
  -H 'accept: application/json'
[
  {
    "count(*)": 28,
    "for_loop_content": " q in qs %"
  },
  {
    "count(*)": 1,
    "for_loop_content": " q1 in qs %"
  },
  {
    "count(*)": 1,
    "for_loop_content": " doi in dois %"
  },
  {
    "count(*)": 1,
    "for_loop_content": " day in range(-32, 1) %"
  }
]

Format selection with dot convention

https://snapquery.bitplan.com/api/meta_query/scholia_jinja_for_loops.mediawiki

query

SELECT
  count(*),
  substr(
    sparql,
    instr(sparql, '{% for') + length('{% for'),  -- Start position right after "{% for"
    instr(substr(sparql, instr(sparql, '{% for')), '%}') - length('{% for')  -- Length of substring
  ) as for_loop_content
FROM
  NamedQuery
WHERE
  sparql LIKE '%{% for%' ESCAPE '\' and for_loop_content like "%in%"
group by for_loop_content
order by 1 desc


result

count(*) for_loop_content
28 q in qs %
1 q1 in qs %
1 doi in dois %
1 day in range(-32, 1) %