How to list contents of a document as plain text

I want to list the top 5 items of a plain list from another document as plain text.

My reading list document:

  • Book 1 - Author
  • Book 2 - Author
  • Book 3 - Author
  • Book 4 - Author
  • Book 5 - Author
  • Book 6 - Author

What I’m trying to do

Im trying to list these books inside of a callout.

> [!important]+ Books
> - Book 1 - Author
> - Book 2 - Author
> - Book 3 - Author
> - Book 4 - Author
> - Book 5 - Author

They need to be limited to the top 5 points of the list.

Is this something thats possible? I suspect my solution is DataviewJS but I dont know much about it.

Things I have tried

I tried a tonn of dataviewJS codeblocks from reddit but non of them seem to do what I need. I also tried ![[my reading list]] as an option but that shows the header and is not limited to 5 items.

Given the book list is first (or only) list in a note named “Reading list”, this Dataview query (in a callout) returns the first five:

> [!important]+ Books
> 
> ```dataview
> TABLE WITHOUT ID topFive
> FROM "Reading list"
> FLATTEN file.lists.text AS topFive
> LIMIT 5
> ```

If it’s not the first list in the note, then is there something that distinguishes the book list from other lists? For example, it’s under a specific heading, the books are tagged inline, they’re the only list items that have a “-” in their text, or something.