Open LEW21 opened 8 years ago
Rozważaliście wykorzystanie LaTeX-a? Do tekstów o bardziej skomplikowanej strukturze się nadaje, można go budować w CI i generować elegancki pdf zgodnie z szablonem.
Pomijam aspekt, że teksty prawne niezupełnie "potrzebują", a raczej "mają tendencję do" wielopoziomowych list. Prostsze narzędzia w tym przypadku nie wymuszą uproszczenia języka, ale warto mieć to na uwadze i do tego dążyć, vide #kryjryj
Nie jestem fanem LaTeXa, bo ideologicznie zakłada, że celem jest ładny PDF wynikowy; a nie czytelny - również dla użytkowników końcowych, np. podglądających historię zmian - kod źródłowy.
Jak urzędnicy zaczną się bawić funkcjami LaTeXa, to historie zmian zapewne wyjdą dramatyczne; jako że jest stosunkowo skomplikowany, to pewnie zaczną kombinować z jakimiś automatycznymi edytorami, a wtedy w zasadzie tracimy zalety LaTeXa i uzyskujemy Worda pod inną nazwą.
Myślę że zapis tekstowy dokumentu powinien być maksymalnie uproszczony i ograniczony; i o ile to możliwe udostępniać tylko jedną metodę uzyskania jednego efektu.
Bardzo przydatne jest też by format tekstowy umożliwiał generowanie wyjścia w różnych formatach, tj. HTML i PDF. Gollum z Markdowna generuje tylko HTML, więc aby wydrukować statut (np. by zanieść do sądu) musieliśmy albo drukować stronę przez przeglądarkę (co w miarę działało, ale nie wyglądało idealnie), albo bawić się w kopiowanie do edytora tekstu. A jednocześnie rozwiązania, które generują tylko PDFy, są ekstremalnie niewygodne w używaniu w przeglądarce.
Dodam w sumie że sekretarz DB była osobą nietechniczną, nie znającą angielskiego. Z Markdownem dała sobie radę bez większych wpadek, ze stosunkowo krótkim okresem nauki.
Próbowaliście konwerterów html2pdf? Np pierwszy z brzegu: https://github.com/spipu/html2pdf W COI wykorzystywaliśmy iText, ale jeśli nie skupiamy się na technologiach Javowych, to opcji jest sporo.
Z tego co pamiętam nie, natomiast z innych źródeł mam doświadczenie z wkhtmltopdf.
Po przepuszczeniu naszego statutu przez wkhtmlpdf efekt wygląda tak: statut.pdf
Oczywiście jakby się trochę pobawić, dodać odpowiednie CSSy, etc - można uzyskać sensowny efekt. Tam nie miałem czasu się w to bawić, ale w dwóch innych miejscach zastosowałem wkhtmltopdf z sukcesem.
Jest jeszcze uniwersalne narzędzie, którego używałem kiedyś z powodzeniem: http://pandoc.org/
Markdown to złoty środek między eleganckim, ładnym i czytelnym wydrukiem LaTeXa a prostotą edycji. Akurat z przeskakiwaniem numeracji nie powinno być problemów, bo wykreślone punkty i tak wynotowuje się jako "3) (wykreślony)" - i tyle.
3) (wykreślony) coś rozwiązuje, ale nie rozwiązuje problemu dodania 3a) :D
Skończy się na tym, że zostanie opracowany format "Getdown", gdzie takie problemy zostaną rozwiązane :wink: Co nieuchronnie doprowadzi do https://xkcd.com/927/ :laughing:
Jeśli byłby podobny do Markdownu, to raczej nie widzę problemu. Świat Pythona się nie zawalił od tego, że połowa dokumentacji używa reStructuredTexta, a druga połowa Markdowna.
reStructuredText ma bogatsze formatowanie list od Markdowna (pozwala wybrać tryb numeracji), jednak Github sprowadza różne formaty tekstów do wspólnego mianownika i w związku z tym ma problem z renderowaniem list (vide github/markup#390). Bitbucket zdaje się sobie z tym radzić; napisałem też odpowiednią łatę do Gitlaba (trzeba by zadbać o to, żeby została włączona do mastera).
Dodawanie punktów typu 3a)
to faktycznie problem, choć można go obejść dość niskim kosztem, pisząc zamiast tego 3. a)
. W repozytorium z ustawą o drogach publicznych zastosowałem właśnie taki zabieg.
Zwracam też uwagę na angielski format govspeak, wywodzący się z Markdowna. Zawiera on w szczególności funkcjonalność list legislacyjnych, wyglądających tak:
$LegislativeList
* 1. Item 1
* 2. Item 2
* a) Item 2a
* b) Item 2b
* i. Item 2 b i
* ii. Item 2 b ii
* 3. Item 3
$EndLegislativeList
Najczytelniejsze to jednak nie jest, więc być może lepiej byłoby faktycznie stworzyć własny format obsługujący teksty prawne, zbliżony do Markdowna/reStructuredText.
Parlament Europejski korzysta z kolei z formatu XML Akoma Ntoso.
Okazuje się, że akty prawne kierowane do ogłoszenia w dziennikach urzędowych są sporządzane w formacie… XML, tyle że publikowane są one już w formacie PDF. Skierowałem dziś do Rządowego Centrum Legislacji poniższy wniosek.
Na podstawie art. 2 ust. 1 ustawy o dostępie do informacji publicznej z dnia 6 Ⅸ 2001 r. (Dz. U. Nr 112, poz. 1198 z późniejszymi zmianami) wnoszę o udostępnienie następujących informacyj:
- określonych w § 3 ust. 2 rozporządzenia prezesa Rady Ministrów z dnia 27 Ⅻ 2011 r. w sprawie wymagań technicznych dla dokumentów elektronicznych zawierających akty normatywne i inne akty prawne, dzienników urzędowych wydawanych w postaci elektronicznej oraz środków komunikacji elektronicznej i informatycznych nośników danych (Dz. U. nr 289, poz. 1699) wzorów aktów prawnych;
- zapisanych w formacie określonym w § 3 w/w rozporządzenia aktów prawnych, które zostały sporządzone zgodnie z tymże rozporządzeniem i skierowane do opublikowania w Dzienniku Ustaw;
- określonych w § 6 w/w rozporządzenia podpisów pod w/w aktami prawnymi;
- wykorzystywanego przez Rządowe Centrum Legislacji oprogramowania — w formie źródłowej, jeśli RCL znajduje się w jej posiadaniu — służącego do wyświetlania oraz edycji aktów prawnych zapisanych w formacie określonym w §3 w/w rozporządzenia.
Informacje określone w punktach 2-4 proszę opublikować w witrynach rcl.gov.pl lub dziennikiurzedowe.gov.pl, a informacje określone w punkcie 1 zgodnie z § 3 ust. 2 odnośnego rozporządzenia.
Otrzymałem dziś z RCL poniższą odpowiedź.
W odpowiedzi na wniosek z dnia 3 stycznia 2017 r., o udostępnienie żądanej we wniosku informacji, Rządowe Centrum Legislacji wyjaśnia.
⒈ W odniesieniu do kwestii dotyczącej wzorów aktów prawnych wskazania wymaga, że wzory aktów, o których mowa w § 3 ust. 2 rozporządzenia Prezesa Rady Ministrów z dnia 27 grudnia 2011 r. w sprawie wymagań technicznych dla dokumentów elektronicznych zawierających akty normatywne i inne akty prawne, dzienników urzędowych wydawanych w postaci elektronicznej oraz środków komunikacji elektronicznej i informatycznych nośników danych (Dz. U. Nr 289, poz. 1699), zwanego dalej „rozporządzeniem”, nie zostały dotąd określone i ogłoszone w centralnym repozytorium wzorów dokumentów elektronicznych oraz na stronie internetowej, o której mowa w § 7 ust. 4 rozporządzenia.
Z uwagi na powyższe, wzory aktów nie są stosowane. Rządowe Centrum Legislacji nie wykorzystuje tym samym oprogramowania służącego do wyświetlania oraz edycji aktów prawnych zapisanych w formacie określonym w § 3 ust. 1 rozporządzenia.
Stosownie natomiast do przepisu § 10 pkt 1 rozporządzenia, do czasu stosowania wzoru aktu, o którym mowa w § 3 ust. 2 rozporządzenia, czynności ogłaszania aktów normatywnych i innych aktów prawnych podlegających ogłoszeniu na podstawie ustawy z dnia 20 lipca 2000 r. o ogłaszaniu aktów normatywnych i niektórych innych aktów prawnych (Dz. U. z 2016 r. poz. 269, z późn. zm.), wykonywane są wyłącznie przy użyciu formatu PDF. Nie ma zatem możliwości „opublikowania” aktów prawnych w formacie określonym w § 3 ust. 1 rozporządzenia.
Jednocześnie należy wskazać, że z chwilą określenia wzmiankowanych wzorów aktów, zostaną one ogłoszone w wyżej wymienionym repozytorium i stronie internetowej określonej w § 7 ust. 4 rozporządzenia.
⒉ W odniesieniu do określonych w § 6 rozporządzenia podpisów pod aktami prawnymi skierowanymi do ogłoszenia w Dzienniku Ustaw Rzeczypospolitej Polskiej, wyjaśnienia wymaga, że lista certyfikatów osób podpisujących dokumenty elektroniczne zawierające akty publikowane w dziennikach urzędowych (w tym Dziennika Ustaw Rzeczypospolitej Polskiej) znajduje się na stronach internetowych tych publikatorów. Jednocześnie należy podkreślić, że nie ma ustawowego obowiązku zamieszczania na tych stronach internetowych, podpisów organów upoważnionych do wydania aktów podlegających ogłoszeniu. Zgodnie z art. 15 ust. 1 ustawy z dnia 20 lipca 2000 r. o ogłaszaniu aktów normatywnych i niektórych innych aktów prawnych, podstawą do ogłoszenia aktu normatywnego lub innego aktu prawnego jest akt w formie dokumentu elektronicznego opatrzony kwalifikowanym podpisem elektronicznym przez upoważniony do wydania aktu organ (kwalifikowany podpis elektroniczny organu znajduje się w pliku wraz z aktem przekazywanym do ogłoszenia). Natomiast na podstawie § 8 ust. 2 rozporządzenia „autentyczność i integralność dzienników urzędowych, zbiorów aktów prawa miejscowego stanowionych przez powiat lub gminę oraz innych aktów podlegających ogłoszeniu jest zagwarantowana bezpiecznym podpisem elektronicznym organu lub osoby upoważnionej przez organ wydający dziennik urzędowy”.
Wacław Markowicz Dyrektor Departamentu Prawnego i Postępowań przed Trybunałem Konstytucyjnym w Rządowym Centrum Legislacji
@KrzysiekJ , zamierzasz dopytać właściwy organ o stan prac i działania podjęte w celu opracowania i ogłoszenia wzorów aktów, o których mowa w § 3 ust. 2 rozporządzenia Prezesa Rady Ministrów z dnia 27 grudnia 2011 r. w sprawie wymagań technicznych dla dokumentów elektronicznych zawierających akty normatywne i inne akty prawne, dzienników urzędowych wydawanych w postaci elektronicznej oraz środków komunikacji elektronicznej i informatycznych nośników danych (Dz. U. Nr 289, poz. 1699)?
Na ten moment nie planuję składania formalnego zapytania.
Warto zapewne w tym kontekście zbadać format Akoma Ntoso i zastanowić się, jakie przeszkody stałyby na drodze do wykorzystania go w polskiej legislacji.
Witam,
Chciałem zwrócić Waszą uwagę na już istniejące zastosowanie Gita do prowadzenia BIPu, w postaci http://bip.db.org.pl/BIP; repo gita: https://github.com/DemokracjaBezposrednia/bip
Użyłem w nim golluma, ale jest narzędziem mocno nastawionym na edytorów-informatyków, i słabo przetłumaczalnym; do szerszych zastosowań raczej konieczne byłyby mocne zmiany albo rewrite.
W praktyce rozwiązanie sprawdziło się bardzo dobrze, i było intuicyjne dla użytkowników końcowych (nie-edytorów).
Przy porządnym wprowadzaniu zmian, analiza historii np. Statutu jest bardzo wygodna - https://github.com/DemokracjaBezposrednia/bip/commits/master/Statut.md lub http://bip.db.org.pl/history/Statut
Jednym z problemów było to, że nasza sekretarz trochę zbyt radośnie edytowała dokumenty, tj. nie tylko gdy jest potrzeba, ale także gdy np. źle wyglądały :D W pewnym momencie np. update pakietu Markdownu zepsuł formatowanie kilku, czego nie zauważyłem w czasie aktualizacji, więc Beata poprawiła dokumenty po swojemu.
W zasadzie mieliśmy to samo środowisko do nauki i do produkcji, stąd w historii i w obecnym stanie repa mogą być jakieś dziwne obiekty, w stylu "Nr-01/01/Nr-01/01".
Czysty Markdown nie nadaje się do tekstów prawnych, głównie ze względu na słabe listy: 1) Mają magiczną numerację - tj. jeśli zrobimy listę 1. 2. 4. (bo 3. zostało wykreślone), to nam automatycznie przenumeruje na 1. 2. 3. 2) Jest zbyt mało typów list, teksty prawne często potrzebują list wielopoziomowych z różnymi rodzajami numerowania