Estoy tratando de utilizar el Registro EPSG API para exportar una versión del registro para su uso fuera de línea, pero estoy recibiendo un error de registro.
Después de seguir el Guía del desarrollador Estoy enviando por HTTP POST la siguiente solicitud XML a la URL de la API:
<?xml version="1.0" encoding="UTF-8"?>
<GetRecords
xmlns="http://www.opengis.net/cat/csw"
xmlns:ogc="http://www.opengis.net/ogc"
startPosition="1" maxRecords="100"
outputFormat="application/xml; charset=UTF-8"
resultType="results">
<!--
Retrieve the ReleaseObject releated to the current Version History record.
Then use the ReleaseObject identifier to obtain the actual compressed
GML Dictionary file containing the EPSG Dataset via a getRepositoryItem
request.
-->
<Query typeNames="Association=a RegistryObject=release">
<ElementSetName typeNames="release">full</ElementSetName>
<Constraint version="1.1.0">
<ogc:Filter>
<ogc:And>
<!-- find the correct association -->
<ogc:PropertyIsEqualTo>
<ogc:PropertyName>$a/targetObject</ogc:PropertyName>
<ogc:Literal>urn:ogc:def:version-history:EPSG::6.15</ogc:Literal>
</ogc:PropertyIsEqualTo>
<ogc:PropertyIsEqualTo>
<ogc:PropertyName>$a/associationType</ogc:PropertyName>
<ogc:Literal>
urn:x-ogp:def:AssociationType:EPSG:ReleaseFor</ogc:Literal>
</ogc:PropertyIsEqualTo>
<!-- now relate it to the ReleaseObject -->
<ogc:PropertyIsEqualTo>
<ogc:PropertyName>$a/sourceObject</ogc:PropertyName>
<ogc:PropertyName>$release/id</ogc:PropertyName>
</ogc:PropertyIsEqualTo>
</ogc:And>
</ogc:Filter>
</Constraint>
</Query>
</GetRecords>
El XML se copia de sección 5.3 'Cómo... Exportar una liberación' de la guía, y la URL para enviar GetRecords
se sugiere por sección 4.1.1 "GetRecordById . La respuesta de error XML que obtengo es la siguiente:
<?xml version="1.0"?>
<ows:ExceptionReport xmlns:ows="http://www.opengis.net/ows" version="2.0">
<ows:Exception exceptionCode="InvalidRequest">
<ows:ExceptionText>XML Schema validation error</ows:ExceptionText>
<ows:ExceptionText>
Error:Error
Line: 2
Column: 193
Message: cvc-elt.1: Cannot find the declaration of element 'GetRecords'.
</ows:ExceptionText>
</ows:Exception>
</ows:ExceptionReport>
Estoy utilizando el curl
programa de línea de comandos para ejecutar la consulta de la siguiente manera:
curl -H 'Content-Type: appliation/xml' --data @request.xml 'http://www.epsg-registry.org/indicio/query'
¿Puedes ver dónde me equivoco? Si no es así, ¿hay alguna otra forma de descargar automáticamente el registro? Soy consciente de que puedo entrar en la interfaz HTML del Registro y descargar el registro desde allí, pero me gustaría pero me gustaría automatizar el proceso.