title: Validate two fields of struct together in golang
body: <p>I was looking at golang validators and want to know how I can validate two fields together?</p>
  
  <p>I am sending a json body over a request and decoding the body into this struct. Of the two parameters in the body(ID1 &amp; ID2), one of them must be present. So, I want to validate the case where both aren't present.</p>
  
  <pre><code>type IDs struct {
      ID1 int64 `json:"id_one"`
      ID2 int64 `json:"id_two"`
  }
  </code></pre>
  
  <p>How would I validate this using this package?
  <a href="https://godoc.org/gopkg.in/validator.v2" rel="nofollow noreferrer">https://godoc.org/gopkg.in/validator.v2</a></p>
  
  <p>I went through the doc and couldn't find a way to do it. </p>
  
  <p>I can do </p>
  
  <pre><code>type IDs struct {
      ID1 int64 `json:"id_one" validate:"min=0"`
      ID2 int64 `json:"id_two" validate:"min=0"`
  }
  </code></pre>
  
  <p>but this still lets both to be absent, instead one of them should be present.</p>
  
  <p>If it cant be done with this package, what are the other ways to do this?</p>