The first [head_bullet] contains data but the second [head_bullet] does not. So how do you display the first one but prevent the second one from displaying? In the XSL the template has a [li] in order to display an actual bullet in front of the [head_bullet] data.
In your original question, you asked, "So how do you display the first one but prevent the second one from displaying?" There are lots of ways to make use of the select pattern I posted, depending on your stylesheet. If you have a template for report, you could process all the head_bullets with content with (xsl:apply-templates select="head_bullet[node()]"/>). I'll leave any more xsl questions you have to peer support.