title: How to initialize inherited object's fields
body: <p>I must be missing something.  I cannot initialize an object's inherited fields without directly accessing them.</p>
  
  <p>My goal is trying to keep it simple.</p>
  
  <pre><code>package main
  
  type Page struct {
    Title string
  }
  
  type Article struct {
    Page
    Id int
  }
  
  func main() {
  
    // this generates a build error: 
    // "invalid field name Title in struct initializer"
    //
    p := &amp;Article{
      Title: "Welcome!",
      Id:    2,
    }
  
    // this generates a build error: 
    // "invalid field name Page.Title in struct initializer"
    //
    p := &amp;Article{
      Page.Title: "Welcome!",
      Id:         2,
    }
  
    // this works, but is verbose...  trying to avoid this
    //
    p := &amp;Article{
      Id:    2,
    }
    p.Title = "Welcome!"
  
    // as well as this, since the above was just a shortcut
    //
    p := &amp;Article{
      Id:    2,
    }
    p.Page.Title = "Welcome!"
  
  }
  </code></pre>
  
  <p>Thanks in advance.</p>