[Gfoss] Informazioni su impiego CSW del RNDT

mi è capitato sott'occhio questa pagina:
http://gis-lab.info/qa/cswclient-eng.html

nell'immagine a metà pagina si vede CSW version 2.0.2: prova a vedere
se ti dice qualcosa;

Grazie della segnalazione Giuliano,
molto acuto!

Questo riisponde indirettamente alla mia domanda. Il plugin supporta
(o ritiene di supportare) il CSW 2.0.2 almeno nei suoi costrutti
principali.
Per completezza spiego meglio per evitare equivoci:

quella scritta che si vede nell'immagine è il report di cio' che il
plugin ha ricevuto dal server csw quando ha inviato il comando
getcapabilities.

Li ci sta scritto che il server csw a cui il plugin si e' collegato
nell'esempio è un server csw 2.0.2.

Non sta scritto direttamente che il plugin è compatibile csw 2.0.2, ma
bensi'c he il plugin ha appena interrogato un server CSW 2.0.2.

Pero' da questo se ne puo' ricavare la risposta indiretta che il
plugin sia (o pretenda di essere) compatibile con CSW 2.0.2.

Infatti se nell'esempio di chi ha scritto il plugin usano un server
2.0.2 vuol dire che ci gira. :slight_smile:

Quindi ora il mio problema diviene capire come mai invece con il
server csw del RNDT il plugin da errore.

Ho provato a inserire nella stringa di chiamata anche il parametro
&version=1.0.0

fosse mai che come nel wms si puo' abbassare la versione usata nel
colloquio, ma l'errore persiste.

Per riprova ho provato a scriverci una versione che non esiste:

&version=1.1.1
e in questo caso il server CSW del rndt ha risposto correttamente un errore:

-----
<?xml version="1.0" encoding="utf-8"?>
<ExceptionReport xmlns="http://www.opengis.net/ows&quot;
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance&quot; version="1.2.0"
xsi:schemaLocation="http://schemas.opengis.net/ows/1.0.0/owsExceptionReport.xsd&quot;&gt;
<Exception exceptionCode="BadArgument">
<ExceptionText>Bad Argument: the request includes illegal arguments,
is missing required arguments, includes a repeated argument, or values
for arguments have an illegal syntax</ExceptionText>
</Exception>
</ExceptionReport>
----

Mentre invece con il valore

&version=1.0.0
non ritorna alcun errore.
Ergo lo accetta.

Pero' alla ricerca continua a restituire errore di mancato attributo.
Per cui al momento la ricerca non funziona ne' con formato CSW 2.0.2
ne' con formato CSW 1.0.0.

Per capire meglio ho provato a usare uno dei server CSW disponibili in
bundle con il plugin:

http://aiolos.survey.ntua.gr/pycsw/csw.py

anche questo di tipo CSW 2.0.2

E ho provato a fare una ricerca senza alcun parametro.
In questo caso alla fine il plugin risponde (evidentemente è la
risposta ricevuta dal server csw)
"there is no record matching your criteria"

Quindi la risposta del server csw di rndt che era :
"element tree object has no attribute tag"

non è la risposta di una ricerca andata a vuoto, ma un vero e proprio
"lack of compatibility".

Per cui a questo punto appare ovvio che uno dei due sbaglia, o il
plugin csw di qgis oppure il csw di rndt.

Pero' leggo sul sito di rndt che il loro server CSW è conforme (per
gli inglesi compliant) con le specifiche
"Catalogue Services Specification 2.0.2 - ISO Metadata Application
Profile for CSW 2.0"

Invece sul sito del plugin csw di qgis non vi è scritto niente.

Ergo sbaglia il plugin.

E quindi molto semplicemente da QGIS non puo' interrogare il server CSW di rndt.

Due mondi che ancora non si parlano.

Saluti,

--
-----------------
Andrea Peri
. . . . . . . . .
qwerty àèìòù
-----------------

Ciao Andrea,

Il giorno 06 marzo 2013 09:23, Andrea Peri <aperi2007@gmail.com> ha scritto:

mi è capitato sott’occhio questa pagina:
http://gis-lab.info/qa/cswclient-eng.html

nell’immagine a metà pagina si vede CSW version 2.0.2: prova a vedere
se ti dice qualcosa;

Grazie della segnalazione Giuliano,
molto acuto!

Questo riisponde indirettamente alla mia domanda. Il plugin supporta
(o ritiene di supportare) il CSW 2.0.2 almeno nei suoi costrutti
principali.
Per completezza spiego meglio per evitare equivoci:

quella scritta che si vede nell’immagine è il report di cio’ che il
plugin ha ricevuto dal server csw quando ha inviato il comando
getcapabilities.

Li ci sta scritto che il server csw a cui il plugin si e’ collegato
nell’esempio è un server csw 2.0.2.

Non sta scritto direttamente che il plugin è compatibile csw 2.0.2, ma
bensi’c he il plugin ha appena interrogato un server CSW 2.0.2.

Pero’ da questo se ne puo’ ricavare la risposta indiretta che il
plugin sia (o pretenda di essere) compatibile con CSW 2.0.2.

Infatti se nell’esempio di chi ha scritto il plugin usano un server
2.0.2 vuol dire che ci gira. :slight_smile:

Quindi ora il mio problema diviene capire come mai invece con il
server csw del RNDT il plugin da errore.

Ho provato a inserire nella stringa di chiamata anche il parametro
&version=1.0.0

fosse mai che come nel wms si puo’ abbassare la versione usata nel
colloquio, ma l’errore persiste.

Per riprova ho provato a scriverci una versione che non esiste:

&version=1.1.1
e in questo caso il server CSW del rndt ha risposto correttamente un errore:


<?xml version="1.0" encoding="utf-8"?>



Bad Argument: the request includes illegal arguments,
is missing required arguments, includes a repeated argument, or values
for arguments have an illegal syntax

Mentre invece con il valore

&version=1.0.0
non ritorna alcun errore.
Ergo lo accetta.

Pero’ alla ricerca continua a restituire errore di mancato attributo.
Per cui al momento la ricerca non funziona ne’ con formato CSW 2.0.2
ne’ con formato CSW 1.0.0.

Per capire meglio ho provato a usare uno dei server CSW disponibili in
bundle con il plugin:

http://aiolos.survey.ntua.gr/pycsw/csw.py

anche questo di tipo CSW 2.0.2

E ho provato a fare una ricerca senza alcun parametro.
In questo caso alla fine il plugin risponde (evidentemente è la
risposta ricevuta dal server csw)
“there is no record matching your criteria”

Quindi la risposta del server csw di rndt che era :
“element tree object has no attribute tag”

le ho provate tutte, ma non sono mai riuscito a vedere quell’errore.
l’unico errore che vedo è:

“Bad Argument: the request includes illegal arguments, is missing required arguments, includes a repeated argument, or values for arguments have an illegal syntax”

Stai usando la versione 0.0.14 del plugin ?

non è la risposta di una ricerca andata a vuoto, ma un vero e proprio
“lack of compatibility”.

Per cui a questo punto appare ovvio che uno dei due sbaglia, o il
plugin csw di qgis oppure il csw di rndt.

Pero’ leggo sul sito di rndt che il loro server CSW è conforme (per
gli inglesi compliant) con le specifiche
“Catalogue Services Specification 2.0.2 - ISO Metadata Application
Profile for CSW 2.0”

Invece sul sito del plugin csw di qgis non vi è scritto niente.

il plugin usa owslib [http://geopython.github.com/OWSLib/] (una libreria scritta in python) stando a quanto
riportato sullo stesso sito dovrebbe essere conforme alle stesse specifiche del RNDT.

Io ho eseguito dei test direttamente nella python console (di QGIS) ottenendo sempre lo stesso errore.
Di seguito le operazioni eseguite (recuperate dallo stesso sito della libreria utilizzata dal plugin)

from owslib.csw import CatalogueServiceWeb
csw = CatalogueServiceWeb(‘http://www.rndt.gov.it/RNDT/CSW?’)
csw.identification.type
‘CSW’

fin qui siamo tranquilli che si tratta di un CSW !
proseguendo:

[op.name for op in csw.operations]
[‘GetCapabilities’, ‘DescribeRecord’, ‘GetRecords’, ‘GetRecordById’, ‘Harvest’]

sappiamo che il CSW supporta quelle operazioni/proprietà quindi conforme con INSPIRE/OGC
(almeno per gli elementi ‘mandatory’)

csw.getdomain(‘GetRecords.resultType’)

HTTPError: HTTP Error 500: Internal Server Error

Infatti il GetDomain è tra le proprietà “Opzionali” non obbligatorie, ma mi sarei aspettato un
ExceptionReport: ‘Operation not supported: GetDomain’
continuando provo a fare una ricerca inserendo come testo da ricercare ‘wms’:

csw.getrecords(keywords=[‘wms’], maxrecords=10)

ExceptionReport: ‘Bad Argument: the request includes illegal arguments, is missing required arguments, includes a repeated argument, or values for arguments have an illegal syntax’

ho provato anche con una query (csw:AnyText like “%wms%”) ma
ottengo sempre lo stesso risultato, qualsiasi sia la keyword.

Ergo sbaglia il plugin.

ho dei dubbi, ma è evidente che da qualche parte manchi qualcosa !

Qualcuno dovrebbe/potrebbe testarlo con qualche altro client !/?
o quantomeno farci capire dove stiamo sbagliando !

Saluti,

-SL

E quindi molto semplicemente da QGIS non puo’ interrogare il server CSW di rndt.

Due mondi che ancora non si parlano.

Saluti,

Andrea Peri
. . . . . . . . .
qwerty àèìòù


Gfoss@lists.gfoss.it
http://lists.gfoss.it/cgi-bin/mailman/listinfo/gfoss
Questa e’ una lista di discussione pubblica aperta a tutti.
I messaggi di questa lista non hanno relazione diretta con le posizioni dell’Associazione GFOSS.it.
638 iscritti al 28.2.2013


Salvatore Larosa
linkedIn: http://linkedin.com/in/larosasalvatore
twitter: @lrssvt
skype: s.larosa
IRC: lrssvt on freenode

On Wed, 6 Mar 2013 09:23:24 +0100
Andrea Peri <aperi2007@gmail.com> wrote:

>mi è capitato sott'occhio questa pagina:
> http://gis-lab.info/qa/cswclient-eng.html
>
>nell'immagine a metà pagina si vede CSW version 2.0.2: prova a vedere
>se ti dice qualcosa;

Grazie della segnalazione Giuliano,
molto acuto!

-------

Li ci sta scritto che il server csw a cui il plugin si e' collegato
nell'esempio è un server csw 2.0.2.

Non sta scritto direttamente che il plugin è compatibile csw 2.0.2, ma
bensi'c he il plugin ha appena interrogato un server CSW 2.0.2.

non me ne volere, ho fatto solo il "pappagallo", ripetendo quello che ho
visto..... ho solo fatto

Pero' da questo se ne puo' ricavare la risposta indiretta che il
plugin sia (o pretenda di essere) compatibile con CSW 2.0.2.

la tua stessa congettura :-))

ma, più importante, vedo che la vicenda promette bene, sto in
ascolto :-))))

......
Saluti,

--
-----------------
Andrea Peri

ciao,
giuliano