risp/README.md

1.5 KiB

RISolve

History

Goals

  • I want to have the text of the law.
  • I want to see the structure (proper headers) of the law.
  • I want to be able to make comments (e.g. Erschöpfung) on certain parts
  • I want to see since when this paragraph is in use.
  • Lawtext should be updateable

Technical

  • I don't want to restrict myself with a parser combinators but code it myself using recursive descent parser.
  • Be strict in what I process. Fail if anything unexpected happens. The user should handle this case. It's fine if one decides to ignore the new/unexpected field, but it should be done deliberately.

Progress / Functions

  • Parse structure of law into struct using Deserilize trait, pot. multiple requests (if > 100 paragraphs)
  • Parse risdok using own RD parser, again strict: fail if anything not expected happens, not sure (yet) if I want to operate on strings, or first parse using off-the-shelve XML reader (prob. 2nd option)

Next step

  • Create struct + parse with deserialize

Naming

  • Law ("Gesetz"): e.g. UHG, TEG, ABGB
  • Section ("Paragraph")
  • Subsection ("Absatz")
  • Item ("Ziffer")
  • Heading-{1,2,3,...}