Giter VIP home page Giter VIP logo

sgov-assembly-line's Introduction

Výrobní linka Sémantického slovníku pojmů

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 do Github repozitáře odkud jsou vytvořené slovníky publikovány do SPARQL 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átem SKOS.
  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řípadem Organizace). TermIt pracuje v jazyce OWL.
  4. CheckIt s backendem 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áhni GraphDB Free do složky al-db-server, např. graphdb-free-9.6.0-dist.zip.

  2. Vygeneruj soubor s proměnnými pomocí utility gen_env.sh. Utilita vyžaduje parametr s hodnotou local, development nebo production. V závislosti na parametru bude vygenerován příslušný .env.* soubor. Konfigurace komponent bude vygenerována z šablony components.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.* souboru na službu al-nginx. V případě lokálního nasazení a webového serevru apache2 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řípade Nginx:

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 inicializace al-db-serveru je potřeba spustit SPARQL dotazy ze složky al-db-server/lucene na /modelujeme/sluzby/db-server/ v sekci SPARQL.

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

    • běž do Realm Settings/Keys a klikni na Public key
      • zkopíruj hodnotu veřejného klíče daného realmu do proměnné KEYCLOAK_REALMKEY,
    • běž do Clients (levé menu)
      • klikni na klienta al-sgov-server a v Credentials zkopíruj hodnotu Secret klienta do proměnné SGOV_SERVER_KEYCLOAK_CREDENTIALS_SECRET (pokud vidíš ***** použij Regenerate Secret),
      • stejně tak zkopíruj hodnotu Secret klienta al-termit-server do proměnné TERMIT_SERVER_KEYCLOAK_CREDENTIALS_SECRET,
      • stejně tak zkopíruj hodnotu Secret klienta al-checkit-server do proměnné CHECKIT_SERVER_KEYCLOAK_CREDENTIALS_SECRET,
    • vytvoř uživatele výrobní linky v Users/Add user
      • nastav mu Username, Email, First Name a Last Name
      • po vytvoření mu nastav heslo v Credentials
    • vytvoř admina pro přiřazování gestorů ve výrobní lince v Users/Add user
      • nastav mu Username, Email, First Name a Last Name
      • po vytvoření mu nastav heslo v Credentials
      • běž do sekce Role Mappings a v Client Roles vyhledej al-checkit-server -> klikni na ROLE_ADMIN a přidej tuto roli mocí tlačítka Add selected
  3. Restartuj služby al-sgov-server, al-termit-server a al-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-server
docker-compose stop al-termit-server ; docker-compose --env-file=.env.local up -d al-termit-server
docker-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í URL http://localhost/modelujeme.

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

Služba al-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žby al-auth-server, která ukláda zdrojové data o uživatelích pomocí služby al-auth-server-db. Pracovní verze slovníků lze publikovat do Sé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í se al-db-serveru v sekci Nasazení 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 sekce Add 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 sekci List all rulesets dokumentace a obsah rulesetu pomocí dotazu v Explore a ruleset. Nyní nastavte nový ruleset jako výchozí pomocí dotazu v sekci Set 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 sekci Reinferring. (Doporučujeme přejmenovat nový ruleset pomocí dotazu v sekci Rename 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

sgov-assembly-line's People

Contributors

bindeali avatar blcham avatar filip-kopecky avatar karelklima avatar michalmed avatar mighantos avatar psiotwo avatar

Stargazers

 avatar

Watchers

 avatar  avatar  avatar  avatar  avatar

sgov-assembly-line's Issues

Nekonzistentni model pro termin "ma cenu"

Popis problému

Popište:

  • Model neni konzistentni s UFO.
  • nástroj: OntoGrapher,
  • pracovní prostor Test FK
  • diagram: "MB ..."

image

Závažnost problému

  • je to vážný problém protoze model :)

Mozne reseni

  • Model by mne nevyrusoval v pripade, zeby byla kardinalita na strane sluzby 0..1. Pak by to znamenalo, ze "ma-cena" je relator s domenou nejakeho mixinu, ktereho sluzba a vstupne jsou podtridy (i kdyz to ze je to definovane ve slovniku vstupne je mirne matouci no akceptovatelne)

Změnit logiku práce se slovníky a pojmy

Popis

V současné době jsou slovníky chápány jako zdroje - legislativní slovník obsahuje pojmy jednoho zákon, agendový jedné agendy, atd. Pojem je v současné době se slovníkem pevně svázán - jak identifikátorem, tak věcně, neboť není možné, aby pojem byl součástí i jiného slovníku.

Výhodou tohoto přístupu je i to, že můžeme vyžadovat aby v jednom slovníku se nevyskytly dva pojmy se stejným názvem.

Pracovní prostory se teď proto používají jako transakce nad mnoha slovníky, protože typicky při tvorbě modelu potřebuji upravovat pojmy z více zdrojů.

Návrh implementace

Každá pojem by měl svůj "definiční slovník". V něm by se upravovaly základní atribut (název, definice, zdroj, ...?). Gestor slovníku by byl zodpovědný za úplnost těchto atributů pro pojmy, pro které je tento slovník definiční. Gestor jiného slovníku B by se mohl rozhodnout, že přepoužije pojem definovaný v jiném slovníku D. Potom by se slovník B stal pro pojem "používající slovník". V něm by se mohl pojem editovat také, ale bez základních atributů. Abychom umožnili přesouvání pojmů v budoucnu je třeba udělat identifikátor pojmu nezávislý na identifikátoru slovníku.

do budoucna: Gestor "používajícího slovníku" B by mohl požádat gestora "definičního slovníku" Do převzetí pojmu do správy (nebo naopak). Tím by se přenesla zodpovědnost za základní atributy a současně by se tyto atributy fyzicky přesunuly do B. U dalších atributů a vazeb je třeba rozhodnout jak by se přesouvaly (pokud by po přesunu byly dva pojmy v B spojeny vazbou, patřila by do B i tato vazba). Pro přesouvání pojmů bude třeba vytvořit novou komponentu a nový proces (stávájící WS by měly pouze jeden slovník editovatelný, a proto by to v nich nešlo).

Rozdílné styly u různých typů vztahů při editaci pojmu

Popis

Při editaci pojmu mám v sekci Vztahy několik položek. Když pro každou z nich vyberu pojem, vizualizace výběru je pro každý z nich jiná. Chtělo by to sjednotit.

Screenshot from 2021-11-08 11-42-04

Kromě toho by bylo dobré celý blok přejmenovat na Vazby (podobně, jako jsme to udělali v OG)

Využití

Libovolný scénář, kdy uživatel edituje vazby. Vzhled by měl být stejný.

Užitečnost

  1. zmíněný scénář lze bez funkce realizovat, ale zdržuje mě to

Podpora pro demo instanci výrobní linky (technický task)

Výrobní linka by měla obsahovat nový "demo" režim. Pro jeho podporu potřebujeme VL komponenty spouštět se speciálním feature flagem.

Informace, zda jde o "demo" režim, se bude posílat pomocí env FEATURE_DEMO pro backendové komponenty a pomocí components.yml souboru pro frontendové komponenty.

Minimální technické úpravy:

  1. Do docker-compose.yml přidej env "FEATURE_DEMO" pro službu al-sgov-server.
  2. Do components.yml přidej meta hodnotu "feature-demo: true" pro komponentu al-mission-control.

Pro propagování hodnoty z components.yml na frontend je třeba vygenerovat .env soubor pomocí utility gen_env.sh. Ta zakóduje soubor components.yml pomocí base64, aby se dal dobře sdílet s frontendem.

Všechny pojmy jsou "rozpracované"

Při nahrání slovníku, který byl vytvořen v OntoGrapheru jsou všechny pojmy označené jako rozpracované. Na jednu stranu tomu trochu trozumím, na druhou stranu TermIt neví, jak pojmy vznikly a OntoGrapher je potvrzovat neumí.

Umožnit přidávat podřazené pojmy

Popis

Jako uživatel TermIta
potřebuji specializovat pojem z nadřazeného slovníku ve svém slovníku
abych zaznamenal např. že veřejný zadavatel (ze zákona 134/2016 Sb) má organizační složku státu (ze zákona 111/2009) jako podřazený pojem.

Užitečnost

Popište, jak užitečná Vám funkce přijde
2. zmíněný scénář lze bez funkce realizovat, ale zdržuje mě to
Workaround - upravit pojem přímo v zákoně 111/2009, ovšem tím se pojem dostává do jiného slovníku, než kde ho chceme mít.

Verze výrobní linky pro demo

Popis

Cílem je upravit VL pro školení.

Implementace

mission control

  • umožnit editování slovníku ve více pracovních prostorech
  • vidíš pouze svoje pracovní prostory
  • nemůžeš publikovat pracovní prostor
    Tyto features budou za feature-flagem.

ontographer

  • export/import diagramu (TTL)

příklady pracovních prostorů

  • samostatný Github repo
  • příp. proces periodického mazání "stale" pracovních prostorů

Workspace notes or comments

I would like to be able to add notes/comments to a workspace. Currently, we can add comments on GitHub to a PR when a workspace is published. A workspace should be short-living. However, still there are can be workspaces where the necessary work takes more than a working day. Or I cannot finish the work because I need someone else to do something in another workspace. In these cases I would like to record what I did in the workspace, what remains to do or why I keep it open.

Při pokusu vytvořit slovník se stejným IRI se nevytvoří, ale neřekne proč

Při pokusu o tvorbu slovíku s IRI, které již existuje vyhodí pracovní prostor hlášku - "slovník se nepodařilo vytvořit". Neřekne ale proč.

Závažnost problému

  1. je to vážný problém, běžný uživatel nepochopí, co se děje.

Alternativy řešení

Buď by měla hláška říkat, proč nelze slovník vytvořit, nebo ještě lépe by se hláška měla objevit rovnou v okně pro vytváření nových slovníků, např. červeným nápisem "slovník s tímto IRI již existuje"

Nefunguje proklik z pojmu na lokátor definice v textu dokumentu

Popis problému

Nevím, jestli se jedná o chybu, nebo novou featuru. Pokud je v IPR TermItu definice pojmu vyznačená výskytem v textu dokumentu, v detailu pojmu, o jehož definici se jedná, je u zdroje definice tlačítko, které přesune uživatele k výskytu definice v textu dokumentu. V TermItu výrobní linky tato funkcionalita chybí.

Závažnost problému

  1. příliš mojí práci neovlivňuje.

Označení definice pojmu selže

Popis problému

V dokumentu zákona č. 56/2001 v pracovním prostoru Školení - řidiči a vozidla v testovacím nasazení výrobní linky, při označení části textu na obrázku, výběr označení definice pojmu a výběr pojmu silniční vozidlo. Potvrzení změny definice tlačítkem "Uložit". Chvilku se TermIt tváří, že pracuje, pak text zmodrá, ale popup okno zůstane. Po zavření výskyt definice zmizí (i zmodrání).

Screenshot from 2021-10-13 14-48-05

Log:
{"message":"Expected single value with language tag cs of attribute definition of instance https://slovník.gov.cz/legislativní/sbírka/56/2001/pojem/silniční-vozidlo, but got multiple.","requestUri":"/modelujeme/sluzby/termit-server/rest/vocabularies/2001/terms/silni%C4%8Dn%C3%AD-vozidlo"}

Závažnost problému

  • popište, jak závažný pro práci s výrobní linkou pro Vás problém je:
  1. je to vážný problém,

Zefektivnění nastavování kardinalit

Popis

Vyplňování kardinalit vazeb v OntoGrapheru je zdlouhavé. Částečně lze práci usnadnit tak, že se vhodně definují defaultní kardinality, ale jednak to není jednoznačné (např. pro vlastnost chci 0..*, protože je nejobecnější, nebo 0..1, protože je nejběžnější?), jednak se stále může vyskytnout mnoho vazeb, kde defaultní kardinalita nevyhovuje.

Cílem je umožnit vybrat hrany (přímo selekcí, nebo všechny) a pro výběr změnit kardinality hromadně.

Užitečnost

  1. zmíněný scénář lze bez funkce realizovat, ale zdržuje mě to

Adding / removing 2nd+ vocabulary to a workspace shows error

  1. Create a new workspace
  2. Add a vocabulary to the workspace - it is OK
  3. Add another vocabulary to the workspace - an error is shown

image

However, the 2nd vocabulary was actually added - I can see it in the workspace after refresh (F5).

Console:

AjaxObservable.ts:272 POST https://xn--slovnk-7va.gov.cz/modelujeme/sluzby/sgov-server/workspaces/instance-1584195892/vocabularies?vocabularyUri=https://slovn%C3%ADk.gov.cz/generick%C3%BD/osoby&readOnly=false&label=undefined 409
t.send @ AjaxObservable.ts:272
t @ AjaxObservable.ts:221
t._subscribe @ AjaxObservable.ts:139
e._trySubscribe @ Observable.ts:239
e.subscribe @ Observable.ts:221
e.call @ tap.ts:82
e.subscribe @ Observable.ts:215
e.call @ mapTo.ts:52
e.subscribe @ Observable.ts:215
e.call @ catchError.ts:106
e.subscribe @ Observable.ts:215
(anonymous) @ ImportVocabularyForm.tsx:136
onClick @ ImportVocabularyForm.tsx:257
Be @ react-dom.production.min.js:54
ze @ react-dom.production.min.js:54
(anonymous) @ react-dom.production.min.js:55
Mr @ react-dom.production.min.js:105
Dr @ react-dom.production.min.js:106
(anonymous) @ react-dom.production.min.js:117
Wu @ react-dom.production.min.js:272
Le @ react-dom.production.min.js:52
qr @ react-dom.production.min.js:109
Qt @ react-dom.production.min.js:74
Yt @ react-dom.production.min.js:73
hostReportError.ts:8 Uncaught e {message: 'ajax error 409', name: 'AjaxError', xhr: XMLHttpRequest, request: {…}, status: 409, …}
(anonymous) @ hostReportError.ts:8
setTimeout (async)
r @ hostReportError.ts:8
t.error @ Subscriber.ts:238
t._error @ Subscriber.ts:144
t.error @ Subscriber.ts:114
t.notifyError @ innerSubscribe.ts:71
t._error @ innerSubscribe.ts:35
t.error @ Subscriber.ts:114
(anonymous) @ throwError.ts:72
e._trySubscribe @ Observable.ts:239
e.subscribe @ Observable.ts:221
c @ innerSubscribe.ts:112
t.error @ catchError.ts:142
t._error @ Subscriber.ts:144
t.error @ Subscriber.ts:114
t._error @ tap.ts:136
t.error @ Subscriber.ts:114
t._error @ Subscriber.ts:144
t.error @ Subscriber.ts:114
u @ AjaxObservable.ts:416
load (async)
t.setupEvents @ AjaxObservable.ts:420
t.send @ AjaxObservable.ts:249
t @ AjaxObservable.ts:221
t._subscribe @ AjaxObservable.ts:139
e._trySubscribe @ Observable.ts:239
e.subscribe @ Observable.ts:221
e.call @ tap.ts:82
e.subscribe @ Observable.ts:215
e.call @ mapTo.ts:52
e.subscribe @ Observable.ts:215
e.call @ catchError.ts:106
e.subscribe @ Observable.ts:215
(anonymous) @ ImportVocabularyForm.tsx:136
onClick @ ImportVocabularyForm.tsx:257
Be @ react-dom.production.min.js:54
ze @ react-dom.production.min.js:54
(anonymous) @ react-dom.production.min.js:55
Mr @ react-dom.production.min.js:105
Dr @ react-dom.production.min.js:106
(anonymous) @ react-dom.production.min.js:117
Wu @ react-dom.production.min.js:272
Le @ react-dom.production.min.js:52
qr @ react-dom.production.min.js:109
Qt @ react-dom.production.min.js:74
Yt @ react-dom.production.min.js:73

Similar situation occurs when I remove a vocabulary from a workspace after I removed another one.

Milestone 1a - diagram se nezobrazí správně

Při testování scénáře pro milestone 1a jsem narazil na tento problém:
Až do kroku 10 je všechno v pořádku. V novém WS se diagram zobrazí jinak, než jak vypadal v tm prvním (už smazaném).

Screenshot from 2021-12-20 11-56-17

Na diagramu chybí pojem Part of the builidng, ale jsou tam navíc tři blank pojmy ze 111/2009 (při přepnutí do full view je vidět, že na ně vedou relátory z 359/2011).

Závažnost problému

  1. je to vážný problém,

Chybné zobrazení slovníků v TermItu v mobilu

Při zobrazení výrobní linky v mobilu se mi pro každý pracovní prostor pri kliknutí na Editovat pojmy zobrazí slovníky z pracovního prostoru Veřejné zakázky.

  1. je to vážný problém, ale pokud se opravdu projevuje pouze v mobilu, pak nemusí mít vysokou prioritu

Zalamování textu

Ikona prvku se zvětší tak, aby obsáhl celý pojem v jednom řádku ... s ohledem na to, že se často musí držet dlouhé pojmy dané legislativou je to trochu nepraktické. Pokud by se text zalamoval a případný delší název byl zkrácen a zobrazoval se v plném znění jen např. při najetí kurzoru, tak by to bylo asi přehlednější.

V TermItu se nezobrazí slovníky

Popis problému

V pracovním prostoru Školení - řidiči a vozidla na testovací výrobní lince se nezobrazí slovníky (ačkoliv jsou určitě načtené, zobrazuje se filtrovat ve 2 slovnících). VIz screenshot:

Screenshot from 2021-10-13 14-37-12

Log:
{"message":"Vocabulary https://slovník.gov.cz/agendový/slovn-k-ava-k-da does not exist in workspace Workspace{Školení - řidiči a vozidla https://slovník.gov.cz/datový/pracovní-prostor/pojem/metadatový-kontext/instance946326684}","requestUri":"/modelujeme/sluzby/termit-server/rest/terms/motorov%C3%A9-vozidlo"}

Řekl bych, že se TermIt zasekl na vyhledávání pojmu "motorové vozidlo" a nějak se ho neumí zbavit.

Závažnost problému

  1. je to vážný problém,

Všechny labely pojmů ve WS jsou <blank>

Narazil jsem na to během testování milestonu 1a

Popis problému

Po otevření OG z WS vytvořeného minulý týden pro testování milestonu 1a jsou labely všech pojmů . V detailu pojmu je blank jako english verze, ale nejde překliknout na českou.
og_blank

Závažnost problému

  1. je to vážný problém,

Alternativy řešení

Asi souvisí s přepínáním jazykových mutací OG.

Při vytváření pojmu nemůžu přiřazdit nadřazený pojem z jiného slovníku

Popis problému

Při vytváření nového pojmu nemůžu přiřadit nadřazený pojem ze slovníku, který není ve WS. V roletě se mi pojmy objeví (občas to trvá, občas jim chybí label se slovníkem, ze kterého pochází). Když pojem vyberu, zobrazí se pod výběrovou lištou. Při uložení pojmu ale dostanu chybu:

No result found for query SELECT ?vocabulary WHERE { <https://slovník.gov.cz/agendový/slovn-k-z-kona-56-2001-sb-rky-ve-ws-michala-meda/pojem/vozidlo> <http://onto.fel.cvut.cz/ontologies/slovník/agendový/popis-dat/pojem/je-pojmem-ze-slovníku> ?vocabulary . }

Pokud pojem uložím bez toho, je všechno v pořádku, ale nemám přiřazený nadřazený pojem. Zajímavé je, že když potom pojem otevřu pro editaci a přidám nadřazený pojem, tak už všechno proběhne v pořádku. Chyba se tedy projevuje pouze při vytváření nového pojmu.

Závažnost problému

  1. je to vážný problém -- běžný uživatel nepřijde na to, že to jde udělat v editačním módu

Alternativy řešení

Nadřazené pojmy z jiných slovníků nepřidávat při vytvážení, ale pouze v editaci. ALe lepší bude to prostě opravit.

Nekonzistentni model pro termin ma kapacitu

Pokud je to možné, pokuste se informaci o chybě rozepsat dle následující struktury, pomůžete nám ji rychleji identifikovat a opravit.

Popis problému

  • model terminu ma-kapacitu neni konzistentni s UFO (je to typ-vlastnosti a zaroven typ-vztahu)
  • pracovní prostor: turisticky cil

kapacita_509534051675524364

Závažnost problému

  • zavazny

Alternativy řešení

  • zrejme by se mel odstranit typ-vlastnosti
  • BTW, bohuzel ani ta cast modelu ohledne mnozstvi neni nic moc (asi by vsude u mnozstvi, hodnota, i ma jednotku meli byt kardinality 1 aby to alespon trochu davalo zmysel)

Import modelu

Pokud by bylo možné importovat model ve standardní notaci zpracovaný běžným nástrojem (např. Enterprise Architect), tak by to umožnilo snáze překlenout počáteční fázi. Model bychom při vytváření udělali vedle a sem jej jen přemístili. Při tvorbě děláme mnoho změn (model tvoříme v kolektivu cca 10 lidí) a omezení nástroje dost ztěžují plynulost procesu.

V canvasu 1 se objevují pojmy z canvasu 2

Popis problému

V pracovním prostoru Slovník vyhlášky č. 393/2020 Sb., o digitální technické mapě kraje v záložce Předmět úpravy se objevují pojmy, které do ní nebyly přidány, ale byly vytvořeny v záložkách Obsah digitální technické mapy a § 2 (1). Můžu je skrýt, ale potom, co se vrátím do záložky Předmět úpravy se mi znovu objeví.

Závažnost problému

  1. příliš mojí práci neovlivňuje. ALE JE TO OTRAVNÉ

Přidat slovník > Slovník se zobrazuje jako "undefined"

Kroky

  1. Otevřít detail pracovního prostoru: Hlasování zastupitelstva obce
    https://xn--slovnk-test-scb.mvcr.gov.cz/modelujeme/workspace/instance-809875291
  2. Přidat slovník

Výsledek

Název slovníku se zobrazuje jako "undefined".

Očekávaný výsledek

Slovník je korektně přidán do pracovního prostoru.

Další poznámky

TermIt zobrazuje název slovníku také jako undefined a neobsahuje žádné pojmy.
V OntoGrapheru slovník také nezobrazuje žádné pojmy.

Závažnost problému

  1. nemohu vůbec pracovat

Posouvání ve schématu

V prohlížeč Safari na macOS se nelze posouvat ve schématu, je nutno odzoomovat a pak se zkusit přizoomovat na potřebné místo.

Problém s kompatibilitou vazeb

Dobrý den,

v Ontographeru, v pracovním prostoru Veřejné zakázky mezi typem objektu a typem vztahu, stejně tak mezi typem objektu a typem vlastnosti, lze jako kompatibilní vazbu vytvořit pouze generalizaci, ostatní vazby jsou nekompatibilní. Při zobrazení v kompaktním modu potom některé objekty "plavou", viz obr.

Obr_1

I. Rosická

Podpora sdílení a správu diagramů

Popis

V současné době jsou diagramy ukládány pouze v pracovním prostoru a nejsou publikovány. Uživatelé tak pracovní prostory raději nemažou protože mají v diagramech práci, o kterou nechtějí přijít. Tím je porušena původní myšlenka pracovních prostorů, jako krátkých transakcí nad SSP.

Návrh implementace

OntoGrapher:
OntoGrapher bude načítat všechny diagramy z SSP Cache pro daný slovník z WS. Taky umožní ke slovníku přidávat diagram (jak teď vybrat slovník? (nový popup třeba) - v budoucnu by měl být 1 slovník per workspace tak by to neměl být problém) a všechny diagramy daného slovníku měnit - název i obsah. OntoGrapher zajistí, aby nebylo možné vytvořit diagram s názvem, který již v daném slovníku existuje. Diagramy daného slovníku bude možné upravovat a mazat.

v budoucnu: zvážit možnost kopírovat diagramy jiných slovníků do aktuálního slovníku

sgov-server + pipeline na GH:
Diagramy se budou ukládat jako součást slovníků na GitHub. Co soubor to diagram. Každý diagram má svůj identifikátor (IRI), jehož localName bude názvem souboru (nějaký hash). Název diagramu bude pouze v datech samotných. Po zamergování workspace se musí aktualizovat SSP Cache i o diagramy.

Ujistit se, že všechny nástroje výrobní linky umí pracovat s TLSv1.3

Popis

Všechny nástroje výrobní linky pracující přes HTTPS musí umět TLSv1.3

Využití

Při každé interakci s endpointem.
Nyní je většina MV ČR serverů nastavena na podporu TLSv1.2 a TLSv1.3. TLSv1.2 již ale není doporučené pro moderní webové servery a tedy bude v nějaké (více či méně blízké) budoucnosti vypnuto, a zůstane TLSv1.3. To může způsobit problém s připojením přes HTTPS u nástrojů, které TLSv1.3 neumí, jak se to již v minulosti stalo. Dnes používané knihovny (např. Java) ale již TLSv1.3 podporují. Je tak třeba se jen ujistit, že ve výrobní lince nejsou používány staré verze, případně je updatovat.

Užitečnost

  1. zmíněný scénář bez navrhované funkce realizovat nelze

Model vytvořený v ontographeru nemá v TermItu žádnou hierarchii

Je to vidět na příkladě eSbírky. eSbírka je komplexní model vytvořený v OntoGrapheru, obsahuje semantické vazby mezi pojmy, včetně podtříd, vlastností atd. Když ho nahraju do TermIta, mám glosář bez jakýchkoliv vztahů mezi pojmy. Očekával bych minimálně:

  • hierarchie pojmů podle generalizací narrower/broader,
  • related terms, kromě výše zmíněných vlastnosti, vztahy.

OG neumožňuje vytvářet vztahy mezi pojmy

Popis problému

Začal jsem testovat vytváření vztahů v kompaktním režimu. Při naznačení šipky mezi dvěma objekty mi vyskočí dialog, ve kterém vytvořím nový vztah (nebo vyberu jeden z existujících, chyba se projevuje stejně) a potvrdím jeho vytvoření. V ten okamžik se OG zakousne. V Logu mám status 500 nad https://xn--slovnk-test-scb.mvcr.gov.cz/modelujeme/sluzby/db-server/repositories/assembly-line/transactions/e3bc9eb9-844b-49cd-bd23-03849bd78a73?action=UPDATE.

Pokud přepnu zpět do full zobrazení, chyba se začne projevovat úplně stejně.

Závažnost problému

  1. nemohu vůbec pracovat,

V Ontographeru zmizely z diagramů vazby a pojmy

V Ontographeru (pracovní prostor Veřejné zakázky) nám z diagramů zmizely vazby (ve slovnících jsou zachovány). V průběhu dne dokonce na diagramech nebyly zobrazené ani pojmy a diagramy byly prázdné. Nyní odpoledne už vidím na diagramech část pojmů (ne všechny), ale většina vazeb byla odstraněna. Přikládám screen:
image

Problém je pro nás závažný, schémata znovu nakreslíme, ale jen díky tomu, že máme zachované screeny. Děkuji.

Edit: Po opětovném přihlášení do pracovního prostoru a zobrazení si vztahů v Ontographeru už na diagramu nevidím ani většinu pojmů viz screen níže:
image
Informace na diagramech se mění v čase.

Problém se zobrazením modelu v Ontographeru (blank)

Minulý týden jsem hlásila issue #70, pod mým účtem však stále nelze zobrazit diagramy v pracovním prostoru Veřejné zakázky (screen dole). Kolegové vidí data v pořádku, problém přetrvává u mne. Zkoušela jsem následující:

  1. Přihlásit se na jiné pracovní stanici
  2. Promazat mezipaměť prohlížeče
  3. Vymazat cache Windows

Prosím o info, jak dále postupovat. Děkuji.

V Ontographeru vidím toto:
image

Export

Dobrý den, za účelem prezentace výstupů na pracovních týmech potřebujeme mít možnost z nástroje vyexportovat obrázek do nějakého šiřitelného formátu, např. jpg. Nemůžeme žádnou exportní funkci dohledat, což dost limituje využívání nástroje pro přípravu modelu v širším týmu. Je ta funkce někde skrytá, nebo je v dohledné době v plánu? Za info předem díky.

Nejde dohledat druhy argument relatoru v sekci Links

Nejde dohledat druhy argument relatoru v sekci "Links" pro entitu ma-cenu.

Popis problému

  • nastroj: OntoGrapher
  • pracovni prostor Test FK, diagram "MB ..."
  • Na screencaste je videt:
    • hlavni problem - nejprve v sekci "Links" entitu "Částka" vubec nemohu najit, no po pridani teto entity manualne se v sekci Links objevi
    • vedlejsi problem -- musel jsem to z leveho panela tahat na dva-krat
Screencast.2021-11-11.15.35.07.mp4

Závažnost problému

  • zpomaluje mě to,

Datové zdroje jsou matoucí

Popis problému

Popište:

  • v TermIt se zobrazují datové zdroje. Ty jsou ale matoucí, protože nejsou specifické pro workspace.

Závažnost problému

  1. příliš mojí práci neovlivňuje.

Alternativy

  • buď podpořit práci s datovými zdroji v TermIt - specifické pro workspace, nebo menu item odstranit.

Při načtení pojmu z importovaného slovníku se nenačte nic a zobrazí chyba

Pokud je to možné, pokuste se informaci o chybě rozepsat dle následující struktury, pomůžete nám ji rychleji identifikovat a opravit.

Popis problému

Popište:
Při práci v TermItu v pracovním prostoru Budovy jsem se pokusil otevřít detail pojmu Budova a Katastrální území. V obou případech jsem dostal blank screen a v pravém horním rohu chybovou hlášku

cz.cvut.kbss.ontodriver.sesame.exceptions.SesameDriverException: org.eclipse.rdf4j.repository.RepositoryException: <!doctype html><html lang="en"><head><title>HTTP Status 400 – Bad Request</title><style type="text/css">body {font-family:Tahoma,Arial,sans-serif;} h1, h2, h3, b {color:white;background-color:#525D76;} h1 {font-size:22px;} h2 {font-size:16px;} h3 {font-size:14px;} p {font-size:12px;} a {color:black;} .line {height:1px;background-color:#525D76;border:none;}</style></head><body><h1>HTTP Status 400 – Bad Request</h1><hr class="line" /><p><b>Type</b> Exception Report</p><p><b>Message</b> Request header is too large</p><p><b>Description</b> The server cannot or will not process the request due to something that is perceived to be a client error (e.g., malformed request syntax, invalid request message framing, or deceptive request routing).</p><p><b>Exception</b></p><pre>java.lang.IllegalArgumentException: Request header is too large org.apache.coyote.http11.Http11InputBuffer.fill(Http11InputBuffer.java:777) org.apache.coyote.http11.Http11InputBuffer.parseHeader(Http11InputBuffer.java:938) org.apache.coyote.http11.Http11InputBuffer.parseHeaders(Http11InputBuffer.java:593) org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:284) org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:65) org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:887) org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1684) org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:49) java.base&#47;java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) java.base&#47;java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61) java.base&#47;java.lang.Thread.run(Thread.java:834) </pre><p><b>Note</b> The full stack trace of the root cause is available in the server logs.</p><hr class="line" /><h3>Apache Tomcat/9.0.43</h3></body></html>

Závažnost problému

  • popište, jak závažný pro práci s výrobní linkou pro Vás problém je:
  1. je to vážný problém,

Nelze editovat vztahy

Nedaří se načtení workspace Veřejné zakázky v Ontographeru. Workspace se stále načítá, nepomohla ani změna prohlížeče nebo odhlášení a přihlášení. Děkuji za informaci, zda se jedná o krátkodobý výpadek nebo o problém na mé straně. Děkuji.

image

Nelze nahrát Z-SGoV

Mé pojmy jej potřebují. Za A jsou přes něj porpojeny a za B od jeho pojmů dědí že jsou ufo:Object.

Nenačítá se pracovní prostor

Dobrý den,

v nástroji OntoGrapher se od včerejšího odpoledne nedaří načíst pracovní prostor Veřejné zakázky. Nástroj stále zobrazuje, že se pracovní prostor načítá, schémata lze zobrazit aspoň pro čtení, ale není možné s nimi pracovat a editovat vztahy.

I. Rosická

Při pokusu o spuštění textové analýzy anotátor selže

Vlastnímu slovníku přidám nový dokument a přidám do něj HTML soubor stažený ze zákonů pro lidi. Při pokusu o analýzu souboru pomocí "jejího" slovníku dostanu hlášku "Text analysis invocation failed". Testováno v pracovním prostoru Avo Kádo - školení v jediném slovníku a dokumentu, který obsahuje.

Závažnost problému

  1. nemohu vůbec pracovat,

Při označení textu v anotátoru je označen celý řádek

Popis problému

Pokud chci vytvořit nový výskyt pojmu označením části textu, po stisknutí "mark term occurrence" se zvýrazní celý řádek. Toto zjednodušení bylo zavedeno pro definice, aby nebyl problém s vnořenými tagy, ale pro výskyty pojmu se používat nemá.

Screenshot from 2021-11-01 21-48-29
Na obrázku jsem označil text "historickým vozidlem" a výsledkem je označení celého (posledního) řádku.

Závažnost problému

  1. je to vážný problém,

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.