Artykuł jest efektem współpracy świata prawniczego i technologicznego. Jego autorami są Aneta Baranowska – Radca Prawny i Maciek Zdoński – System Consultant and Developer.
Wraz z adaptacją nowych technologii, świat prawniczy zainteresował się koncepcją zasad jako kodu. Prawnicy mogą teraz nie tylko korzystać z narzędzi wspierających ich pracę, ale też tworzyć nowe sposoby na to, aby prawo było dostępne dla wszystkich. Ten artykuł przybliża koncepcję Rules as Code i jej praktyczne zastosowania.
Pierwszy raz o rules as code usłyszałam na jednej z konferencji poświęconych branży legal tech – technologiom wspomagającym pracę prawników. Byłam wtedy przede wszystkim skupiona na narzędziach technicznych i tym, w jaki sposób mogę usprawnić pracę w dziale prawnym. Koncept rules as code wydał mi się czymś abstrakcyjnym i raczej odległym.
Rules as Code: zrozumienie i wykorzystanie skutecznych zasad programowania
Usłyszałam wtedy hasła takie jak „reguły czytelne dla człowieka i dla komputera” czy „programowanie reguł tak/nie” i „jeśli, to”. Były one adekwatne, ale nie przybliżały mnie do zrozumienia tej koncepcji. To dlatego, że skupiłam się na definicji i jej składnikach, a rules as code można w pełni zrozumieć dopiero z perspektywy celu.
Tworzenie zasad zrozumiałych dla Wszystkich.
No bo dlaczego ktoś miałby kodować zasady prawa? Od wieków spisujemy je przecież w języku prawniczym, a prawnicy świetnie się w nim odnajdują – posługiwanie się nim i jego rozumienie to istotny element ich pracy. No właśnie. Tylko że zasad nie tworzy się dla prawników. Tworzy się je dla wszystkich ludzi i powinno się to robić tak, aby wszyscy je rozumieli. I jeszcze mogli łatwo je stosować.
A skoro pojęcie „zasad” jest właściwe nie tylko dla prawa, ale też dla programowania…
… to dlaczego zasady prawne nie miałyby zostać przełożone na język czytelny dla komputerów?
Tym pytaniem możemy wrócić do definicji rules as code. Możemy mówić o jego zastosowaniu, jeżeli zasady wyrażone w języku naturalnym zostaną przełożone na język programowania. A dzięki temu można będzie zautomatyzować podejmowanie pewnych decyzji w oparciu o te zasady albo przynajmniej umożliwić przewidywanie, jakie decyzje zapadną.
Najłatwiej operować na wspomnianych wcześniej regułach „tak/nie” czy „jeśli, to”. Dlatego zasady prawa podatkowego, czy przyznawania świadczeń socjalnych stały się naturalnymi kandydatami na pionierów rules as code. Nie bez znaczenia jest też, że w tych dziedzinach potrzeby są największe – zasady te dotyczą ogromnej większości obywateli i wywierają bezpośredni wpływ na ich codzienne życie. Mimo to, w wielu systemach prawnych, jak na przykład w Polsce, są bardzo skomplikowane.
Przepisy prawa gotowe na cyfryzację: sposób duński
Czy prawo w ogóle się do tego nadaje?
Zdecydowanie tak, ale… na ten moment na pewno nie każda legislacja jest na to gotowa. Świetne podejście ma w tym przypadku rząd Danii, który promuje nowe spojrzenie na tworzenie aktów prawnych. Tak jak w przepisach dotyczących ochrony danych osobowych przyjęto zasadę privacy by design – w skrócie polegającą na tym, aby już na etapie tworzenia rozwiązań, uwzględniać w nich ochronę prywatności – tak standardem w tworzeniu aktów prawnych powinno być projektowanie „digital ready legislation”.
Jasne i proste prawo = przyjazne dla Społeczeństwa
Legislacja, która będzie prosta, przejrzysta, pozbawiona niejasnych określeń i wielu skomplikowanych wyjątków, będzie dzięki temu czytelna i dla ludzi, i dla komputerów. Co za tym idzie będzie łatwo dostępna i zrozumiała dla obywateli. A w konsekwencji usprawni to pracę administracji publicznej, prawników czy księgowych. Tak tworzone prawo będzie też łatwe do nowelizowania.
Być może brzmi to jak bajka albo pieśń przyszłości, ale na świecie wiele się już dzieje w tym obszarze.
Rules as Code: Przełamanie bariery dotarcia do Obywateli
Interesującym projektem z użyciem ‘rules as code’ jest francuski portal Mes Droits Sociux. Użytkownik podaje informacje na temat obecnej sytuacji życiowej, na przykład miejsce zamieszkania, dochód, liczba dzieci pod opieką. Na podstawie tych informacji wyświetlana jest lista wszystkich dostępnych dla niego benefitów. Może to być dopłata do mieszkania czy zasiłek opiekuńczy. Obywatel nie musi poszukiwać ani znać zależności między różnymi instytucjami publicznymi, które udzielają pomocy. Dzięki portalowi może w jednym miejscu, w łatwy sposób dowiedzieć się o przysługujących mu prawach.
Z Francji wywodzi się też następna inicjatywa – LexImpact. Ma ona na celu analizę wpływu zmian w prawie na stan budżetu państwa czy nawet pojedynczych gospodarstw domowych. Poprzez interfejs graficzny w przeglądarce internetowej można symulować wpływy do budżetu, zwiększając podatki czy ulgi.
Na uznanie zasługuje też podobny projekt PolicyEngine. Obecnie zostały w nim zaimplementowane reguły dla Wielkiej Brytanii oraz USA. Jednym z przykładów raportów z PolicyEngine jest analiza pomysłu Rishi Sunak, polegającego na obniżeniu podatku dochodowego z 20% na 16% w Wielkiej Brytanii. Szczegóły opisał Max Ghenis w swoim artykule, do którego link znajdziecie poniżej. Na PolicyEngine znajdziemy też projekty aktów prawnych, które są obecnie szeroko dyskutowane jak np.: Inflation Act w Stanach Zjednoczonych. Otwiera to nowe możliwości, by dzięki takim narzędziom, dyskusje nad zmianami w prawie można było opierać na argumentach liczbowych.
Jak rozmawiać z prawodawcą: Chatbot dla Obywateli
Ostatni przykład, który podam, to pochodzący z Australii DataLex. Tu interesujące zastosowanie znalazł bot do rozmów obywateli z administracją publiczną. Można z nim porozmawiać np. na temat prawa wyborczego. Chatbot odpowiada na pytania użytkowników. Dodatkowo umieszcza referencje do odpowiedniego paragrafu w akcie prawnym. Jest to na pewno świetny pomysł edukacyjny. Przez prostotę i dostępność tego narzędzia Australia przełamuje barierę sięgania po wiedzę prawniczą przez swoich obywateli.
Na koniec parę słów o technicznej stronie 'Rules as Code’.
Dobra wiadomość jest taka, że tworząc nowy projekt nie musimy zaczynać od zera. Istnieją już frameworki, które specjalizują się w programowaniu reguł prawa. Najbardziej popularnym jest OpenFisca.org – początkowo wspierany przez rząd francuski, a obecnie rozwijany w formule open source. Jest on dostępny w Python, czyli jednym z najpopularniejszych języków programowania. Istnieje też możliwość wykonywania obliczeń za pomocą API (interfejs programowania aplikacji, czyli metoda komunikacji pomiędzy składnikami oprogramowania). OpenFisca to zestaw generalnych instrukcji do modelowania reguł. Istnieją też pakiety lokalne opracowane między innymi dla Francji, Włoch, Wielkiej Brytanii, Stanów Zjednoczonych czy Tunezji lub Senegalu. Zawierają one lokalne wersje reguł dotyczących np: podatków. W własnych projektach bądź symulacjach można zatem wykorzystywać już istniejący kod. OpenFisca używają zarówno instytucje rządowe, organizacje, jaki firmy komercyjne, które w swoich rozwiązaniach chcą implementować reguły prawa.
Jak wdrażać przepisy w cyfrowym świecie?
Oczywiście, to nie takie proste. Wspominaliśmy wcześniej o tym, że ustawodawstwo danego kraju musi być przygotowane w formie nadającej się do cyfrowej implementacji. Trzeba też brać pod uwagę kwestię dostępności i aktualności danych, które leżą u podstaw tworzonych rozwiązań, takich jak wspomniany LexImpact czy PolicyEngine. Wprawdzie coraz więcej otwartych informacji publikowanych jest przez instytucje państwowe, ale niektóre źródła publikują dane z opóźnieniem roku czy dwóch. Warto pamiętać, że opóźnienie może mieć wpływ na otrzymane wyniki. Dla osób bardziej zainteresowanych kwestią danych polecamy dokumentację na stronie Lex Impact.
Mimo potencjalnych trudności we wdrożeniu, jesteśmy przekonani, że idea rules as code to słuszny kierunek, a rozwiązań z tego zakresu będzie przybywać. Będziemy je śledzić z zainteresowaniem nie tylko jako entuzjaści połączenia prawa i technologii, ale też jako… zwykli obywatele.
[ English version of the post available here ]
Linki i referencje:
PolicyEngine: Rishi Sunak’s proposal to cut the basic rate to 16 percent | by Max Ghenis | Aug, 2022 | PolicyEngine
OpenFisca: Turning the rules of government into code using OpenFisca | NZ Digital government
OpenFisca – Write rules as code
Rules modelling: Rapu Ture – Connecting the Rules (openfisca.org)
French benefit system: mes-aides.gouv.fr – Vous informer sur vos aides et vos droits
LexImpact Page d’accueil | Portail Leximpact (an.fr)
LexImpact Leximpact data handling Comment fonctionnent les simulateurs LexImpact| Portail Leximpact (an.fr)
Grafika została wygenerowana z wykorzystaniem sztucznej inteligencji – DALL·E