Drush alias - @alias status could not be found Problem

I'm trying to create a drush alias following the excellent example posted here.

EXAMPLE:

$aliases['dev'] = array(
   'root' =&gt; '/path/to/drupal',
   'uri' =&gt; 'dev.mydrupalsite.com',
 );


MINE:

&lt;?php
$aliases['main'] = array(
    'root' =&gt; '/srv/www/mysite/public',
    'uri' =&gt; 'main.mysite.net',
  );
?&gt;


According to the example the following two commands are equivalent:

 $ drush @dev status
 $ drush --root=/path/to/drupal --uri=dev.mydrupalsite.com status


And if I run:

$ drush --root=/srv/www/mysite/public --uri=main.mysite.net status


I get a full report. But if I run

 $ drush @main status


I get the error @main status could not be found. 

The alias file has been discovered, running drush status in the drupal root shows it has been found. It's ~/.drush/mysite.net.alias.drushrc.php. What have I done wrong?
The filename pattern mysite.net.alias.drushrc.php will only be parsed for aliases named @mysite.net.  Rename this file to mysite.net.aliases.drushrc.php, and you'll be fine.