<html>
  <head>
    <meta content="text/html; charset=windows-1252"
      http-equiv="Content-Type">
  </head>
  <body text="#000066" bgcolor="#FFFFFF">
    Hello Will,<br>
    <br>
    I already had enabled "check_existing" on my VEP config template,
    however I followed your advice and updated code to force in the
    new() method with your code.<br>
    I'm still getting no prints of line 64:<br>
    <meta http-equiv="content-type" content="text/html;
      charset=windows-1252">
    <span class="pl-c1" style="box-sizing: border-box; color: rgb(0,
      134, 179); font-family: Consolas, 'Liberation Mono', Menlo,
      Courier, monospace; font-size: 12px; font-style: normal;
      font-variant: normal; font-weight: normal; letter-spacing: normal;
      line-height: 16.7999992370605px; orphans: auto; text-align: start;
      text-indent: 0px; text-transform: none; white-space: pre; widows:
      1; word-spacing: 0px; -webkit-text-stroke-width: 0px;
      background-color: rgb(255, 255, 255);"><br>
      print</span><span style="color: rgb(51, 51, 51); font-family:
      Consolas, 'Liberation Mono', Menlo, Courier, monospace; font-size:
      12px; font-style: normal; font-variant: normal; font-weight:
      normal; letter-spacing: normal; line-height: 16.7999992370605px;
      orphans: auto; text-align: start; text-indent: 0px;
      text-transform: none; white-space: pre; widows: 1; word-spacing:
      0px; -webkit-text-stroke-width: 0px; display: inline !important;
      float: none; background-color: rgb(255, 255, 255);"> Dumper(</span><span
      class="pl-smi" style="box-sizing: border-box; color: rgb(51, 51,
      51); font-family: Consolas, 'Liberation Mono', Menlo, Courier,
      monospace; font-size: 12px; font-style: normal; font-variant:
      normal; font-weight: normal; letter-spacing: normal; line-height:
      16.7999992370605px; orphans: auto; text-align: start; text-indent:
      0px; text-transform: none; white-space: pre; widows: 1;
      word-spacing: 0px; -webkit-text-stroke-width: 0px;
      background-color: rgb(255, 255, 255);">$pf</span><span
      class="pl-k" style="box-sizing: border-box; color: rgb(167, 29,
      93); font-family: Consolas, 'Liberation Mono', Menlo, Courier,
      monospace; font-size: 12px; font-style: normal; font-variant:
      normal; font-weight: normal; letter-spacing: normal; line-height:
      16.7999992370605px; orphans: auto; text-align: start; text-indent:
      0px; text-transform: none; white-space: pre; widows: 1;
      word-spacing: 0px; -webkit-text-stroke-width: 0px;
      background-color: rgb(255, 255, 255);">-></span><span
      style="color: rgb(51, 51, 51); font-family: Consolas, 'Liberation
      Mono', Menlo, Courier, monospace; font-size: 12px; font-style:
      normal; font-variant: normal; font-weight: normal; letter-spacing:
      normal; line-height: 16.7999992370605px; orphans: auto;
      text-align: start; text-indent: 0px; text-transform: none;
      white-space: pre; widows: 1; word-spacing: 0px;
      -webkit-text-stroke-width: 0px; display: inline !important; float:
      none; background-color: rgb(255, 255, 255);">phenotype());<br>
    </span><br>
    Are you getting any output printed? As I said I get no errors but
    nothing is printed neither. This data dumper should be printing
    result of phenotype() method call.<br>
    <br>
    Regards,<br>
    Guillermo.<br>
    <br>
    <br>
    <div class="moz-cite-prefix">On 26/03/15 11:05, Will McLaren wrote:<br>
    </div>
    <blockquote
cite="mid:CAMVEDX3XVqa=+tJur8YvgrLRtx5zFYd7R+4sGOKh9Jg+gzJkvg@mail.gmail.com"
      type="cite">
      <div dir="ltr">I think perhaps you haven't enabled
        --check_existing; this is required for $vf->{existing} to get
        populated.<br>
        <div><br>
        </div>
        <div>You can force it on in the new() method of your plugin:</div>
        <div><br>
        </div>
        <div>$self->{config}->{check_existing} = 1;</div>
        <div><br>
        </div>
        <div>It then works for me on release/75 and release/79.</div>
        <div><br>
        </div>
        <div>Will</div>
      </div>
      <div class="gmail_extra"><br>
        <div class="gmail_quote">On 25 March 2015 at 17:35, Guillermo
          Marco Puche <span dir="ltr"><<a moz-do-not-send="true"
              href="mailto:guillermo.marco@sistemasgenomicos.com"
              target="_blank">guillermo.marco@sistemasgenomicos.com</a>></span>
          wrote:<br>
          <blockquote class="gmail_quote" style="margin:0 0 0
            .8ex;border-left:1px #ccc solid;padding-left:1ex">
            <div text="#000066" bgcolor="#FFFFFF"> Hello Will,<br>
              <br>
              With your explanations I'm trying to call phenotype (as
              you said I was accessing the hashref directly).<br>
              I'm using input set you linked. However my local Ensembl
              installation is v75.<br>
              <br>
              This is the code of the plugin:<br>
              <a moz-do-not-send="true"
                href="https://github.com/guillermomarco/vep/blob/master/Clinvar.pm"
                target="_blank">https://github.com/guillermomarco/vep/blob/master/Clinvar.pm</a><br>
              <br>
              I'm getting absolutelty no info nor errors. I've no idea
              if this is an issue with my database/API version or with
              the plugin code itself.<br>
              <br>
              Regards,<br>
              Guillermo.
              <div>
                <div class="h5"><br>
                  <br>
                  <br>
                  <div>On 16/03/15 17:50, Will McLaren wrote:<br>
                  </div>
                  <blockquote type="cite">
                    <div dir="ltr">The "is_significant" field is an
                      internal flag that doesn't necessarily have the
                      meaning you expect; it is used to distinguish
                      between genuine reported associations and e.g.
                      non-significant associations reported from
                      genome-wide studies.
                      <div><br>
                      </div>
                      <div>You should not see undef for phenotype; I
                        suspect you are accessing the hashref directly
                        ($pf->{phenotype}) rather than making the
                        method call ($pf->phenotype()).</div>
                      <div><br>
                      </div>
                      <div>You could try <a moz-do-not-send="true"
href="ftp://ftp.ensembl.org/pub/release-79/variation/vcf/homo_sapiens/Homo_sapiens_clinically_associated.vcf.gz"
                          target="_blank">ftp://ftp.ensembl.org/pub/release-79/variation/vcf/homo_sapiens/Homo_sapiens_clinically_associated.vcf.gz</a>
                        as a test input set.</div>
                      <div><br>
                      </div>
                      <div>Will</div>
                    </div>
                    <div class="gmail_extra"><br>
                      <div class="gmail_quote">On 16 March 2015 at
                        16:39, Guillermo Marco Puche <span dir="ltr"><<a
                            moz-do-not-send="true"
                            href="mailto:guillermo.marco@sistemasgenomicos.com"
                            target="_blank">guillermo.marco@sistemasgenomicos.com</a>></span>
                        wrote:<br>
                        <blockquote class="gmail_quote">
                          <div> Hi Will,<br>
                            <br>
                            Thank you for your quick response! Very
                            clarifying.<br>
                            <br>
                            I guess that the way to retrieve ClinVar
                            data I posted is correct. With my test
                            dataset I've only seen "is_significant"
                            values of "1" and undef 'phenotype' values.
                            I think I need a synthetic vcf with ClinVar
                            annotation variants to very that the plugin
                            is working.<br>
                            <br>
                            I've been looking on Ensembl website for a
                            test dataset. I think you don't provide any
                            right? Correct me if I'm wrong.<br>
                            <br>
                            Thanks!<br>
                            <br>
                            Regards,<br>
                            Guillermo.
                            <div>
                              <div><br>
                                <br>
                                <div>On 16/03/15 16:16, Will McLaren
                                  wrote:<br>
                                </div>
                                <blockquote type="cite">
                                  <div dir="ltr">Hi Guillermo,
                                    <div><br>
                                    </div>
                                    <div>To get the rest of that data in
                                      the table you need to access the
                                      additional attributes of the
                                      PhenotypeFeature object, something
                                      like:</div>
                                    <div><br>
                                    </div>
                                    <div>my $attr =
                                      $pfs->[0]->get_all_attributes;<br>
                                    </div>
                                    <div>print "$_:".$attr->{$_}."\t"
                                      for keys %$attr;</div>
                                    <div>print "\n;</div>
                                    <div><br>
                                    </div>
                                    <div>Regards</div>
                                    <div><br>
                                    </div>
                                    <div>Will</div>
                                    <div><br>
                                    </div>
                                    <div>More info: the reason these
                                      data are stored as attributes is
                                      due to the diverse data sources
                                      and types that we import into our
                                      phenotype schema; to create a
                                      database column and corresponding
                                      API method for each data type
                                      (p-value, review status, risk
                                      allele, external ID etc etc) would
                                      be cumbersome and inefficient. To
                                      this end we provide a few methods
                                      that shortcut the attribute
                                      approach for the most common data
                                      types; everything else must be
                                      accessed through the attributes
                                      method. This is a common theme
                                      across the Ensembl API.</div>
                                  </div>
                                  <div class="gmail_extra"><br>
                                    <div class="gmail_quote">On 13 March
                                      2015 at 12:03, Guillermo Marco
                                      Puche <span dir="ltr"><<a
                                          moz-do-not-send="true"
                                          href="mailto:guillermo.marco@sistemasgenomicos.com"
                                          target="_blank">guillermo.marco@sistemasgenomicos.com</a>></span>
                                      wrote:<br>
                                      <blockquote class="gmail_quote">
                                        <div> Hi,<br>
                                          <br>
                                          I'm trying to retrieve ClinVar
                                          information with the code
                                          example you provided.<span><br>
                                            <br>
                                                my $self = shift;<br>
                                                my $tva = shift;<br>
                                                my $vf =
                                            $tva->variation_feature;<br>
                                                my $pfa =
$self->{config}->{reg}->get_adaptor('human','variation','phenotypefeature');<br>
                                                <br>
                                                foreach my
                                            $known_var(@{$vf->{existing}
                                            || []}) {<br>
                                                    foreach my
                                            $pf(@{$pfa->fetch_all_by_object_id($known_var->{variation_name})})
                                            {<br>
                                          </span>             if
                                          ($pf->{'source'} eq
                                          "dbSNP_ClinVar"){<br>
                                                          print
                                          "$pf->{'source'}\t$pf->{'external_id'}\t$pf->{'is_significant'}\t$pf->{'phenotype'}\n",



                                          ;<br>
                                                      }<br>
                                                  }<br>
                                              }<br>
                                          <br>
                                          As you can see I'm "filtering"
                                          the results to only output
                                          phenotype feature when source
                                          is dbSNP_ClinVar. I don't know
                                          why but I guess filtering
                                          should be done when doing the
                                          "fetch_all".<br>
                                          <br>
                                          On the other hand I'm trying
                                          to retrieve Disease, Source
                                          and Clinical Significance from
                                          this example table: <a
                                            moz-do-not-send="true"
href="http://www.ensembl.org/Homo_sapiens/Variation/Phenotype?db=core;r=8:19955518-19956518;v=rs268;vdb=variation;vf=266"
                                            target="_blank">http://www.ensembl.org/Homo_sapiens/Variation/Phenotype?db=core;r=8:19955518-19956518;v=rs268;vdb=variation;vf=266</a><br>
                                          <br>
                                          I think I'm doing something
                                          wrong I got totally lost in
                                          Phenotypefeature.<br>
                                          <br>
                                          Regards,<br>
                                          Guillermo.
                                          <div>
                                            <div><br>
                                              <br>
                                              <div>On 02/03/15 16:05,
                                                Will McLaren wrote:<br>
                                              </div>
                                              <blockquote type="cite">
                                                <div dir="ltr">If you
                                                  enable the
                                                  --check_existing flag
                                                  when you run the VEP,
                                                  you'll be able to see
                                                  any known co-located
                                                  variants attached to
                                                  the VariationFeature
                                                  object in your plugin:
                                                  <div><br>
                                                  </div>
                                                  <div>sub run {</div>
                                                    my $self = shift;
                                                  <div>  my $tva =
                                                    shift;</div>
                                                  <div>  my $vf =
                                                    $tva->variation_feature;</div>
                                                  <div><br>
                                                  </div>
                                                  <div>  foreach my
                                                    $known_var(@{$vf->{existing}
                                                    || []}) {</div>
                                                  <div>     # do stuff</div>
                                                  <div>  }</div>
                                                  <div>}</div>
                                                  <div><br>
                                                  </div>
                                                  <div>The $known_var is
                                                    not an API object
                                                    but a simple hashref
                                                    with a number of
                                                    fields; you're
                                                    probably interested
                                                    in
                                                    $known_var->{clin_sig}</div>
                                                  <div><br>
                                                  </div>
                                                  <div>However, as I
                                                    mentioned, this is
                                                    the only data that
                                                    is stored in the
                                                    cache. To access the
                                                    rating and the
                                                    specific disease
                                                    association, you'll
                                                    need to make calls
                                                    to the database by
                                                    getting an adaptor,
                                                    something like:</div>
                                                  <div><br>
                                                  </div>
                                                  <div>
                                                    <div>sub run {</div>
                                                    <div>  my $self =
                                                      shift;</div>
                                                    <div>  my $tva =
                                                      shift;</div>
                                                    <div>  my $vf =
                                                      $tva->variation_feature;</div>
                                                    <div>  my $pfa =
$self->{config}->{reg}->get_adaptor('human','variation','phenotypefeature');</div>
                                                    <div><br>
                                                    </div>
                                                    <div>  foreach my
                                                      $known_var(@{$vf->{existing}
                                                      || []}) {</div>
                                                    <div>     foreach my
                                                      $pf(@{$pfa->fetch_all_by_object_id($known_var->{variation_name})})

                                                      {</div>
                                                    <div>       # do
                                                      stuff</div>
                                                    <div>     }</div>
                                                    <div>  }</div>
                                                    <div>}</div>
                                                  </div>
                                                  <div><br>
                                                  </div>
                                                  <div>Be aware that
                                                    this will access the
                                                    database, so unless
                                                    you have a local
                                                    copy please don't
                                                    run this sort of
                                                    code on genome-wide
                                                    VCFs using our
                                                    public DB server.</div>
                                                  <div><br>
                                                  </div>
                                                  <div>Regards</div>
                                                  <div><br>
                                                  </div>
                                                  <div>Will</div>
                                                </div>
                                                <div class="gmail_extra"><br>
                                                  <div
                                                    class="gmail_quote">On
                                                    2 March 2015 at
                                                    14:47, Guillermo
                                                    Marco Puche <span
                                                      dir="ltr"><<a
                                                        moz-do-not-send="true"
href="mailto:guillermo.marco@sistemasgenomicos.com" target="_blank">guillermo.marco@sistemasgenomicos.com</a>></span>
                                                    wrote:<br>
                                                    <blockquote
                                                      class="gmail_quote">
                                                      <div> Hi Will,<br>
                                                        <br>
                                                        Indeed I'm
                                                        looking to
                                                        retrieve this
                                                        information from
                                                        VEP plugin.<br>
                                                        <br>
                                                        Regards,<br>
                                                        Guillermo.
                                                        <div>
                                                          <div><br>
                                                          <br>
                                                          <div>On
                                                          02/03/15
                                                          15:25, Will
                                                          McLaren wrote:<br>
                                                          </div>
                                                          <blockquote
                                                          type="cite">
                                                          <div dir="ltr">Hi

                                                          Guillermo,
                                                          <div><br>
                                                          </div>
                                                          <div>The
                                                          detailed
                                                          ClinVar
                                                          information is
                                                          stored against
                                                          PhenotypeFeature

                                                          objects (each
                                                          SNP/disease
                                                          pairing gets
                                                          its own entry
                                                          in ClinVar,
                                                          e.g. <a
                                                          moz-do-not-send="true"
href="http://www.ncbi.nlm.nih.gov/clinvar/RCV000019691.2"
                                                          target="_blank">http://www.ncbi.nlm.nih.gov/clinvar/RCV000019691.2</a>, <a
moz-do-not-send="true"
                                                          href="http://www.ncbi.nlm.nih.gov/clinvar/RCV000019692.2/"
target="_blank">http://www.ncbi.nlm.nih.gov/clinvar/RCV000019692.2/</a>, <a
moz-do-not-send="true"
                                                          href="http://www.ncbi.nlm.nih.gov/clinvar/RCV000019693.2/"
target="_blank">http://www.ncbi.nlm.nih.gov/clinvar/RCV000019693.2/</a>
                                                          for rs699).</div>
                                                          <div><br>
                                                          </div>
                                                          <div>The
                                                          rating (and
                                                          indeed the
                                                          clinical
                                                          significance)
                                                          is stored as
                                                          an attribute
                                                          on the
                                                          PhenotypeFeature
                                                          object; you
                                                          can retrieve
                                                          this with the
                                                          get_all_attributes()

                                                          method.</div>
                                                          <div><br>
                                                          </div>
                                                          <div>See <a
                                                          moz-do-not-send="true"
href="http://www.ensembl.org/info/docs/Doxygen/variation-api/classBio_1_1EnsEMBL_1_1Variation_1_1PhenotypeFeature.html"
target="_blank">http://www.ensembl.org/info/docs/Doxygen/variation-api/classBio_1_1EnsEMBL_1_1Variation_1_1PhenotypeFeature.html</a>
                                                          and <a
                                                          moz-do-not-send="true"
href="http://www.ensembl.org/info/docs/api/variation/variation_tutorial.html#phenotype"
target="_blank">http://www.ensembl.org/info/docs/api/variation/variation_tutorial.html#phenotype</a>
                                                          for more info.</div>
                                                          <div><br>
                                                          </div>
                                                          <div><span>Bio::EnsEMBL::Variation::</span><span>Utils::VEP::get_clin_sig()




                                                          is an internal
                                                          method that
                                                          you should not
                                                          use.</span></div>
                                                          <div><span><br>
                                                          </span></div>
                                                          <div><span>The
                                                          VEP cache
                                                          contains the
                                                          list of
                                                          clinical
                                                          significance
                                                          states for
                                                          each variant,
                                                          but neither
                                                          the disease
                                                          association or
                                                          the rating. If
                                                          you want help
                                                          getting access
                                                          to this data
                                                          via a plugin,
                                                          let me know as
                                                          it's a little
                                                          more involved
                                                          than the API
                                                          methods above
                                                          (though it is
                                                          faster as no
                                                          database
                                                          access is
                                                          required).</span><br>
                                                          </div>
                                                          <div><br>
                                                          </div>
                                                          <div>Regards</div>
                                                          <div><br>
                                                          </div>
                                                          <div>Will
                                                          McLaren</div>
                                                          <div>Ensembl
                                                          Variation</div>
                                                          </div>
                                                          <div
                                                          class="gmail_extra"><br>
                                                          <div
                                                          class="gmail_quote">On

                                                          2 March 2015
                                                          at 14:06,
                                                          Guillermo
                                                          Marco Puche <span
                                                          dir="ltr"><<a
moz-do-not-send="true"
                                                          href="mailto:guillermo.marco@sistemasgenomicos.com"
target="_blank">guillermo.marco@sistemasgenomicos.com</a>></span>
                                                          wrote:<br>
                                                          <blockquote
                                                          class="gmail_quote">
                                                          <div> Dear
                                                          devs,<br>
                                                          <br>
                                                          I'm looking
                                                          forward to
                                                          retrieve
                                                          ClinVar
                                                          information
                                                          and add it to
                                                          VEP
                                                          annotation.
                                                          From my
                                                          understanding
                                                          I should be
                                                          able to
                                                          retrieve
                                                          "Clinical
                                                          significance"
                                                          and "ClinVar
                                                          Rating".<br>
                                                          <br>
                                                          I've been
                                                          looking the
                                                          Varation API,
                                                          and I'm
                                                          confused. I
                                                          guess for
                                                          significance I
                                                          should use
                                                          Bio::EnsEMBL::Variation::Utils::VEP::get_clin_sig()
                                                          or
Bio::EnsEMBL::Variation::VariationFeature::get_all_clinical_significance_states().<br>
                                                          <br>
                                                          What about
                                                          ClinVar
                                                          rating? Is it
                                                          possible to
                                                          retrieve it
                                                          from API?<br>
                                                          <br>
                                                          Thanks!<br>
                                                          <br>
                                                          Regards,<br>
                                                          Guillermo.<br>
                                                          <br>
                                                          <br>
                                                          </div>
                                                          <br>
_______________________________________________<br>
                                                          Dev mailing
                                                          list    <a
                                                          moz-do-not-send="true"
href="mailto:Dev@ensembl.org" target="_blank">Dev@ensembl.org</a><br>
                                                          Posting
                                                          guidelines and
                                                          subscribe/unsubscribe

                                                          info: <a
                                                          moz-do-not-send="true"
href="http://lists.ensembl.org/mailman/listinfo/dev" target="_blank">http://lists.ensembl.org/mailman/listinfo/dev</a><br>
                                                          Ensembl Blog:
                                                          <a
                                                          moz-do-not-send="true"
href="http://www.ensembl.info/" target="_blank">http://www.ensembl.info/</a><br>
                                                          <br>
                                                          </blockquote>
                                                          </div>
                                                          <br>
                                                          </div>
                                                          <br>
                                                          <fieldset></fieldset>
                                                          </blockquote>
                                                          </div>
                                                        </div>
                                                      </div>
                                                    </blockquote>
                                                  </div>
                                                </div>
                                              </blockquote>
                                            </div>
                                          </div>
                                        </div>
                                      </blockquote>
                                    </div>
                                  </div>
                                </blockquote>
                              </div>
                            </div>
                          </div>
                          <br>
_______________________________________________<br>
                          Dev mailing list    <a moz-do-not-send="true"
                            href="mailto:Dev@ensembl.org"
                            target="_blank">Dev@ensembl.org</a><br>
                          Posting guidelines and subscribe/unsubscribe
                          info: <a moz-do-not-send="true"
                            href="http://lists.ensembl.org/mailman/listinfo/dev"
                            target="_blank">http://lists.ensembl.org/mailman/listinfo/dev</a><br>
                          Ensembl Blog: <a moz-do-not-send="true"
                            href="http://www.ensembl.info/"
                            target="_blank">http://www.ensembl.info/</a><br>
                          <br>
                        </blockquote>
                      </div>
                      <br>
                    </div>
                    <br>
                    <fieldset></fieldset>
                    <br>
                    <pre>_______________________________________________
Dev mailing list    <a moz-do-not-send="true" href="mailto:Dev@ensembl.org" target="_blank">Dev@ensembl.org</a>
Posting guidelines and subscribe/unsubscribe info: <a moz-do-not-send="true" href="http://lists.ensembl.org/mailman/listinfo/dev" target="_blank">http://lists.ensembl.org/mailman/listinfo/dev</a>
Ensembl Blog: <a moz-do-not-send="true" href="http://www.ensembl.info/" target="_blank">http://www.ensembl.info/</a>
</pre>
                  </blockquote>
                </div>
              </div>
            </div>
            <br>
            _______________________________________________<br>
            Dev mailing list    <a moz-do-not-send="true"
              href="mailto:Dev@ensembl.org">Dev@ensembl.org</a><br>
            Posting guidelines and subscribe/unsubscribe info: <a
              moz-do-not-send="true"
              href="http://lists.ensembl.org/mailman/listinfo/dev"
              target="_blank">http://lists.ensembl.org/mailman/listinfo/dev</a><br>
            Ensembl Blog: <a moz-do-not-send="true"
              href="http://www.ensembl.info/" target="_blank">http://www.ensembl.info/</a><br>
            <br>
          </blockquote>
        </div>
        <br>
      </div>
      <br>
      <fieldset class="mimeAttachmentHeader"></fieldset>
      <br>
      <pre wrap="">_______________________________________________
Dev mailing list    <a class="moz-txt-link-abbreviated" href="mailto:Dev@ensembl.org">Dev@ensembl.org</a>
Posting guidelines and subscribe/unsubscribe info: <a class="moz-txt-link-freetext" href="http://lists.ensembl.org/mailman/listinfo/dev">http://lists.ensembl.org/mailman/listinfo/dev</a>
Ensembl Blog: <a class="moz-txt-link-freetext" href="http://www.ensembl.info/">http://www.ensembl.info/</a>
</pre>
    </blockquote>
  </body>
</html>