

pycsw Snabbstart¶
pycsw är en OGC CSW-serverimplementering skriven i Python. pycsw möjliggör publicering och upptäckt av geospatiala metadata. Befintliga arkiv med geospatiala metadata kan exponeras via OGC:CSW 2.0.2 eller OGC:CSW 3.0.0.
Kör testprogrammet¶
På skrivbordet går du till Web Services –> pycsw eller öppna Firefox och navigera till
http://localhost/pycsw/tests/index.html
:
Genom att välja den vänstra listrutan kan användaren se olika fördefinierade POST-begäranden, kodade som XML, som kan skickas till pycsw.
Välj ”apiso/DescribeRecord” och tryck på knappen ”Send”. En beskrivning av ISO Application Profile-record visas på den högra panelen.
Välj ”GetCapabilities-SOAP” och tryck på knappen ”Send”. En SOAP-begäran skickas till servern för att annonsera deras webbtjänstfunktioner.
Du kan söka efter dataposter genom att utföra en spatial bounding box-fråga genom att välja ”GetRecords-filter-bbox” och redigera koordinaterna i XML-begäran.
Du kan gå igenom alla tillgängliga förfrågningar och utföra olika förfrågningar från denna testapplikation.
Förstå kapacitet och konfiguration¶
Funktionerna för pycsw-installationen finns på http://localhost/pycsw?service=CSW&version=2.0.2&request=GetCapabilities
. Om du bara använder http://localhost/pycsw
kommer du att få dokumentet med funktioner för CSW 3.0.0, eftersom det är den senaste versionen som stöds.
För att redigera metadata för webbtjänsten, som ingår i capabilities-dokumentet, kan du ändra filen /etc/pycsw/default.cfg
under taggen [metadata:main]
.
Om du vill aktivera stöd för INSPIRE Discovery Service ska du fylla i metadata under taggen [metadata:inspire]
och ställa in egenskapen enabled
till true
.
För fullständig funktionalitet och konfigurationsalternativ, se dokumentation på pycsws webbplats.
Skapa metadata¶
Metadatafiler för en spatial datamängd eller en spatial webbtjänst kan skapas med hjälp av open source-implementeringen av inspire-direktivet för metadata, European Open Source Metadata Editor (EUOSME). Denna applikation kan hittas på http://inspire-geoportal.ec.europa.eu/editor/
. Källkoden finns tillgänglig på https://joinup.ec.europa.eu/svn/euosme/trunk
Du kan fylla i de obligatoriska metadatafälten genom att gå igenom programflikarna och lägga till information som namnet på dataägaren, nyckelord, resursens plats på webben, geografisk plats (med hjälp av en avgränsande ruta eller namnet på ett land) etc.

När du har lagt till all tillgänglig information trycker du på knappen validation högst upp på sidan för att kontrollera att den överensstämmer med INSPIRE-direktivet.

Efter en lyckad validering kan XML-filen sparas på den lokala disken och visas med en textredigerare eller en webbläsare.
Ladda metadata¶
pycsw stöder följande databaser:
SQLite3
PostgreSQL (PostGIS valfritt)
MySQL
I OSGeoLive har en enkel SQLite-installation implementerats. Databasen finns i /usr/share/pycsw/tests/suites/cite/data/records.db
Skapa en ny databas¶
För att skapa en ny SQLite-databas måste vi göra följande:
Redigera
/etc/pycsw/default.cfg
:[förråd]
database: den fullständiga filsökvägen till metadatabasen, i databasens URL-format (se https://docs.sqlalchemy.org/en/latest/core/engines.html#database-urls)
table: tabellnamnet för metadataposter (standard är
records
)
Konfigurera databasen:
$ sudo pycsw-admin -c setup_db -f /etc/pycsw/default.cfg
Detta kommer att skapa de nödvändiga tabellerna och värdena för förvaret.
Den databas som skapas är en databas som uppfyller kraven för SSFS och kan användas med alla programvaror. Till exempel för att användas med OGR:
$ ogrinfo /path/to/records.db
INFO: Open of 'records.db'
using driver 'SQLite' successful.
1: records (Polygon)
$ ogrinfo -al /path/to/records.db
# lots of output
Importera metadata¶
$ sudo pycsw-admin -c load_records -f /etc/pycsw/default.cfg -p /path/to/records -r
Detta kommer att importera alla *.xml
-poster från /path/to/records
till den nya databasen och konfigurera arkivet för att exponera queryables enligt tabell 53 i OGC:CSW.
Upptäckt av data genom QGIS MetaSearch-plugin¶
På skrivbordet går du till Desktop GIS –> QGIS för att starta QGIS, klicka sedan på MetaSearch-knappen (CSW-ikonen)

Lägg till pycsw-servern genom att trycka på New-knappen och skriva in
http://localhost/pycsw/

Lägg till några standardservrar med hjälp av knappen Add default servers och få information om serverns kapacitet med hjälp av knappen Server info

Utför en sökning med hjälp av katalogen, antingen med ett strängvärde eller med en avgränsande box

Saker att prova¶
Försök att hitta data via Tester-programmet genom att ställa in lämpliga förfrågningar, t.ex. en textsökning med strängen ”imagery” leder till att xml-data som tidigare skapats av EUOSME hittas

Försök att upptäcka data via Python-gränssnittet OWSLib CSW.
Försök att hitta data från GeoNode, som också ingår i OSGeoLive och använder pycsw som standard CSW-motor.
Hur vill du gå vidare?¶
För mer information om pycsw, se documentation på pycsws webbplats.