But now think of your expansions to this.
Next week, you want to add a tracker to see how many lessons each student is cancelling.
<$list filter="tag[lesson]get[student]unique[]sort[]" variable="student">
<!-- do something with `<$list filter="[tag[lesson]student<student>lesson-status[no]]">` -->
</$list>
And soon after you want to incorporate a lesson calendar. You just use something like
<!-- with "date" given by some calendar plugin -->
<$list filter="[tag[lesson]lesson-date<date>sort[time]]" variable="lesson"> <!-- need to add `time` field -->
<% if [<lesson>lesson-status[no]] %>
<<display-cancelled-lesson>>
<% else %>
<<display-lesson>>
</$list>
And you can do so much more with these filters. Could you do it with your single title? Probably, but only with great difficulty, and with wikitext much harder to understand.
You also would probably need only the tag “lesson”; the rest are redundant and distracting. I see you use a month tag (2025-09). You could use the lesson-date field for the same sort of querying:
<!-- `month` looks like `2025-09` -->
[tag[lesson]] :filter[get[lesson-date]prefix<month>]
But if you used it extensively, there’s nothing to say you can’t have month and day fields instead, or year, month, and day ones. Any complex querying that might entail can easily be wrapped in functions.
That’s why we recommend fairly atomic fields.