One way, without any error checks, could be:
```dataviewjs
dv.list(dv.pages('"_inbox"')
.flatMap(p => p.file.lists)
.where( i => i.tags.contains("#to/research") )
.map(i => new ListPairWidget(i.link, i.text)))
```
Note however that compared to the tasks queries above this would link to just the file, and not the exact line of the task. This can be a little better using either i.section or i.header in that last line, but it’ll still not go directly to the exact line.
From my point of view I also see that DQL queries are somewhat easier to get started with, while doing the DVJS (or dataviewjs queries) requires more knowledge of javascript and require a lot more fiddling about to get them correct. They’re more powerful in some ways, but that do require even more coding knowledge.
Another markup, see here for more information, is to use task decorations, and mark these up as ideas, using something like:
- [I] An idea
- [I] A second idea
- [I] a third idea
And then use a query like:
```dataview
TASK WHERE status = "I"
```
To get this output (if using the Minimal theme):
