ceskaexpedice / kramerius

System Kramerius
GNU General Public License v3.0
45 stars 26 forks source link

Issue 579: Nastavení příznaku public/private procesem podle jiného kritéria #38

Closed vlahoda closed 9 years ago

vlahoda commented 10 years ago

Reported by vlahoda, Jun 28, 2013 Je třeba vytvořit nový proces, který projde všechny FOXML dokumenty v úložišti, postupně aplikuje určené kritérium přístupových práv (např. moving wall) se zadaným parametrem a podle výsledku tohoto kritéria nastaví trvale příznak public/private. Dokument následně přeindexuje. Jul 4, 2013 Delete comment Project Member #1 vlahoda (No comment was entered for this change.) Status: OnHold

zabak commented 9 years ago

Prosím dejte tomuto ticketu podstatně vyšší prioritu. Vzhledem k faktické nefunkčnosti pohyblivé zdi bychom toto potřebovali vyřešit.

pavel-stastny commented 9 years ago

Ale pohybliva zed je funkcni. Stejne tak jak je funkcni IP filter ci prihlaseni podle uzivatele. To co chcete vy je, aby se priznak (verejny | neverejny) promitl do indexu a dalo se (dle toho priznaku) dotazovat. Nic vic, nic min. Nebo co vas vede k zaveru, ze je zed nefunkcni ? Pokud nastavite pohyblivou zed spravne, tak vas k obrazku, dlazdici, streamu TEXT_OCR opravdu nepusti a to je ukol tohoto kriteria.

zabak commented 9 years ago

Ano, pohyblivá zeď (víceméně) funguje (tj. pokud je datum v očekávané syntaxi, což je asi v 10% případů - a navíc autorský zákon rozeznává uvolňování po celých rocích, ne po dnech - rozhodující je 1.1. roku následujícího po vydání dokumentu), ale popravdě, pokud není private/public příznak v datech, tak je to k ničemu. V NDK je 104891 monografií a 1188 periodik. Z toho veřejných jen 4070 monografií a 48 periodik! Tohle je pro běžného uživatele bez filtru pro veřejné dokumenty prakticky nepoužitelné. A nejde jen o Androidího klienta, ale o jakéhokoli rozumného klienta. A i kdyby nebyl aplikovaný filtr na pouze veřejné, tak uživatel nebude klikat na věci se zámečkem - možná při první návštěvě, ale pak to pochopí a jakmile uvidi zámeček, tak nebude mít důvod dokument rozkliknout. Obecně máme na webu jen řádově desítky sekund, abychom uživatele zaujali. Každopádně potřebujeme ten údaj v datech i kvůli Europeaně, ČDK a CPK! Musíme mít OAI set, který když sklidím tak vím, že jsou tam jen volné věci (Europeana) nebo OAI set, ze kterého spolehlivě poznám, která věci jsou v daném Krameriu volné (to se může lišit u stejného - replikovaného - titulu v různých knihovnách).

pavel-stastny commented 9 years ago

Propagovani priznaku viditelnosti do dat nerozpouruju, jenom me prekvapila ta poznamka o nefunkcnosti. Jinak podporovane formaty datumu byly prebrany primo ze specifikace NDK, kolik procent pripadu bylo timto pokryto, to nevim. Ale asi tady bude stejny problem i pri psani procesu.

K samotnemu procesu: Pokud vim, tak uz se pise v KNAV, pozadam kolegy o pull request aby se dostal do hlavni vetve.

MLhotak commented 9 years ago

Vláďo a Pavle, v jakém stavu implementace je řešení, které jsme již dříve prodiskutovali (myslím, že to bylo někdy v březnu) a na kterém spolupracuje Pavel Šilhavý? To by mělo tento problém vyřešit.

leiblix commented 9 years ago

Prosím při implementaci myslete na to, aby se vždy reindexovala pouze čísla/ročníky, které jsou nově zveřejněna (pokud by se reindexovala celá, způsobovalo by nám to v NDK výkonové potíže).

Dále přepodkládám, že procházením všech FOXML objektů se myslí pouze procházení konkrétních modelů (nemá smysl procházet všechny model:page, ve kterých patřičná metadata nejsou).

pavel-stastny commented 9 years ago

Diky za pripominku, na to jsme zatim nemysleli. Jestli muzete, zkuste si prosim stahnout a zbuildovat vetev "mw-process" a zkusit si z menu nastavit priznaky. Popis toho procesu je zde: https://github.com/ceskaexpedice/kramerius/wiki/MovingWallProcess.

pavel-stastny commented 9 years ago

Byly pridany dva procesy, prvni pro nastaveni priznaku pro konkretni titul resp tituly. Traverzuje strom, meni priznak jenom pokud se lisi a pokud zmeni, zaradi jenom konkretni pid do indexeru. Indexer je pak spousten po davkach.

Druhy proces iteruje pres modely v repositari. Popis procesu je na vyse zmeninem linku.