单个请求中的多个分离请求
Multiple separated requests inside a single request
使用 OverPass API,我想在一个查询中进行多个不同的查询,然后在输出中按查询分隔结果。
例如:
node( <some bounding box> )[amenity~"cafe"]->.my_cafes;
node( <some bounding box> )[amenity~"restaurant"]->.my_restaus;
.my_cafes out;
.my_restaus out;
在 XML 输出中,是否可以跟踪给定结果正在回答哪个子查询(即 "my_cafes" 或 "my_restaus")?这可以避免发送许多 API 个调用。
在我的示例中,可以使用 tag[k=amenity,v=cafe]
之类的内容轻松过滤输出结果节点。但情况并非总是如此(让我们想象两个相似的请求,在 Overpass 中用两个不同的 around:
子句过滤)
Github 上已经讨论了类似的问题:https://github.com/drolbr/Overpass-API/issues/236
工单的简短摘要:
使用以下解决方法:只需在每个 out;
语句后放置一个 out count;
。这样您就可以找出每个查询结果的结束位置以及它包含的条目数。
使用 OverPass API,我想在一个查询中进行多个不同的查询,然后在输出中按查询分隔结果。 例如:
node( <some bounding box> )[amenity~"cafe"]->.my_cafes;
node( <some bounding box> )[amenity~"restaurant"]->.my_restaus;
.my_cafes out;
.my_restaus out;
在 XML 输出中,是否可以跟踪给定结果正在回答哪个子查询(即 "my_cafes" 或 "my_restaus")?这可以避免发送许多 API 个调用。
在我的示例中,可以使用 tag[k=amenity,v=cafe]
之类的内容轻松过滤输出结果节点。但情况并非总是如此(让我们想象两个相似的请求,在 Overpass 中用两个不同的 around:
子句过滤)
Github 上已经讨论了类似的问题:https://github.com/drolbr/Overpass-API/issues/236
工单的简短摘要:
使用以下解决方法:只需在每个 out;
语句后放置一个 out count;
。这样您就可以找出每个查询结果的结束位置以及它包含的条目数。