Code Monkey home page Code Monkey logo

dc-law's People

Contributors

dgreisen avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

dc-law's Issues

Analyze History strings

This is a big issue. You will likely need to be good at regex to complete this.

We need to figure out the different bits of data that are in a History string, how they are coded, and how we are going to pull it apart.

History string example:

(Mar. 3, 1979, D.C. Law 2-139, § 1206, as added Sept. 11, 1990, D.C. Law 8-155, § 2, 37 DCR 4159; June 10, 1998, D.C. Law 12-124, § 101(o)(5), 45 DCR 2464.)

What I know about history strings so far:

  • Each entry is separated by a semicolon
  • Entries are in chronological order; oldest first
  • There can be more than one citation for the same statute
  • Known citation types:
    • DC law number: D.C. Law 12-124
    • DC Register: 45 DCR 2464
    • DC act number: D.C. Act 19-298
    • Federal Statutes at large: 120 Stat. 2039
    • Federal Public law: Pub. L. 109-356
  • Unknown citation types:
    • R.S., D.C., § 1
  • The first entry is the organic statute that created the law.
  • If the section was created by amending the organic statute, then the history line will say something like: Mar. 10, 1981, D.C. Law 3-171, § 11, as added Mar. 16, 2005, D.C. Law 15-226, § 102, 51 DCR 10539. In this case, the organic statute is 3-171, but the section was actually added when 15-226 amended 3-171.
  • There is a 1:1 relationship between a section of a statute and a section in the code. The section in the history entry is the section in the code that created/modified this section. (this understanding could be incomplete).

There is basically a bunch of programmatic exploration that needs to get done. Grab the text from all the History s, split by semicolon, and probably start writing regular expressions to match history entries. Try to get to the point where you've found all the different ways of saying things, then start figuring out what those things are that are being said. Normalize and start extracting the info.

The workproduct for this issue should be an (informal) xml schema to describe all history entries.

Fix formatting of readme.md file

The checkboxes in the readme.md file don't render correctly; they need to be in a list format:

Do this:
* [x] TODO 1
* [ ] TODO 2

not this:
[x] TODO 1
[ ] TODO 2

This renders as:

Do this:

  • TODO 1
  • TODO 2

not this:
[x] TODO 1
[ ] TODO 2

parse history lines; create statute stubs

blocked by #2.

Each section has a history line. We need to pull the dc statute cites from the history line and generate a stub statute node for each statute that has modified the code.

This should be done in the make_statutes script that I've already stubbed out: https://github.com/DCCouncil/dc-law-tools/blob/master/process_xml_jobs/annotation_transforms/make_statutes.py

See the make_statutes docstring for more info on the structure of the stub annotation node.

create place to put statute information

Our first priority is to normalize all the data contained in the code annotations. Much of that data concerns the statutes that modify the code over time. So rather than keeping information about the statutes sprinkled throughout all the code that the statutes modify, we want to keep it one place, with all the other statutes.

So we need to modify the dom in place so that the the top-level element is now a node, and the original top-level element, the node and all its contents are now under the node. Then we can create a node under the node where the statute metadata can be stored.

I've the stub of a script to do this: https://github.com/DCCouncil/dc-law-tools/blob/master/process_xml_jobs/annotation_transforms/make_statutes.py. Your job, should you choose to accept it, is to make the make_statutes function modify the dom in-place as described above and in the doc-string.

Clean up xml

Contributors: please CC0 license all your contributions here

All the dc-law-* repositories are licensed under CC0. Because CC0 is not "viral", all contributors need to explicitly license their contributions under the CC0 license. You can do that once by copying the following text into a comment to this issue:

I, <name>, license all contributions I make to repositories belonging to the DCCouncil organization under the CC0 License.

Or you can copy the following text and include it in each PR you make to a DCCouncil repository:

I, <name>, license this pull request under the CC0 license.

convert jpg to html tables

We have a bunch of images that are really just forms/tables. We would love to convert them to html.

Still figuring out how best to represent the forms. But we have a bunch of html tables:

chldsupobl01
chldsupobl02
chldsupobl03
chldsupobl04
chldsupobl05
chldsupobl06
chldsupobl07
chldsupobl08
chldsupobl09
chldsupobl10
chldsupobl11
chldsupobl12

Ensure DCSTAT in all relevant cites

Lexis has made the error where they use STAT in a cite to the dc statutes at large. It should, instead, be DCSTAT. We need to do a find/replace to replace all wrong cites.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.