- स्पेन सरकार के BOE public API के ज़रिए एकत्र किए गए 1960 के बाद के 8,600 से अधिक क़ानूनों को Markdown फ़ाइलों के रूप में मैनेज करने वाली repository
- हर क़ानून को YAML metadata के साथ स्टोर किया जाता है, और सभी संशोधन इतिहास को Git commit के रूप में ट्रैक किया जाता है
- इसमें संविधान, organic laws, general laws, royal decree-laws आदि सहित राष्ट्रीय स्तर के सभी एकीकृत क़ानून शामिल हैं, और हर commit में official source link दर्ज होती है
- क़ानूनी टेक्स्ट public domain में उपलब्ध है, और repository अतिरिक्त रूप से structure, version control, और comparison features प्रदान करती है
- यह प्रोजेक्ट Legalize.dev API से जुड़कर आगे चलकर law search, version comparison, change alerts जैसी विस्तारित सुविधाओं को सपोर्ट करेगा
अवलोकन
- यह स्पेन के पूरे क़ानूनी ढांचे को Git repository के रूप में मैनेज करने वाला प्रोजेक्ट है, जिसमें हर क़ानून Markdown फ़ाइल के रूप में मौजूद है और सभी संशोधन इतिहास commit के रूप में रिकॉर्ड होते हैं
- इसमें 1960 के बाद के 8,600 से अधिक क़ानून शामिल हैं, और डेटा स्पेन सरकार के BOE(Boletín Oficial del Estado) public API से लिया गया है
- यह repository Legalize प्रोजेक्ट का हिस्सा है, जो क़ानूनों का version control, comparison, और tracking संभव बनाती है
- क़ानूनी टेक्स्ट public domain में उपलब्ध है, और repository structured data, metadata, और version control features प्रदान करती है
फ़ाइल संरचना
- सभी क़ानून
spain/ directory के अंतर्गत Markdown फ़ाइलों के रूप में स्टोर किए जाते हैं
- उदाहरण:
BOE-A-1978-31229.md स्पेन का संविधान है, BOE-A-1995-25444.md दंड संहिता, BOE-A-2015-11430.md श्रमिक विनियम, और BOE-A-2000-323.md सिविल प्रक्रिया क़ानून है
- हर फ़ाइल YAML फ़ॉर्मैट के frontmatter metadata से शुरू होती है
- इसमें
titulo, identificador, pais, rango, fecha_publicacion, ultima_actualizacion, estado, fuente जैसे फ़ील्ड शामिल हैं
- उदाहरण में संविधान (
Constitución Española) की प्रकाशन तिथि, नवीनतम अपडेट तिथि, स्थिति (vigente), और official source URL दिया गया है
शामिल क़ानूनों की सीमा
- इसमें BOE में राष्ट्रीय स्तर पर वर्गीकृत सभी एकीकृत क़ानून शामिल हैं
- संविधान, organic laws (Leyes Orgánicas), general laws (Leyes ordinarias), decree-laws (Decretos-ley), legislative royal decrees (Reales Decretos Legislativos)
- हर संशोधन को अलग commit के रूप में स्टोर किया जाता है, और commit की तारीख official publication date को दर्शाती है
- commit message में revision identifier और official source link शामिल होती है
उपयोग उदाहरण
- repository clone करने के बाद किसी विशेष क़ानूनी प्रावधान को खोजा जा सकता है या उसका संशोधन इतिहास देखा जा सकता है
- उदाहरण:
grep कमांड से संविधान के अनुच्छेद 135 को खोजा जा सकता है
git log से उस अनुच्छेद का बदलाव इतिहास देखा जा सकता है
git diff से 2011 के fiscal stability reform के विशिष्ट बदलावों की तुलना की जा सकती है
डेटा स्रोत और लाइसेंस
- सारा डेटा BOE के consolidated legislation API से लिया गया है
- क़ानूनी टेक्स्ट public domain में है, और repository केवल structure और version control functionality जोड़ती है
- repository structure, metadata, और tools को MIT license के तहत वितरित किया गया है
API और विस्तार योजना
- Legalize API जल्द ही legalize.dev पर उपलब्ध होगी
- यह law search, filtering, version comparison, और change alerts जैसी सुविधाओं को सपोर्ट करेगी
योगदान कैसे करें
- यदि consolidated text में कोई त्रुटि या छूटा हुआ संशोधन हो, तो issue खोलकर क़ानून का नाम, अनुच्छेद, और official source के साथ सुधार का सुझाव दिया जा सकता है
निर्माता
- यह प्रोजेक्ट Enrique Lopez ने बनाया है
- यह Legalize प्रोजेक्ट का हिस्सा है और legalize.dev से जुड़ा है
1 टिप्पणियां
Hacker News की राय
फ़्रांस में क़ानून सिर्फ version control में ही नहीं रखे जाते, बल्कि formally proved भी किए जाते हैं
Catala भाषा के ज़रिए क़ानूनों को code की तरह संभाला जाता है
संपादन: फ़्रांसीसी टीम के काफ़ी लोग यहाँ भी हैं। कम-से-कम पाँच लोग Légifrance का हवाला देते हुए version control की बात कर रहे हैं
tax या welfare calculation logic लागू करते समय, यह मौजूदा general-purpose languages की तुलना में इस बात की पुष्टि करने देता है कि वह वास्तविक क़ानून से कहीं अधिक सटीक रूप से मेल खाता है
मैंने पूरे स्पेनिश national legislation को version-controlled Markdown repository में बदलने वाला एक pipeline बनाया है
हर क़ानून एक फ़ाइल है, और हर amendment एक git commit के रूप में दर्ज है जिसमें वास्तविक तारीख शामिल है। कुल 8,642 क़ानून और 27,866 commits हैं
क़ानून आख़िरकार ‘patches की एक श्रृंखला’ ही हैं, इसलिए मुझे लगता है git इसका पहले से मौजूद समाधान है। “धारा 3 को हटाया जाए...” जैसे वाक्यों के बजाय बदलावों का वास्तविक diff देखा जा सकता है
source के लिए स्पेनिश राजपत्र (BOE) के consolidated legislation API का इस्तेमाल किया, और Claude Code से इसे लगभग 4 घंटे में बना लिया
अब मैं देख रहा हूँ कि क्या इस data के आधार पर इसे legal API या open data platform में बदला जा सकता है
इससे यह भी विश्लेषण किया जा सकता है कि कौन-सा क़ानून सबसे ज़्यादा उद्धृत हुआ, और किन अभिव्यक्तियों को बार-बार व्याख्या की ज़रूरत पड़ी
स्पेन जैसा official API हो तो काम बहुत अधिक efficient हो सकता है, लेकिन जर्मनी में private संस्थान copyright का दावा भी करते हैं
UK में legislation.gov.uk जैसी जगहों पर सभी amendment history को track किया जा सकता है
बड़े law firms के पास अपने database होते हैं, इसलिए paid service के रूप में इसका market सीमित है
IRS tax code link देखें
इस तरह के प्रोजेक्ट legal data की transparency बढ़ाने की शानदार दिशा हैं
यह AI को क़ानून समझने और समझाने लायक बनाने वाली बुनियाद बन सकता है
उम्मीद है दूसरे देशों में भी ऐसे प्रयास शुरू होंगे
अगर commit का author वही राजनीतिज्ञ हो जो वास्तव में amendment के लिए ज़िम्मेदार है, तो यह और दिलचस्प होगा
तब
git blameसे सीधे पता चल जाएगा कि वह क़ानून किसने बनायाloopholes को test cases की तरह रखा जाए, और हर बार क़ानून बदलने पर regression tests चलाकर देखा जाए कि कोई समस्या तो नहीं है
मुझे यह सचमुच बहुत बढ़िया idea लगता है। अच्छा होगा अगर ऐसा सिस्टम हर देश के क़ानूनों पर लागू हो
जैसे tax filing को मुश्किल बनाए रखने के लिए lobbying की जाती है, वैसे ही lawyers की industry भी transparency और efficiency को रोकने की कोशिश कर सकती है
संबंधित लेख देखें
Maryland राज्य ने इसे regs.maryland.gov पर पहले ही अपनाया है,
और GitHub repository भी सार्वजनिक है
हम स्थानीय communities की मदद कर रहे हैं ताकि वे आधिकारिक क़ानून GitHub पर प्रकाशित कर सकें
मैं भी California state bills के लिए ऐसा ही कुछ बना रहा हूँ
मुझे लगता है यह approach standard तरीका बनना चाहिए। मैं हमेशा सोचता था कि ऐसे documents का canonical source git repository में क्यों नहीं होता
थोड़ा उदार अर्थ लें तो legal field में ऐसे लोगों की संख्या बहुत कम हो सकती है जो इस तरह की तकनीक को समझ या लागू कर सकें
शानदार project है। Franco काल के ज़्यादातर क़ानून 1978 में निरस्त कर दिए गए थे, लेकिन इसमें अब भी 19वीं सदी से पहले के क़ानून शामिल हैं
हालांकि source 1960 से एक ही commit के रूप में शुरू होता है, इसलिए उससे पहले के बदलावों का इतिहास नहीं है
BOE ने 1600 के दशक तक के documents scan करके रखे हैं, इसलिए records preservation का स्तर चौंकाने वाला है
Git की एक सीमा यह है कि “git blame” वास्तव में काम नहीं करता
यह जानना अच्छा होता कि किसने समर्थन या विरोध किया, लेकिन git का commit model collaborative नहीं है
फिर भी पूरे देश के क़ानून को git में डाल देना अपने-आप में बड़ी उपलब्धि है
यह तरीका Linux kernel development से आया है
मैं ही लेखक (OP) हूँ। इतनी बड़ी प्रतिक्रिया मिलेगी, इसकी उम्मीद नहीं थी
बहुत-सी माँगों के बाद मैंने code सार्वजनिक कर दिया है → GitHub: legalize-dev
pipeline को multi-country support structure के साथ डिज़ाइन किया गया है। France (Légifrance data) पहले से काम कर रहा है,
और नया देश जोड़ने के लिए सिर्फ 4 Python interfaces लागू करने होते हैं
मैंने contribution guide भी लिखी है
Germany, Portugal, Sweden, Finland, Netherlands, Brazil आदि से भागीदारी की इच्छा मिली है
अगर आप अपने देश के public legal data source के बारे में जानते हैं, तो PR के ज़रिए मदद करें
scale बढ़ने पर infrastructure की ज़रूरत होगी, इसलिए Open Collective पर funding की तैयारी कर रहा हूँ
एक site भी है जहाँ real-time में क़ानून और diff देखे जा सकते हैं
अभी यह अस्थिर है, लेकिन बड़ी तस्वीर दिमाग़ में है
बधाई! सचमुच शानदार project है
पहले इसी तरह के प्रयास के रूप में gitlaw था, और Brazil में क़ानूनों के बदलाव को तकनीकी रूप से व्यक्त करने के लिए LexML standard है
यह काफ़ी complex है, लेकिन दिलचस्प approach है