In contrast, the list of Wales-only laws is (or used to be) maintained by one French woman at a Welsh university:
"But any queries may well be referred to Marie Navarro, the editor and chief researcher of Wales Legislation Online.
Like everyone in Wales, the judges use this website when they need to find out whether the law in Wales on a particular topic is different from English law.
The database is not run by the judiciary, by the Welsh Assembly Government or by one of the commercial publishers that pride themselves on keeping their subscribers up to date with English law.
It was set up in 1999 by Cardiff University Law School, and is run by Miss Navarro, a French lawyer who came to Wales on a European scholarship 13 years ago and decided to stay."
The first one I more or less randomly clicked on was of course »Verordnung über Qualitätsnormen für Bananen (QNormBanV)« [1], quality standards for bananas.
Is this account actually maintained by Bundestag (or other actual piece of state administration), or is it just a mirror? Also, either German law is really mature and stable, or this repository is unmaintained: last commit oin master is Jan 2013.
I'd love to see such a repository for the acts in my country, by the way, but the official source is a PDF, and most of the published acts are actually patches to existing (already heavily "patched"), like "In the section II, item 13a, change words 'foo and bar' to 'foo, baz and quux'". This mess untangled into an actual, highlighted, unified text is an actual product, and lawyers happily pay the subscription. I imagine it is similar in other countries.
I'm the original creator of that repo. Keeping it up to date is unfortunately a time-consuming manual effort. Doing version control downstream is generally a nightmare because unraveling different law changes/typo fixes is complicated (yes, lot's of typos when humans consolidate laws by hand).
It's a financially independent (it has a "pro" version) non-profit owned by the department of justice and the faculty of law of the University of Oslo. It is an official source and as such laws published there are officially, legally published and it has been that way since 2001. Laws relevant to private citizens are available for free. It's pretty neat.
Edit: oops! I replied after reading the content in an 8 hours old tab, not noticing that the repo author had already explained it in a sibling post to this one.
-----------------------------------
From their README, it's just someone that converted the XML version published by the "Bundesministerium der Justiz und für Verbraucherschutz" (Ministry of Justice and for Customer Protection) which as they note is available at http://www.gesetze-im-internet.de/
About the Markdown version in GitHub: after a quick inspection, most diffs seem to be plain additions of content, presumably as it was converted to Markdown.
However, some diffs might have tracked changes in the laws, as this one: https://github.com/bundestag/gesetze/commit/3c1bada22f08b4e0...
I suspect the author ran the converter a few times and then abandoned it. In principle, it should be possible to keep updating it.
The improvement over the official XML version seems to be that with Markdown it's easier to get understandable diffs.
I'm not sure how they do it, but I guess that it wouldn't be extremely hard to have a small grammar to automatically convert the legalese patch into an actual git patch (most of the time, the sentences which wrap the editions are the sames).
If you have a text version, at least preprocessing and proposing changes could be doable (especially that as far as I know, formal French is quite uniform - but then, it's what I heard from others, all French I actually know comes from a Dexter's Laboratory episode). In Poland, though, the original acts are published as PDFs, and the text extraction itself needs assistance, if it's even possible without OCR: the international agreements that are side-by-side in multiple languages (Polish, other party, sometimes also English) are usually image scans saved as PDFs.
This github repo seems to treat the French legal code as a flat text file. Which is useful, but I'm guessing doesn't do a good job of capturing structural changes to the legal code. Is this fair?
So I'm curious: how do legal scholars and practising lawyers track changes to legal systems over time? Do they use trees, DAGs, or something else? Do they have concepts similar to change dependencies and regressions? What special concepts or techniques does the domain require?
The UK has legislation.gov.uk [1], which seems to treat acts of the UK parliament as some kind of structured objects. Amendments can be accessed, and there is a timeline feature (for example [2]) that shows changes over time. It does have the feeling of being incomplete, though, and lagging behind changes as they happen. So is there some other, canonical, data source that this site tracks? What is it?
I am at my first year of law school in Turkey, so I might be wrong. But in my country there are private companies who collect and summarize court decisions. They also offer search engines.
As far as the changes to regulations go, they are announced in the state paper, with a starting date. All lawyers are obligated to follow the changes.
The ministery of justice also offers a service, they collect all the law texts and publish them. Although recent changes come with a considarable amount of delay. So you use it at your own risk.
In germany there is an excellent site:
http://dejure.org/gesetze/BGB/413.html
You can browse the regulations and read the comments and decisions based on that very regulation. I hope we had a similar site here in Turkey.
Moreover, I also have to state that law regulations don't change quite often. The regulations that change are usually very specialised. All regulations already have a structural order. Especially code books like civil code have regulations that can't be treated seperately.
Last but not least, UK and US have a different law system than France. French law has its roots in Roman law. Nearly all regulations are written in books like civil code.
Pretty similar in France.
Lamy, a subsidiary of Wolters Kluwer is the leading company.
They do the same for a bunch of european countries. Spain, Belgium, Germany, etc...
The answer to your question about how lawyers figure out changes to the law is: they give an assignment to a new associate (or law student, in the case of scholars) to track down the history manually. It's a horrible pain in the ass.
Most codifications I'm familiar with (both state and Federal), whether in print or online, include a list of amendments along with each statute. But any given amendment may have changed a dozen (or far more) statutes, and it's generally a tedious and time consuming job to track down the changes to a given statute over time. Also, the reasoning for the changes, when it's given at all, is often burried in committee reports, which are rarely accessible by following links on a webpage. Some commercial services (LEXIS, WestLaw) will provide historical "snapshots" of particularly important statutes (the Internal Revenue Code, for example), which can help to some degree but which still leave a lot to be desired.
Statutes in general contain a lot of structural information (cross-references, definitions, etc.) which in some online sources are hyperlinked at least, but changes to which are not to my knowledge expressly tracked. One can easily get confused when, for example, a court case refers to a section of a statute that has been renumbered, or to which a new subsection has been inserted in the middle.
I took a quick look at the UK site above, and ... it actually looks quite impressive. As you say, however, it doesn't purport to be current, so some legwork is still left to the grunts. As a former programmer (and text munger a la Perl), it has always seemed to me that there should be a lot of opportunities to apply the tools of software development (version control in particular) to the texts of the law, but simply slurping up text into a repository is not likely to be all that helpful, and the overhead of doing anything useful would be considerable.
So how do you go about creating the commits like the example given? Even though I live in France I've not much looked at French law - the only exception being a few articles relating to immigration. In those examples, there are modifications made to preceding laws, and it seems to me that it would require strong AI to correctly update the original laws as required by the new law. The example in the README gives the impression that we can just pull from Git and get the updated version of the whole law, is that correct? If so, how?!?!
It's because legifrance carries snapshots of the articles. Git is very good at tracking the changes between them.
So for earch article, the codes tracks "when" the article changed, stores it in a hashtable, and replays the "time" (date) for each snapshot, and creates a commit each time.
It goes on each article on Legifrance, creates a JSON file with all the articles, which book/section they belong to, and for each article, tracks it's versions (they are dates). The crawler is in Go.
Then there is a python script that takes that JSON file, creates the .md files and runs the git commands in the shell.
Ultimately the sad thing is that I had to scrape this information. There were lots of pitfalls due to bad formatting and so on... Well, scraping.
I need to keep in practice with my French, so I've translated the README below. Let me know if I got anything wrong.
------
The French Civil Code, in Git
Introduction
Here is a little hack, the result of an afternoon of code: the Civil Code in Git.
If one considers the law as a set of texts modified by the various assemblies of the state, one can consider them as a set of text files created collaboratively.
The members of government, and the various assemblies, work in collaboration on these files, which, once voted for, are written into the Code (here the Civil Code).
But there is another category of people who, for fifty years now, have worked on text files collaboratively, and excel at it: developers. They have created extremely effective collaboration and tracking tools for working on source code. The most popular to date is Git.
Git not only allows you to view the source at a time T (snapshot) but above all to easily visualize the changes in the source (commits). In the analogy to the Civil Code, this permits the tracking of the changes made by a law.
Combine all of this with the Open Source philosophy, and the second part of the analogy is made: the modification of source code in an open and public fashion.
Finally, the Civil Code is a part of the source code of France. And source code belongs in source control. Period.
"At article 165 of the same code, the word: 'before' is replaced by the words: 'during a republican ceremony by'."
Technical Note
Git dates are based on the Unix epoch (01/01/1970), changes before these dates are all dated 01/01/1970, with incremental seconds; the commit message gives the correct date.
As a native French speaker: very good translation.
One small point: I do not understand why you added "it" to the last sentence of the introduction. Your translation of that particular sentence feels weird to me, why not simply:
"And source code belongs in source control."
Also, maybe "différentes" (in the third sentence) could have been translated to "various"?
* * *
Aside, note that the original text itself has several errors. Many accents are missing, some letters or words are missing or doubled. I may submit a PR to correct them.
Moreover, the text includes many English words (not all of which are common in French). It even includes a barbarism: "tracker", from English "track" and French common verbal suffix "-er", supposedly a verb supposed to mean "to track" — a shame, since French has the verb "traquer" to express the same thing.
One small point: I do not understand why you added "it" to the last sentence of the introduction. Your translation of that particular sentence feels weird to me, why not simply:
"And source code belongs in source control."
You're right, of course. That was left over when I switched from "it goes in" to "it belongs in". Fixed!
For "les différentes assemblées", would you say "various assembliess" or "the various assemblies" in this context?
In this context, I would definitely say "the various assemblies" since the author is obviously designating the various assemblies working on the Civil Code, not a random ensemble of assemblies.
I'm really pleased that I was able to read all of the README despite not having read French for probably a year or more. I guess it was written in a very easy/academic style.
I had the same thought. Perhaps it's also because of the closeness of many terms here to their English equivalents ("collaboration", "code source", "commits", "assemblées", etc).
Well the rest of the repository is the french civil code so it makes sense for it to be in french, I'm guessing the readme being bilingual would be acceptable (though obviously judging of that is the repo owner's prerogative)
Legal documents are particularly bad to place under source control, because most of them already reference the previous code they are replacing. And, since the code is basically readonly what's the point of using github? I think legal documents do need a versioning system, but it would have to take into account the peculiarities of the domain (i.e. have each article as a node and amendments as graph links)
Did you take a look at the repo? It doesn't track new laws, it tracks the entire Code Civil and considers each new law a "commit", so it works perfectly. Here, as an example, the commit/law that legalizes same-sex marriage :
You can clearly see that the "commit/law" changes the wordings of various files to replace "mother and father" by "parents" and "husband and wife" by "spouses".
No, version control can only handle textual changes, only humans with legal expertise can work out how one law affects another. Even if there was a graph that showed all the links between all the laws (which would take an enormous amount of work to build), it would take a semantic understanding of each modification to deduce whether it has any impact on other nodes.
> i couldnt find any other versioncontrolled articles.
Did you look? All markdown files aside from the readme are articles. Or did you mean articles which were altered after their initial creation? https://github.com/steeve/france.code-civil/commits/master/L... is one, it was added in 1803 and modified in 1986 and 2014.
There are services (external, secondary to the published acts) that published a re-unified, highlighted version. I would imagine a repository that maintains a current unified text, with the "update acts" as commit messages (or even with the original PDFs somehow linked to the commits. I'm sure it can be implemented somehow in Git plumbing. Annotations, maybe?). I'd even pay for this kind of service - but probably not as much as lawyers who need it for their daily work pay for the existing equivalents.
> Legal documents are particularly bad to place under source control, because most of them already reference the previous code they are replacing. And, since the code is basically readonly what's the point of using github?
The code is not readonly at all, each law within the domain covered by the code is an alteration to the code. Individual laws are reified as commits, and the repository tracks the evolution of the code as laws get voted in and applied.
They are considered "public information", so no droit d'auteur. All government data considered as public information were published starting 2011 with an open data licence, the Etalab licence similar to the UK one.
Apart from the timestamps, line returns also make some of the diffs difficult to interpret sometimes, like if the first line of a long paragraph gets wrapped differently then all the paragraph is just highlighted as a diff instead of each modified word.
Isn't there a better tool than git for plain text diffs?
(I don't know any French and don't know the particulars of French legal system that much, so I cannot really assess quickly based on what I can find in the net).
The full civil code text applicable for every date since at least 1817 is available at Legifrance.gouv.fr[1] so I suppose he just wrote a parser to transform each of these pages into plaintext, another one to get a list of all amendments, and commited each different version.
The author mention he did it in an afternoon of code, so it's definitely not manually generated :
"Voici un petit hack, résultat d'une après-midi de code"
I do agree that the technical details would be interesting.
In a way, it's often the case: law are often modifications of the underlying reference code (here 'Code civil') and are a set of proposition to change the wording or to add/remove a sentence from the reference code.
This makes me wonder about how legislators deal with merge conflicts. Since new laws are often written as "Act X of 1972 is amended as follows: ...", I wonder if there are ever cases where two laws are in the House at the same time that would conflict, and how they resolve this. Do they amend the later law once the first has been signed/given assent?
This would be a great idea in general for the legislature of any country, to be able to see exactly how and when the law was changed would be valuable for transparency and also research. Commit messages could reference transcripts of the debates surrounding changes.
As one of the candidates for the speaker of the House of commons said to me "the executive can get a way with a lot" in terms of controlling the order paper and timing
Stil think Parmjit would have made a better speaker than Bercow
TL;DR: Denmark, Finland, Sweden and presumably others do it already.
I'm surprised if France and other supposedly civilized countries don't do it on behalf of the Justice Ministry or equivalent. I mean, the fundamental responsibility of citizens is to adhere to the law (ignorantia juris non excusat); the fundamental responsibility of government is to make the law available to citizens because it is not reasonable to require compliance with laws that are not practically available to citizens.
I'm in Finland, and the full content of law books has been in internet for almost 20 years, published first by the state-owned publishing house that gave out the print versions, and more recently by Ministry of Justice who has contracted the technical execution out. The database structure managing pieces of legislation dates back to 1980's, but until 1990's it was available only through a license payment.
Individual laws (and executive orders, state treaties and such) that are published by parliament or ministries have of course always been public information and published in the net since 1990's; the important thing is actually maintenance of "up-to-date" version because the parliament publishes its laws mostly as "patches" (i.e. only a changed section is reviewed, voted on, and published).
The database cross-links to published parliamentary process so that the official background work for each law, section and paragraph is available, including preparatory statements by parliamentary committees, any dissenting opinions and so on.
Also more significant precedent cases from high courts are available in database. (We have a so-called Roman law system where the code is primary source of law, unlike American/English common law where precedents are more important; nevertheless neither system is absolute of course, and precedents do matter in civil law systems as well.)
Well, I said "surprised if", not "surprised that".
The eur-lex link I mentioned lists precisely that site (legifrance) for France. But as I don't read French and don't know the particulars, what puzzles me is what is the additional value of putting the same thing in Github. The maintenance burden seems horrific unless you can pull it automatically, and even then the actual benefit of using Github is not so clear to me.
> The maintenance burden seems horrific unless you can pull it automatically
Which is probably relatively easy, legifrace provides reconciliated articles with history so it should be possible to just crawl the code, see if an article was updated since the last crawling and generate the relevant commits.
> and even then the actual benefit of using Github is not so clear to me.
Diffs are somewhat more straightforward than the equivalent legalese, and version-controlled markdown makes for easier programmatic manipulations across "space" and time than a custom-designed website.
Very nice! This will make lawmaking in France somewhat more understandable, and not something we hear reported now and then when it's deemed newsworthy.
One thing that is not mentioned though : will it autoupdate? And if yes, at which rate?
A bit ironic, no? That such a thing, almost exclusively useful for French people, has to come from a non-native speaker. And that the only obviously French comment so far is a critique about the style...
We sure do know how to complain. :)
(slightly unfair, of course---obviously the complaint about grammar had to come from a native speaker; who else would notice it in the first place..?)
The irony of course being that I thought to myself as I was reading it "that's some mighty easy-to-understand French". A long time ago I used to visit francophone Africans in a UK asylum centre who were always notably easier to understand than the French.
Oh no, this kind of grammatical errors show that it's clearly a native French speaker. We French suck at our own language - partly because it is fairly complicated, and partly because people don't bother learning.
Couldn't this have been done without taking gay marriage as the first example? Or does IT always need to go hand in hand with unconditional progressism?
Gay marriage (or "marriage for everyone") is a recent, substantial change to a law that is familiar to many French people. I thought it was a great example despite its somewhat controversial nature.
A quick look at the author's tweets reveals this is not as innocent as you seem to say it is. Plato once said something along the lines of: "those who mix art with politics must be either unsure of their art or of their political positions, if not both". We had engaged musicians, now we have engaged developers. This is all the same trash to me.
Do we even have another recent law that everybody in France remembers?
And seriously, every single new law is pushing somebody's agenda. The author could've chosen the "animals are human being" change and we'd have another you yelling not being fond of developers pushing their love for animals.
Kinda ironic as it's usually the uber liberals that tend to get grossly offended by perceived social injustices such as gendered pronouns or dongle jokes.
Regardless of your political views, any piece of legislature would offend somebody's sensibilities. That's why the legislature exists in the first place
"But any queries may well be referred to Marie Navarro, the editor and chief researcher of Wales Legislation Online.
Like everyone in Wales, the judges use this website when they need to find out whether the law in Wales on a particular topic is different from English law.
The database is not run by the judiciary, by the Welsh Assembly Government or by one of the commercial publishers that pride themselves on keeping their subscribers up to date with English law.
It was set up in 1999 by Cardiff University Law School, and is run by Miss Navarro, a French lawyer who came to Wales on a European scholarship 13 years ago and decided to stay."
http://www.bbc.co.uk/news/uk-12674539