Only single properties can be saved
<p>I have the following "User" class:</p>

<pre><code>&lt;?php

use GraphAware\Neo4j\OGM\Annotations as OGM;

/**
 * @OGM\Node(label="User")
 */

class User {
    /**
     * @OGM\GraphID
     * @var int
     */
    protected $id;

    /**
     * @OGM\Property(type="string")
     * @var string
     */
    protected $username;

    /*
     * @OGM\Property(type="string")
     * @var string
     */
    protected $password;

    /*
     * @param string $username
     * @param string $password
     */
    public function __construct($username, $password) {
        $this-&gt;username = $username;
        $this-&gt;password = $password;
    }

    /*
     * @return string
     */
    public function getUsername() {
        return $this-&gt;username;
    }

    /*
     * @return string
     */
    public function getPassword() {
        return $this-&gt;password;
    }

    /*
     * @param string $password
     */
    public function setPassword($password) {
        $this-&gt;password = $password;
    }
}
</code></pre>

<p>I'm trying to work with it, as shown:</p>

<pre><code>&gt;&gt;&gt; require_once 'User.php'
=&gt; 1
&gt;&gt;&gt; use GraphAware\Neo4j\OGM\EntityManager;
=&gt; null
&gt;&gt;&gt; $manager = EntityManager::create('http://neo4j:superstrongpassword@localhost:7474');
=&gt; GraphAware\Neo4j\OGM\EntityManager {#171
     +"annotationDriver": GraphAware\Neo4j\OGM\Mapping\AnnotationDriver {#178},
   }
&gt;&gt;&gt; $x = new User('foo', 'bar');
=&gt; User {#217}
&gt;&gt;&gt; $manager-&gt;persist($x)
=&gt; null
&gt;&gt;&gt; $manager-&gt;flush()
=&gt; null
</code></pre>

<p>However, if I run the following query in Neo4j "browser", I can just see the following being created:</p>

<pre><code>$ match (x) return x
Rows
x: username:    foo
</code></pre>

<p>Creation of the other properties are seemingly skipped.</p>

<p>I believe I'm missing something pretty basic; what is the problem with the above code?</p>