Příprava transformačních projektů v aplikaci hale»studio
Celý proces přípravy transformačních projektů probíhá ve dvou fázích. První fáze se odehrává v aplikaci hale»studio, kde se připravuje samotný transformační projekt – definují se zdrojová data, cílová schémata a transformační pravidla. Po dokončení této fáze je výstupem projektový soubor ve formátu .halex.
Druhá fáze probíhá na portálu ISSI v sekci Transformační projekty, kde se hotový .halex soubor nahraje a spustí se vlastní transformace. Tímto způsobem se odděluje příprava pravidel od samotného běhu transformace.
1. Aplikace hale»studio
V následujícím textu je uveden postup přípravy transformačního projektu v hale»studio.
Po spuštění aplikace vytvoříme nový projekt přes ikonu New project nebo přes nabídku File → New alignment project. Projekt uložíme pomocí Save alignment project as... a jako formát zvolíme *hale project. V následujícím okně do pole Project name zadáme *libovolný název a v posledním okně do pole Target file opět uvedeme *libovolný název. Nakonec vše potvrdíme tlačítkem Finish.
Import
Nejprve je třeba importovat zdrojové (source) schéma přes File → Import → Source schema.... Následně v Import location pomocí Browse vybereme soubor *.csv nebo *.shp. Další kroky pouze proklikáme a potvrdíme tlačítkem Finish.
Stejným způsobem je potřeba naimportovat cílové (target) schéma přes File → Import → Target schema.... V Import location na záložce From preset vybereme příslušnou datovou sadu, nejčastěji INSPIRE Administrative and Social Governmental Services 5.0 (pozn.: sadu i verzi vybíráme dle konkrétní datové sady kterou máme k dispozici). V dalším kroku zaškrtneme možnost vytvoření také Mappable types a potvrdíme tlačítkem Finish.
Nakonec je třeba importovat i zdrojová (source) data přes File → Import → Source data.... V Import location opět vybereme stejný soubor jako u Source schema pomocí Browse (.csv nebo .shp). V dalším kroku v Sheet selection vybereme příslušný list (sheet) a poté zvolíme odpovídající type (se stejným názvem jako má soubor). Nakonec vše potvrdíme tlačítkem Finish.

Mapování
Nyní přecházíme k samotnému mapování. Pro mapování je důležité označit na straně zdroje (source) i cíle (target) objekt, na který mapujeme.
1. Klikneme na základní soubory na obou stranách (zde Ekocentra – zdroj a GovernmentalService – cíl) a přes dvojšipku uprostřed rozhraní zvolíme mapovací funkci Retype. V jednotlivých záložkách není třeba nic vyplňovat, pouze zkontrolujeme, že se propisují správné údaje, a poté vše potvrdíme tlačítkem Finish.
2. Dále namapujeme Id ze zdrojového schématu (INSPIRE_ID) na Id cílového schématu (id) pomocí Formatted string. V Entity selection pouze zkontrolujeme, že je vše správně, a následně v dalším kroku do pole Format pattern zapíšeme ID_{***}, v našem případě ID_{INSPIRE_ID}. Nakonec zvolíme Finish.

3. Následně namapujeme stejné Id ze zdrojového schématu (INSPIRE_ID) na inspireId, konkrétně na podsoubor localId (inspireId → Identifier → localId), pomocí funkcionality Rename. Necháme výchozí nastavení a zvolíme Finish.
4. Pro inspireId je potřeba přiřadit hodnoty k namespace (inspireId → Identifier → namespace) a versionId (inspireId → Identifier → versionId) pomocí funkcionality Assign. U namespace nejprve zkontrolujeme Entity selection a poté přiřadíme konkrétní namespace, např. http://data.gov.cz/id/. V případě versionId definujeme pouze nilReason (inspireId → Identifier → versionId → nilReason), kde nejprve ověříme správný výběr a následně nastavíme hodnotu other:unpopulated.

5. Pro Point (ServiceLocation → ServiceLocationType → choice → serviceLocationByGeometry → AbstractGeometry → Point) je potřeba přidat hodnoty souřadnic lat (X) a lon (Y) pomocí funkcionality Ordinate to Point. V prvním kroku nastavíme správné přiřazení lat (X) a lon (Y), pro parametr Z zvolíme možnost None. Ve druhém kroku u Function parameters přidáme hodnotu EPSG:4258 a potvrdíme vytvoření souřadnic.
6. nilReason pro parametry beginLifespanVersion (beginLifespanVersion → nilReason), endLifespanVersion (endLifespanVersion → nilReason) a areaOfResponsibility (areaOfResponsibility → nilReason) se mapuje pomocí funkcionality Assign. Nejprve ověříme správný výběr a poté nastavíme hodnotu unknown.

7. Pro namapování atributu title (ServiceType → title) je nejprve nutné přidat příslušný code list. Code list se importuje obdobně jako zdrojové a cílové schéma či zdrojová data, a to přes File → Import → Code list.... Zde zvolíme možnost From INSPIRE registry a vybereme příslušný code list k danému tématu, nejčastěji pravděpodobně ze složky „Veřejné služby a služby veřejné správy – Druh služby (Service Type Value)“. Poté pomocí funkcionality Assign nejprve ověříme správný výběr, následně zvolíme příslušný code list a nakonec vybereme požadovanou hodnotu.
V případě, že potřebujeme namapovat více než jednu hodnotu z code listu, mapujeme na title (ServiceType → title), případně také na href (ServiceType → href), a to ze zdrojového schématu příslušný atribut pomocí funkcionality Classification. V Entity selection není nutné nic vyplňovat. V záložce Classification pak existuje několik možností, jak data namapovat:
- Ručně – pomocí tlačítka + (Add source value) přidáme zdrojovou hodnotu a přiřadíme jí odpovídající URI adresu.
- Automaticky z dat – volbou Attempt to fill source values... se načtou všechny hodnoty ze vzorového souboru, ke kterým pak lze přiřadit URI adresu ve formátu http://....
- Z INSPIRE registry – přes File → Import → Code list (From INSPIRE registry) nahrajeme číselník a následně při mapování pomocí Attempt to fill source values... vybíráme URI hodnoty přímo včetně názvu číselníku.
- Z Excelu – připravíme si soubor se dvěma sloupci (source + target), kde jsou jednotlivé kódy z číselníku a jejich URI adresy. Tento soubor nahrajeme přes Load classification from file a při dotazu Select if the first row contains headlines zvolíme YES. Po dokončení se všechny položky namapují.

8. Poslední důležité parametry, které by neměly být opomenuty, jsou parametry týkající se lokalizace služeb – například adresa (obec, ulice, PSČ) či další údaje, jako je telefon, e-mail nebo web. Tyto atributy se mapují na podsoubory v pointOfContact pomocí funkcionality Rename. Adresa se například mapuje na text (pointOfContact → Contact → address → AddressRepresentation → thoroughfare → GeographicalName → spelling → SpellingOfName → text), PSČ na postCode (pointOfContact → Contact → address → AddressRepresentation → postCode) a obdobně i další údaje.
Export
Nakonec připravíme exportovací prostředí pro správný export souboru přes File → Export → Transformed data.... Jako Export format vybereme formát *GML (WFS 2.0 FeatureCollection), v Export destination *vytvoříme nový soubor. U Coordinate reference system *zaškrtneme Use a specific EPSG prefix for SRS names, zbytek pouze proklikáme a nakonec zvolíme Finish.
Samotný export dat provedeme přes File → Export → Create custom data export.... Jako Export format vybereme formát *GML (WFS 2.0 FeatureCollection), v Custom export configuration settings soubor *pojmenujeme. U Coordinate reference system zaškrtneme *EPSG prefix (Use a specific EPSG prefix for SRS names), zbytek pouze proklikáme a nakonec zvolíme Finish.