Maps WFS GetFeature具有多个层和不同的属性名称

Maps WFS GetFeature具有多个层和不同的属性名称,maps,geoserver,Maps,Geoserver,假设我有一个Geoserver,运行时有两层由WFS公开(具有属性): 现在,如果我想查询所有街道的StreetLayer,但只获取StreetName和Lanes属性,我会向此发送一个get请求: http://geoserver/wfs?REQUEST=GetFeature&VERSION=1.1.0&typename=StreetLayer&propertyname=StreetName,Lanes 但如果我现在想同时查询HouseLayer和StreetLaye

假设我有一个Geoserver,运行时有两层由WFS公开(具有属性):

现在,如果我想查询所有街道的StreetLayer,但只获取StreetName和Lanes属性,我会向此发送一个get请求:

http://geoserver/wfs?REQUEST=GetFeature&VERSION=1.1.0&typename=StreetLayer&propertyname=StreetName,Lanes
但如果我现在想同时查询HouseLayer和StreetLayer呢?这不起作用:

http://geoserver/wfs?REQUEST=GetFeature&VERSION=1.1.0&typename=StreetLayer,HouseLayer&propertyname=StreetName,Lanes,Address
我得到一个例外,即StreetName和Lanes不在HouseLayer中,反之亦然。我需要提出多个请求吗

编辑:

所以我想做的是这样的:

http://geoserver/wfs?REQUEST=GetFeature&VERSION=1.1.0&typename=StreetLayer,HouseLayer&propertyname=(StreetName,Lanes),(Address)

差不多了,在propertyName中有一个额外的逗号。此选项适用于vanilla GeoServer安装:

http://localhost:8087/gswps/topp/ows?service=WFS&version=1.0.0&request=GetFeature&typeName=topp:tasmania_cities,topp:tasmania_roads&propertyName=(ADMIN_NAME,CITY_NAME)(TYPE)

区别:和之间没有逗号(

如果我添加outputFormat=json,我会得到一个功能列表,而不参考它们的类型名。在这种情况下,有没有办法为功能获取相应的类型名?正如我在GeoServer用户邮件列表上回答的,没有,这是GeoJSON格式的限制,它没有层的概念。
http://localhost:8087/gswps/topp/ows?service=WFS&version=1.0.0&request=GetFeature&typeName=topp:tasmania_cities,topp:tasmania_roads&propertyName=(ADMIN_NAME,CITY_NAME)(TYPE)