Asignación de Doctrine2: 2 campos asignados a un campo (ManyToOne)

Tengo 2 entidades, a saber partido y equipo. Un equipo puede tener una o varias partidas. Sin embargo, mi entidad Match coincide con 2 campos que hacen referencia a la misma entidad, Team. Son $ homeTeam y $ awayTeam. ¿Cómo hago referencia al mismo campo en Equipo, $ coincidencias, como una relación bidireccional?

Mi código actual que no funciona está abajo:

Mi entidad coincidente:

/**
 * @ORM\Entity
 * @ORM\Table(name="match")
 **/
class Match {

    /**
     * @ORM\ManyToOne(targetEntity="Team", inversedBy="matches")
     * @ORM\JoinColumn(name="home_team_id", referencedColumnName="id")
     * **/
    protected $homeTeam;

    /**
     * @ORM\ManyToOne(targetEntity="Team", inversedBy="matches")
     * @ORM\JoinColumn(name="away_team_id", referencedColumnName="id")
     * **/
    protected $awayTeam;

Mi entidad del equipo (¿incorrecto supongo?):

/**
 * @ORM\Entity
 * @ORM\Table(name="team")
 * **/
class Team {

    /** @ORM\OneToMany(targetEntity="Match", mappedBy="homeTeam", mappedBy="awayTeam") **/
    protected $matches;

Respuestas a la pregunta(1)

Su respuesta a la pregunta