A text message is first parsed into its constituent semantic components such
as
header fields and body components. Then, different compression methods may be performed
on each semantic component depending on the importance of the semantic component,
the context of the semantic component, the characteristics of the semantic component,
and whether or not the semantic component uses natural language expressions. For
example, it is determined what compression method, if any, is to be performed on
the semantic component. Each semantic component may be compressed individually.
Since text compression takes the unique features of each semantic component into
consideration rather than considering the text message as a monolithic text unit,
a more intuitive text compression results.