This has baffled me for hours, I've tried nearly every combination of request parameters without success.
I have a points coverage published in ArcGIS and can download the feature GML via WFS for the entire layer using the following request (sorry the server is not available on the internet):
Which returns XML for each feature member in the layer like so:
<wfs:FeatureCollection xsi:schemaLocation="http://server/arcgis/services/DMS/DMS_WELLS/MapServer/WFSServer http://server/arcgis/services/DMS/DMS_WELLS/MapServer/WFSServer?request=DescribeFeatureType%26version=1.1.0%26typename=iwiswells http://www.opengis.net/wfs http://schemas.opengis.net/wfs/1.1.0/wfs.xsd">
<gml:boundedBy>
<gml:Envelope srsName="urn:ogc:def:crs:EPSG:6.9:4326">
<gml:lowerCorner>28.522 -10.5</gml:lowerCorner>
<gml:upperCorner>80.469 65.01144</gml:upperCorner>
</gml:Envelope>
</gml:boundedBy>
<gml:featureMember>
<DMS_DMS_WELLS:iwiswells>
<DMS_DMS_WELLS:FID>0</DMS_DMS_WELLS:FID>
<DMS_DMS_WELLS:Shape>
<gml:Point>
<gml:pos>64.994 7.5312</gml:pos>
</gml:Point>
</DMS_DMS_WELLS:Shape>
<DMS_DMS_WELLS:gid>1</DMS_DMS_WELLS:gid>
<DMS_DMS_WELLS:sitelocid>101</DMS_DMS_WELLS:sitelocid>
<DMS_DMS_WELLS:site_ref>101/1</DMS_DMS_WELLS:site_ref>
<DMS_DMS_WELLS:latitude>24.9943</DMS_DMS_WELLS:latitude>
<DMS_DMS_WELLS:longitude>47.5002</DMS_DMS_WELLS:longitude>
</DMS_DMS_WELLS:iwiswells>
</gml:featureMember>
<gml:featureMember>
...
</gml:featureMember>
</wfs:FeatureCollection>
In GeoServer to select the single feature with a feature id of 10 I would use the following WFS request:
And this results in on feature member begin returned. What I'm looking for is an ArcGIS WFS equivalent!
I have read all the documentation, all the specifications but my request either results in the entire feature list being returned or an error message, here's a few requests I have tried:
I've even tried using a filter on a different attribute without success:
Best Answer
Well it took a while to figure out but persistence paid off! After following an example from here http://resources.arcgis.com/en/help/main/10.1/index.html#//0154000004rz000000#ESRI_SECTION1_ACCAFEFDC733487AA2BD9547A768AA08 I managed to get what I was after using the <ogc:filter> tag, when using the filter tag I had to make sure I was fully qualifying the tag (ie <ogc:filter> rather than <filter>)
Here's the solution: http://mymachine.com:6443/arcgis/services/DMS/DMS_WELLS/MapServer/WFSServer?service=WFS&request=GetFeature&version=1.1.0&typename=DMS_DMS_WELLS:iwiswells&Filter=<ogc:Filter><ogc:PropertyIsEqualTo><ogc:PropertyName>site_ref</ogc:PropertyName><ogc:Literal>10</ogc:Literal></ogc:PropertyIsEqualTo></ogc:Filter>
Moral of the story: if you can't get it to work try try try again! (even if you get no responses from the community!!).