title: Angular2 FormGroup in FormArray validation
body: <p>I have the following model:</p>
  
  <pre><code>export interface Content {
    lang: string;
    title: string;
  }
  </code></pre>
  
  <p>I need to validate a <code>contents FormArray</code> of this <code>parent FormGroup</code>:</p>
  
  <pre><code>this.formBuilder.group({
    defaultLang: ['', Validators.required],
    contents: this.formBuilder.array([], Validators.minLength(1))
  });
  </code></pre>
  
  <p>For each <code>Content</code> in my <code>contents FormArray</code>, I validate the model with the following <code>content FormGroup</code>:</p>
  
  <pre><code>this.formBuilder.group({
    lang: ['', Validators.required],
    title: ['', Validators.required]
  });
  </code></pre>
  
  <p>For now, I add the following <code>content FormGroup</code> to my <code>contents FormArray</code> to validate each <code>Content</code>:</p>
  
  <pre><code>(&lt;FormArray&gt;parentFormGroup.controls['contents'])
      .push(this.contentFormGroup);
  </code></pre>
  
  <p>But with this approach I can't validate these rules:</p>
  
  <ul>
  <li>If one of the <code>Content</code> fields are filled up then content validation occurs (which means adding the <code>content FormGroup</code> to the <code>contents FormArray</code>)</li>
  <li>If none of the content fields are filled up then no content validation occurs (which means removing the <code>content FormGroup</code> of the <code>contents FormArray</code> if present)</li>
  <li>If <code>lang</code> of a <code>Content</code> is the <code>defaultLang</code> of the <code>parent FormGroup</code>, then the content is required.</li>
  </ul>
  
  <p><strong>Questions</strong></p>
  
  <p>Is there a work around of adding/removing the <code>content FormGroup</code> of the <code>contents FormArray</code> just with validators? </p>
  
  <p>Is there a way to do it with Angular native validators only?</p>
  
  <p>Do I need to create a custom validator? If yes, do you have great example to do so with <code>FormArray</code>?</p>