Movatterモバイル変換


[0]ホーム

URL:


Skip to content

Navigation Menu

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up

Issue tracker k výrobní lince sémantických konceptuálních modelů.

License

NotificationsYou must be signed in to change notification settings

datagov-cz/sgov-assembly-line

Repository files navigation

Výrobní linka je sada nástrojů, které slouží k tvorběSémantického slovníku pojmů. V současné době zahrnuje několik komponent:

  1. Kontrolní panel, který používáSGoV Server jako backend. Jedná se o nástroj pro správu pracovních prostorů (transakcí pro editaci Sémantického slovníku pojmů) a jejich publikaci doGithub repozitáře odkud jsou vytvořené slovníky publikovány doSPARQL endpointu.
  2. TermIt, který má rovněž vlastníback-end. Jedná se o nástroj na správu pojmů samotných, jejich názvů, definic, zdrojů a základní strukturování do tezauru. TermIt pracuje s formátemSKOS.
  3. OntoGrapher je nástrojem pro tvorbu ontologických konceptuálních modelů na základě pojmů, tedy o jejich vzájemné propojování významovými vazbami (např.Orgán veřejné moci je speciálním případemOrganizace). TermIt pracuje v jazyceOWL.
  4. CheckIt sbackendem je nástroj sloužící pro revizi a schvalování změn provedených na slovnícich pomocí ostatních nástrojů Výrobní linky.

Výrobní linka je rozšiřitelná o další nástroje, které mohou řešit jiné (nebo stejné) dílčí úlohy.

Nasazení výrobní linky

Tento repozitář obsahuje sadu Docker instrukcí pro nasazení Výrobní linky.

Postup:

  1. StáhniGraphDB Free do složkyal-db-server, např.graphdb-free-9.6.0-dist.zip.

  2. Vygeneruj soubor s proměnnými pomocí utilitygen_env.sh. Utilita vyžaduje parametr s hodnotoulocal,development neboproduction. V závislosti na parametru bude vygenerován příslušný.env.* soubor. Konfigurace komponent bude vygenerována z šablonycomponents.yml a zakódována pomocí base64 do jednoduchého řetězce. Příklad:

./gen_env.sh local
  1. Přidej do.env.<CONTEXT> proměnné a nastav je:Tyto proměnné volíš:

    • GRAPHDB_ZIP_FILE_NAME - jméno souboru stažené GraphDB (např.graphdb-free-9.6.0-dist.zip)
    • POSTGRES_DB - název databáze pro keycloak uživatele
    • POSTGRES_USER - uživatelské jméno pro správu databáze
    • POSTGRES_PASSWORD - heslo pro správu databáze
    • KEYCLOAK_USER - uživatelské jméno k přihlášení do admin konzole Keycloaku
    • KEYCLOAK_PASSWORD - heslo k přihlášení do admin konzole Keycloaku
    • KEYCLOAK_API_USER_USERNAME - uživatelské jméno pro přístup k API Keycloaku (potřebné pro CheckIt)
    • KEYCLOAK_API_USER_PASSWORD - heslo pro přístup k API Keycloaku (potřebné pro CheckIt)
    • SGOV_SERVER_REPOSITORY_GITHUBUSERTOKEN - GitHub token pro vytvoření PR (nutné pouze pro publikaci pracovního prostoru na Github)
    • CHECKIT_SERVER_REPOSITORY_GITHUBUSERTOKEN - GitHub token pro schvalování PR (nutné pouze pro publikaci pracovního prostoru na Github)
  2. Spusťdocker-compose s příslušným.env.* souborem. Příklad:

docker-compose --env-file=.env.local up
  1. Nakonfiguruj a spusť externí webový server pro směrování požadavků z url definované v proměnnéURL příslušného.env.* souboruna službual-nginx. V případě lokálního nasazení a webového serevruapache2 konfigurace může vypadat následovně:
<VirtualHost *:80>        <Location /modelujeme>                ProxyPass http://localhost:1234/modelujeme nocanon                ProxyPassReverse http://localhost:1234/modelujeme        </Location></VirtualHost>

nebo v případeNginx:

server {        listen 80 default_server;        listen [::]:80 default_server;        root /var/www/html;        index index.html index.htm index.nginx-debian.html;        server_name _;        location / {                try_files $uri $uri/ =404;        }        location /modelujeme {                proxy_set_header X-Forwarded-Host $host:$server_port;                proxy_set_header X-Forwarded-Server $host;                proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;                proxy_pass http://localhost:1234/modelujeme;                proxy_buffer_size 128k;                proxy_buffers 4 256k;                proxy_busy_buffers_size 256k;                proxy_read_timeout 600s;        }}
  1. Pro inicializaceal-db-serveru je potřeba spustit SPARQL dotazy ze složkyal-db-server/lucene na/modelujeme/sluzby/db-server/ v sekciSPARQL.

  2. V al-auth-serveru (/modelujeme/sluzby/auth-server/admin/, přihlas se do něj pomocí$KEYCLOAK_USER a$KEYCLOAK_PASSWORD)

    • běž doRealm Settings/Keys a klikni naPublic key
      • zkopíruj hodnotu veřejného klíče daného realmu do proměnnéKEYCLOAK_REALMKEY,
    • běž doClients (levé menu)
      • klikni na klientaal-sgov-server a vCredentials zkopíruj hodnotuSecret klienta do proměnné SGOV_SERVER_KEYCLOAK_CREDENTIALS_SECRET (pokud vidíš***** použijRegenerate Secret),
      • stejně tak zkopíruj hodnotuSecret klientaal-termit-server do proměnné TERMIT_SERVER_KEYCLOAK_CREDENTIALS_SECRET,
      • stejně tak zkopíruj hodnotuSecret klientaal-checkit-server do proměnné CHECKIT_SERVER_KEYCLOAK_CREDENTIALS_SECRET,
    • vytvoř uživatele výrobní linky vUsers/Add user
      • nastav muUsername,Email,First Name aLast Name
      • po vytvoření mu nastav heslo vCredentials
    • vytvoř admina pro přiřazování gestorů ve výrobní lince vUsers/Add user
      • nastav muUsername,Email,First Name aLast Name
      • po vytvoření mu nastav heslo vCredentials
      • běž do sekceRole Mappings a vClient Roles vyhledejal-checkit-server -> klikni naROLE_ADMIN a přidej tuto roli mocí tlačítkaAdd selected
  3. Restartuj službyal-sgov-server,al-termit-server aal-checkit-server:

docker-compose --env-file=.env.local up

nebo

docker-compose stop al-sgov-server ; docker-compose --env-file=.env.local up -d al-sgov-serverdocker-compose stop al-termit-server ; docker-compose --env-file=.env.local up -d al-termit-serverdocker-compose stop al-checkit-server ; docker-compose --env-file=.env.local up -d al-checkit-server
  1. Ověř, že Výrobní linka běží. V případě lokálního nasazení je její URLhttp://localhost/modelujeme.

Obnova databáze slovníků z publikovaných dat

Službaal-db-server představuje RDF úložište obsahující pracovní verze slovníků a uživatele systému. Uživatele systému lze kdykoli smazat a přegenerovat pomocí službyal-auth-server, která ukláda zdrojové data o uživatelích pomocí službyal-auth-server-db. Pracovní verze slovníků lze publikovat doSémantického slovníku pojmů (SSP).

V případě, že jsou všechny slovníky publikované, je možné RDF úložistě smazat a obnovit počáteční stav úložište (viz. body týkající seal-db-serveru v sekciNasazení výrobní linky) a importu všech základních dat na/modelujeme/sluzby/db-server/import#server. Po obnovení počátečního stavu uložiště je potřeba naimportovat slovníky z SSP a obnovit i RDF reprezentaci uživatelů systému v tomto úložišti. Záznam uživatele se v RDF úložišti vytvoří automaticky při libovolné aktualizaci uživatele pomocí uživatelského rozhraní na adrese/modelujeme/sluzby/auth-server/. Po aktualizaci všech uživatelů je obnova databáze slovníku hotova.

Alternativně lze RDF reprezentaci uživatelů systému nahrát ze zálohy, protože je obsažena v separatním kontextu RDF úložiště (např.https://slovník.gov.cz/uživatel).

Změna rulesetu databáze

Konkrétní SPARQL dotazy naleznete v dokumentaci GraphDB odpovídající vaší verzi GraphDB v Usage -> Reasoning -> How To's. (Dokumentace 9.6)

Na al-db-serveru v sekci SPARQL (/modelujeme/sluzby/db-server/sparql) najdete webové rozhraní pomocí, kterého lze nad databází vykonávat SPARQL dotazy. Vložte nový ruleset pomocí SPARQL dotazu ze sekceAdd a custom ruleset with SPARQL INSERT dokumentace GraphDB, kde vložíte text nového rulesetu mezi předpřipravené trojité apostrofy. Tento dotaz by měl vytvořit rulesetu s názvem "custom". To si můžete ověřit pomocí dotazu pro výpis rulesetů v sekciList all rulesets dokumentace a obsah rulesetu pomocí dotazu vExplore a ruleset. Nyní nastavte nový ruleset jako výchozí pomocí dotazu v sekciSet a default ruleset. Nyní by jste měli ve výpisu rulesetů vidět u nového rulesetu status default a current. Posledním krokem je přegenerování odvození pomocí dotazu v sekciReinferring. (Doporučujeme přejmenovat nový ruleset pomocí dotazu v sekciRename a ruleset, aby se předešlo konfliktu při příštím vytváření "custom" rulesetu.)


Tento repozitář je udržován v rámci projektu OPZ č.CZ.03.4.74/0.0/0.0/15_025/0013983.Evropská unie - Evropský sociální fond - Operační program Zaměstnanost

About

Issue tracker k výrobní lince sémantických konceptuálních modelů.

Topics

Resources

License

Stars

Watchers

Forks


[8]ページ先頭

©2009-2025 Movatter.jp