I've been finding that the way we can implement theme("box") doesn't allow for the best semantic markup of section titles. Specifically, it only gives us the ability to give the $subject of a box one type of wrapper, e.g. <b> or <h2> or whatever you indicate in your theme -- I reserve <h1> for the site title, by the way. It would be nice if we were able to indicate that a $subject should be an h2, h3, etc. in our specific modules. What I'm wanting is for the titles of pages to have a higher heading, e.g. h2, so that subordinate sections of pages can then use the default box with h3 or whatever heading you pass in the box function.

For instance, say I modify the box function in my theme:

function box($subject, $content, $region = "main", $headtype = "null") {
  if ($headtype == "null") {
    print "<b>$subject</b><br />\n";
  } else {
    print "<$headtype>$subject</$headtype>\n";   
  }
  print $content;
  print "<br />\n";
}

Then I can change all my modules so that the _page functions put out the title of the page with an h2 tag, e.g.

theme("box", t("User account"), user_menu(), "", "h2");

and all other boxes, e.g. blocks and lower level boxes can use a lower level heading or bold tags or something. This is what I'm doing on this new blog I'm playing with and it seems to give me better page headings across the site. Any opinions on this issue?