Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Problem to insert metadata with Rest Api #8520

Open
glascaleia opened this issue Nov 27, 2024 · 6 comments
Open

Problem to insert metadata with Rest Api #8520

glascaleia opened this issue Nov 27, 2024 · 6 comments

Comments

@glascaleia
Copy link

Hi ,
I'm trying to insert a metadata with the rest api.
I generated the client using the example described here : https://docs.geonetwork-opensource.org/3.12/api/the-geonetwork-api/#building-client-for-the-api-using-codegen.

Here the code :
try {
client.getHttpClient().networkInterceptors().add(new BasicAuthInterceptor(USERNAME, PASSWORD));
MeApi meApi = new MeApi(client);
ApiResponse apiResponse = meApi.getMeWithHttpInfo();
// client.getHttpClient().networkInterceptors().clear();
// client.getHttpClient().networkInterceptors().add(new XSRFInterceptor(apiResponse.getHeaders().get("Set-Cookie").getFirst().split(";")[0]));
List values = apiResponse.getHeaders().get("Set-Cookie");
String[] tokenValues = values.getFirst().split(";")[0].split("=");
String[] tokenJsessionID = values.get(1).split("=");
logger.info("##################TOKEN : {}\n", Arrays.toString(tokenValues));
logger.info("##################TOKEN_JSESSION_ID : {}\n", Arrays.toString(tokenJsessionID));

        HttpUrl url = HttpUrl.parse(CATALOGUE_URL + "/records")
                .newBuilder()
                .addQueryParameter("metadataType", "METADATA")
                .addQueryParameter("uuidProcessing", "NOTHING")
                .addQueryParameter("publishToAll", TRUE.toString())
                .addQueryParameter("assignToCatalog", TRUE.toString())
                .addQueryParameter("transformWith", "_none_")
                .build();
        RequestBody requestBody = new MultipartBuilder()
                .type(FORM)
                .addFormDataPart("file", xmlOutputFile.getName(),
                        RequestBody.create(MediaType.parse("application/octet-stream"), xmlOutputFile))
                .build();

        Request request = new Request.Builder()
                .url(url)
                .post(requestBody)
                .header("X-XSRF-TOKEN", tokenValues[1])
                .build();
        Response response = client.getHttpClient().newCall(request).execute();
        if (response.isSuccessful()) {
            logger.info("File caricato con successo! Risposta: {}", response.body().string());
        } else {
            logger.info("Errore durante il caricamento del file: {}", response.code());
            logger.info("Risposta: {}", response.body().string());
        }
    } catch (ApiException e) {
        e.printStackTrace();
    }

But the response code is 500 with empty response.
Here the debug for okhttpclient
--> POST http://localhost:8080/geonetwork/srv/api/records?metadataType=METADATA&uuidProcessing=NOTHING&publishToAll=true&assignToCatalog=true&transformWith=_none_ HTTP/1.1
Content-Type: multipart/form-data; boundary=219f4fc3-49c5-4042-9262-5cc9308d04bc
Content-Length: 8456
X-XSRF-TOKEN: 82a459bd-9c48-42c5-a26d-43f531f08519

--219f4fc3-49c5-4042-9262-5cc9308d04bc
Content-Disposition: form-data; name="file"; filename="example-of-actris-metadata.xml"
Content-Type: application/octet-stream
Content-Length: 8220

<md_metadata>
    <id>85553</id>
    <provider>
        <name>ARES</name>
        <atom>http://localhost:5009/providers/10</atom>
    </provider>
    <file_identifier>EARLINET_AerRemSen_pot_Lev01_b0355_202311140004_202311140104_v01_qc03.nc</file_identifier>
    <language>en</language>
    <hierarchy_level>dataset</hierarchy_level>
    <online_resource>
        <linkage>https://data.earlinet.org/</linkage>
    </online_resource>
    <datestamp>2023-11-14T08:01:00.0000000Z</datestamp>
    <created>2024-06-11T10:26:05.0000000Z</created>
    <contact>
        <first_name>Lucia</first_name>
        <last_name>Mona</last_name>
        <organisation_name>CNR-IMAA</organisation_name>
        <role_code>custodian</role_code>
        <role_code>distributor</role_code>
        <role_code>pointOfContact</role_code>
        <role_code>processor</role_code>
        <role_code>publisher</role_code>
        <role_code>resourceProvider</role_code>
        <role_code/>
        <country_code>IT</country_code>
        <delivery_point>Contrada S.Loja, Zona Industriale - Tito Scalo I-85050 Potenza</delivery_point>
        <address_city>Potenza</address_city>
        <email>[email protected]</email>
        <position_name>Senior Researcher</position_name>
    </contact>
    <contact/>
</md_metadata>
<md_identification>
    <abstract>Profiles of aerosol optical properties</abstract>
    <title>Aerosol particle backscatter profiles @355nm at Potenza, Italy</title>
    <date_type>creation</date_type>
    <contact>
        <first_name>Aldo</first_name>
        <last_name>Amodeo</last_name>
        <organisation_name>Consiglio Nazionale delle Ricerche - Istituto di Metodologie per l'Analisi Ambientale</organisation_name>
        <role_code>originator</role_code>
        <role_code>principalInvestigator</role_code>
        <role_code/>
        <country_code>IT</country_code>
        <delivery_point>Contrada S.Loja, Zona Industriale - Tito Scalo I-85050 Potenza</delivery_point>
        <address_city>Potenza, Italy</address_city>
        <email>[email protected]</email>
        <position_name>Senior Scientist</position_name>
    </contact>
    <contact/>
    <online_resource>
        <linkage>https://hdl.handle.net/20.500.12911/1.4KY42EL7067PLWJE</linkage>
    </online_resource>
    <identifier>
        <pid>https://hdl.handle.net/20.500.12911/1.4KY42EL7067PLWJE</pid>
        <type>handle</type>
    </identifier>
    <date>2023-11-14T08:01:00.0000000Z</date>
</md_identification>
<md_constraints>
    <access_constraints>license</access_constraints>
    <use_constraints>license</use_constraints>
    <other_constraints>N/A</other_constraints>
    <data_licence>CC-BY-4.0</data_licence>
    <metadata_licence>CC-BY-4.0</metadata_licence>
    <citation>Aldo Amodeo, "Aerosol particle backscatter profile at 355nm in Potenza, Italy at  2023-11-14T00:04 : 2023-11-14T01:04 UTC", ACTRIS Aerosol remote sensing data centre unit (ARES) hosted by CNR IMAA, https://hdl.handle.net/20.500.12911/1.4KY42EL7067PLWJE, 2023.</citation>
    <acknowledgement>We acknowledge ACTRIS and National Research Council of Italy for providing the data set which is available for download from https://data.earlinet.org .</acknowledgement>
</md_constraints>
<md_keywords>
    <keywords>355</keywords>
    <keywords>actris</keywords>
    <keywords>ares</keywords>
    <keywords>b</keywords>
    <keywords>lev1.0</keywords>
    <keywords>pot</keywords>
    <keywords>qc3</keywords>
    <keywords/>
</md_keywords>
<md_data_identification>
    <language>en</language>
    <topic_category>climatologyMeteorologyAtmosphere</topic_category>
    <description>Profiles of aerosol optical properties</description>
    <facility>
        <identifier>epdw</identifier>
        <name>Potenza</name>
        <lat>40.601</lat>
        <lon>15.724</lon>
        <alt>760.0</alt>
        <country_code>IT</country_code>
        <wmo_region>Europe</wmo_region>
        <identifier_type>other PID</identifier_type>
        <uri>https://prod-actris-md.nilu.no/facilities/epdw</uri>
    </facility>
</md_data_identification>
<ex_geographic_bounding_box>
    <west_bound_longitude>15.720000267028809</west_bound_longitude>
    <east_bound_longitude>15.720000267028809</east_bound_longitude>
    <south_bound_latitude>40.599998474121094</south_bound_latitude>
    <north_bound_latitude>40.599998474121094</north_bound_latitude>
</ex_geographic_bounding_box>
<ex_temporal_extent>
    <time_period_begin>2023-11-14T00:04:08.0000000Z</time_period_begin>
    <time_period_end>2023-11-14T01:04:34.0000000Z</time_period_end>
</ex_temporal_extent>
<ex_vertical_extent>
    <minimum_value>null</minimum_value>
    <maximum_value>null</maximum_value>
    <unit_of_measure>m above sea level</unit_of_measure>
</ex_vertical_extent>
<md_content_information>
    <attribute_descriptions>aerosol particle backscatter coefficient</attribute_descriptions>
    <attribute_descriptions>aerosol particle light backscatter linear depolarization ratio</attribute_descriptions>
    <attribute_descriptions>atmosphere light backscatter linear depolarization ratio</attribute_descriptions>
    <attribute_descriptions/>
    <content_type>physicalMeasurement</content_type>
</md_content_information>
<md_distribution_information>
    <data_format>netcdf</data_format>
    <version_data_format>HDF5 (NETCDF4)</version_data_format>
    <dataset_url>https://data.earlinet.org/api/services/restapi/opticalproducts/id/131187/downloads</dataset_url>
    <protocol>HTTP</protocol>
    <function>download</function>
    <restriction>
        <set>false</set>
    </restriction>
    <transfersize>60.61621</transfersize>
    <description>Direct download of data file</description>
</md_distribution_information>
<md_distribution_information/>
<md_actris_specific>
    <facility_type>observation platform, fixed</facility_type>
    <product_type>observation</product_type>
    <matrix>aerosol particle phase</matrix>
    <sub_matrix>null</sub_matrix>
    <instrument_type>lidar</instrument_type>
    <instrument_type/>
    <program_affiliation>ACTRIS</program_affiliation>
    <program_affiliation>EARLINET</program_affiliation>
    <program_affiliation>GALION</program_affiliation>
    <program_affiliation/>
    <variable_statistical_property>average</variable_statistical_property>
    <variable_statistical_property>linear standard deviation</variable_statistical_property>
    <variable_statistical_property/>
    <legacy_data>false</legacy_data>
    <observation_timeliness>scheduled</observation_timeliness>
    <data_product>Scheduled data - QA/QC tests partially passed</data_product>
    <version>
        <number>1</number>
    </version>
</md_actris_specific>
<dq_data_quality_information>
    <level>dataset</level>
    <statement>Quality Control version 3/Centralized Processing</statement>
    <compliance>ACTRIS associated</compliance>
    <quality_control_extent>full quality control applied</quality_control_extent>
    <quality_control_outcome>3 - Questionable/suspect</quality_control_outcome>
</dq_data_quality_information>
<provenance>
    <software>https://scc.imaa.cnr.it/</software>
    <version_history>null</version_history>
</provenance>

</gmd:MD_Metadata>

--219f4fc3-49c5-4042-9262-5cc9308d04bc--

--> END POST (8456-byte body)
<-- HTTP/1.1 500 Internal Server Error (80ms)
Alt-Svc: h3=":443"; ma=2592000
Cache-Control: no-cache
Content-Length: 0
Content-Security-Policy: frame-ancestors 'self'
Content-Type: text/html;charset=utf-8
Expires: Thu, 01 Jan 1970 00:00:00 GMT
Expires: -1
Pragma: no-cache
Referrer-Policy: same-origin
Server: Caddy
Server: Jetty(9.4.56.v20240826)
Set-Cookie: serverTime=1732693181284; Path=/geonetwork
Set-Cookie: sessionExpiry=1732695281284; Path=/geonetwork
Strict-Transport-Security: max-age=31536000; includeSubdomains
X-Content-Type-Options: nosniff
X-Frame-Options: SAMEORIGIN
X-Frame-Options: SAMEORIGIN
X-Xss-Protection: 1; mode=block
Date: Wed, 27 Nov 2024 07:39:41 GMT
OkHttp-Sent-Millis: 1732693181261
OkHttp-Received-Millis: 1732693181340
<-- END HTTP (0-byte body)
08:39:41.341 [main] INFO o.g.d.m.c.DataciteJsonToCswConverterTest - Errore durante il caricamento del file: 500

How i can resolve??
Regards
Giuseppe

To Reproduce
Steps to reproduce the behavior:

  1. Go to '...'
  2. Click on '....'
  3. Scroll down to '....'
  4. See error in '...'

Expected behavior
A clear and concise description of what you expected to happen.

Screenshots
If applicable, add screenshots to help explain your problem.

Log file
If applicable, add the server log file to help trace your problem.

Desktop (please complete the following information):

  • Browser [e.g. chrome, safari]
  • GeoNetwork Version [e.g. 22]
  • Server Application [e.g. Tomcat 7 with Java 8]

Additional context
Add any other context about the problem here.

@jahow
Copy link
Contributor

jahow commented Nov 27, 2024

Hi! This error isn't giving much information so here's a couple of things to help you out:

  • The GeoNetwork log probably contains the actual error that happened, you might want to look there
  • AFAIK the insert records API does not support multipart, only XML (application/xml) as input
  • the metadata that you're trying to insert looks malformed? There's a missing gmd:MD_Metadata opening tag, and the xml elements inside are not standard ISO 19139.

Also, it would be very helpful if you could format your code snippets and logs a bit better in order to make easier for people to look at it 🙂

@glascaleia
Copy link
Author

Hi i change the file now .
Here the okhttpclient code in debug
--> POST http://localhost:8080/geonetwork/srv/api/records?metadataType=METADATA&uuidProcessing=NOTHING&publishToAll=true&assignToCatalog=true&transformWith=_none_ HTTP/1.1
Content-Type: multipart/form-data; boundary=7617295b-9851-4b35-963e-cb0488cda4a7
Content-Length: 56678
X-XSRF-TOKEN: 1d4d1eee-c135-49f2-8c02-551f7fe01aba

--7617295b-9851-4b35-963e-cb0488cda4a7
Content-Disposition: form-data; name="file"; filename="csw.xml"
Content-Type: application/xml
Content-Length: 56473

<gmd:MD_Metadata xmlns:gmd="http://www.isotc211.org/2005/gmd" xmlns:gco="http://www.isotc211.org/2005/gco" xmlns:gsr="http://www.isotc211.org/2005/gsr" xmlns:gmi="http://www.isotc211.org/2005/gmi" xmlns:gts="http://www.isotc211.org/2005/gts" xmlns:srv="http://www.isotc211.org/2005/srv" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:gmx="http://www.isotc211.org/2005/gmx" xmlns:gml="http://www.opengis.net/gml/3.2" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.isotc211.org/2005/gmd http://schemas.opengis.net/csw/2.0.2/profiles/apiso/1.0.0/apiso.xsd">
gmd:fileIdentifier
gco:CharacterStringp_bz:Soil:OfferingEnergy-PotentialGlobalRadiation</gco:CharacterString>
</gmd:fileIdentifier>
gmd:language
<gmd:LanguageCode codeList="http://www.loc.gov/standards/iso639-2/" codeListValue="ita">ita</gmd:LanguageCode>
</gmd:language>
gmd:characterSet
<gmd:MD_CharacterSetCode codeListValue="utf8" codeList="http://standards.iso.org/iso/19139/resources/gmxCodelists.xml#MD_CharacterSetCode">utf8</gmd:MD_CharacterSetCode>
</gmd:characterSet>
gmd:parentIdentifier/
gmd:hierarchyLevel
<gmd:MD_ScopeCode codeList="http://standards.iso.org/iso/19139/resources/gmxCodelists.xml#MD_ScopeCode" codeListValue="dataset">dataset</gmd:MD_ScopeCode>
</gmd:hierarchyLevel>
gmd:contact
gmd:CI_ResponsibleParty
<gmd:organisationName xsi:type="gmd:PT_FreeText_PropertyType">
gco:CharacterStringCentro di Sperimentazione Laimburg</gco:CharacterString>
gmd:PT_FreeText
gmd:textGroup
<gmd:LocalisedCharacterString locale="#IT">Centro di Sperimentazione Laimburg</gmd:LocalisedCharacterString>
</gmd:textGroup>
gmd:textGroup
<gmd:LocalisedCharacterString locale="#DE">Versuchszentrum Laimburg</gmd:LocalisedCharacterString>
</gmd:textGroup>
</gmd:PT_FreeText>
</gmd:organisationName>
gmd:contactInfo
gmd:CI_Contact
gmd:phone
gmd:CI_Telephone
gmd:voice
gco:CharacterString+39 0471 969500</gco:CharacterString>
</gmd:voice>
</gmd:CI_Telephone>
</gmd:phone>
gmd:address
gmd:CI_Address
<gmd:electronicMailAddress xsi:type="gmd:PT_FreeText_PropertyType">
gco:CharacterString[email protected]</gco:CharacterString>
gmd:PT_FreeText
gmd:textGroup
<gmd:LocalisedCharacterString locale="#IT">[email protected]</gmd:LocalisedCharacterString>
</gmd:textGroup>
gmd:textGroup
<gmd:LocalisedCharacterString locale="#DE">[email protected]</gmd:LocalisedCharacterString>
</gmd:textGroup>
</gmd:PT_FreeText>
</gmd:electronicMailAddress>
</gmd:CI_Address>
</gmd:address>
gmd:onlineResource
gmd:CI_OnlineResource
gmd:linkage
gmd:URLhttps://www.laimburg.it/it/default.asp</gmd:URL>
</gmd:linkage>
</gmd:CI_OnlineResource>
</gmd:onlineResource>
</gmd:CI_Contact>
</gmd:contactInfo>
gmd:role
<gmd:CI_RoleCode codeList="http://standards.iso.org/iso/19139/resources/gmxCodelists.xml#CI_RoleCode" codeListValue="pointOfContact">punto di contatto</gmd:CI_RoleCode>
</gmd:role>
</gmd:CI_ResponsibleParty>
</gmd:contact>
gmd:dateStamp
gco:Date2024-06-06</gco:Date>
</gmd:dateStamp>
gmd:metadataStandardName
gco:CharacterStringLinee Guida RNDT</gco:CharacterString>
</gmd:metadataStandardName>
gmd:metadataStandardVersion
gco:CharacterString2.0</gco:CharacterString>
</gmd:metadataStandardVersion>
gmd:locale
<gmd:PT_Locale id="IT">
gmd:languageCode
<gmd:LanguageCode codeList="http://www.loc.gov/standards/iso639-2/" codeListValue="ita"/>
</gmd:languageCode>
gmd:characterEncoding
<gmd:MD_CharacterSetCode codeList="http://standards.iso.org/iso/19139/resources/gmxCodelists.xml#MD_CharacterSetCode" codeListValue="utf8"/>
</gmd:characterEncoding>
</gmd:PT_Locale>
</gmd:locale>
gmd:locale
<gmd:PT_Locale id="DE">
gmd:languageCode
<gmd:LanguageCode codeList="http://www.loc.gov/standards/iso639-2/" codeListValue="ger"/>
</gmd:languageCode>
gmd:characterEncoding
<gmd:MD_CharacterSetCode codeList="http://standards.iso.org/iso/19139/resources/gmxCodelists.xml#MD_CharacterSetCode" codeListValue="utf8"/>
</gmd:characterEncoding>
</gmd:PT_Locale>
</gmd:locale>
gmd:referenceSystemInfo
gmd:MD_ReferenceSystem
gmd:referenceSystemIdentifier
gmd:RS_Identifier
gmd:code
gco:CharacterStringETRS89/ETRS-TM32</gco:CharacterString>
</gmd:code>
</gmd:RS_Identifier>
</gmd:referenceSystemIdentifier>
</gmd:MD_ReferenceSystem>
</gmd:referenceSystemInfo>
gmd:identificationInfo
gmd:MD_DataIdentification
gmd:citation
gmd:CI_Citation
<gmd:title xsi:type="gmd:PT_FreeText_PropertyType">
gco:CharacterStringProgetto VEGEMONT: Radiazione globale durante la stagione vegetativa su base topografica</gco:CharacterString>
gmd:PT_FreeText
gmd:textGroup
<gmd:LocalisedCharacterString locale="#IT">Progetto VEGEMONT: Radiazione globale durante la stagione vegetativa su base topografica</gmd:LocalisedCharacterString>
</gmd:textGroup>
gmd:textGroup
<gmd:LocalisedCharacterString locale="#DE">Projekt VEGEMONT: Globalstrahlung während der Vegetationsperiode auf topografischer Basis</gmd:LocalisedCharacterString>
</gmd:textGroup>
</gmd:PT_FreeText>
</gmd:title>
gmd:date
gmd:CI_Date
gmd:date
gco:Date2016-01-01</gco:Date>
</gmd:date>
gmd:dateType
<gmd:CI_DateTypeCode codeList="http://standards.iso.org/iso/19139/resources/gmxCodelists.xml#CI_DateTypeCode" codeListValue="creation">creazione</gmd:CI_DateTypeCode>
</gmd:dateType>
</gmd:CI_Date>
</gmd:date>
gmd:date
gmd:CI_Date
gmd:date
gco:Date2016-01-01</gco:Date>
</gmd:date>
gmd:dateType
<gmd:CI_DateTypeCode codeList="http://standards.iso.org/iso/19139/resources/gmxCodelists.xml#CI_DateTypeCode" codeListValue="publication">publication</gmd:CI_DateTypeCode>
</gmd:dateType>
</gmd:CI_Date>
</gmd:date>
gmd:identifier
gmd:MD_Identifier
gmd:code
gco:CharacterStringp_bz:Soil:OfferingEnergy-PotentialGlobalRadiation</gco:CharacterString>
</gmd:code>
</gmd:MD_Identifier>
</gmd:identifier>
gmd:citedResponsibleParty
gmd:CI_ResponsibleParty
<gmd:organisationName xsi:type="gmd:PT_FreeText_PropertyType">
gco:CharacterStringProvincia Autonoma di Bolzano</gco:CharacterString>
gmd:PT_FreeText
gmd:textGroup
<gmd:LocalisedCharacterString locale="#IT">Provincia Autonoma di Bolzano</gmd:LocalisedCharacterString>
</gmd:textGroup>
gmd:textGroup
<gmd:LocalisedCharacterString locale="#DE">Autonome Provinz Bozen</gmd:LocalisedCharacterString>
</gmd:textGroup>
</gmd:PT_FreeText>
</gmd:organisationName>
gmd:contactInfo
gmd:CI_Contact
gmd:phone
gmd:CI_Telephone
gmd:voice
gco:CharacterString+39 0471 417820</gco:CharacterString>
</gmd:voice>
</gmd:CI_Telephone>
</gmd:phone>
gmd:address
gmd:CI_Address
<gmd:electronicMailAddress xsi:type="gmd:PT_FreeText_PropertyType">
gco:CharacterString[email protected]</gco:CharacterString>
gmd:PT_FreeText
gmd:textGroup
<gmd:LocalisedCharacterString locale="#IT">[email protected]</gmd:LocalisedCharacterString>
</gmd:textGroup>
gmd:textGroup
<gmd:LocalisedCharacterString locale="#DE">[email protected]</gmd:LocalisedCharacterString>
</gmd:textGroup>
</gmd:PT_FreeText>
</gmd:electronicMailAddress>
</gmd:CI_Address>
</gmd:address>
gmd:onlineResource
gmd:CI_OnlineResource
gmd:linkage
gmd:URLhttps://www.provincia.bz.it/natura-ambiente/natura-territorio/cartografia-provinciale-coordinamento-geodati.asp</gmd:URL>
</gmd:linkage>
</gmd:CI_OnlineResource>
</gmd:onlineResource>
</gmd:CI_Contact>
</gmd:contactInfo>
gmd:role
<gmd:CI_RoleCode codeList="http://standards.iso.org/iso/19139/resources/gmxCodelists.xml#CI_RoleCode" codeListValue="owner">owner</gmd:CI_RoleCode>
</gmd:role>
</gmd:CI_ResponsibleParty>
</gmd:citedResponsibleParty>
gmd:citedResponsibleParty
gmd:CI_ResponsibleParty
<gmd:organisationName xsi:type="gmd:PT_FreeText_PropertyType">
gco:CharacterStringCentro di Sperimentazione Laimburg</gco:CharacterString>
gmd:PT_FreeText
gmd:textGroup
<gmd:LocalisedCharacterString locale="#IT">Centro di Sperimentazione Laimburg</gmd:LocalisedCharacterString>
</gmd:textGroup>
gmd:textGroup
<gmd:LocalisedCharacterString locale="#DE">Versuchszentrum Laimburg</gmd:LocalisedCharacterString>
</gmd:textGroup>
</gmd:PT_FreeText>
</gmd:organisationName>
gmd:contactInfo
gmd:CI_Contact
gmd:phone
gmd:CI_Telephone
gmd:voice
gco:CharacterString+39 0471 969500</gco:CharacterString>
</gmd:voice>
</gmd:CI_Telephone>
</gmd:phone>
gmd:address
gmd:CI_Address
<gmd:electronicMailAddress xsi:type="gmd:PT_FreeText_PropertyType">
gco:CharacterString[email protected]</gco:CharacterString>
gmd:PT_FreeText
gmd:textGroup
<gmd:LocalisedCharacterString locale="#IT">[email protected]</gmd:LocalisedCharacterString>
</gmd:textGroup>
gmd:textGroup
<gmd:LocalisedCharacterString locale="#DE">[email protected]</gmd:LocalisedCharacterString>
</gmd:textGroup>
</gmd:PT_FreeText>
</gmd:electronicMailAddress>
</gmd:CI_Address>
</gmd:address>
gmd:onlineResource
gmd:CI_OnlineResource
gmd:linkage
gmd:URLhttps://www.laimburg.it/it/default.asp</gmd:URL>
</gmd:linkage>
</gmd:CI_OnlineResource>
</gmd:onlineResource>
</gmd:CI_Contact>
</gmd:contactInfo>
gmd:role
<gmd:CI_RoleCode codeList="http://standards.iso.org/iso/19139/resources/gmxCodelists.xml#CI_RoleCode" codeListValue="author">author</gmd:CI_RoleCode>
</gmd:role>
</gmd:CI_ResponsibleParty>
</gmd:citedResponsibleParty>
gmd:presentationForm
<gmd:CI_PresentationFormCode codeList="http://standards.iso.org/iso/19139/resources/gmxCodelists.xml#CI_PresentationFormCode" codeListValue="mapDigital"/>
</gmd:presentationForm>
gmd:series
gmd:CI_Series
gmd:issueIdentification
gco:CharacterStringp_bz:Soil:OfferingEnergy-PotentialGlobalRadiation</gco:CharacterString>
</gmd:issueIdentification>
</gmd:CI_Series>
</gmd:series>
</gmd:CI_Citation>
</gmd:citation>
<gmd:abstract xsi:type="gmd:PT_FreeText_PropertyType">
gco:CharacterStringProgetto VEGEMONT: Radiazione globale durante la stagione vegetativa su base topografica</gco:CharacterString>
gmd:PT_FreeText
gmd:textGroup
<gmd:LocalisedCharacterString locale="#IT">Progetto VEGEMONT: Radiazione globale durante la stagione vegetativa su base topografica</gmd:LocalisedCharacterString>
</gmd:textGroup>
gmd:textGroup
<gmd:LocalisedCharacterString locale="#DE">Projekt VEGEMONT: Globalstrahlung während der Vegetationsperiode auf topografischer Basis</gmd:LocalisedCharacterString>
</gmd:textGroup>
</gmd:PT_FreeText>
</gmd:abstract>
gmd:status
<gmd:MD_ProgressCode codeListValue="completed" codeList="http://standards.iso.org/iso/19139/resources/gmxCodelists.xml#MD_ProgressCode"/>
</gmd:status>
gmd:pointOfContact
gmd:CI_ResponsibleParty
<gmd:organisationName xsi:type="gmd:PT_FreeText_PropertyType">
gco:CharacterStringCentro di Sperimentazione Laimburg</gco:CharacterString>
gmd:PT_FreeText
gmd:textGroup
<gmd:LocalisedCharacterString locale="#IT">Centro di Sperimentazione Laimburg</gmd:LocalisedCharacterString>
</gmd:textGroup>
gmd:textGroup
<gmd:LocalisedCharacterString locale="#DE">Versuchszentrum Laimburg</gmd:LocalisedCharacterString>
</gmd:textGroup>
</gmd:PT_FreeText>
</gmd:organisationName>
gmd:contactInfo
gmd:CI_Contact
gmd:phone
gmd:CI_Telephone
gmd:voice
gco:CharacterString+39 0471 969500</gco:CharacterString>
</gmd:voice>
gmd:facsimile
gco:CharacterString/
</gmd:facsimile>
</gmd:CI_Telephone>
</gmd:phone>
gmd:address
gmd:CI_Address
<gmd:electronicMailAddress xsi:type="gmd:PT_FreeText_PropertyType">
gco:CharacterString[email protected]</gco:CharacterString>
gmd:PT_FreeText
gmd:textGroup
<gmd:LocalisedCharacterString locale="#IT">[email protected]</gmd:LocalisedCharacterString>
</gmd:textGroup>
gmd:textGroup
<gmd:LocalisedCharacterString locale="#DE">[email protected]</gmd:LocalisedCharacterString>
</gmd:textGroup>
</gmd:PT_FreeText>
</gmd:electronicMailAddress>
</gmd:CI_Address>
</gmd:address>
gmd:onlineResource
gmd:CI_OnlineResource
gmd:linkage
gmd:URLhttps://www.laimburg.it/it/default.asp</gmd:URL>
</gmd:linkage>
</gmd:CI_OnlineResource>
</gmd:onlineResource>
</gmd:CI_Contact>
</gmd:contactInfo>
gmd:role
<gmd:CI_RoleCode codeList="http://standards.iso.org/iso/19139/resources/gmxCodelists.xml#CI_RoleCode" codeListValue="pointOfContact">pointOfContact</gmd:CI_RoleCode>
</gmd:role>
</gmd:CI_ResponsibleParty>
</gmd:pointOfContact>
gmd:resourceMaintenance
gmd:MD_MaintenanceInformation
gmd:maintenanceAndUpdateFrequency
<gmd:MD_MaintenanceFrequencyCode codeListValue="notPlanned" codeList="http://standards.iso.org/iso/19139/resources/gmxCodelists.xml#MD_MaintenanceFrequencyCode"/>
</gmd:maintenanceAndUpdateFrequency>
</gmd:MD_MaintenanceInformation>
</gmd:resourceMaintenance>
gmd:graphicOverview
gmd:MD_BrowseGraphic
gmd:fileName
gco:CharacterStringhttps://geoservices6.civis.bz.it/geoserver/p_bz-Soil/ows?SERVICE=WMS&VERSION=1.1.1&REQUEST=GetMap&FORMAT=image/png&TRANSPARENT=true&LAYERS=OfferingEnergy-PotentialGlobalRadiation&exceptions=application/vnd.ogc.se_inimage&SRS=EPSG:25832&STYLES=&WIDTH=769&HEIGHT=476&BBOX=568665.6809273337,5097834.342663296,803217.3688715831,5243207.524253741</gco:CharacterString>
</gmd:fileName>
gmd:fileDescription
gco:CharacterStringWMS GetMap</gco:CharacterString>
</gmd:fileDescription>
</gmd:MD_BrowseGraphic>
</gmd:graphicOverview>
gmd:descriptiveKeywords
gmd:MD_Keywords
<gmd:keyword xsi:type="gmd:PT_FreeText_PropertyType">
gco:CharacterStringRegionale</gco:CharacterString>
gmd:PT_FreeText
gmd:textGroup
<gmd:LocalisedCharacterString locale="#IT">Regionale</gmd:LocalisedCharacterString>
</gmd:textGroup>
gmd:textGroup
<gmd:LocalisedCharacterString locale="#DE">Regional</gmd:LocalisedCharacterString>
</gmd:textGroup>
</gmd:PT_FreeText>
</gmd:keyword>
gmd:type
<gmd:MD_KeywordTypeCode codeList="http://standards.iso.org/iso/19139/resources/gmxCodelists.xml#MD_KeywordTypeCode" codeListValue="theme"/>
</gmd:type>
gmd:thesaurusName
gmd:CI_Citation
gmd:title
gco:CharacterStringSpatial scope</gco:CharacterString>
</gmd:title>
gmd:date
gmd:CI_Date
gmd:date
gco:Date2019-05-22</gco:Date>
</gmd:date>
gmd:dateType
<gmd:CI_DateTypeCode codeList="http://standards.iso.org/iso/19139/resources/gmxCodelists.xml#CI_DateTypeCode" codeListValue="publication">publication</gmd:CI_DateTypeCode>
</gmd:dateType>
</gmd:CI_Date>
</gmd:date>
gmd:identifier
gmd:MD_Identifier
gmd:code
<gmx:Anchor xlink:href="srv/api/registries/vocabularies/external.theme.SpatialScope">geonetwork.thesaurus.external.theme.SpatialScope</gmx:Anchor>
</gmd:code>
</gmd:MD_Identifier>
</gmd:identifier>
</gmd:CI_Citation>
</gmd:thesaurusName>
</gmd:MD_Keywords>
</gmd:descriptiveKeywords>
gmd:descriptiveKeywords
gmd:MD_Keywords
gmd:keyword
gco:CharacterStringNational legislation</gco:CharacterString>
</gmd:keyword>
gmd:type
<gmd:MD_KeywordTypeCode codeList="http://standards.iso.org/iso/19139/resources/gmxCodelists.xml#MD_KeywordTypeCode" codeListValue="theme"/>
</gmd:type>
gmd:thesaurusName
gmd:CI_Citation
gmd:title
gco:CharacterStringINSPIRE priority data set</gco:CharacterString>
</gmd:title>
gmd:date
gmd:CI_Date
gmd:date
gco:Date2018-04-04</gco:Date>
</gmd:date>
gmd:dateType
<gmd:CI_DateTypeCode codeList="http://standards.iso.org/iso/19139/resources/gmxCodelists.xml#CI_DateTypeCode" codeListValue="publication">publication</gmd:CI_DateTypeCode>
</gmd:dateType>
</gmd:CI_Date>
</gmd:date>
gmd:identifier
gmd:MD_Identifier
gmd:code
<gmx:Anchor xlink:href="srv/api/registries/vocabularies/external.theme.PriorityDataset">geonetwork.thesaurus.external.theme.PriorityDataset</gmx:Anchor>
</gmd:code>
</gmd:MD_Identifier>
</gmd:identifier>
</gmd:CI_Citation>
</gmd:thesaurusName>
</gmd:MD_Keywords>
</gmd:descriptiveKeywords>
gmd:descriptiveKeywords
gmd:MD_Keywords
<gmd:keyword xsi:type="gmd:PT_FreeText_PropertyType">
gco:CharacterStringClimatologia/Meteorologia/Atmosfera</gco:CharacterString>
gmd:PT_FreeText
gmd:textGroup
<gmd:LocalisedCharacterString locale="#IT">Climatologia/Meteorologia/Atmosfera</gmd:LocalisedCharacterString>
</gmd:textGroup>
gmd:textGroup
<gmd:LocalisedCharacterString locale="#DE">Klimatologie/Meteorologie/Atmosphäre</gmd:LocalisedCharacterString>
</gmd:textGroup>
</gmd:PT_FreeText>
</gmd:keyword>
gmd:type
<gmd:MD_KeywordTypeCode codeList="http://standards.iso.org/iso/19139/resources/gmxCodelists.xml#MD_KeywordTypeCode" codeListValue="theme"/>
</gmd:type>
gmd:thesaurusName
gmd:CI_Citation
gmd:title
gco:CharacterStringTopic categories in accordance with EN ISO 19115</gco:CharacterString>
</gmd:title>
gmd:date
gmd:CI_Date
gmd:date
gco:Date2021-09-20</gco:Date>
</gmd:date>
gmd:dateType
<gmd:CI_DateTypeCode codeList="http://standards.iso.org/iso/19139/resources/gmxCodelists.xml#CI_DateTypeCode" codeListValue="publication">publication</gmd:CI_DateTypeCode>
</gmd:dateType>
</gmd:CI_Date>
</gmd:date>
gmd:identifier
gmd:MD_Identifier
gmd:code
<gmx:Anchor xlink:href="srv/api/registries/vocabularies/external.theme.TopicCategory">geonetwork.thesaurus.external.theme.TopicCategory</gmx:Anchor>
</gmd:code>
</gmd:MD_Identifier>
</gmd:identifier>
</gmd:CI_Citation>
</gmd:thesaurusName>
</gmd:MD_Keywords>
</gmd:descriptiveKeywords>
gmd:descriptiveKeywords
gmd:MD_Keywords
<gmd:keyword xsi:type="gmd:PT_FreeText_PropertyType">
gco:CharacterStringCondizioni atmosferiche</gco:CharacterString>
gmd:PT_FreeText
gmd:textGroup
<gmd:LocalisedCharacterString locale="#IT">Condizioni atmosferiche</gmd:LocalisedCharacterString>
</gmd:textGroup>
gmd:textGroup
<gmd:LocalisedCharacterString locale="#DE">Atmosphärische Bedingungen</gmd:LocalisedCharacterString>
</gmd:textGroup>
</gmd:PT_FreeText>
</gmd:keyword>
gmd:type
<gmd:MD_KeywordTypeCode codeList="http://standards.iso.org/iso/19139/resources/gmxCodelists.xml#MD_KeywordTypeCode" codeListValue="theme"/>
</gmd:type>
gmd:thesaurusName
gmd:CI_Citation
gmd:title
gco:CharacterStringGEMET - INSPIRE themes, version 1.0</gco:CharacterString>
</gmd:title>
gmd:date
gmd:CI_Date
gmd:date
gco:Date2008-06-01</gco:Date>
</gmd:date>
gmd:dateType
<gmd:CI_DateTypeCode codeList="http://standards.iso.org/iso/19139/resources/gmxCodelists.xml#CI_DateTypeCode" codeListValue="publication">publication</gmd:CI_DateTypeCode>
</gmd:dateType>
</gmd:CI_Date>
</gmd:date>
gmd:identifier
gmd:MD_Identifier
gmd:code
<gmx:Anchor xlink:href="srv/api/registries/vocabularies/external.theme.httpinspireeceuropaeutheme-theme">geonetwork.thesaurus.external.theme.httpinspireeceuropaeutheme-theme</gmx:Anchor>
</gmd:code>
</gmd:MD_Identifier>
</gmd:identifier>
</gmd:CI_Citation>
</gmd:thesaurusName>
</gmd:MD_Keywords>
</gmd:descriptiveKeywords>
gmd:descriptiveKeywords
gmd:MD_Keywords
<gmd:keyword xsi:type="gmd:PT_FreeText_PropertyType">
gco:CharacterStringClima</gco:CharacterString>
gmd:PT_FreeText
gmd:textGroup
<gmd:LocalisedCharacterString locale="#IT">Clima</gmd:LocalisedCharacterString>
</gmd:textGroup>
gmd:textGroup
<gmd:LocalisedCharacterString locale="#DE">Klima</gmd:LocalisedCharacterString>
</gmd:textGroup>
</gmd:PT_FreeText>
</gmd:keyword>
</gmd:MD_Keywords>
</gmd:descriptiveKeywords>
gmd:descriptiveKeywords
gmd:MD_Keywords
<gmd:keyword xsi:type="gmd:PT_FreeText_PropertyType">
gco:CharacterStringEU</gco:CharacterString>
gmd:PT_FreeText
gmd:textGroup
<gmd:LocalisedCharacterString locale="#IT">EU</gmd:LocalisedCharacterString>
</gmd:textGroup>
gmd:textGroup
<gmd:LocalisedCharacterString locale="#DE">EU</gmd:LocalisedCharacterString>
</gmd:textGroup>
</gmd:PT_FreeText>
</gmd:keyword>
</gmd:MD_Keywords>
</gmd:descriptiveKeywords>
gmd:resourceConstraints
gmd:MD_LegalConstraints
<gmd:useLimitation xsi:type="gmd:PT_FreeText_PropertyType">
gco:CharacterStringhttps://creativecommons.org/licenses/by-nc-sa/4.0/deed.it</gco:CharacterString>
gmd:PT_FreeText
gmd:textGroup
<gmd:LocalisedCharacterString locale="#IT">https://creativecommons.org/licenses/by-nc-sa/4.0/deed.it</gmd:LocalisedCharacterString>
</gmd:textGroup>
gmd:textGroup
<gmd:LocalisedCharacterString locale="#DE">https://creativecommons.org/licenses/by-nc-sa/4.0/deed.de</gmd:LocalisedCharacterString>
</gmd:textGroup>
</gmd:PT_FreeText>
</gmd:useLimitation>
gmd:accessConstraints
<gmd:MD_RestrictionCode codeList="http://standards.iso.org/iso/19139/resources/gmxCodelists.xml#MD_RestrictionCode" codeListValue="otherRestrictions"/>
</gmd:accessConstraints>
<gmd:otherConstraints xsi:type="gmd:PT_FreeText_PropertyType">
<gmx:Anchor xlink:href="http://inspire.ec.europa.eu/metadata-codelist/LimitationsOnPublicAccess/noLimitations">nessuna limitazione all'accesso del pubblico</gmx:Anchor>
gmd:PT_FreeText
gmd:textGroup
<gmd:LocalisedCharacterString locale="#IT">nessuna limitazione all'accesso del pubblico</gmd:LocalisedCharacterString>
</gmd:textGroup>
gmd:textGroup
<gmd:LocalisedCharacterString locale="#DE">keine Beschränkungen für den öffentlichen Zugang</gmd:LocalisedCharacterString>
</gmd:textGroup>
</gmd:PT_FreeText>
</gmd:otherConstraints>
</gmd:MD_LegalConstraints>
</gmd:resourceConstraints>
gmd:resourceConstraints
gmd:MD_LegalConstraints
gmd:useConstraints
<gmd:MD_RestrictionCode codeList="http://standards.iso.org/iso/19139/resources/gmxCodelists.xml#MD_RestrictionCode" codeListValue="otherRestrictions"/>
</gmd:useConstraints>
<gmd:otherConstraints xsi:type="gmd:PT_FreeText_PropertyType">
gco:CharacterStringhttps://creativecommons.org/licenses/by-nc-sa/4.0/deed.it</gco:CharacterString>
gmd:PT_FreeText
gmd:textGroup
<gmd:LocalisedCharacterString locale="#IT">https://creativecommons.org/licenses/by-nc-sa/4.0/deed.it</gmd:LocalisedCharacterString>
</gmd:textGroup>
gmd:textGroup
<gmd:LocalisedCharacterString locale="#DE">https://creativecommons.org/licenses/by-nc-sa/4.0/deed.de</gmd:LocalisedCharacterString>
</gmd:textGroup>
</gmd:PT_FreeText>
</gmd:otherConstraints>
</gmd:MD_LegalConstraints>
</gmd:resourceConstraints>
gmd:spatialRepresentationType
<gmd:MD_SpatialRepresentationTypeCode codeListValue="vector" codeList="http://standards.iso.org/iso/19139/resources/gmxCodelists.xml#MD_SpatialRepresentationTypeCode">vector</gmd:MD_SpatialRepresentationTypeCode>
</gmd:spatialRepresentationType>
gmd:spatialResolution
gmd:MD_Resolution
gmd:equivalentScale
gmd:MD_RepresentativeFraction
gmd:denominator
gco:Integer100</gco:Integer>
</gmd:denominator>
</gmd:MD_RepresentativeFraction>
</gmd:equivalentScale>
</gmd:MD_Resolution>
</gmd:spatialResolution>
gmd:language
<gmd:LanguageCode codeList="http://www.loc.gov/standards/iso639-2/" codeListValue="ita">ita</gmd:LanguageCode>
</gmd:language>
gmd:characterSet
<gmd:MD_CharacterSetCode codeListValue="utf8" codeList="http://standards.iso.org/iso/19139/resources/gmxCodelists.xml#MD_CharacterSetCode"/>
</gmd:characterSet>
gmd:topicCategory
gmd:MD_TopicCategoryCodeclimatologyMeteorologyAtmosphere</gmd:MD_TopicCategoryCode>
</gmd:topicCategory>
gmd:extent
gmd:EX_Extent
gmd:geographicElement
gmd:EX_GeographicBoundingBox
gmd:westBoundLongitude
gco:Decimal10.29</gco:Decimal>
</gmd:westBoundLongitude>
gmd:eastBoundLongitude
gco:Decimal12.51</gco:Decimal>
</gmd:eastBoundLongitude>
gmd:southBoundLatitude
gco:Decimal46.18</gco:Decimal>
</gmd:southBoundLatitude>
gmd:northBoundLatitude
gco:Decimal47.14</gco:Decimal>
</gmd:northBoundLatitude>
</gmd:EX_GeographicBoundingBox>
</gmd:geographicElement>
</gmd:EX_Extent>
</gmd:extent>
</gmd:MD_DataIdentification>
</gmd:identificationInfo>
gmd:distributionInfo
gmd:MD_Distribution
gmd:distributionFormat
gmd:MD_Format
gmd:name
gco:CharacterStringWMS</gco:CharacterString>
</gmd:name>
gmd:version
gco:CharacterString1.3.0</gco:CharacterString>
</gmd:version>
</gmd:MD_Format>
</gmd:distributionFormat>
gmd:distributor
gmd:MD_Distributor
gmd:distributorContact
gmd:CI_ResponsibleParty
<gmd:organisationName xsi:type="gmd:PT_FreeText_PropertyType">
gco:CharacterStringCentro di Sperimentazione Laimburg</gco:CharacterString>
gmd:PT_FreeText
gmd:textGroup
<gmd:LocalisedCharacterString locale="#IT">Centro di Sperimentazione Laimburg</gmd:LocalisedCharacterString>
</gmd:textGroup>
gmd:textGroup
<gmd:LocalisedCharacterString locale="#DE">Versuchszentrum Laimburg</gmd:LocalisedCharacterString>
</gmd:textGroup>
</gmd:PT_FreeText>
</gmd:organisationName>
gmd:contactInfo
gmd:CI_Contact
gmd:phone
gmd:CI_Telephone
gmd:voice
gco:CharacterString+39 0471 969500</gco:CharacterString>
</gmd:voice>
</gmd:CI_Telephone>
</gmd:phone>
gmd:address
gmd:CI_Address
<gmd:electronicMailAddress xsi:type="gmd:PT_FreeText_PropertyType">
gco:CharacterString[email protected]</gco:CharacterString>
gmd:PT_FreeText
gmd:textGroup
<gmd:LocalisedCharacterString locale="#IT">[email protected]</gmd:LocalisedCharacterString>
</gmd:textGroup>
gmd:textGroup
<gmd:LocalisedCharacterString locale="#DE">[email protected]</gmd:LocalisedCharacterString>
</gmd:textGroup>
</gmd:PT_FreeText>
</gmd:electronicMailAddress>
</gmd:CI_Address>
</gmd:address>
gmd:onlineResource
gmd:CI_OnlineResource
gmd:linkage
gmd:URLhttps://www.laimburg.it/it/default.asp</gmd:URL>
</gmd:linkage>
</gmd:CI_OnlineResource>
</gmd:onlineResource>
</gmd:CI_Contact>
</gmd:contactInfo>
gmd:role
<gmd:CI_RoleCode codeList="http://standards.iso.org/iso/19139/resources/gmxCodelists.xml#CI_RoleCode" codeListValue="distributor">distributore</gmd:CI_RoleCode>
</gmd:role>
</gmd:CI_ResponsibleParty>
</gmd:distributorContact>
</gmd:MD_Distributor>
</gmd:distributor>
gmd:transferOptions
gmd:MD_DigitalTransferOptions
gmd:onLine
gmd:CI_OnlineResource
gmd:linkage
gmd:URLhttps://geoservices6.civis.bz.it/geoserver/p_bz-Soil/ows?service=WMS&version=1.3.0&request=GetCapabilities</gmd:URL>
</gmd:linkage>
gmd:protocol
<gmx:Anchor xlink:href="http://www.opengis.net/def/serviceType/ogc/wms">OGC:WMS</gmx:Anchor>
</gmd:protocol>
gmd:applicationProfile
<gmx:Anchor xlink:href="http://inspire.ec.europa.eu/metadata-codelist/SpatialDataServiceType/view">view</gmx:Anchor>
</gmd:applicationProfile>
<gmd:name xsi:type="gmd:PT_FreeText_PropertyType">
gco:CharacterStringOfferingEnergy-PotentialGlobalRadiation</gco:CharacterString>
</gmd:name>
gmd:description
<gmx:Anchor xlink:href="http://inspire.ec.europa.eu/metadata-codelist/OnLineDescriptionCode/endPoint">endpoint</gmx:Anchor>
</gmd:description>
gmd:function
<gmd:CI_OnLineFunctionCode codeList="http://standards.iso.org/iso/19139/resources/gmxCodelists.xml#CI_OnLineFunctionCode" codeListValue="information"/>
</gmd:function>
</gmd:CI_OnlineResource>
</gmd:onLine>
</gmd:MD_DigitalTransferOptions>
</gmd:transferOptions>
gmd:transferOptions
gmd:MD_DigitalTransferOptions
gmd:onLine
gmd:CI_OnlineResource
gmd:linkage
gmd:URLhttps://vegemont.civis.bz.it/#/main</gmd:URL>
</gmd:linkage>
gmd:protocol
<gmx:Anchor xlink:href="http://www.w3.org/TR/xlink/">WWW:LINK-1.0</gmx:Anchor>
</gmd:protocol>
gmd:applicationProfile
<gmx:Anchor xlink:href="http://inspire.ec.europa.eu/metadata-codelist/SpatialDataServiceType/other">other</gmx:Anchor>
</gmd:applicationProfile>
<gmd:name xsi:type="gmd:PT_FreeText_PropertyType">
gco:CharacterStringLink all'applicazione in lingua italiana</gco:CharacterString>
gmd:PT_FreeText
gmd:textGroup
<gmd:LocalisedCharacterString locale="#IT">Link all'applicazione in lingua italiana</gmd:LocalisedCharacterString>
</gmd:textGroup>
gmd:textGroup
<gmd:LocalisedCharacterString locale="#DE">Link zur Anwendung in italienischer Sprache</gmd:LocalisedCharacterString>
</gmd:textGroup>
</gmd:PT_FreeText>
</gmd:name>
gmd:description
<gmx:Anchor xlink:href="http://inspire.ec.europa.eu/metadata-codelist/OnLineDescriptionCode/endPoint">endpoint</gmx:Anchor>
</gmd:description>
gmd:function
<gmd:CI_OnLineFunctionCode codeList="http://standards.iso.org/iso/19139/resources/gmxCodelists.xml#CI_OnLineFunctionCode" codeListValue="information"/>
</gmd:function>
</gmd:CI_OnlineResource>
</gmd:onLine>
</gmd:MD_DigitalTransferOptions>
</gmd:transferOptions>
gmd:transferOptions
gmd:MD_DigitalTransferOptions
gmd:onLine
gmd:CI_OnlineResource
gmd:linkage
gmd:URLhttps://vegemont.civis.bz.it/#/main</gmd:URL>
</gmd:linkage>
gmd:protocol
<gmx:Anchor xlink:href="http://www.w3.org/TR/xlink/">WWW:LINK-1.0</gmx:Anchor>
</gmd:protocol>
gmd:applicationProfile
<gmx:Anchor xlink:href="http://inspire.ec.europa.eu/metadata-codelist/SpatialDataServiceType/other">other</gmx:Anchor>
</gmd:applicationProfile>
<gmd:name xsi:type="gmd:PT_FreeText_PropertyType">
gco:CharacterStringLink all'applicazione in lingua tedesca</gco:CharacterString>
gmd:PT_FreeText
gmd:textGroup
<gmd:LocalisedCharacterString locale="#IT">Link all'applicazione in lingua tedesca</gmd:LocalisedCharacterString>
</gmd:textGroup>
gmd:textGroup
<gmd:LocalisedCharacterString locale="#DE">Link zur Anwendung in deutscher Sprache</gmd:LocalisedCharacterString>
</gmd:textGroup>
</gmd:PT_FreeText>
</gmd:name>
gmd:description
<gmx:Anchor xlink:href="http://inspire.ec.europa.eu/metadata-codelist/OnLineDescriptionCode/endPoint">endpoint</gmx:Anchor>
</gmd:description>
gmd:function
<gmd:CI_OnLineFunctionCode codeList="http://standards.iso.org/iso/19139/resources/gmxCodelists.xml#CI_OnLineFunctionCode" codeListValue="information"/>
</gmd:function>
</gmd:CI_OnlineResource>
</gmd:onLine>
</gmd:MD_DigitalTransferOptions>
</gmd:transferOptions>
</gmd:MD_Distribution>
</gmd:distributionInfo>
gmd:dataQualityInfo
gmd:DQ_DataQuality
gmd:scope
gmd:DQ_Scope
gmd:level
<gmd:MD_ScopeCode codeList="http://standards.iso.org/iso/19139/resources/gmxCodelists.xml#MD_ScopeCode" codeListValue="dataset"/>
</gmd:level>
</gmd:DQ_Scope>
</gmd:scope>
gmd:report
gmd:DQ_AbsoluteExternalPositionalAccuracy
gmd:result
gmd:DQ_QuantitativeResult
gmd:valueUnit
<gml:BaseUnit gml:id="m">
<gml:identifier codeSpace="http://www.bipm.org/en/si/base_units">m</gml:identifier>
<gml:unitsSystem xlink:href="http://www.bipm.org/en/si"/>
</gml:BaseUnit>
</gmd:valueUnit>
gmd:value
gco:Record
gco:Real1</gco:Real>
</gco:Record>
</gmd:value>
</gmd:DQ_QuantitativeResult>
</gmd:result>
</gmd:DQ_AbsoluteExternalPositionalAccuracy>
</gmd:report>
gmd:report
gmd:DQ_DomainConsistency
gmd:result
gmd:DQ_ConformanceResult
gmd:specification
gmd:CI_Citation
<gmd:title xsi:type="gmd:PT_FreeText_PropertyType">
gco:CharacterStringREGOLAMENTO (UE) N. 1089/2010 DELLA COMMISSIONE del 23 novembre 2010 recante attuazione della direttiva 2007/2/CE del Parlamento europeo e del Consiglio per quanto riguarda l'interoperabilità dei set di dati territoriali e dei servizi di dati territoriali</gco:CharacterString>
gmd:PT_FreeText
gmd:textGroup
<gmd:LocalisedCharacterString locale="#IT">REGOLAMENTO (UE) N. 1089/2010 DELLA COMMISSIONE del 23 novembre 2010 recante attuazione della direttiva 2007/2/CE del Parlamento europeo e del Consiglio per quanto riguarda l'interoperabilità dei set di dati territoriali e dei servizi di dati territoriali</gmd:LocalisedCharacterString>
</gmd:textGroup>
gmd:textGroup
<gmd:LocalisedCharacterString locale="#DE">VERORDNUNG (EG) Nr. 1089/2010 DER KOMMISSION vom 23. November 2010 zur Durchführung der Richtlinie 2007/2/EG des Europäischen Parlaments und des Rates hinsichtlich der Interoperabilität von Geodatensätzen und -diensten</gmd:LocalisedCharacterString>
</gmd:textGroup>
</gmd:PT_FreeText>
</gmd:title>
gmd:date
gmd:CI_Date
gmd:date
gco:Date2010-12-08</gco:Date>
</gmd:date>
gmd:dateType
<gmd:CI_DateTypeCode codeList="http://standards.iso.org/iso/19139/resources/gmxCodelists.xml#CI_DateTypeCode" codeListValue="publication">publication</gmd:CI_DateTypeCode>
</gmd:dateType>
</gmd:CI_Date>
</gmd:date>
</gmd:CI_Citation>
</gmd:specification>
<gmd:explanation xsi:type="gmd:PT_FreeText_PropertyType">
gco:CharacterStringConforme</gco:CharacterString>
gmd:PT_FreeText
gmd:textGroup
<gmd:LocalisedCharacterString locale="#IT">Conforme</gmd:LocalisedCharacterString>
</gmd:textGroup>
gmd:textGroup
<gmd:LocalisedCharacterString locale="#DE">konform</gmd:LocalisedCharacterString>
</gmd:textGroup>
</gmd:PT_FreeText>
</gmd:explanation>
gmd:pass
gco:Booleantrue</gco:Boolean>
</gmd:pass>
</gmd:DQ_ConformanceResult>
</gmd:result>
</gmd:DQ_DomainConsistency>
</gmd:report>
gmd:lineage
gmd:LI_Lineage
<gmd:statement xsi:type="gmd:PT_FreeText_PropertyType">
gco:CharacterStringRisultati del progetto VEGEMONT</gco:CharacterString>
gmd:PT_FreeText
gmd:textGroup
<gmd:LocalisedCharacterString locale="#IT">Risultati del progetto VEGEMONT</gmd:LocalisedCharacterString>
</gmd:textGroup>
gmd:textGroup
<gmd:LocalisedCharacterString locale="#DE">Ergebnisse des Projektes VEGEMONT</gmd:LocalisedCharacterString>
</gmd:textGroup>
</gmd:PT_FreeText>
</gmd:statement>
</gmd:LI_Lineage>
</gmd:lineage>
</gmd:DQ_DataQuality>
</gmd:dataQualityInfo>
</gmd:MD_Metadata>
--7617295b-9851-4b35-963e-cb0488cda4a7--

--> END POST (56678-byte body)
<-- HTTP/1.1 500 Server Error (183ms)
Date: Wed, 27 Nov 2024 14:34:15 GMT
Set-Cookie: serverTime=1732718055763; Path=/geonetwork
Expires: Thu, 01 Jan 1970 00:00:00 GMT
Set-Cookie: sessionExpiry=1732720155763; Path=/geonetwork
X-Frame-Options: SAMEORIGIN
Content-Security-Policy: frame-ancestors 'self'
Content-Type: text/html;charset=utf-8
Pragma: no-cache
Cache-Control: no-cache
Expires: -1
Transfer-Encoding: chunked
Server: Jetty(9.4.54.v20240208)
OkHttp-Sent-Millis: 1732718055761
OkHttp-Received-Millis: 1732718055942

{"error": {

"message":

    ""
  ,
"class":

    ""
  ,
"request":

    {}
  
}
}

<-- END HTTP (145-byte body)
15:34:15.948 [main] INFO o.g.d.m.c.DataciteJsonToCswConverterTest - Errore durante il caricamento del file: 500
15:34:15.948 [main] INFO o.g.d.m.c.DataciteJsonToCswConverterTest - Risposta: {"error": {

"message":

    ""
  ,
"class":

    ""
  ,
"request":

    {}
  
}
}

I put a log at the beginning of the rest method but it doesn't get called. I have nothing in the geonetwork log. Maybe I'm wrong in calling the rest method?
Thank you in advance

@jahow
Copy link
Contributor

jahow commented Nov 28, 2024

Are you sure that there's absolutely no error showing up when you run the code above?

And again, I'm quite sure that this API does not support multipart content. You could try creating a request body as an XML string:

RequestBody requestBody = RequestBody.create(MediaType.parse("application/xml"), xmlOutputFile);

(untested!)

@glascaleia
Copy link
Author

Yes no error found in the code execution geonetwork side , no error present in logger file; i use geonetwork localy.
I'm trying asap with with a request body as XML.

@glascaleia
Copy link
Author

But without MultiPart i can't give a name for the property file.
Here the code
--> POST http://localhost:8080/geonetwork/srv/api/records?metadataType=METADATA&uuidProcessing=NOTHING&rejectIfInvalid=true&publishToAll=true&assignToCatalog=true&transformWith=_none_&allowEditGroupMembers=true HTTP/1.1
Content-Type: application/xml
Content-Length: 8220
X-XSRF-TOKEN: 689cc06f-925b-47c3-8eb9-809ce7ece316

<md_metadata>
    <id>85553</id>
    <provider>
        <name>ARES</name>
        <atom>http://localhost:5009/providers/10</atom>
    </provider>
    <file_identifier>EARLINET_AerRemSen_pot_Lev01_b0355_202311140004_202311140104_v01_qc03.nc</file_identifier>
    <language>en</language>
    <hierarchy_level>dataset</hierarchy_level>
    <online_resource>
        <linkage>https://data.earlinet.org/</linkage>
    </online_resource>
    <datestamp>2023-11-14T08:01:00.0000000Z</datestamp>
    <created>2024-06-11T10:26:05.0000000Z</created>
    <contact>
        <first_name>Lucia</first_name>
        <last_name>Mona</last_name>
        <organisation_name>CNR-IMAA</organisation_name>
        <role_code>custodian</role_code>
        <role_code>distributor</role_code>
        <role_code>pointOfContact</role_code>
        <role_code>processor</role_code>
        <role_code>publisher</role_code>
        <role_code>resourceProvider</role_code>
        <role_code/>
        <country_code>IT</country_code>
        <delivery_point>Contrada S.Loja, Zona Industriale - Tito Scalo I-85050 Potenza</delivery_point>
        <address_city>Potenza</address_city>
        <email>[email protected]</email>
        <position_name>Senior Researcher</position_name>
    </contact>
    <contact/>
</md_metadata>
<md_identification>
    <abstract>Profiles of aerosol optical properties</abstract>
    <title>Aerosol particle backscatter profiles @355nm at Potenza, Italy</title>
    <date_type>creation</date_type>
    <contact>
        <first_name>Aldo</first_name>
        <last_name>Amodeo</last_name>
        <organisation_name>Consiglio Nazionale delle Ricerche - Istituto di Metodologie per l'Analisi Ambientale</organisation_name>
        <role_code>originator</role_code>
        <role_code>principalInvestigator</role_code>
        <role_code/>
        <country_code>IT</country_code>
        <delivery_point>Contrada S.Loja, Zona Industriale - Tito Scalo I-85050 Potenza</delivery_point>
        <address_city>Potenza, Italy</address_city>
        <email>[email protected]</email>
        <position_name>Senior Scientist</position_name>
    </contact>
    <contact/>
    <online_resource>
        <linkage>https://hdl.handle.net/20.500.12911/1.4KY42EL7067PLWJE</linkage>
    </online_resource>
    <identifier>
        <pid>https://hdl.handle.net/20.500.12911/1.4KY42EL7067PLWJE</pid>
        <type>handle</type>
    </identifier>
    <date>2023-11-14T08:01:00.0000000Z</date>
</md_identification>
<md_constraints>
    <access_constraints>license</access_constraints>
    <use_constraints>license</use_constraints>
    <other_constraints>N/A</other_constraints>
    <data_licence>CC-BY-4.0</data_licence>
    <metadata_licence>CC-BY-4.0</metadata_licence>
    <citation>Aldo Amodeo, "Aerosol particle backscatter profile at 355nm in Potenza, Italy at  2023-11-14T00:04 : 2023-11-14T01:04 UTC", ACTRIS Aerosol remote sensing data centre unit (ARES) hosted by CNR IMAA, https://hdl.handle.net/20.500.12911/1.4KY42EL7067PLWJE, 2023.</citation>
    <acknowledgement>We acknowledge ACTRIS and National Research Council of Italy for providing the data set which is available for download from https://data.earlinet.org .</acknowledgement>
</md_constraints>
<md_keywords>
    <keywords>355</keywords>
    <keywords>actris</keywords>
    <keywords>ares</keywords>
    <keywords>b</keywords>
    <keywords>lev1.0</keywords>
    <keywords>pot</keywords>
    <keywords>qc3</keywords>
    <keywords/>
</md_keywords>
<md_data_identification>
    <language>en</language>
    <topic_category>climatologyMeteorologyAtmosphere</topic_category>
    <description>Profiles of aerosol optical properties</description>
    <facility>
        <identifier>epdw</identifier>
        <name>Potenza</name>
        <lat>40.601</lat>
        <lon>15.724</lon>
        <alt>760.0</alt>
        <country_code>IT</country_code>
        <wmo_region>Europe</wmo_region>
        <identifier_type>other PID</identifier_type>
        <uri>https://prod-actris-md.nilu.no/facilities/epdw</uri>
    </facility>
</md_data_identification>
<ex_geographic_bounding_box>
    <west_bound_longitude>15.720000267028809</west_bound_longitude>
    <east_bound_longitude>15.720000267028809</east_bound_longitude>
    <south_bound_latitude>40.599998474121094</south_bound_latitude>
    <north_bound_latitude>40.599998474121094</north_bound_latitude>
</ex_geographic_bounding_box>
<ex_temporal_extent>
    <time_period_begin>2023-11-14T00:04:08.0000000Z</time_period_begin>
    <time_period_end>2023-11-14T01:04:34.0000000Z</time_period_end>
</ex_temporal_extent>
<ex_vertical_extent>
    <minimum_value>null</minimum_value>
    <maximum_value>null</maximum_value>
    <unit_of_measure>m above sea level</unit_of_measure>
</ex_vertical_extent>
<md_content_information>
    <attribute_descriptions>aerosol particle backscatter coefficient</attribute_descriptions>
    <attribute_descriptions>aerosol particle light backscatter linear depolarization ratio</attribute_descriptions>
    <attribute_descriptions>atmosphere light backscatter linear depolarization ratio</attribute_descriptions>
    <attribute_descriptions/>
    <content_type>physicalMeasurement</content_type>
</md_content_information>
<md_distribution_information>
    <data_format>netcdf</data_format>
    <version_data_format>HDF5 (NETCDF4)</version_data_format>
    <dataset_url>https://data.earlinet.org/api/services/restapi/opticalproducts/id/131187/downloads</dataset_url>
    <protocol>HTTP</protocol>
    <function>download</function>
    <restriction>
        <set>false</set>
    </restriction>
    <transfersize>60.61621</transfersize>
    <description>Direct download of data file</description>
</md_distribution_information>
<md_distribution_information/>
<md_actris_specific>
    <facility_type>observation platform, fixed</facility_type>
    <product_type>observation</product_type>
    <matrix>aerosol particle phase</matrix>
    <sub_matrix>null</sub_matrix>
    <instrument_type>lidar</instrument_type>
    <instrument_type/>
    <program_affiliation>ACTRIS</program_affiliation>
    <program_affiliation>EARLINET</program_affiliation>
    <program_affiliation>GALION</program_affiliation>
    <program_affiliation/>
    <variable_statistical_property>average</variable_statistical_property>
    <variable_statistical_property>linear standard deviation</variable_statistical_property>
    <variable_statistical_property/>
    <legacy_data>false</legacy_data>
    <observation_timeliness>scheduled</observation_timeliness>
    <data_product>Scheduled data - QA/QC tests partially passed</data_product>
    <version>
        <number>1</number>
    </version>
</md_actris_specific>
<dq_data_quality_information>
    <level>dataset</level>
    <statement>Quality Control version 3/Centralized Processing</statement>
    <compliance>ACTRIS associated</compliance>
    <quality_control_extent>full quality control applied</quality_control_extent>
    <quality_control_outcome>3 - Questionable/suspect</quality_control_outcome>
</dq_data_quality_information>
<provenance>
    <software>https://scc.imaa.cnr.it/</software>
    <version_history>null</version_history>
</provenance>

</gmd:MD_Metadata>

--> END POST (8220-byte body)
<-- HTTP/1.1 404 Not Found (15ms)
Date: Thu, 28 Nov 2024 09:14:12 GMT
Set-Cookie: serverTime=1732785252220; Path=/geonetwork
Expires: Thu, 01 Jan 1970 00:00:00 GMT
Set-Cookie: sessionExpiry=1732787352220; Path=/geonetwork
X-Frame-Options: SAMEORIGIN
Content-Security-Policy: frame-ancestors 'self'
Content-Type: application/xml; charset=UTF-8
Pragma: no-cache
Cache-Control: no-cache
Expires: -1
Transfer-Encoding: chunked
Server: Jetty(9.4.54.v20240208)
OkHttp-Sent-Millis: 1732785252218
OkHttp-Received-Millis: 1732785252231

Service not found ServiceNotFoundEx ... ... ... ... ... ... ... ... ... records api records

<-- END HTTP (3455-byte body)
10:14:12.232 [main] INFO o.g.d.m.c.DataciteJsonToCswConverterTest - Errore durante il caricamento del file: 404
10:14:12.232 [main] INFO o.g.d.m.c.DataciteJsonToCswConverterTest - Risposta:

Service not found
ServiceNotFoundEx











...





...

...

...

...

...

...

...

...

records

api
records


Now i have 404 method not found,

here the code geonetwork side
@io.swagger.v3.oas.annotations.Operation(summary = "Add a record from XML or MEF/ZIP file", description ="Add record in the catalog by uploading files.")
@RequestMapping(method = {RequestMethod.POST,}, produces = {MediaType.APPLICATION_JSON_VALUE})
@ApiResponses(value = {@ApiResponse(responseCode = "201", description = API_PARAM_REPORT_ABOUT_IMPORTED_RECORDS),
@ApiResponse(responseCode = "403", description = ApiParams.API_RESPONSE_NOT_ALLOWED_ONLY_EDITOR)})
@PreAuthorize("hasAuthority('Editor')")
@ResponseStatus(HttpStatus.CREATED)
@responsebody
public SimpleMetadataProcessingReport insertFile(
@parameter(description = API_PARAM_RECORD_TYPE, required = false) @RequestParam(required = false, defaultValue = "METADATA") final MetadataType metadataType,
@parameter(description = "XML or MEF file to upload", required = false) @RequestParam(value = "file", required = false) MultipartFile[] file,
@parameter(description = API_PARAM_RECORD_UUID_PROCESSING, required = false) @RequestParam(required = false, defaultValue = "NOTHING") final MEFLib.UuidAction uuidProcessing,
@parameter(description = API_PARAM_RECORD_GROUP, required = false) @RequestParam(required = false) final String group,
@parameter(description = API_PARAM_RECORD_TAGS, required = false) @RequestParam(required = false) final String[] category,
@parameter(description = API_PARAM_RECORD_VALIDATE, required = false) @RequestParam(required = false, defaultValue = "false") final boolean rejectIfInvalid,
@parameter(description = "(XML file only) Publish record.", required = false) @RequestParam(required = false, defaultValue = "false") boolean publishToAll,
@parameter(description = "(MEF file only) Assign to current catalog.", required = false) @RequestParam(required = false, defaultValue = "false") final boolean assignToCatalog,
@parameter(description = API_PARAM_RECORD_XSL, required = false) @RequestParam(required = false, defaultValue = "none") final String transformWith,
@parameter(description = API_PARAM_FORCE_SCHEMA, required = false) @RequestParam(required = false) String schema,
@parameter(description = "(experimental) Add extra information to the record.", required = false) @RequestParam(required = false) final String extra,
@parameter(description = "Is editable by group members with editor profile? "
+ "If not, only the author and administrator can edit the record.", required = false) @RequestParam(required = false, defaultValue = "false") final boolean allowEditGroupMembers,
HttpServletRequest request)
I think the parameter file is multipart or not??
Regards

@jahow
Copy link
Contributor

jahow commented Nov 28, 2024

Oh sorry my bad, I thought the content-type has to be XML but I was looking at the wrong endpoint.

I'm afraid that without more information (e.g. logs showing the error on GN side) it's very difficult to help you in any way. One thing you can try is importing the same XML file through the GeoNetwork interface and see if you also get a 500 error or not. If not, that means the problem comes from your code.

Also for logs you should look at the output of the process running GeoNetwork: either the console if you're running it with Jetty, or the Application Container (e.g. Tomcat). The error should show up there.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants