title: Can I use "inheritance" to add specific properties to nodes in json-ld with Schema.org using references?
body: <p>I am struggling with using references in json-ld with schema.org.</p>
  <p>I am trying to represent a person and a list of employments they've had at various organizations, where the person's job title is different for every organization where they've worked.</p>
  <p>Schema.org <code>Person</code> has a property <code>jobTitle</code> and the <code>Organization</code> type has a property <code>employee</code>. I'm wanting to point the <code>employee</code> property in <code>Organization</code> to the top level same <code>Person</code> object for all the <code>Organization</code> objects using <code>@id</code>. Can I then add the specific <code>jobTitle</code> property together with the <code>@id</code>, sort of like inheritance in OO-programming? If this doesn't work, would you have suggestions for a more sensible structure?</p>
  <pre><code>&quot;@type&quot;: &quot;Person&quot;,
  &quot;@id&quot;: &quot;toplevelperson&quot;,
  &quot;givenName&quot;: null,
      .
      .
      .
  &quot;worksFor&quot;: [
      {
          &quot;@type&quot;: &quot;Organization&quot;,
          &quot;name&quot;: &quot;aaaa&quot;,
               .
               .
               . 
           &quot;employee&quot;: {
               &quot;@id&quot;: &quot;toplevelperson&quot;,
               &quot;jobTitle&quot;: &quot;Painter&quot;
           }
      }
  </code></pre>
  <p>EDIT: I attempted a solution using EmployeeRole type with property roleName similar to example 2 for OrganizationRole example 2 <a href="https://schema.org/OrganizationRole" rel="nofollow noreferrer">https://schema.org/OrganizationRole</a>.</p>
  <pre><code>{
  &quot;@context&quot;: &quot;https://schema.org&quot;,
  &quot;@type&quot;: &quot;Person&quot;,
  &quot;@id&quot;: &quot;topLevelPerson&quot;,
  &quot;givenName&quot;: null,
  .
  .
  .
  &quot;worksFor&quot;: [
      {
          &quot;@type&quot;: &quot;EmployeeRole&quot;,
          &quot;worksFor&quot; {
              &quot;@type&quot;: &quot;Organization&quot;,
              &quot;name&quot;: null,
              .
              .
              .
              &quot;email&quot;: null,
              &quot;telephone&quot;: null,
              &quot;employee&quot;: {
                  &quot;@id&quot;: &quot;topLevelPerson&quot;
              }
          },
          &quot;roleName&quot;: null,
          &quot;startDate&quot;: null,
          &quot;endDate&quot;: null
      }
  ]
  </code></pre>
  <p>}</p>