Optimize a Overpass QL request

Hi everybody!

Here’s a Overpass QL request to get nodes, ways and relations having values “yes”, “customary”, “permissive” and “obligatory”.

[out:json][timeout:25];
// gather results
(
  // query part for: “beach”
  node["nudism"="yes"]({{bbox}});
  way["nudism"="yes"]({{bbox}});
  relation["nudism"="yes"]({{bbox}});
  node["nudism"="customary"]({{bbox}});
  way["nudism"="customary"]({{bbox}});
  relation["nudism"="customary"]({{bbox}});
  node["nudism"="permissive"]({{bbox}});
  way["nudism"="permissive"]({{bbox}});
  relation["nudism"="permissive"]({{bbox}});
  node["nudism"="obligatory"]({{bbox}});
  way["nudism"="obligatory"]({{bbox}});
  relation["nudism"="obligatory"]({{bbox}});
);
// print results
out body;
>;
out skel qt;

Is it possible to optimize it to make it lighter and faster?

Instead of “node”, “way”, “relation”; you can use “nwr” for short. Also, you can merge multiple values using regular expressions:

nwrnudism~“^(yes|customary|permissive|obligatory)$”;