Drupal compared to TEI
The Text Encoding Initiative (TEI) guidelines have long been used for creating digital critical editions, for general text encoding, and for textual annotation. If your primary goal is to publish texts that include rich, contentful annotation of the text (rather than annotation as commentary, which is a better match for the CommentPress plugin for Wordpress, described above), there is a long track record of doing that kind of work using TEI. Recent developments such as the TAPAS Project make it much easier to publish that kind of work online by providing hosted infrastructure for TEI XML, as well as XSLT stylesheets that can display TEI in a meaningful way.
There are also projects that could be implemented using TEI, such as encoding historical financial records, but where doing so would be more time-consuming than using another approach. Drupal may be a good option in those cases; if a user creates content types whose granularity maps well onto the conventions used for TEI-encoded historical financial records, they could transcribe data into Drupal, export it as generic XML, and write XSLT to transform the Drupal export into valid TEI, while still saving time compared to doing the project natively in TEI.
For projects that don’t focus on rich, contentful textual annotation, TEI is generally a poor fit. Luckily, projects that include but are not limited to TEI-encoding texts can take advantage of content management systems. TEI Boilerplate and TEIDisplay enable the display of TEI documents in Omeka, and the TEICHI Drupal module allows users to display, search and download TEI Lite documents in Drupal. (See “TEI and the Tools Paradox: Developing a Publishing Framework for Digital Editions” by Sebastian Pape, Christof Schöch, and Lutz Wegner in the Journal of the TEI for implementation details of TEICHI.)
See also Using TEI with Drupal.