File indexing completed on 2024-05-19 15:23:14

0001 <!DOCTYPE html>
0002 <html><head>
0003 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/>
0004 <title>highlight.overpassql</title>
0005 <meta name="generator" content="KF5::SyntaxHighlighting - Definition (Overpass QL) - Theme (Breeze Light)"/>
0006 </head><body style="background-color:#ffffff;color:#1f1c1b"><pre>
0007 <span style="color:#898887;">/* Overpass samples taken from</span>
0008 <span style="color:#898887;">   https://wiki.openstreetmap.org/wiki/Overpass_API/Overpass_QL</span>
0009 <span style="color:#898887;">   https://wiki.openstreetmap.org/wiki/Overpass_API/Overpass_API_by_Example</span>
0010 
0011 */
0012 
0013 <span style="color:#898887;">// single line comment with </span><span style="color:#ca9219;background-color:#451e1a;font-weight:bold;">TODO</span><span style="color:#898887;"> alerts</span>
0014 
0015 <span style="color:#898887;">/* multi-line comment with </span><span style="color:#81ca2d;background-color:#f7e6e6;font-weight:bold;">###</span><span style="color:#898887;"> alerts </span>*/
0016 
0017 [<span style="color:#644a9b;">out</span>:json][<span style="color:#0057ae;">timeout</span>:<span style="color:#b08000;">25</span>];
0018 <span style="color:#898887;">// gather results</span>
0019 (
0020   <span style="color:#898887;">// query part for: “amenity=post_box”</span>
0021   <span style="color:#644a9b;">node</span>[<span style="color:#bf0303;">&quot;amenity&quot;</span>=<span style="color:#bf0303;">&quot;post_box&quot;</span>](<span style="color:#b08000;">52.0</span>, <span style="color:#b08000;">13.0</span>, <span style="color:#b08000;">54.0</span>, <span style="color:#b08000;">13.5</span>);
0022   <span style="color:#644a9b;">way</span>[<span style="color:#bf0303;">&quot;amenity&quot;</span>=<span style="color:#bf0303;">&quot;post_box&quot;</span>](<span style="color:#006e28;">{{bbox}}</span>);
0023   <span style="color:#644a9b;">relation</span>[<span style="color:#bf0303;">&quot;amenity&quot;</span>=<span style="color:#bf0303;">&quot;post_box&quot;</span>](<span style="color:#006e28;">{{bbox}}</span>);
0024 );
0025 <span style="color:#898887;">// print results</span>
0026 <span style="color:#644a9b;">out</span> <span style="color:#644a9b;font-weight:bold;">body</span>;
0027 &gt;;
0028 <span style="color:#644a9b;">out</span> <span style="color:#644a9b;font-weight:bold;">skel</span> <span style="color:#644a9b;font-weight:bold;">qt</span>;
0029 
0030 
0031 [<span style="color:#644a9b;">out</span>:csv(::<span style="color:#644a9b;font-weight:bold;">type</span>, <span style="color:#bf0303;">&quot;de:regionalschluessel&quot;</span>, name,
0032          ::<span style="color:#644a9b;font-weight:bold;">count</span>, ::<span style="color:#bf0303;">&quot;count:nodes&quot;</span>, ::<span style="color:#bf0303;">&quot;count:ways&quot;</span>, ::<span style="color:#bf0303;">&quot;count:relations&quot;</span>)];
0033 
0034 <span style="color:#898887;">//All areas with regional key (German: &quot;Regionalschlüssel&quot;) starting with 057</span>
0035 <span style="color:#644a9b;">area</span>[<span style="color:#bf0303;">&quot;de:regionalschluessel&quot;</span>~<span style="color:#bf0303;">&quot;^057&quot;</span>];
0036 
0037 <span style="color:#898887;">// Count the pharmacies in each area</span>
0038 <span style="font-weight:bold;">foreach</span>-&gt;.regio(
0039   <span style="color:#898887;">// display details for the current area</span>
0040   .regio <span style="color:#644a9b;">out</span>;
0041 
0042   <span style="color:#898887;">// Collect all Nodes, Ways and Relations with amenity=pharmacy in the current area</span>
0043   ( <span style="color:#644a9b;">node</span>(<span style="color:#644a9b;">area</span>.regio)[amenity=pharmacy];
0044     <span style="color:#644a9b;">way</span>(<span style="color:#644a9b;">area</span>.regio)[amenity=pharmacy];
0045     <span style="color:#644a9b;">rel</span>(<span style="color:#644a9b;">area</span>.regio)[amenity=pharmacy];);
0046 
0047 <span style="color:#898887;">// Count the elements in the current area Area</span>
0048   <span style="color:#644a9b;">out</span> <span style="color:#644a9b;font-weight:bold;">count</span>;
0049 );
0050 
0051 
0052 [<span style="color:#0057ae;">timeout</span>:<span style="color:#b08000;">300</span>]
0053 [<span style="color:#0057ae;">bbox</span>:<span style="color:#b08000;">51.08282186160976</span>,-<span style="color:#b08000;">12.8759765625</span>,<span style="color:#b08000;">55.986091533808384</span>,-<span style="color:#b08000;">1.86767578125</span>]
0054 [<span style="color:#644a9b;">out</span>:csv(::<span style="color:#644a9b;font-weight:bold;">id</span>, ::<span style="color:#644a9b;font-weight:bold;">type</span>, name, <span style="color:#bf0303;">&quot;name:en&quot;</span>, <span style="color:#bf0303;">&quot;name:ga&quot;</span>)];
0055 
0056 ( <span style="color:#644a9b;">node</span>[name][<span style="color:#bf0303;">&quot;name:en&quot;</span>][<span style="color:#bf0303;">&quot;name:ga&quot;</span>](<span style="font-weight:bold;">if</span>:(t[<span style="color:#bf0303;">&quot;name&quot;</span>] != t[<span style="color:#bf0303;">&quot;name:en&quot;</span>]) &amp;&amp; (t[<span style="color:#bf0303;">&quot;name&quot;</span>] != t[<span style="color:#bf0303;">&quot;name:ga&quot;</span>]));
0057   <span style="color:#644a9b;">way</span>[name][<span style="color:#bf0303;">&quot;name:en&quot;</span>][<span style="color:#bf0303;">&quot;name:ga&quot;</span>] (<span style="font-weight:bold;">if</span>:(t[<span style="color:#bf0303;">&quot;name&quot;</span>] != t[<span style="color:#bf0303;">&quot;name:en&quot;</span>]) &amp;&amp; (t[<span style="color:#bf0303;">&quot;name&quot;</span>] != t[<span style="color:#bf0303;">&quot;name:ga&quot;</span>]));
0058   <span style="color:#644a9b;">rel</span>[name][<span style="color:#bf0303;">&quot;name:en&quot;</span>][<span style="color:#bf0303;">&quot;name:ga&quot;</span>] (<span style="font-weight:bold;">if</span>:(t[<span style="color:#bf0303;">&quot;name&quot;</span>] != t[<span style="color:#bf0303;">&quot;name:en&quot;</span>]) &amp;&amp; (t[<span style="color:#bf0303;">&quot;name&quot;</span>] != t[<span style="color:#bf0303;">&quot;name:ga&quot;</span>]));
0059 );
0060 <span style="color:#644a9b;">out</span>;
0061 
0062 
0063 [<span style="color:#644a9b;">out</span>:csv(<span style="color:#644a9b;font-weight:bold;">version</span>,<span style="color:#644a9b;font-weight:bold;">timestamp</span>,<span style="color:#644a9b;font-weight:bold;">changeset</span>,<span style="color:#644a9b;font-weight:bold;">count</span>)];
0064 <span style="color:#644a9b;">timeline</span>(<span style="color:#644a9b;">relation</span>,<span style="color:#b08000;">2632934</span>);
0065 <span style="font-weight:bold;">for</span> (t[<span style="color:#bf0303;">&quot;created&quot;</span>])
0066 {
0067   <span style="font-weight:bold;">retro</span>(_.val)
0068   {
0069     <span style="color:#644a9b;">rel</span>(<span style="color:#b08000;">2632934</span>);
0070     <span style="color:#644a9b;">make</span> stat <span style="color:#644a9b;font-weight:bold;">version</span>=u(<span style="color:#644a9b;font-weight:bold;">version</span>()),<span style="color:#644a9b;font-weight:bold;">timestamp</span>=u(<span style="color:#644a9b;font-weight:bold;">timestamp</span>()),<span style="color:#644a9b;font-weight:bold;">changeset</span>=u(<span style="color:#644a9b;font-weight:bold;">changeset</span>()),<span style="color:#644a9b;font-weight:bold;">count</span>=u(<span style="color:#644a9b;font-weight:bold;">count_members</span>());
0071     <span style="color:#644a9b;">out</span>;
0072   }
0073 }
0074 
0075 
0076 [<span style="color:#0057ae;">timeout</span>:<span style="color:#b08000;">60</span>];
0077 <span style="color:#644a9b;">area</span>[<span style="color:#bf0303;">&quot;name&quot;</span>=<span style="color:#bf0303;">&quot;Mayenne&quot;</span>]-&gt;.boundaryarea;
0078 <span style="color:#644a9b;">way</span>(<span style="color:#644a9b;">area</span>.boundaryarea)[<span style="color:#bf0303;">&quot;building&quot;</span>=<span style="color:#bf0303;">&quot;church&quot;</span>];
0079   <span style="font-weight:bold;">foreach</span>(
0080     <span style="color:#644a9b;">node</span>(w)-&gt;.d;                                     <span style="color:#898887;">// determine all nodes of a way</span>
0081     .n <span style="color:#644a9b;">is_in</span>-&gt;.a;
0082     <span style="color:#644a9b;">area</span>.a[name][boundary=administrative][admin_level~<span style="color:#bf0303;">&quot;^[2-8]$&quot;</span>] -&gt; .a;
0083     <span style="color:#644a9b;">out</span> <span style="color:#644a9b;font-weight:bold;">center</span>;
0084     <span style="color:#644a9b;">convert</span> <span style="color:#644a9b;">way</span> ::=::,
0085               ::<span style="color:#644a9b;font-weight:bold;">id</span> = <span style="color:#644a9b;font-weight:bold;">id</span>(),
0086               <span style="color:#644a9b;">is_in</span>=a.<span style="color:#644a9b;font-weight:bold;">set</span>(<span style="color:#bf0303;">&quot;{&quot;</span> + t[<span style="color:#bf0303;">&quot;admin_level&quot;</span>] + <span style="color:#bf0303;">&quot;:&quot;</span> + t[<span style="color:#bf0303;">&quot;name&quot;</span>] + <span style="color:#bf0303;">&quot;}&quot;</span>);
0087 
0088     <span style="color:#644a9b;">out</span>;
0089 );
0090 </pre></body></html>