分享到微信

当前解读页的微信分享二维码

用微信扫一扫打开,点击右上角「···」分享给朋友或朋友圈。

手机上可截屏后,在微信扫一扫中从相册识别二维码。

lexifina/romania-law

数据

把罗马尼亚法律文本转成 Git 历史,每个条文一个文件,每次变更在生效日对应一个提交。

111
5
Python
NOASSERTION
创建于 3 天前

项目用途

这个仓库把罗马尼亚部分法律文本存成 git 历史。每个条文是一个 Markdown 文件,每条修改变成一次提交,提交时间固定为变更生效日欧洲/布加勒斯特时间中午,提交作者是作出该修改的法案。这样可以用 git blame 查每个段落由哪部法案写入,用 git log 看条文全部变更,或者在检出某个日期时得到当天有效的文本。法律原文保持罗马尼亚语。

目前收录宪法、民法典、刑法典、民事诉讼法典、刑事诉讼法典、劳动法典、税法典、行政法典、实施 GDPR 的第 190/2018 号法律、第 31/1990 号公司法,以及第 554/2004 号行政诉讼法。目录结构沿用多国项目 global-law,罗马尼亚放在 ro/ 下。

快速使用

克隆仓库后,直接查询某条文在指定日期的文本:

git clone https://github.com/lexifina/romania-law.git
cd romania-law
python tools/in_vigoare_la.py 2014-10-18 codul-civil 1112

参数依次是日期、法典目录和可选条文号。后来插入的条文按 Portalul legislativ 的编号处理:第 112^1 条对应文件 art-112-1.md,工具也接受 112^1 这种写法。

只用 git 的等价命令:

git show $(git rev-list -1 --before="2014-10-18T23:59:59Z" main -- codul-civil/art-1112.md):codul-civil/art-1112.md

--before="YYYY-MM-DD" 不带时分秒时会使用本机当前时间,可能漏掉当天生效的修改;加上 T23:59:59Z 或改用 Python 工具即可。其他常用查询包括:git blame codul-penal/art-336.md 查看段落级作者,git log -p --word-diff codul-penal/art-297.md 查看逐词变更,git show law/legea-200-2023 查看一部法案改动的全部内容。法案提交带有 law/<key> 标签,整合文本带有 <act>/<in-force day> 标签;重建后要用 git fetch --force --tags 刷新标签,普通 fetch 会保留旧标签。完整命令表见 README。

覆盖范围与日期

仓库并非每日最新。各法案的最新收录文本列在对应目录的 README 中,之后生效的修改可能缺失。例如民法典最新收录到 2026 年 5 月 3 日的整合文本,税法典最新到 2026 年 8 月 8 日,第 190/2018 号法律只到 2019 年 12 月 1 日。

日期依据 Portalul legislativ 的整合文本及其修改注释。一般规则来自宪法第 78 条:法律在《官方公报》公布后 3 天生效,或按法律自身规定的日期生效。门户给出的日期已经应用这条规则和每部法律自己的生效日期。公布和颁布日期放在提交的 trailer 中,生效日则放在工具读取的 In-force: trailer 里。

已知存在若干空档。刑事诉讼法典 2017 年 3 月 2 日的整合文本在门户上没有正文,这次修改并入下一版文本;第 31/1990 号公司法在 1991 年 6 月 4 日到 1998 年重新公布之间没有整合文本,这些年里的修改会合并在同一天出现,且不单独归属到具体法案;税法典 2026 年的四个整合文本缺失,改动并入之后收录的版本。

收录边界

历史中只有条文:编、标题、章、节都不是文件。门户的“Notă”编辑注释以及修改注释本身不进入正文。仅作解释、未改变措辞的最高法院裁定和宪法法院判决不构成提交。行政法典不含附件。过渡条款中的生效与适用条件保留在正文里,没有单独的适用性数据。

Blame 以整行为单位,每段占一行。多个法案共同修改过的条文,要准确看哪些词被改,应使用 git log -p --word-diff。门户注释无法解释的变更以发布方名义提交并标为“unexplained”,包括变音符号修正和不同整合文本之间的排版差异。

来源与校验

正文来自司法部 Portalul legislativ,通过 Internet Archive 抓取,因为门户及其 SOAP Web 服务会关闭构建网络的连接。每个版本都记录抓取地址和解析页面的 SHA-256。仓库会从同一份语料重建,并要求提交哈希完全一致;tools/check_repo.py 在生效当天和前一天回读每个版本,结果见 REPRODUCE.md。多部法案的最新文本还与另一份独立抓取逐条比对。税法典最新文本只有一份抓取,因此改用 legalize-ro 中 2026 年 3 月 1 日的转写进行核对:636 条中有 632 条逐行一致。

许可与定位

罗马尼亚著作权法不保护官方立法文本(第 8/1996 号法律第 9 条 b 项)。编排、表格、提交说明和工具由 Lexifina 按 LICENSE 中的条款提供。仓库不是官方出版物,也不构成法律意见;数据来自特定发布源,不能替代《官方公报》。

HotRepo 点评

站内唯一记录是 2026 年 11 月 1 日 Python 语言“新项目”榜的一次快照:106 Star、5 Fork,在约两小时的观察窗口内新增 5 Star;同一天 09:45 到 11:45 UTC 的采样中,Star 数从 101 升到 106。这说明上线初期确有少量关注,但窗口很短。站内没有全部语言日榜名次,也没有 Hacker News 讨论,因此这些数据只支持“发布时有零星关注”,不足以判断趋势或采用范围。对目标读者来说,更值得看的是上文的校验工作:可复现的哈希、日期回读和二次抓取比对,比 Star 数更能说明这份法律历史能否用于检索。

本文由 AI 根据项目 README 生成,更新于 ,以项目官方文档为准。