jackwener/OpenCLI · warning · EmptyResultError
No dblp venues matched "${query}".
Error message
No dblp venues matched "${query}". What it means
An EmptyResultError raised by the dblp venue command when the venue search API returned HTTP/API 200 but zero hits for the query. It signals a successful search with no matching venues — not a network or API failure.
Source
Thrown at clis/dblp/venue.js:60
access: 'read',
description: 'Search dblp venue registry (conferences / journals) by name or acronym',
domain: 'dblp.org',
strategy: Strategy.PUBLIC,
browser: false,
args: [
{ name: 'query', positional: true, required: true, help: 'Venue name or acronym (e.g. "ICLR", "neural networks")' },
{ name: 'limit', type: 'int', default: 20, help: 'Max venues (1-100, single dblp page)' },
],
columns: ['rank', 'acronym', 'venue', 'type', 'url'],
func: async (args) => {
const query = requireQuery(args.query);
const limit = requireBoundedInt(args.limit, 20, 100);
const path = `/search/venue/api?q=${encodeURIComponent(query)}&format=json&h=${limit}`;
const json = await dblpFetchJson(path, 'dblp venue');
const hits = json?.result?.hits?.hit;
const list = Array.isArray(hits) ? hits : [];
if (list.length === 0) {
throw new EmptyResultError('dblp venue', `No dblp venues matched "${query}".`);
}
return list.slice(0, limit).map((hit, i) => venueHitToRow(hit, i + 1));
},
});
View on GitHub (pinned to 49907e53dc)
Solutions
- Broaden the query — try a shorter or alternate spelling of the venue name
- Check dblp's canonical venue name in a browser at the same search URL
- Try the acronym dblp uses (e.g. 'CVPR', 'ICML') instead of the full name
- If the venue truly has no dblp entry, search publications instead of venues
Example fix
// before
const json = await dblpFetchJson('/search/venue/api?q=' + encodeURIComponent('Neural Information Processing Systems Conference'), 'dblp venue'); // 0 hits
// after
const json = await dblpFetchJson('/search/venue/api?q=' + encodeURIComponent('NeurIPS'), 'dblp venue'); Defensive patterns
Strategy: fallback
Validate before calling
const q = query.trim();
if (!q) throw new Error('Venue query must be non-empty');
// No pre-call check can guarantee hits; only the response can.
const json = await dblpFetchJson(`/search/venue/api?q=${encodeURIComponent(q)}&format=json&h=${limit}`, 'dblp venue'); Type guard
function hasHits(body) { return Array.isArray(body?.result?.hits?.hit) && body.result.hits.hit.length > 0; } Try / catch
try {
const venues = await dblpVenueSearch(query);
} catch (err) {
if (err instanceof EmptyResultError || /No dblp venues matched/.test(err.message)) {
console.info('No venues matched; try an acronym (e.g. NeurIPS) or a shorter query.');
return [];
}
throw err;
} Prevention
- Prefer dblp's canonical venue names/acronyms over full formal names
- Broaden the query (fewer words) when zero hits return
- Check the same query in a browser to confirm dblp has the venue
- Fall back to publication search when the venue is not indexed
When it happens
Trigger: GET /search/venue/api?q=<query> returns 200 with result.hits.hit absent or an empty list — the venue name is misspelled, too specific, or dblp has no venue matching it.
Common situations: Misspelled or abbreviated venue names (e.g. 'NeurIPS' vs dblp's 'NeurIPS' variants); searching a workshop or journal dblp indexes under a different name; extremely niche venues not in dblp.
Related errors
- No dblp author matched "${name}". Try a different spelling,
- No publications matched "${query}".
- weread search: No books were returned for query ${args.query
- No 12306 stations match "${keyword}"
- ${label}
AI-assisted analysis of jackwener/OpenCLI@49907e53dc (2026-08-29).
Data as JSON: /api/errors/eaddc98228ca0156.
Report an issue: GitHub.