Greetings everyone,
just wanted to share how I am currently utilizing Neo4j.
At the Indiana General Assembly, legislators create proposed legislation called Bills. These Bills target the Indiana Code (Indiana Law). The Indiana code is a hierarchical structure consisting of: Titles, Articles and Chapters.
Bills either aim to AMEND or REPEAL an existing Title, Article or Chapter. In cases where a provision does not exist, Bills can also ADD to the Indiana Code. As Bills move through the legislative process and approach passage, it becomes critical for legislators to identify all Bills which target the same area of the Indiana Code. (In essence if one Bill aims to REPEAL a section of the Indiana Code, while another Bill aims to AMEND it)
If both bills with conflicting intent on the Indiana Code were to become law, the courts would have to interpret that conflict in the law.
Additionally, Bills have authors, sponsors, events, bill actions, committee assignments, etc. (ALL connected data)
Data is constantly imported from our main database (Postgres) into Neo4j for the Citations Application. Users are able to add additional meta data into Neo4j and run comparison reports utilizing Jasper.
Query for HB1001
MATCH (c:citation)-[:CONTAINS]-(s:source_sheet)<-[:AFFECTS]-
(b:bill:igacinddevrep:session_2018 {basename:"HB1001"})<-[:OCCURRED_ON]-
(ba:billaction)-[:BASED_ON]->(e:event)-[:BASED_ON]->(ev:event_template)
-[:HAS]->(sa:significant_action_rule)
RETURN *