On 27/04/2023 12:59, Landry Breuil wrote:
> On 27/04/2023 09:27, 'Guillaume RYCKELYNCK (GéoGrandEst)' via
> georchestra wrote:
>> Bonjour à tous,
>>
>> J'essai de moissonner un catalogue national (GéoNetwork) en récupérant
>> uniquement certaines fiches.
>> J'ai joué un peu avec différents filtres au niveau du point de
>> moissonnage sans grand succès.
>> Aussi, je suis à la recherche d'une solution simple pour récupérer une
>> liste de fiches d'un catalogue via CSW à partir de la liste des FileID
>> des fiches.
>
> je teste des trucs mais je n'arrive pas a une solution évidente, mais
> mon idée serait de faire une requête GetRecords avec un filtre
> ogc:PropertyIsLike sur PropertyName=csw:id avec une expression régulière
> incluant tout tes uuid.. je ne sais pas si on peut faire des filtres ogc
> avec des conditions (eg id=uuid1 OU id=uuid2 OU id=uuid3).. pe avec
>
https://docs.geoserver.org/latest/en/user/filter/filter_reference.html#id1
>
C'est possible, j'ai bien qqch qui fonctionne avec ce genre de XML:
<csw:GetRecords xmlns:csw="
http://www.opengis.net/cat/csw/2.0.2"
xmlns:ogc="
http://www.opengis.net/ogc" service="CSW" version="2.0.2"
resultType="results" startPosition="1" maxRecords="5"
outputFormat="application/xml"
outputSchema="
http://www.opengis.net/cat/csw/2.0.2"
xmlns:xsi="
http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="
http://www.opengis.net/cat/csw/2.0.2
http://schemas.opengis.net/csw/2.0.2/CSW-discovery.xsd">
<csw:Query typeNames="csw:Record">
<csw:ElementSetName>brief</csw:ElementSetName>
<csw:Constraint version="1.1.0">
<ogc:Filter>
<ogc:Or>
<ogc:PropertyIsEqualTo>
<ogc:PropertyName>dc:identifier</ogc:PropertyName>
<ogc:Literal>50e5ce21-7d99-4749-bb07-62645e8118e8</ogc:Literal>
</ogc:PropertyIsEqualTo>
<ogc:PropertyIsEqualTo>
<ogc:PropertyName>dc:identifier</ogc:PropertyName>
<ogc:Literal>02d9ca52-258e-41e9-b8af-83d5a2919083</ogc:Literal>
</ogc:PropertyIsEqualTo>
</ogc:Or>
</ogc:Filter>
</csw:Constraint>
</csw:Query>
</csw:GetRecords>
ici ca me renvoie un résumé avec mes 2 md
<csw:GetRecordsResponse xmlns:csw="
http://www.opengis.net/cat/csw/2.0.2"
xmlns:xsi="
http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="
http://www.opengis.net/cat/csw/2.0.2
http://schemas.opengis.net/csw/2.0.2/CSW-discovery.xsd">
<csw:SearchStatus timestamp="2023-04-27T11:03:25.611225Z" />
<csw:SearchResults numberOfRecordsMatched="2"
numberOfRecordsReturned="2" elementSet="brief" nextRecord="0">
<csw:BriefRecord xmlns:geonet="
http://www.fao.org/geonetwork"
xmlns:dc="
http://purl.org/dc/elements/1.1/"
xmlns:ows="
http://www.opengis.net/ows">
<dc:identifier>50e5ce21-7d99-4749-bb07-62645e8118e8</dc:identifier>
<dc:title>AC4 : AVAP - Éléments surfaciques</dc:title>
<dc:type>dataset</dc:type>
<ows:BoundingBox crs="urn:ogc:def:crs:EPSG:6.6:4326">
<ows:LowerCorner>45.18381469020419
3.6832959329235466</ows:LowerCorner>
<ows:UpperCorner>45.208939536773975
3.7291203414655465</ows:UpperCorner>
</ows:BoundingBox>
</csw:BriefRecord>
<csw:BriefRecord xmlns:geonet="
http://www.fao.org/geonetwork"
xmlns:dc="
http://purl.org/dc/elements/1.1/"
xmlns:ows="
http://www.opengis.net/ows">
<dc:identifier>02d9ca52-258e-41e9-b8af-83d5a2919083</dc:identifier>
<dc:title>AC4 : AVAP - Éléments linéaires</dc:title>
<dc:type>dataset</dc:type>
<ows:BoundingBox crs="urn:ogc:def:crs:EPSG:6.6:4326">
<ows:LowerCorner>45.189052568703154
3.6993737346305684</ows:LowerCorner>
<ows:UpperCorner>45.21215377158681
3.723981602109604</ows:UpperCorner>
</ows:BoundingBox>
</csw:BriefRecord>
</csw:SearchResults>
</csw:GetRecordsResponse>