I was just reading an article on Slashdot about the possibility of a version of Microsoft Office for Linux and it reminded me of something I've been thinking about, off and on, for some time. It first came up whilst I was trying to learn TeX, or rather the LaTeX implmentation of TeX. I got to thinking that what I would find really useful, at work at least, would be a wordprocessor that was entirely styles based and where if you edited a style the change would be automatically propagated to everywhere that style was used (a bit like how CSS is supposed to work, although the ability to 'lock' a document to the current set of styles would be useful although this could be achieved by exporting to PDF). A big problem I've found with styles in current word processors (MS Word, OpenOffice &c) is that if you chage a stle it very often will only change it for new uses of that style, existing text in that style will remain unchanged.
A lot of companies require that all documents be produced with a set set of fonts, sizes and colours to give a corporate standard. A styles based wordprocessor would allow them to create the required styles and provide them to all employees, probably along with document templates for standard corporate documentation. When the management decided they wanted to change the corporate style they could just update the style library and redistribute it, as each document was opened the changed styles would be applied. It would save a lot of hassle having to create the styles yourself and manually change each document when the corporate styles change.
I think that this would get us closer to the intention behind Tex of just getting on with writing the document and not fussing about the look of it. I suspect that it would also help make documents more accessible for people with disabilities as it would make them more readable by automated systems, similarly it would make documents more suited to automatic processing. Styles could be semantic in nature, rather then seeing a block of text which is defined as being "bold, 22pt, Arial Black, centred" the software would see one labelled "ChapterTitle".