- Một kho lưu trữ quản lý hơn 8.600 bộ luật từ năm 1960 trở đi dưới dạng tệp Markdown, được thu thập thông qua API công khai BOE của chính phủ Tây Ban Nha
- Mỗi bộ luật được lưu cùng metadata YAML, và toàn bộ lịch sử sửa đổi được theo dõi bằng commit Git
- Bao gồm toàn bộ hệ thống luật hợp nhất cấp quốc gia như hiến pháp, luật hữu cơ, luật thông thường, sắc lệnh luật hoàng gia..., và mỗi commit đều ghi liên kết đến nguồn chính thức
- Văn bản pháp luật được cung cấp dưới dạng public domain, còn kho lưu trữ bổ sung thêm cấu trúc hóa, quản lý phiên bản và chức năng so sánh
- Dự án dự kiến sẽ tích hợp với Legalize.dev API để hỗ trợ các tính năng mở rộng như tìm kiếm luật, so sánh phiên bản và thông báo thay đổi
Tổng quan
- Đây là một dự án quản lý toàn bộ luật pháp Tây Ban Nha dưới dạng kho Git, trong đó mỗi bộ luật được cấu thành từ tệp Markdown và mọi lịch sử sửa đổi đều được ghi lại bằng commit
- Bao gồm hơn 8.600 bộ luật từ năm 1960 trở đi, với dữ liệu được lấy từ API công khai BOE (Boletín Oficial del Estado) của chính phủ Tây Ban Nha
- Kho lưu trữ này là một phần của dự án Legalize, cho phép quản lý phiên bản, so sánh và theo dõi luật pháp
- Văn bản pháp luật được cung cấp ở dạng public domain, còn kho lưu trữ bổ sung cấu trúc, metadata và tính năng quản lý phiên bản
Cấu trúc tệp
- Tất cả luật được lưu dưới dạng tệp Markdown trong thư mục
spain/
- Ví dụ:
BOE-A-1978-31229.md là Hiến pháp Tây Ban Nha, BOE-A-1995-25444.md là Bộ luật Hình sự, BOE-A-2015-11430.md là Quy chế người lao động, BOE-A-2000-323.md là Luật Tố tụng dân sự
- Mỗi tệp bắt đầu bằng frontmatter metadata ở định dạng YAML
- Bao gồm các mục như
titulo, identificador, pais, rango, fecha_publicacion, ultima_actualizacion, estado, fuente
- Trong ví dụ, hiến pháp (
Constitución Española) ghi rõ ngày ban hành, ngày cập nhật mới nhất, trạng thái (vigente) và URL nguồn chính thức
Phạm vi luật được bao gồm
- Bao gồm toàn bộ luật hợp nhất được BOE phân loại ở cấp quốc gia
- Hiến pháp, luật hữu cơ (Leyes Orgánicas), luật thông thường (Leyes ordinarias), sắc lệnh luật (Decretos-ley), sắc lệnh lập pháp hoàng gia (Reales Decretos Legislativos)
- Mỗi lần sửa đổi được lưu thành một commit độc lập, và ngày tạo commit phản ánh ngày công bố chính thức
- Trong commit message có mã nhận diện sửa đổi và liên kết nguồn chính thức
Ví dụ sử dụng
- Sau khi clone kho lưu trữ, có thể tìm kiếm điều khoản của một bộ luật cụ thể hoặc kiểm tra lịch sử thay đổi
- Ví dụ: dùng lệnh
grep để tìm Điều 135 của hiến pháp
- Dùng
git log để xem lịch sử thay đổi của điều khoản đó
- Dùng
git diff để so sánh các thay đổi cụ thể trong cuộc cải cách ổn định tài khóa năm 2011
Nguồn dữ liệu và giấy phép
- Toàn bộ dữ liệu được lấy từ API lập pháp hợp nhất của BOE
- Văn bản pháp luật thuộc public domain, và kho lưu trữ chỉ bổ sung chức năng cấu trúc hóa và quản lý phiên bản
- Cấu trúc kho, metadata và công cụ được phát hành theo giấy phép MIT
API và kế hoạch mở rộng
- Legalize API sẽ sớm được cung cấp tại legalize.dev
- Dự kiến hỗ trợ tìm kiếm luật, lọc, so sánh phiên bản và thông báo thay đổi
Cách đóng góp
- Nếu có lỗi trong văn bản hợp nhất hoặc thiếu sửa đổi, có thể mở issue kèm tên luật, điều khoản và nguồn chính thức để đề xuất chỉnh sửa
Tác giả
- Dự án do Enrique Lopez thực hiện
- Là một phần của dự án Legalize, có liên kết với legalize.dev
1 bình luận
Ý kiến trên Hacker News
Ở Pháp, luật không chỉ được quản lý phiên bản mà còn được chứng minh hình thức (formally proved)
Ngôn ngữ Catala xử lý luật như mã nguồn
Chỉnh sửa: Đội Pháp ở đây cũng khá đông. Ít nhất năm người đang nhắc đến Légifrance và nói về quản lý phiên bản
Khi triển khai logic tính thuế hay phúc lợi, nó cho phép kiểm chứng việc hệ thống có khớp với luật thực tế chính xác hơn nhiều so với các ngôn ngữ phổ dụng hiện có
Tôi đã tạo một pipeline chuyển toàn bộ pháp lệnh quốc gia của Tây Ban Nha thành kho Markdown có quản lý phiên bản
Mỗi đạo luật là một tệp, mỗi lần sửa đổi được ghi lại bằng một git commit có ngày thực tế. Tổng cộng có 8.642 đạo luật và 27.866 commit
Luật suy cho cùng là một “chuỗi các bản vá”, nên tôi nghĩ git vốn đã là lời giải. Thay vì các câu như “xóa khoản 3 và…”, giờ có thể xem lịch sử thay đổi bằng diff thực tế
Nguồn dữ liệu dùng API pháp lệnh hợp nhất của công báo Tây Ban Nha (BOE), và tôi dựng nó trong khoảng 4 giờ bằng Claude Code
Tôi đang tìm hiểu xem có thể phát triển bộ dữ liệu này thành API pháp luật hoặc nền tảng dữ liệu mở hay không
Khi đó cũng có thể phân tích điều luật nào bị trích dẫn nhiều nhất, hay câu chữ nào liên tục phải giải thích lại
Nếu có API chính thức như Tây Ban Nha thì sẽ hiệu quả hơn nhiều, trong khi ở Đức các tổ chức tư nhân còn đòi cả bản quyền
Ở Anh, như trên legislation.gov.uk, có thể theo dõi toàn bộ lịch sử sửa đổi
Các hãng luật lớn đã có cơ sở dữ liệu riêng nên đây không phải thị trường dễ kiếm tiền bằng dịch vụ trả phí
Xem liên kết bộ luật thuế của IRS
Những dự án như vậy là một hướng đi tuyệt vời để tăng tính minh bạch của dữ liệu pháp luật
Nó có thể trở thành nền tảng để kết nối AI với việc hiểu và giải thích luật
Hy vọng sẽ có thêm những nỗ lực tương tự ở các quốc gia khác
Nếu tác giả commit là chính trị gia thực sự chịu trách nhiệm cho lần sửa đổi đó thì còn thú vị hơn
Như vậy chỉ cần
git blamelà biết ngay ai đã tạo ra điều luật đóKiểu biến lỗ hổng thành test case, rồi mỗi lần luật thay đổi thì chạy regression test để xem có phát sinh vấn đề không
Tôi nghĩ đây là một ý tưởng rất hay. Sẽ tuyệt nếu hệ thống như thế này được áp dụng cho luật của mọi quốc gia
Giống như các trường hợp vận động hành lang để giữ việc khai thuế luôn phức tạp, giới luật sư cũng có thể ngăn cản minh bạch và hiệu quả hóa
Xem bài viết liên quan
Bang Maryland đã áp dụng điều này tại regs.maryland.gov,
và kho GitHub cũng được công khai
Chúng tôi đang giúp các cộng đồng địa phương xuất bản luật chính thức của họ lên GitHub
Tôi cũng đang làm một thứ tương tự cho các dự luật của bang California
Tôi nghĩ cách tiếp cận này nên trở thành chuẩn mặc định. Tôi luôn thắc mắc tại sao bản gốc xác thực của những tài liệu như vậy lại không nằm trong kho git
Còn nếu diễn giải rộng lượng hơn, có lẽ chỉ là trong giới pháp lý hầu như không có ai hiểu hoặc có thể triển khai loại công nghệ này
Dự án rất xuất sắc. Phần lớn luật thời Franco đã bị bãi bỏ vào năm 1978, nhưng vẫn còn cả luật có trước thế kỷ 19 trong đó
Tuy nhiên nguồn dữ liệu bắt đầu từ năm 1960 bằng một commit duy nhất, nên không có lịch sử thay đổi trước mốc đó
BOE còn quét lưu được cả tài liệu từ tận những năm 1600, mức độ bảo tồn tư liệu thật đáng kinh ngạc
Hạn chế của Git là
git blamekhông thực sự hoạt độngSẽ hay hơn nếu biết ai bỏ phiếu thuận hay chống, nhưng git không phải cấu trúc commit cộng tác
Dù sao thì chỉ riêng việc đưa toàn bộ luật của một quốc gia vào git cũng đã là một thành tựu lớn
Cách này bắt nguồn từ quá trình phát triển nhân Linux
Tác giả bài đăng (OP) đây. Tôi không ngờ lại nhận được phản hồi lớn như vậy
Vì có quá nhiều yêu cầu nên tôi đã công khai mã nguồn → GitHub: legalize-dev
Pipeline được thiết kế theo cấu trúc hỗ trợ đa quốc gia. Pháp (dữ liệu Légifrance) đã chạy được,
và để thêm một nước mới thì chỉ cần triển khai 4 interface Python
Tôi cũng đã viết hướng dẫn đóng góp
Tôi đã nhận được ý định tham gia từ Đức, Bồ Đào Nha, Thụy Điển, Phần Lan, Hà Lan, Brazil và nhiều nơi khác
Nếu bạn biết nguồn dữ liệu pháp luật công khai của quốc gia mình thì rất mong được hỗ trợ qua PR
Khi quy mô tăng lên thì cần hạ tầng, nên tôi đang chuẩn bị gây quỹ qua Open Collective
Cũng có website để xem luật và diff theo thời gian thực
Hiện còn chưa ổn định, nhưng tôi đang nghĩ theo hướng rất lớn
Xin chúc mừng! Đây thật sự là một dự án tuyệt vời
Trước đây từng có nỗ lực tương tự là gitlaw, và ở Brazil có chuẩn LexML để biểu diễn thay đổi pháp luật theo cách kỹ thuật
Cách tiếp cận này khá phức tạp nhưng rất thú vị