The filename attribute of the location for a string to be translated only
includes the basename of the source file, with leading directory components
removed. If the translation files and the source files are not in the same
directory, linguist is unable to show the UI form or python file for the
translator. For a large application, it is not uncommon to organize files so
that i18n files are in their own subdirectory.
Note that the Qt lupdate tool provides a '-locations' switch to customize this
behavior. Although the lupdate man page claims the default behavior is to use
'absolute' paths, it actually provides 'relative' paths (at least in Ubuntu's
4.7.2 package). This is actually a far more useful mode of operation.