<div dir="ltr">This may be a useful reference on the topic: <a href="https://pyproj4.github.io/pyproj/stable/build_crs.html">https://pyproj4.github.io/pyproj/stable/build_crs.html</a></div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Mon, Jun 28, 2021 at 9:47 AM Floris Vanderhaeghe via PROJ <<a href="mailto:proj@lists.osgeo.org">proj@lists.osgeo.org</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">
  
    
  
  <div bgcolor="#FFFFFF">
    Hi,<br>
    <p>Below are some questions about the usage of 'PROJ strings' (as
      opposed to using WKT or AUTHORITY:CODE) as an option to declare
      the CRS of coordinates. The context is geospatial work in R with
      PROJ >= 6, the fact that users <i>can</i> still input PROJ
      strings to declare an object's CRS, and the question what to
      advise to users. We already had some discussions on this in the
      R-spatial community, which lead me to posing some questions here.<br>
    </p>
    <p>After reading through several PROJ documentation pages, and
      observing output from 'projinfo':</p>
    <ol>
      <li>It is clear that currently, support for representing a CRS by
        using a PROJ string is only partial, especially because the
        datum can often not be specified. ==> <b>QUESTION</b>: <u>Is
          specifying a CRS with a PROJ string going to receive continued
          support, or will it eventually be dropped? And related with
          that, </u><u>[<b>QUESTION</b>:]
          should we still advertise and use it to represent a CRS?</u>
        The current state may appear somewhat unclear:</li>
      <ul>
        <li>There is support for '+type = crs' (to declare a CRS)</li>
        <ul>
          <li>e.g. projinfo does accept a PROJ string as input to
            represent a CRS, by inclusion of '+type=crs'<br>
          </li>
        </ul>
        <li>There is (still) support for '+towgs84' (to declare a
          BOUNDCRS, hence not defining the datum directly)</li>
        <ul>
          <li>Cf. mention of '+towgs84' in the context of a pipeline, in
            <a href="https://proj.org/operations/operations_computation.html#when-the-source-or-target-crs-is-a-boundcrs" target="_blank">https://proj.org/operations/operations_computation.html#when-the-source-or-target-crs-is-a-boundcrs</a><br>
          </li>
          <li>'+towgs84' can be still used in a PROJ string that
            represents just a CRS (combining '+towgs84=' and
            '+type=crs')</li>
        </ul>
        <li>However, PROJ strings are now generally described in the
          documentation as representing a coordinate operation,
          including datum <i>shifts</i> when using a pipeline string.
          That is, the pipeline itself does not define input and output
          datums, but may contain a transformation step to perform a
          datum shift.</li>
        <li>In several places the <i>deprecation</i> of '+towgs84' is
          referred --> <b>QUESTION</b>: <u>will '+towgs84' be
            dropped eventually? </u></li>
        <li>Although using '+type = crs', the datum cannot be specified:
          it is WGS84 when no '+ellps' is provided, and else 'unknown'.
          But with an unknown datum, the CRS is incomplete. <b>QUESTION</b>:
          <u>Will</u><u> '+type = crs' get continued support, or is it
            intended to eventually end support for '+type=crs'?</u></li>
        <li>A comment in the second code chunk under <a href="https://proj.org/development/migration.html#code-example" target="_blank">https://proj.org/development/migration.html#code-example</a>
          clearly disrecommends PROJ strings to define a CRS (as opposed
          to WKT or AUTHORITY:CODE), but generally this advice seems
          rather sparse in the documentation. In fact, the
          still-supported use of a PROJ string to define a CRS is only
          touched under <a href="https://proj.org/development/reference/functions.html#c.proj_create" target="_blank">proj_create()</a> and discouraged.</li>
      </ul>
      <li><i>If PROJ strings should not be used to define a CRS, then: </i>[<b>QUESTION</b>:]
        <u>is it possible, with currently advised methods, to define a </u><u><i>custom</i></u><u>
          CRS in a relatively short way</u>, i.e. not having to write
        out a full WKT? Perhaps having the possibility to refer an
        authority CRS (just using its code or name), and a way to alter
        specific (WKT?) parameters, could work, although I don't know
        whether specification of the second part can be standardised
        easily.</li>
    </ol>
    <p>Thanks in advance! I am not an experienced PROJ user.<br>
    </p>
    <p>With regards,</p>
    <p>Floris</p>
    <br>
    <div>
      
      
      <div>
        <div dir="ltr">
          <div>
            <div dir="ltr">
              <div dir="ltr">
                <div dir="ltr">
                  <div dir="ltr">
                    <div dir="ltr">
                      <p><font color="#666666"><b style="font-size:12.8px"><span style="font-size:9pt;font-family:Verdana,sans-serif" lang="EN-US">Floris Vanderhaeghe</span></b><br>
                        </font></p>
                      <p><font color="#666666"><span style="font-size:9pt;font-family:Verdana,sans-serif">Flemish
                            Government<br>
                            RESEARCH INSTITUTE FOR NATURE AND FOREST<br>
                          </span><font face="Verdana, sans-serif"><span style="font-size:12px">Team Biometry,
                              Methodology and Quality Assurance<br>
                            </span></font><span style="font-family:Verdana,sans-serif;font-size:9pt">Havenlaan
                            88 bus 73, 1000 Brussels<br>
                            Belgium</span><span style="font-size:9pt;font-family:Verdana,sans-serif"><br>
                            <a href="mailto:floris.vanderhaeghe@inbo.be" target="_blank"><font color="#666666">floris.vanderhaeghe@inbo.be</font></a><br>
                          </span><a href="http://www.inbo.be/" title="http://www.inbo.be/
                            blocked::http://www.inbo.be/" style="font-family:Verdana,sans-serif;font-size:9pt" target="_blank"><font color="#666666">www.inbo.be</font></a></font></p>
                      <div style="color:rgb(136,136,136);font-size:12.8px"><span style="font-family:verdana,sans-serif"><font size="1" color="#666666">///////////////////////////////////////////////////////////////////////////////////////////</font></span></div>
                      <div style="color:rgb(136,136,136);font-size:12.8px"><span style="font-family:verdana,sans-serif"><font size="1"><br>
                          </font></span></div>
                      <div style="color:rgb(136,136,136);font-size:12.8px"><span style="font-family:verdana,sans-serif"><font size="1"><img src="cid:17a531ca29d71c5dd1c1" alt="" width="346" height="44"></font></span></div>
                    </div>
                  </div>
                </div>
              </div>
            </div>
          </div>
        </div>
      </div>
      <br>
    </div>
  </div>

_______________________________________________<br>
PROJ mailing list<br>
<a href="mailto:PROJ@lists.osgeo.org" target="_blank">PROJ@lists.osgeo.org</a><br>
<a href="https://lists.osgeo.org/mailman/listinfo/proj" rel="noreferrer" target="_blank">https://lists.osgeo.org/mailman/listinfo/proj</a><br>
</blockquote></div><br clear="all"><br>-- <br><div dir="ltr" class="gmail_signature"><div dir="ltr"><div><div dir="ltr"><div><div dir="ltr"><div><div dir="ltr"><font style="font-family:arial,helvetica,sans-serif">Alan Snow</font><br></div></div></div></div></div></div></div></div>