C'est un élément ambigu parmi d'autres de la nouvelle norme HTML5 : hgroup semble ne pas vouloir se dévoiler.

Si on lit la spécification officielle du W3C (en last call for comment actuellement), on reste un peu sur notre faim :

The hgroup element represents the heading of a section. The element is used to group a set of h1-h6 elements when the heading has multiple levels, such as subheadings, alternative titles, or taglines.

For the purposes of document summaries, outlines, and the like, the text of hgroup elements is defined to be the text of the highest ranked h1-h6 element descendant of the hgroup element, if there are any such elements, and the first such element if there are multiple elements with that rank. If there are no such elements, then the text of the hgroup element is the empty string.

— W3C

Autrement dit, hgroup ne permet pas de faire des tables des matières, mais au contraire d'aider à leur création !
Un minimum d'explications s'impose…

Actuellement, un document HTML sémantique comporte des balises titres : de h1 à h6, h1 indiquant le titre de la page, h2 un sous-titre, et ainsi de suite1.
Enfin, ça c'était dans l'« ancien » modèle xHTML / HTML4, puisque maintenant on peut avoir plusieurs h1 dans un même document sans confusion grâce à l'introduction des éléments article et section. Mais je m'égare.

Donc, à quoi sert un hgroup ? En analysant le terme, on peut penser qu'on va mettre dedans des suites de titres ; par exemple une table des matières :

Table des matières :

La vie des castors

Introduction

Remerciements

Présentation des castors

L'habitat des castors

La rivière

Les pneus de camion

En fait non. Il faut lire attentivement le deuxième paragraphe de la spécification :

For the purposes of document summaries, outlines, and the like, the text of hgroup elements is defined to be the text of the highest ranked h1-h6 element descendant of the hgroup element.

— W3C

Et finalement, le but devient clair : hgroup permet de mettre des éléments ensemble lorsqu'ils n'ont pas une valeur hiérarchique, mais additive. Mais quel intérêt, me direz-vous ? Les h1~6 sont des éléments pour des titres, un point c'est tout ! On n'a pas à les utiliser autrement !
Vous avez raison, mais vous ne raisonnez pas globalement.
D'ailleurs, je parie que vous utilisez déjà les h1 et h2 dans vos sites sans valeur hiérarchique :

La vie des castors

...ou la passionnante aventure d'une espèce en danger

Et c'est là que vient se placer hgroup.
Si vous utilisez un outil pour générer automatiquement une table des matières (ici par exemple), le hgroup permet de dire « seul le premier élément compte pour établir la structure, le second n'a qu'une valeur de sous titre direct ».
Si on lit la norme plus attentivement, on voit que ce n'est pas forcément le premier élément ; juste celui de plus haut niveau.
Vous pouvez donc écrire le code suivant :

La vie des castors

...ou la passionnante aventure d'une espèce en danger

Introduction

Remerciements

Ce projet n'aurait pas vu le jour sans eux !

Présentation des castors

L'habitat des castors

Leur habitat principal :

La rivière

Les pneus de camion

Et un logiciel sémantique de création de table des matières (comme the outliner) affichera la table des matières suivantes :

  1. La vie des castors
    1. Introduction
      1. Remerciements
    2. Présentation des castors
    3. L'habitat des castors
      1. La rivière
      2. Les pneus de camion

Alors qu'un logiciel à l'ancienne ne distinguera pas les hx à valeur non-hiérarchique :

  1. La vie des castors
    1. ...ou la passionnante aventure d'une espèce en danger
    2. Introduction
      1. Remerciements
        1. Ce projet n'aurait pas vu le jour sans eux !
    3. Présentation des castors
    4. L'habitat des castors
      1. Leur habitat principal :
      2. La rivière
      3. Les pneus de camion

Bref, une balise qui va devenir utile avec le temps ! Et qui ouvre une nouvelle branche de recherche dans le CSS : l'utilisation de counter tenant compte des hgroup. Bon courage :)


  1. 1 ? Pourquoi s'arrêter à h6 ? Voilà une question intéressante.