├── LICENSE
├── README.md
├── categories.md
├── historic_index.html
├── images
├── agin.jpg
├── bonardi.jpg
├── brooks.jpg
├── cantrell.jpg
├── castor.jpg
├── cronin.jpg
├── damico.jpg
├── devlin.jpg
├── duncan.jpg
├── faig.jpg
├── godard.jpg
├── hofrichter.jpg
├── holt.jpg
├── hughes.jpg
├── jackson.jpg
├── macglinchey.jpg
├── milward.jpg
├── naming_vid.png
├── perez.jpg
├── richardson.jpg
├── rigdon.jpg
├── roth.jpg
├── rush.jpg
├── shannon.jpg
├── sinead.jpg
├── slomovics.jpg
├── souza.jpg
├── taltos.jpg
├── tamburino.jpg
├── titcomb.jpg
├── walton.jpg
└── weber.jpg
├── index.html
├── internal_object_names.md
├── labeling-fields.md
├── labeling-pdf-fields.md
├── labeling_fields_guideline.md
└── sample_docs
├── military_affidavit.pdf
└── military_affidavit.yml
/LICENSE:
--------------------------------------------------------------------------------
1 | MIT License
2 |
3 | Copyright (c) 2020 Legal Innovation and Technology Lab
4 |
5 | Permission is hereby granted, free of charge, to any person obtaining a copy
6 | of this software and associated documentation files (the "Software"), to deal
7 | in the Software without restriction, including without limitation the rights
8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9 | copies of the Software, and to permit persons to whom the Software is
10 | furnished to do so, subject to the following conditions:
11 |
12 | The above copyright notice and this permission notice shall be included in all
13 | copies or substantial portions of the Software.
14 |
15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21 | SOFTWARE.
22 |
--------------------------------------------------------------------------------
/README.md:
--------------------------------------------------------------------------------
1 | # This repository is obsolete
2 |
3 | This repository is maintained only as a historical record. Please visit https://suffolklitlab.org/docassemble-AssemblyLine-documentation/docs/ for current documentation and information this project.
4 |
--------------------------------------------------------------------------------
/categories.md:
--------------------------------------------------------------------------------
1 | # Allowed court types
2 |
3 | * Boston Municipal Court
4 | * District Court
5 | * Superior Court
6 | * Probate and Family Court
7 | * Housing Court
8 | * Land Court
9 | * Juvenile Court
10 | * Appeals Court
11 |
12 | # Allowed categories of forms
13 |
14 | * Housing
15 | * Family Law
16 | * Domestic Violence / Safety of self
17 | * Health and Mental Health
18 | * Safety of others
19 | * Guardianship
20 | * Consumer and Debt
21 | * Employment / Unemployment
22 | * Immigration
23 | * Income and benefits
24 | * Education
25 | * Other -- write in another if these categories don't match
26 | * Criminal Law (civil issues in a criminal context - prisoner's rights)
27 |
--------------------------------------------------------------------------------
/historic_index.html:
--------------------------------------------------------------------------------
1 |
2 |
5 |
6 |
44 |
45 |
46 |
Legal Innovation & Technology Lab@ Suffolk Law School
47 |
48 |
62 |
63 |
The Document Assembly Line Project
64 |
65 |
66 |
67 | This project is an assembly line to rapidly create mobile-friendly accessible versions of online court forms and pro se materials in multiple-languages for key areas of urgent legal need amid the COVID-19 crisis. We're operating out of Suffolk Law's Legal Innovation and Technology Lab in cooperation with the Massachusetts Access to Justice Commission's COVID-19 task force. Though we're focused on MA specific content, we're sharing our work on GitHub in the hopes that our efforts can be replicated in other jurisdictions. All novel code we generate will be licensed under an MIT License, and we're intentionally building on the open source docassemble platform. Here's what we're doing, and how you can help.
68 |
69 |
70 | Note: the situation is quickly evolving, and everything here could change at any moment.
71 |
72 |
73 |
What We Have Built: MassAccess
74 |
75 |
76 |
The MassAccess site is the public-facing fruit of our labor, providing forms for MA court filing.
77 |
78 |
79 |
80 |
How You Can Help
81 |
82 |
83 | We've set up an assembly line so folks can slot into roles that best fit their skills. All of our coordination takes place over on
84 | . All you have to do to become part of the team is join the A2J Slack, add yourself to the #assembly-line channel, and introduce yourself. Once you're there, we'll help find something for you to do.
85 |
86 |
87 | - Are you a legal professional, paraprofessional or student? Great, if you're comfortable with Adobe Acrobat, we can train you on preprocessing documents, and you can have a go at renaming variables so they make sense. If you've got a gift for explanation, we can train you on docassemble and you can add context for users to help them understand what they're filling out. If you have strong feelings about what forms we need to cover, you can flag them for us and provide copies.
88 | - Do you have experience with docassemble or python? You could help train others or help prepare templates for release to the public.
89 | - Are you an experienced UX/UI designer? You can provide feedback on interviews as they move through the pipeline.
90 | - Do you want to help but didn't answer yes to any of the above? Then you're the perfect tester. We'd love to have you kick the tires of interviews and tell us what doesn't work/is confusing.
91 |
92 |
93 |
What We Are Doing
94 |
95 | In the near term, we'll be producing docassemble interviews for a subset of existing court forms. We will be focusing on those forms most needed in the crisis. Interviews will be hosted on a server maintained by the Lab for the courts. Court personnel will be given secure direct access to completed forms on the server. Consequently, the public will be able to initiate and file these forms with the court from their phones or a computer without the need to save, print, sign and mail or upload documents.
96 |
97 |
98 | Overtime, we will expand the number of forms offered and work to provide more context and assistance to users working through the interview. That is, at first, our interviews will just be mobile-friendly versions of existing forms that one doesn't need to mail or deliver in person. This, however, will change over time as more context is added to help guide users through the process.
99 |
100 |
101 | Our current workflow is as follows (and though we make the workflow sound linear, we're running most of these tasks in parallel):
102 |
103 |
104 | - The court and other stakeholders identify and give us copies of existing forms to automate. We're actively working on convening these stakeholder groups and expect to have more forms from the court soon.
105 | - We will do some light preprocessing, but mostly we're just throwing forms into a collection and batch processing them to auto generate docassemble templates. The expectation is that we're dealing primarily with PDF files.
106 |
111 |
112 | - We're also training subject matter experts (e.g., law students, lawyers, paralegals et al.) on how to add context to the templates and having them do just that, reordering things, grouping questions, and providing copy for the end user. Note: this is very much about producing MVPs (minimum viable products). For now, that's just online versions of existing forms.
113 | - We then review, iterate as needed, and publish "finished" versions to the server, allowing the court to access the data directly so as to avoid the need for printing and mailing or using insecure methods like email.
114 | - "Finished" versions of content are then translated into multiple languages, reviewed, and published to the server.
115 |
116 |
117 |
Collaboration Tools
118 |
119 | We have two public Slack Channels:
120 |
121 |
122 | - One for the whole project over on the A2J Slack team under the #assembly-line channel.
123 | - The other is where we coordinate docassemble work. This is over on the docassemble Slack team, also under the #assembly-line channel.
124 |
125 |
126 |
Work assignments and to do items are maintained on our Trello boards:
127 |
133 |
134 |
Meetings
135 |
We have daily meetings during the work week via Zoom at 12:30pm Eastern. You can find recordings of these, along with training videos and the like, in the embedded playlist below. To get the Zoom link, you'll need to join the A2J Slack. Alternatively, you can find them all online here.
136 |
137 |
138 |
139 |
140 |
141 |
142 |
Our Team
143 |
144 |
People
145 |
Not everyone on the team is on Twitter, but here's a Twitter list made up of team members. New folks are joining the team every day, and though we try to keep this list up-to-date, like this entire project, it is ever changing.
146 |
147 |
148 |
149 |
168 |
169 |
170 |
171 |
172 |
173 | Warren Agin
174 |
Lawyer who plays with data. Practiced bankruptcy, corporate and internet law for 28 years. Now managing director for Elevate Services' Digital Strategy & Solutions group.
175 |
176 | Twitter |
177 | LinkedIn
178 |
179 |
180 |
181 |
182 |
183 |
184 |
185 |
186 | Kate Barry, DocAssembly Line 209A Czar
187 |
Staff attorney in the family law unit at Greater Boston Legal Services.
188 |
189 |
190 |
191 |
192 |
193 |
194 |
195 | Mia Bonardi
196 |
Mia Bonardi is a 2L at Suffolk University Law School.
197 |
198 | LinkedIn
199 |
200 |
201 |
202 |
203 |
204 |
205 |
206 |
207 | Matthew Brooks, DocAssembly Line Project Manager Emeritus
208 |
Matt Brooks is a staff attorney at Greater Boston Legal Services who focuses on consumer debt issues. He is also an occasional docassemble developer, a former Equal Justice Works Fellow, and a former law clerk for the Bankruptcy Court for the Northern District of Texas. He once rode The Cyclone rollercoaster in Coney Island 135 times in a row to raise an embarrassingly small amount of money for charity. The experience haunts him to this day.
209 |
210 | LinkedIn
211 |
212 |
213 |
214 |
215 |
216 |
217 |
218 |
219 | Chandler Burnham
220 |
Chandler is a Massachusetts native currently attending Boston University School of Law. Prior to law school, he worked for a Boston based tech company after studying biology at University of Massachusetts Amherst.
221 |
222 | LinkedIn
223 |
224 |
225 |
226 |
227 |
228 |
229 |
230 |
231 | Esme Caramello
232 |
Faculty Director at the Harvard Legal Aid Bureau, Member of the Access to Justice Commission and its COVID-19 Task Force
233 |
234 | University Listing
235 |
236 |
237 |
238 |
239 |
240 |
241 |
242 | Jack Castor
243 |
Jack Castor is a rising 2L at Suffolk University Law School. Jack is amazing at playing Tetris and has even surpassed Steve Wozniak's infamous high score. Everyone is impressed with his Tetris skills.
244 |
245 | LinkedIn
246 |
247 |
248 |
249 |
250 |
251 |
252 |
253 | David Colarusso, Director of the Legal Innovation and Technology Lab, Practitioner-in-Residence
254 |
David Colarusso is the Director of Suffolk University Law School's Legal Innovation and Technology Lab. An attorney and educator by training, he has worked as a public defender, data scientist, software engineer, and high school physics teacher. He is the author of a programming language for lawyers, QnA Markup, an award winning legal hacker, ABA Legal Rebel, and Fastcase 50 honoree. In 2017 he was named one of the ABA's top legal tweeters.
256 |
257 | Personal Website |
258 | Twitter |
259 | LinkedIn |
260 | LawArXiv
261 |
262 |
263 |
264 |
265 |
266 |
267 |
269 |
270 | Michael Cronin
271 |
Michael is a 2021 J.D. Candidate at Suffolk University Law School. He is the President of the Real Estate and Trusts and Estates student association at Suffolk and graduated from Wheaton College in 2016 where he was a 4 year varsity soccer athlete and Philosophy Major.
272 |
273 | LinkedIn
274 |
275 |
276 |
277 |
278 |
279 |
280 |
283 |
284 | Jodi Cantrell, Title
285 |
286 |
Jodi is a 4L at Suffolk University Law School in Boston and has more than 20 years of IT experience. As a former IT Director with Thermo Fisher Scientific, Jodi lead the North American Employee Experience group consisting of the Desktop and Site Support teams, as well as leading the Global IT Service Desk. She also held various project management roles within the IT Organization and played a key role in leading system integrations following Thermo Fisher's acquisition of Life Technologies in 2014. Prior to joining Thermo Fisher in 2011, Jodi spent 10 years in various IT leadership functions with America West Airlines and US Airways. Jodi completed her Bachelor's degree in Broadcast Journalism from Arizona State University..
287 |
288 | LinkedIn
289 |
290 |
291 |
292 |
293 |
294 |
295 |
296 |
297 | Charlotte Damico
298 |
I am a 3L at Drexel Law School in Philadelphia, PA. Looking forward to helping out!
299 |
300 | LinkedIn
301 |
302 |
303 |
304 |
305 |
306 |
307 |
308 |
309 | Rose Devlin
310 |
Rose is the lead UX/UI designer at Theory and Principle, a legal technology product design and development firm based in Portland, Maine. She has been a designer for 12 years, starting her career as a graphic designer in San Francisco and then moving on to user experience design in 2013. Rose has designed products ranging from large eCommerce sites, to health care products, to applications in the justice space. She is skilled at Sketch and InVision prototyping, moodboards and typography, illustration, and user flows. She has a BFA in Communications Design from Syracuse University’s School of Visual and Performing Arts and is a regular contributor to local User Experience Professional Association chapters.
311 |
312 | LinkedIn
313 |
314 |
315 |
316 |
317 |
318 |
319 |
320 | Hadley Duncan
321 |
I am a 3L in Quinten Steenhuis's Lawyer Smart Machine course. Prior to law school I worked for a public relations firm in Boston. I attended Trinity College for undergraduate school and played varsity lacrosse and field hockey during my four years there.
322 |
323 | LinkedIn
324 |
325 |
326 |
327 |
328 |
329 |
330 |
331 | Alex Faig
332 |
3L at William & Mary Law School; grew up in Richmond, Virginia.
333 |
334 | LinkedIn
335 |
336 |
337 |
338 |
339 |
340 |
341 |
342 | Lance Godard
343 |
After three decades inside and outside of law firms around the world providing a broad range of marketing, communications, and business development solutions, Lance recently took up coding to join the movement using technology to disrupt the profession, change the ways lawyers provide services, and provide access to justice for the underrepresented.
344 |
345 | Personal Website |
346 | LinkedIn
347 |
348 |
349 |
350 |
351 |
352 |
353 |
354 | Michael Hofrichter
355 |
Outgoing Executive Director for Houston Volunteer Lawyers. Former Operations/Tech at HVL where I did some major HotDocs projects, Docassemble projects, integrated Docassemble into our LegalServer configuration, and other database customizations. Basically held every job at HVL in the decade I worked there and got my first full-time job there because I was a self-taught techie when they needed someone. I went to law school at the University of Houston, undergrad at Brandeis University, and grew up in New Jersey. Outside of work, I'm an ultimate frisbee enthusiast and father of two young kids.
356 |
357 | Twitter |
358 | LinkedIn
359 |
360 |
361 |
362 |
363 |
364 |
365 |
366 | Abigail Holt
367 |
UK Barrister and part-time First-Tier Tribunal Judge Oxford University - MA Jurisprudence Inns of Court School of law - Barrister-at-law Manchester University - MA Healthcare Law and Ethics Kings College, London - Post-graduate Diploma European Law Regents University, London - Diploma in Mediation and ADR My practice at the Bar is pulmonary disease litigation, clinical negligence and all medical cases (including regulation of healthcare professionals) and general personal injury. From my judicial experience, I have knowledge of human rights, immigration, asylum and elements of EU law and international conventions. Executive Committee of the European Circuit of the Bar (Treasurer)
368 |
369 | Professional Website
370 |
371 |
372 |
373 |
374 |
375 |
376 |
377 | Fionola Hughes
378 |
Fionola is a Law and French Graduate from the National University of Ireland, Galway and Sciences Po University, France.
379 |
380 | LinkedIn
381 |
382 |
383 |
384 |
385 |
386 |
387 |
388 | Dan Jackson
389 |
390 | Dan Jackson directs the NuLawLab at Northeastern University School of Law, an interdisciplinary innovation laboratory working to merge creative arts and law to create new models of legal empowerment. Dan is a 1997 graduate of Northeastern Law and a 1990 graduate of Northwestern University. Following a postgraduate clerkship with The Hon. Hugh H. Bownes at the U.S. Court of Appeals for the First Circuit, Dan worked for 13 years with the law firm of Bingham McCutchen, ultimately serving as the firm’s director of attorney development after practicing in the employment law group. Prior to law school, Dan worked as a designer for theater. He continues to do so, most recently with the Provincetown Tennessee Williams Theater Festival and The Provincetown Theater.
391 |
392 |
393 | LinkedIn
394 |
395 |
396 |
397 |
398 |
399 |
400 |
401 | Maeve MacGlinchey, DocAssembly Line Project Manager
402 |
Maeve is a South African attorney and notary with four years experience in litigation and transactional law. She resigned from practice at the beginning of 2020 to pursue her interest in improving access to justice and the supply of legal services through the use of technology.
403 |
404 | Twitter |
405 | LinkedIn
406 |
407 |
408 |
409 |
410 |
411 |
412 |
413 | Michelle, DocAssembly Line Project Manager
414 |
Coder interested in creating with people, not for them.
415 |
416 |
417 | Twitter
418 |
419 |
420 |
421 |
422 |
423 |
424 |
425 | Matt Milward
426 |
Matt is a rising 2L at Suffolk University Law School.
427 |
428 | LinkedIn
429 |
430 |
431 |
432 |
433 |
434 |
435 |
436 | Noelle Lussier
437 |
Fourth year evening student at Suffolk University Law School
438 |
439 |
440 |
441 |
442 |
443 |
444 |
445 | Pablo Perez
446 |
Right to Counsel Coordinator at the Eviction Defense Collaborative, San Francisco
447 |
448 | Twitter
449 |
450 |
451 |
452 |
453 |
454 |
455 |
456 | James Richardson
457 |
James is a third-year law student at Suffolk University Law School. He is a part of Suffolk's Accelerator to Practice Program and is interested in the use of technology in small firm practice.
458 |
459 |
460 |
461 |
462 |
463 |
464 |
465 |
466 | Blake Rigdon
467 |
A rising 2L at Suffolk University Law School with an interest in civil litigation and legal technology.
468 |
469 | LinkedIn
470 |
471 |
472 |
473 |
474 |
475 |
476 |
477 | Caroline Robinson
478 |
Caroline Robinson co-directs the Massachusetts Legal Aid Websites Project, and runs MassLegalHelp.org (MLH), based at Massachusetts Law Reform Institute (MLRI). The Websites Project uses technology to increase access to justice for low-income and vulnerable Massachusetts residents. MLH is Massachusetts legal aid programs' collaborative effort to provide relevant, easy-to-read, civil legal information and tools for Massachusetts residents. Prior to joining MLRI, she was Community Content Developer and Artimedia and InTouch Kirklees, a national prototype digital television project integrating community and official information for low income and vulnerable people, in the United Kingdom. She is a Returned Peace Corps Volunteer and has been advocating survivors of domestic violence since 1981.
479 |
480 | LinkedIn
481 |
482 |
483 |
484 |
485 |
486 |
487 |
488 | Liza Rosenof, Legal Research & Innovation Librarian
489 |
Before coming to Suffolk in 2015, Liza worked as a reference librarian at the Western New England School of Law Library in Springfield, MA. While still in law school, Liza served as an articles editor on the Boston College Environmental Affairs Law Review. She also interned at the Northeastern University School of Law Library and worked part-time at the Honan-Allston branch of the Boston Public Library during library school.
490 |
491 | LinkedIn |
492 | University Listing
493 |
494 |
495 |
496 |
497 |
498 |
499 |
500 |
501 | Samuel Roth
502 |
Sam is a 2L student at Suffolk University Law School having previously graduated from the University of Rochester with a B.A. in history.
503 |
504 | LinkedIn
505 |
506 |
507 |
508 |
509 |
510 |
511 |
512 |
513 | Melanie Rush
514 |
Melanie Rush is a recent graduate of Brandeis University with experience in history, politics, and social justice research. She joined this awesome project through her research internship at the Massachusetts Appleseed Center for Law & Justice. Since then, Melanie has taken on the role of Research and Policy Assistant at Massachusetts Appleseed, working on policy areas including access to justice, language access, and youth homelessness. In her free time, she enjoys watching an unhealthy amount of television, baking chocolate chip cookies, dancing, and catching up on recent historical works.
515 |
516 | LinkedIn
517 |
518 |
519 |
520 |
521 |
522 |
523 |
524 |
525 | Tyler Shannon
526 |
Tyler is a licensed architect in Massachusetts where he leads the data science and research practice of a 100-person architecture and design firm. His work overlaps areas of urban planning, housing and transportation policy, real estate and technology. Tyler is currently in the early stages of the Law School application process and is looking forward to getting more involved in the legal community. Tyler lives in the South End of Boston with his wife and cat.
527 |
528 | Twitter |
529 | LinkedIn
530 |
531 |
532 |
533 |
534 |
535 |
536 |
537 |
538 | Michael Slomovics
539 |
Michael is a third-year student at Yale Law School. He is from NYC where he plans on living after law school.
540 |
541 | LinkedIn
542 |
543 |
544 |
545 |
546 |
547 |
548 |
549 |
550 | Aubrie Souza
551 |
Aubrie is a 2L at Suffolk University Law School.
552 |
553 | LinkedIn
554 |
555 |
556 |
557 |
558 |
559 |
560 |
561 | Quinten Steenhuis, Clinical Fellow, Legal Innovation and Technology Lab
562 |
Quinten Steenhuis is a clinical fellow at Suffolk Univeristy Law School in their Legal Innovation and Technology Lab. Quinten has practiced housing and eviction defense law since 2008, and has been a professional programmer and web application developer since 2001. He speaks at area law schools and blogs frequently on the topic of legal technology. He works on projects addressing social justice and access to justice with technology focusing on the topic of housing and evictions. Quinten is an active member of his local community, serving as an appointed member of the City of Cambridge's Recycling Advisory Committee, serving on the Access to Justice Commission's working group on housing through the Justice for All initiative, founding a neighborhood political action group, and serving as the long-time president of a Scrabble club in Somerville, MA. He received his B.Sc. in Logic and Computation with an additional B.Sc. in Political Science from Carnegie Mellon University and J.D. from Cornell Law School.
563 |
564 | Personal Website |
565 | Twitter |
566 | GitHub |
567 | LinkedIn
568 |
569 |
570 |
571 |
572 |
573 |
574 |
575 | Henry Sturm
576 |
577 | I'm a 3L at Northeastern University School of Law and the resident legal design apprentice with the NuLaw Lab. Alongside NUSL's Domestic Violence Institute, I am working to help our DV Clinic rapidly respond to the COVID crisis and the likely increase in intimate partner violence during the stay-at-home period. We are doing this by using technology like the Doc Assembly Line to connect with potential clients in Dorchester, MA, which is what brought me to this project.
578 |
579 | Most importantly, I'm a proud Texan and a pet-parent to 3 cats and 1 dog.
580 |
581 |
582 | LinkedIn
583 |
584 |
585 |
586 |
587 |
588 |
589 |
590 |
591 | Jason Swadel
592 |
2L at Suffolk University Law School; Massachusetts native.
593 |
594 |
595 |
596 |
597 |
598 |
599 | Nicholas Taltos
600 |
Nick is a rising 3L at Cardozo Law School in New York. He participated in Cardozo's Mediation Clinic and is currently an Executive Editor for the ADR Competition Honor Society. His interest in Access to Justice stems from research assistance he provided for a professor writing about the necessity of Access to Justice material for pro se litigants in mediation. Nick enjoys Tai Chi, improv, and writing.
601 |
602 | LinkedIn
603 |
604 |
605 |
606 |
607 |
608 |
609 |
610 | Vincent Tamburino
611 |
Vincent Tamburino is a 3L rising law student at Suffolk University Law School. At Suffolk, Vincent participates in the Business Law Concentration and plans to practice transactional work in New York after he graduates. A proud graduate of Syracuse University, Vincent completed the unthinkable, graduating with a triple major in Political Science, European History & Italian Language and Literature. Once Vincent graduates from Suffolk Law in 2021, he plans on returning to his home state of New York where he will be able to wear his Saquon Barkley jersey in public.
612 |
613 | LinkedIn
614 |
615 |
616 |
617 |
618 |
619 |
620 |
621 | Philip Titcomb
622 |
Philip is originally from Massachusetts and currently a 2L at New York University School of Law. He previously attended Cornell University, where he studied Industrial & Labor Relations.
623 |
624 | LinkedIn
625 |
626 |
627 |
628 |
629 |
630 |
631 |
632 | Sinéad Vaughan
633 |
Sinéad Vaughan is an International Law, Sociology and Politics graduate from the National University of Ireland, Galway and Leiden University, the Netherlands.
634 |
635 | LinkedIn
636 |
637 |
638 |
639 |
640 |
641 |
642 |
643 | Katharine Walton
644 |
Kat is a second-year law student at the University of Illinois School of Law. She plans to practice in Chicago after she graduates. In her free time, she enjoys reading mystery novels.
645 |
646 | LinkedIn
647 |
648 |
649 |
650 |
651 |
652 |
653 |
654 |
655 | Tyler Weber
656 |
Tyler is a 3L at Suffolk University Law School. Prior to law school Tyler studied Public Relations at SUNY Fredonia near Buffalo, NY.
657 |
658 | LinkedIn
659 |
660 |
661 |
662 |
663 |
664 |
Organizations
665 |
666 |
The following organizations and groups have generously donated the time of their employees/members.
667 |
668 |
682 |
683 |
684 |
685 |
689 |
690 |
691 |
692 |
--------------------------------------------------------------------------------
/images/agin.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/SuffolkLITLab/doc-assembly-line/62d89e74d93b9f641386cc88afd9074d8ac89acb/images/agin.jpg
--------------------------------------------------------------------------------
/images/bonardi.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/SuffolkLITLab/doc-assembly-line/62d89e74d93b9f641386cc88afd9074d8ac89acb/images/bonardi.jpg
--------------------------------------------------------------------------------
/images/brooks.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/SuffolkLITLab/doc-assembly-line/62d89e74d93b9f641386cc88afd9074d8ac89acb/images/brooks.jpg
--------------------------------------------------------------------------------
/images/cantrell.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/SuffolkLITLab/doc-assembly-line/62d89e74d93b9f641386cc88afd9074d8ac89acb/images/cantrell.jpg
--------------------------------------------------------------------------------
/images/castor.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/SuffolkLITLab/doc-assembly-line/62d89e74d93b9f641386cc88afd9074d8ac89acb/images/castor.jpg
--------------------------------------------------------------------------------
/images/cronin.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/SuffolkLITLab/doc-assembly-line/62d89e74d93b9f641386cc88afd9074d8ac89acb/images/cronin.jpg
--------------------------------------------------------------------------------
/images/damico.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/SuffolkLITLab/doc-assembly-line/62d89e74d93b9f641386cc88afd9074d8ac89acb/images/damico.jpg
--------------------------------------------------------------------------------
/images/devlin.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/SuffolkLITLab/doc-assembly-line/62d89e74d93b9f641386cc88afd9074d8ac89acb/images/devlin.jpg
--------------------------------------------------------------------------------
/images/duncan.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/SuffolkLITLab/doc-assembly-line/62d89e74d93b9f641386cc88afd9074d8ac89acb/images/duncan.jpg
--------------------------------------------------------------------------------
/images/faig.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/SuffolkLITLab/doc-assembly-line/62d89e74d93b9f641386cc88afd9074d8ac89acb/images/faig.jpg
--------------------------------------------------------------------------------
/images/godard.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/SuffolkLITLab/doc-assembly-line/62d89e74d93b9f641386cc88afd9074d8ac89acb/images/godard.jpg
--------------------------------------------------------------------------------
/images/hofrichter.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/SuffolkLITLab/doc-assembly-line/62d89e74d93b9f641386cc88afd9074d8ac89acb/images/hofrichter.jpg
--------------------------------------------------------------------------------
/images/holt.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/SuffolkLITLab/doc-assembly-line/62d89e74d93b9f641386cc88afd9074d8ac89acb/images/holt.jpg
--------------------------------------------------------------------------------
/images/hughes.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/SuffolkLITLab/doc-assembly-line/62d89e74d93b9f641386cc88afd9074d8ac89acb/images/hughes.jpg
--------------------------------------------------------------------------------
/images/jackson.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/SuffolkLITLab/doc-assembly-line/62d89e74d93b9f641386cc88afd9074d8ac89acb/images/jackson.jpg
--------------------------------------------------------------------------------
/images/macglinchey.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/SuffolkLITLab/doc-assembly-line/62d89e74d93b9f641386cc88afd9074d8ac89acb/images/macglinchey.jpg
--------------------------------------------------------------------------------
/images/milward.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/SuffolkLITLab/doc-assembly-line/62d89e74d93b9f641386cc88afd9074d8ac89acb/images/milward.jpg
--------------------------------------------------------------------------------
/images/naming_vid.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/SuffolkLITLab/doc-assembly-line/62d89e74d93b9f641386cc88afd9074d8ac89acb/images/naming_vid.png
--------------------------------------------------------------------------------
/images/perez.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/SuffolkLITLab/doc-assembly-line/62d89e74d93b9f641386cc88afd9074d8ac89acb/images/perez.jpg
--------------------------------------------------------------------------------
/images/richardson.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/SuffolkLITLab/doc-assembly-line/62d89e74d93b9f641386cc88afd9074d8ac89acb/images/richardson.jpg
--------------------------------------------------------------------------------
/images/rigdon.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/SuffolkLITLab/doc-assembly-line/62d89e74d93b9f641386cc88afd9074d8ac89acb/images/rigdon.jpg
--------------------------------------------------------------------------------
/images/roth.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/SuffolkLITLab/doc-assembly-line/62d89e74d93b9f641386cc88afd9074d8ac89acb/images/roth.jpg
--------------------------------------------------------------------------------
/images/rush.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/SuffolkLITLab/doc-assembly-line/62d89e74d93b9f641386cc88afd9074d8ac89acb/images/rush.jpg
--------------------------------------------------------------------------------
/images/shannon.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/SuffolkLITLab/doc-assembly-line/62d89e74d93b9f641386cc88afd9074d8ac89acb/images/shannon.jpg
--------------------------------------------------------------------------------
/images/sinead.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/SuffolkLITLab/doc-assembly-line/62d89e74d93b9f641386cc88afd9074d8ac89acb/images/sinead.jpg
--------------------------------------------------------------------------------
/images/slomovics.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/SuffolkLITLab/doc-assembly-line/62d89e74d93b9f641386cc88afd9074d8ac89acb/images/slomovics.jpg
--------------------------------------------------------------------------------
/images/souza.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/SuffolkLITLab/doc-assembly-line/62d89e74d93b9f641386cc88afd9074d8ac89acb/images/souza.jpg
--------------------------------------------------------------------------------
/images/taltos.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/SuffolkLITLab/doc-assembly-line/62d89e74d93b9f641386cc88afd9074d8ac89acb/images/taltos.jpg
--------------------------------------------------------------------------------
/images/tamburino.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/SuffolkLITLab/doc-assembly-line/62d89e74d93b9f641386cc88afd9074d8ac89acb/images/tamburino.jpg
--------------------------------------------------------------------------------
/images/titcomb.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/SuffolkLITLab/doc-assembly-line/62d89e74d93b9f641386cc88afd9074d8ac89acb/images/titcomb.jpg
--------------------------------------------------------------------------------
/images/walton.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/SuffolkLITLab/doc-assembly-line/62d89e74d93b9f641386cc88afd9074d8ac89acb/images/walton.jpg
--------------------------------------------------------------------------------
/images/weber.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/SuffolkLITLab/doc-assembly-line/62d89e74d93b9f641386cc88afd9074d8ac89acb/images/weber.jpg
--------------------------------------------------------------------------------
/index.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
--------------------------------------------------------------------------------
/internal_object_names.md:
--------------------------------------------------------------------------------
1 | # Names of internal objects
2 |
3 | ## Names for people
4 |
5 | This list is very similar to the [list available here](https://github.com/SuffolkLITLab/doc-assembly-line/blob/master/labeling-pdf-fields.md#information-about-people).
6 |
7 | One major difference: plural rather than singular variable names. Why? in a PDF file, it's tricky to use `array` syntax. So instead, we append a number to the end of the variable name to represent the first/second/third/etc. In a Docx template, we don't have that limit.
8 |
9 | 1. `users`
10 | 1. `other_parties`
11 | 1. `plaintiffs`
12 | 1. `defendants`
13 | 1. `petitioners`
14 | 1. `respondents`
15 | 1. `spouses`
16 | 1. `children`
17 | 1. `parents`
18 | 1. `guardians`
19 | 1. `caregivers`
20 | 1. `guardians_ad_litem`
21 | 1. `attorneys`
22 | 1. `translators`
23 | 1. `witnesses`
24 | 1. `debt_collectors`
25 | 1. `creditors`
26 |
27 | To access the _first_ user in the list, use the syntax `users[0]`. You can access attributes of the `users[0]` like this: `users[0].attribute_name`. This is the same approach for each of the other lists.
28 |
29 | ## Attributes and methods that go along with people
30 |
31 | ### Special MAVirtualCourt methods and attributes
32 | Docassemble has the built-in [`Individual`](https://docassemble.org/docs/objects.html#Individual) class.
33 | The MAVirtualCourt project adds a few attributes and methods via the `VCIndividual` class.
34 |
35 | * VCIndividual.`previous_addresses` is an object of type `AddressList`.
36 | * `phone_numbers()` prints out a formatted list of phone numbers, labeled as `(cell)` or `(other)`
37 |
38 | `PeopleList` is a list of VCIndividuals, with the special methods
39 |
40 | * `names_and_addresses_on_one_line()`
41 | * `familiar()` prints out the first name of each person in the list, using the function `comma_and_list`.
42 | * `familiar_or()` prints out the first name of each person in the list, using the function `comma_and_list` but replacing the word "and" with the word "or" before the last person in the list.
43 |
44 | These are not quite built-in attributes, but `basic-questions.yml` will provide definitions for these:
45 |
46 | * `users[0].gender_female` is True if `user.gender` is female, and False otherwise (also for `users[1]`, `defendants[9]`, etc.)
47 | * `users[0].gender_male` is True if `user.gender` is male, and False otherwise
48 | * `users[0].gender_other` is True if `user.gender` is any value other than male or female.
49 | * `users[0].signature` will prompt for the user's signature
50 |
51 | ### Built-in attributes
52 |
53 | Here is a summary of some of the useful methods and attributes of an [`Individual`](https://docassemble.org/docs/objects.html#Individual), gathered together. Note some of these
54 | are attributes that are actually objects, and thus documented in different sections of the Docassemble documentation.
55 |
56 | * `name.first`, `name.middle`, `name.last`, and `name.suffix`
57 | * `birthdate`
58 | * `phone_number`
59 | * `mobile_number`
60 | * `gender`
61 | * `address.address` (Street address), `address.unit`, `address.city`, `address.state`, `address.zip` and other attributes of an `Address` object.
62 |
63 | ## Other special variables
64 |
65 | * `courts` is a list of MACourt objects. You will almost always only use `courts[0]`.
66 | * `courts[0]` will print out the full name of the court, e.g., `Brighton Division, Boston Municipal Court`
67 | * `courts[0].name` will also print out the full name of the court.
68 | * `courts[0].department`
69 | * `courts[0].division`
70 | * `courts[0].phone`
71 | * `courts[0].fax`
72 | * `courts[0].location.latitude`
73 | * `courts[0].location.longitude`
74 | * `courts[0].has_po_box`
75 | * `courts[0].description`
76 | * `courts[0].address`, which includes `courts[0].address.county`
77 |
78 | * `docket_numbers` a list of strings
79 | * `signature_date`
80 |
81 | ## Variables that need to be defined if you are building an interview from scratch to deliver to the court
82 |
83 | * `basic_questions_intro_screen` is the first variable you should list in your mandatory interview order control block
84 | * `user_role` is an optional variable. You can define it to "plaintiff" or "defendant" if you know in advance which role the user will have
85 | * `allowed_courts` is a list of court names. See below for a list of all possible values:
86 | ```
87 | code: |
88 | allowed_courts = [
89 | "Boston Municipal Court",
90 | "District Court",
91 | "Superior Court",
92 | "Housing Court",
93 | "Probate and Family Court",
94 | "Juvenile Court",
95 | "Land Court",
96 | ]
97 | ```
98 | * `preferred_court` is an optional variable (unusued until we get approval for final court selector). It can be set to the name of ONE of the available trial court departments.
99 | * `final_form_to_file`: this variable should represent the final attachment as a PDF.
100 | * `form_to_sign`: this variable should represent the final attachment as a PDF, without a signature.
101 |
102 | ### Customizing whether there is one/many or no items in a list
103 |
104 | Sometimes you may want to avoid the "are there any" question. For example: if there is always at least one opposing party.
105 |
106 | ```
107 | code: |
108 | # set the number of other parties to exactly one
109 | other_parties.there_are_any = True
110 | other_parties.there_is_another = False
111 | ```
112 |
113 | If the docket number is never known in advance:
114 |
115 | ```
116 | code: |
117 | docket_numbers[0] = ''
118 | docket_numbers.auto_gather = False
119 | docket_numbers.gathered = True
120 | ```
121 |
122 | ### How to trigger additional signatures
123 |
124 | `signature_fields` is a list of strings representing variable names.
125 |
126 | Adding signature field for all of the clients:
127 |
128 | ```python
129 | signature_fields = []
130 | for client in clients:
131 | signature_fields.append(client.intrinsicName)
132 | ```
133 |
134 | Adding a custom item to the list:
135 |
136 | `signature_fields = ["my_signature"]`
137 |
138 | ### How to make a signature block optional in a Docx template
139 |
140 | Version with only one person signing:
141 |
142 | {% raw %}
143 | ```jinja2
144 | {%p if defined('users[0].signature') %}
145 | {{ users[0].signature }}
146 | {%p endif %}
147 | ```
148 | {% endraw %}
149 |
150 | Version for multiple signers:
151 | {% raw %}
152 | ```jinja2
153 | {%p if defined('users[0].signature') %}
154 | {%p for user in users %}
155 | {{ user.signature }}
156 | {%p endfor %}
157 | {%p endif %}
158 | ```
159 | {% endraw %}
160 |
161 | ### Variables used for sending files to court
162 |
163 | The below all need to be PDFs. Generally, do this in code. But if you have an interview with only
164 | one PDF, you can use these variable names directly.
165 |
166 | A way to turn a Docx attachment into a pdf is with `pdf_concatenate(my_docx_variable_name)`
167 |
168 |
169 | * form_to_file_no_cover
170 | * form_to_sign (optional--only for preview screen)
171 | * final_form_to_file: the basic-questions file automatically combines form_to_file_no_cover with the cover page to create this. Normally never need to deal with this variable at all.
172 |
173 | These variables can all be created automatically for you by the basic-questions file, but you may not like those results. Make
174 | the first two manually for most interviews.
175 |
176 | You should also define this variable:
177 | * download_titles as a Python list. Like this: `download_titles = ["My form title", "My second form title"]`
178 |
179 | ### Review screen
180 |
181 | * review_all_sections
182 |
183 | We have a button by default on download/signature pages that refers to "review_all_sections" event.
184 |
185 | You can make this a review screen for your form. If you don't, it will be a list of all of the navigation sections for your form.
186 |
187 | ```yaml
188 | ---
189 | event: review_all_sections
190 | question: |
191 | Review of your answers
192 | subquestion: |
193 |
194 | ${showifdef('form_to_sign')}
195 |
196 | % if defined('form_delivery_complete'):
197 | **Warning: your form has already been delivered.** Any changes you make
198 | will _not_ be sent to the court.
199 |
200 | % endif
201 | Click a section to revisit the answers from that section.
202 |
203 | % for section in section_links(nav):
204 | * ${section}
205 | % endfor
206 |
207 | Press "${word("Resume")}" to resume the
208 | interview.
209 | buttons:
210 | ${word("Resume")}: continue
211 | ```
212 |
213 |
214 | ### Preview and Final Download Screen with Send to Court buttons
215 | ```yaml
216 | ---
217 | id: review before signature
218 | need: form_to_sign
219 | continue button field: [PLACEHOLDER: PREVIEW SCREEN VARIABLE]
220 | question: |
221 | Nearly finished
222 | subquestion: |
223 | You are almost done! Please click on the form below. It will open in a new window so you
224 | can review it and make sure it is correct.
225 |
226 | Don't forget to come back to this page to click to the final step of signing and sending
227 | the form to the court.
228 |
229 | ${form_to_sign }
230 |
231 | progress: 95
232 | ---
233 | id: download form
234 | event: download
235 | comment: |
236 | The attachment email screen relies on final_form_to_file being defined. This
237 | will be built from the interview_metadata dictionary's contents, but if you
238 | add any addenda you will want to set this in a code block somewhere that takes
239 | priority over basic-questions.yml.
240 | decoration: file-download
241 | question: |
242 | % if not defined('email_success') or not email_success:
243 | Review, Download, and Send Form
244 | % else:
245 | Form delivered
246 | % endif
247 | subquestion: |
248 | % if not defined('email_success') or not email_success:
249 | Thank you ${users[0]}. Your form is ready to send to the court. **It is not
250 | delivered until you complete the delivery process below.**
251 |
252 | 1. Click the preview image below to open the form in a new window. Correct any errors using the "Make changes" button below.
253 | 1. Download and save or print a copy of this form for your
254 | records.
255 | 1. Click the "Submit to ${courts[0]}" button to send it to the court.
256 | 1. You will have a chance to add instructions to the clerk and see the cover page before final delivery.
257 | % else:
258 | If you do not hear from the court in 1 business day, call the Trial Court’s
259 | Emergency HelpLine 833-91-COURT (833-912-6878).
260 |
261 | The Emergency HelpLine is open:
262 | 8:30am - 4:30pm,
263 | Monday - Friday.
264 | % endif
265 |
266 | ${ form_to_file_no_cover }
267 |
268 | ${action_button_html(url_action('review_all_sections'), icon='edit', label=word("Make changes"))}
269 |
270 | % if not defined('email_success') or not email_success:
271 | ${ action_button_html( url_action('form_delivery_complete'), id_tag="submitToCourt", label="Submit to " + str(courts[0].name), icon=send_icon, size="md", color="primary")}
272 |
273 | Or download/email below:
274 | % else:
275 | Your email has already been delivered to ${courts[0]}
276 |
277 | [:file-download: Download with cover page](${final_form_to_file.url_for()})
278 | % endif
279 | progress: 100
280 | attachment code: [PLACEHOLDER: ATTACHMENT VARIABLE]
281 | section: download
282 | ```
283 |
--------------------------------------------------------------------------------
/labeling-fields.md:
--------------------------------------------------------------------------------
1 | # Field Label Names for Docx and PDF files
2 |
3 | _Label names to use when editing fields in Adobe Acrobat or the Documate Field Renamer_
4 |
5 |
6 |
7 | **Table of contents**
8 |
9 | 1. [The basics](#field-labels-the-basics)
10 | 1. [Information about people](#information-about-people)
11 | 1. [Court information](#court-information)
12 | 1. [Signature date](#signature-date)
13 | 1. [Custom labels](#custom-field-labels)
14 | 1. [Advanced lessons](#field-labels-advanced-lessons)
15 | 1. [Custom date fields](#custom-dates)
16 | 1. [More than one of a person or item](#more-than-one)
17 | 1. [Automatically filling fields](#fields-that-the-program-can-fill-in-by-itself)
18 |
19 | [](https://youtu.be/qpfZon2M-GU)
20 | Video of overview: [The Basics of Naming Fields](https://youtu.be/qpfZon2M-GU)
21 |
22 |
23 | # What?
24 |
25 |
26 | 1. Explanations of the use of pre-determined names you should use when labeling fields in a PDF to make automation possible.
27 | 1. A refence guide for those pre-determined names.
28 | 3. Rules (and some guidelines) for making [custom labels](#custom-field-labels), since most of your labels will be custom labels.
29 |
30 | **
You should use the pre-defined labels in here exactly as they appear and only for the specific purposes described below.**
31 |
32 | Don't work on memorizing this material, though. You can take in what's in here and come back to look up specifics later when it you need them.
33 |
34 |
35 | # Why?
36 |
37 | We can create polished multi-lingual plain-language text and questions for all of these pre-set names. Any form that uses these names will get those polished questions automatically.
38 |
39 | Also, when a user is completing multiple forms at the same time, if all these names match on all the forms, they will only have to answer each of the questions once. If three forms ask for a first name but use different label names, the user would have to answer that question three times.
40 |
41 | Please contact us if you think we missed a commonly used field name that we might add to these automated names.
42 |
43 | If you have more questions, please ask us in the Slack channel.
44 |
45 | # Field labels: The basics
46 |
47 |
48 |
49 | To make label names, we stich together bits of words with meanings. We do that in English too - there are `lamp`s and there's the color `red`. We put those together to describe a `red lamp`. In our labels, that might look a bit more like `lamp_red`. We might call `lamp` a prefix and `red` a suffix, though that kind of language might get complicated if we get into things like `lamp_red_tall`.
50 |
51 | These label rules work like that too - you'll combine prefixes and suffixes to build your labels, so look out for that pattern: `prefix_suffix`
52 |
53 | **Note:** Every field label in a PDF has to be unique. They cannot be repeated. We'll talk more about that later, but it's good to remember. In a Microsoft Word docx file, there is no rule that the fields need to be unique.
54 |
55 | ## Figure out who is using your form
56 |
57 | Every form is used by someone. Most forms have parties to a case. Some are not filed with a court, so they may only have
58 | a single user. Some are not filed with a court, but still have a user and an opposing or "other" party.
59 |
60 | For example: in a Motion to Vacate Default Judgment, the user of the form is always going to be the defendant. In a form that creates a new case,
61 | the user of the form is always going to be the plaintiff or petitioner.
62 |
63 | ## Information about people
64 |
65 | ### Label parties to the case with party-specific labels
66 |
67 | The person who is using your form and the person who your form's user is opposing should always get one of the
68 | special labels below:
69 |
70 | **Note:** We made PDF labels singular because you can't work with lists in many PDF editors. Docx variables representing people are all plural.
71 | Internally, all variables representing people are plural.
72 |
73 | PDF label | Docx label | Use case
74 | ----------|------------|----------
75 | `user` | `users`, `user[0]`, or `user[n]` (where `n` is any whole number; use sequentially | Will display the full name of the person who is filling out the online form
76 | `other_party` | `other_parties`, `other_parties[0]`, or `other_parties[n]` | The person suing or being sued by the person filling out the form; someone on the "other side" of the case.
77 | `plaintiff` | `plaintiffs`, `plaintiffs[0]`, `plaintiffs[n]` | Plaintiff in the case if we don't know if the plaintiff is the user or other party.
78 | `defendant` | `defendants`, `defendants[0]`, `defendants[n]` | Defendant in the case if we don't know if the defendant is the user or other party.
79 | `petitioner` | `petitioners`, `petitioners[0]`, `petitioners[n]` | Petitioner in the case if we don't know if the petitioner is the user or other party.
80 | `respondent` | `respondents`, `respondents[0]`, `respondents[n]` | Plaintiff in the case if we don't know if the plaintiff is the user or other party.
81 |
82 | If the form has room for two people on one side of the case, you can reference `user1` and `user2` (on a PDF) or `users[0]` and `users[1]` (in a Docx). It's
83 | important to always use one of these 4 labels for people who are actually part of the case, since we use those internally in many many places in our standard
84 | questions and to communicate information to the court.
85 |
86 | Never use names like:
87 |
88 | * Tenant
89 | * Landlord
90 | * Parent
91 |
92 | etc. that can be converted into party labels, like `Plaintiff` or `Defendant`, if the form is being used by the
93 | tenant or landlord or parent. Every form should have at least one of the 6 party labels above.
94 |
95 | It's best to use `user`/`users` and `other_party`/`other_parties` when you know that the form is always used by a plaintiff or defendant. For example,
96 | a form that is always used by a tenant in an eviction case will normally get labeled with `user`/`users` any place that the form mentions
97 | either `tenant` or `defendant`. In any form that starts a new case, we can always label the PDF with `user` where the `plaintiff` name goes.
98 |
99 | ### Use one of these exact prefixes for other "people" on the form when at all possible
100 |
101 | You may want to use other kinds of labels on the form for miscellaneous people who are
102 | associated with the form, but are not parties to the case. Using one of these labels below
103 | that we have pre-selected tells our tool that these are people, so we can handle things like addresses,
104 | birthdates, etc. correctly.
105 |
106 | We can freely add more labels to this list if you need them for your form. Ideally, talk to us about that
107 | before running your form through the wizard.
108 |
109 | Never use any of the labels below when the person identified by the label is a party to the case.
110 | For example, if they are the person using the form or the person who is on the opposing side of the case
111 | from the user of the form.
112 |
113 | PDF label | Docx label | Use case
114 | ----------|------------|----------
115 | `spouse` | `spouses`, `spouses[0]`, `spouses[n]` | A spouse whose information goes on the form but is not a party to the case.
116 | `child` | `children`, `children[0]`, `children[n]` | Any child whose information goes on the form.
117 | `parent` | `parents`, `parents[0]`, `parents[n]` | A parent who is not a party to the case.
118 | `guardian` | `guardians`, `guardians[0]`, `guardians[n]` | A guardian who is not a party to the case.
119 | `caregiver`| `caregivers` |
120 | `guardian_ad_litem` | `guardians_ad_litem` |
121 | `attorney` | `attorneys` |
122 | `translator` | `translators` |
123 | `witness` | `witnesses` |
124 | `debt_collector` | `debt_collectors` |
125 | `creditor` | `creditors` |
126 |
127 | These are are considered the `prefix`es we described before.
128 |
129 | `unknown_role` isn't something our program will account for, but it's a name you can use when you don't know what role name to use. It can remind you (or alert other folks) to get a consult from someone who would know more.
130 |
131 | ### People suffixes
132 |
133 | When these are people, they have similar things we want to record about them. For example, their first name (`name_first`). These will be our `suffixes`. When a field is for a `plaintiff`'s first name, you will combine the two: `plaintiff_name_first`.
134 |
135 | These are pre-defined words you can use as field labels for a plaintiff:
136 |
137 | Label to use in the PDF | When to use it
138 | ------------------------|-----------------------------------
139 | `plaintiff` | Label for a field that asks for the plaintiff's full name
140 | `plaintiff_name` | The same - label for a field that asks for the plaintiff's full name
141 | `plaintiff_name_first` | Label for a field that asks for the plaintiff's first name
142 | `plaintiff_name_middle` | Label for a field that asks for the plaintiff's middle name
143 | `plaintiff_name_last` | Label for a field that asks for the plaintiff's last name
144 | `plaintiff_name_suffix` | Label for a field that asks for the suffix of the plaintiff's name
145 | `plaintiff_gender` | Label for a text field asking for the plaintiff to write in their gender
146 | `plaintiff_gender_female` | Label for a checkbox for a "female" gender choice
147 | `plaintiff_gender_male` | Label for a checkbox for a "male" gender choice
148 | `plaintiff_birthdate` | Label for a single field for the plaintiff's date of birth
149 |
CONTACT INFORMATION |
150 | `plaintiff_address_address` | Label for a field that asks for the plaintiff's house address
151 | `plaintiff_address_unit` | Label for a field that asks for the plaintiff's apartment number
152 | (deprecated) `plaintiff_address_street` | Label for a field that asks for the plaintiff's house address. Use `plaintiff_address_address` instead
153 | (deprecated) `plaintiff_address_street2` | Label for a field that asks for the plaintiff's apartment number. Use `plaintiff_address_unit` instead
154 | `plaintiff_address_city` | Label for a field that asks for the plaintiff's city address
155 | `plaintiff_address_state` | Label for a field that asks for the plaintiff's state
156 | `plaintiff_address_zip` | Label for a field that asks for the plaintiff's zipcode
157 | `plaintiff_email` | Label for a field that asks for the plaintiff's email address
158 | `plaintiff_phone` | Label for a field that asks for the plaintiff's phone number
159 |
SIGNATURE
160 | `plaintiff_signature` | Label for a single field for the plaintiff's signature
161 |
162 |
163 |
164 |
165 |
166 | **What if you need to use a field again, though?** As we said, each field label in a PDF needs to be unique, but some forms ask for a field multiple times. For example, the plaintiff's name might come up more than once. In those cases, you add two underscores (`__`) and a number. This will go on the very end of the label, after all the suffixes. So, `prefix_suffix__2`, `prefix_suffix__3`, and so on:
167 |
168 | Label to use in the PDF | When to use it
169 | ------------------------|-----------------------------------
170 | `plaintiff_name_first__2` | Label for the second field that asks for that plaintiff's first name
171 | `plaintiff_name_first__3` | Label for the third field that asks for that plaintiff's first name
172 | `plaintiff__2` | Label for the second field that asks for that plaintiff's full name
173 | `plaintiff__3` | Label for the third field that asks for that plaintiff's full name
174 |
175 | And so on.
176 |
177 |
178 |
179 | **How about the other person/organization types you told me about?**
180 |
181 | All these pre-defined suffixes work the same for all of the person/organization types we listed.
182 |
183 | Label to use in the PDF | When to use it
184 | ------------------------|-----------------------------------
185 | `defendant` | Label for a field that asks for the defendant's full name
186 | `spouse_signature` | Label for a field that asks for the spouse's signature
187 | `spouse_signature__2` | Label for a field that asks for the spouse's signature a second time
188 |
189 | And so on.
190 |
191 |
192 |
193 |
194 | ## Court information
195 |
196 | We have some pre-defined words for court information too.
197 |
198 | Label to use in the PDF | When to use it
199 | ------------------------|-----------------------------------
200 | `docket_number` | A label for a field for the form filler to write a docket number. (Not for the court!)
201 | `court_name` | A label to write the full name of the court. E.g., Dorchester Division, Boston Municipal Court.
202 | `court_county` | A label to write the county that the court is in. Note: in many forms, this says 'ss' where the county should go.
203 |
204 |
205 |
206 | You can see `prefix`es and `suffix`es here too. `court` and `name`. They follow similar rules.
207 |
208 | **Note 1:** `docket_number` here is ONLY for the client(s). It's not for 'court use only' areas of the form.
209 |
210 | **Note 2:** Just ignore/delete any drop-down menus for court names in existing court forms. We'll replace that with the name of the court, written out as a new field. You can likely cover up the field by setting a white background.
211 |
212 | ## Signature date
213 |
214 | Label to use in the PDF | When to use it
215 | ------------------------|-----------------------------------
216 | `signature_date` | A label for the field to write the date the document was signed.
217 |
218 |
219 | ## But I need to use that label!
220 |
221 | What if you have a field that needs one of these special labels?
222 |
223 | This is one of the trickier problems. If you find yourself needing one of these "special" labels for another field, you'll need to find another name for it. For example, you can make a custom label that's slightly different and more specific label, like `plaintiff_age_at_time_of_conviction`. Learn more about [making custom labels](#custom-field-labels) further down.
224 |
225 | ## Custom field labels
226 |
227 | Most of your labels will be custom labels, but there are still some rules to follow. Also, we can do some automation with custom labels too if they follow certain patterns.
228 |
229 | ### _Important Rules_
230 |
231 | Some things you really need to do or it will be very hard to write code for the labels:
232 |
233 | 1. Field names **must start with a letter or underscore** (`_`) - not a number or anything else.
234 | 1. Field names can only include **letters, numbers, and underscores**. No spaces or any other character.
235 | 1. When you run across a large area that gives room for writing a paragraph, make sure it's one big field. If it's divided into multiple lines, put a message about it in its trello card or on the Slack #assembly-line channel.
236 |
237 |
238 |
239 | ### _Useful label conventions_
240 |
241 | Code is also about communicating with each other. The label names you come up with now are ones people will need to work with in the future. You don't have to do too much, but try not to label things with Adobe's defaults or `field1`, `field2`, and so on.
242 |
243 | Here are some suggestions for making helpful labels:
244 |
245 | * Please use all lowercase letters for **all labels**. The coders will really appreciate it.
246 | * Separate multiple words in a label with an underscore: `plaintiff_does_love_pie`
247 | * Make the labels descriptive.
248 | * If they can be descriptive _and_ short, that's even better.
249 | * Avoid acronyms and abbreviations, other than very common ones such as `id` for identification.
250 | * When you have several related fields in a row, it could help with automation if you make your own `prefix` and `suffix`es. Make a `prefix` out of the the feature that groups them together, e.g. `asset_checking`, `asset_savings`, etc. It makes alphabetical sorting easier.
251 |
252 | ** Additional `suffix`es to help with automation:**
253 |
254 | * Use verb/noun pairs for checkboxes. For example, `plaintiff_is_parent`, `defendant_speaks_spanish`, `petitioner_has_assets`, etc.
255 | * For checkboxes with a yes/no pair, add `_yes` and `_no` to the end as an _extra_ suffix. E.g., `defendant_knows_english_yes` and `defendant_knows_english_no` - `prefix_suffix_suffix`
256 |
257 |
258 | # Thank you!
259 |
260 | Thank you for joining us to help make a difference in people's lives!
261 |
262 |
263 | # Field labels: Advanced lessons
264 |
265 | Again, don't try to memorize these. After your first read through, use this more like reference material.
266 |
267 | ## Custom dates
268 |
269 | ```
270 | "Forms keep asking for dates in really weird ways."
271 | - A coder
272 | ```
273 |
274 | Labels for fields that are asking for a full date should generally end in `_date` (e.g. `incident_date`), but some forms want you to put dates in differently. For example, they want the day, month, or year given separately.
275 |
276 | (Remember that `prefix_birtdate` and [`signature_date`](signature_date) are pre-determined labels.)
277 |
278 | Let's pretend everyting is about an `incident` just to simplify these examples.
279 |
280 | Label to use in the PDF | When to use it
281 | ------------------------|-----------------------------------
282 | `incident_date` | A label for a field to write the full date of the incident.
283 | `incident_date_day` | A label for a field to write the day of the month of the incident.
284 | `incident_date_month` | A label for a field to write the month of the incident.
285 | `incident_date_day_month` | A label for a field to write both the day and the month of the incident. (Yes, we have run into this)
286 | `incident_date_4_digit_year` | A label for a field to write the 4-digit year of the incident (e.g. 2018).
287 | `incident_date_2_digit_year` | A label for a field to write the 2-digit year of the incident (e.g. 18 as in 02/03/**18**).
288 |
289 |
290 |
291 |
292 |
293 | ## More than one
294 |
295 | What if there are two plaintiffs or three docket numbers? Or multiples of any other item?
296 |
297 | This program can hanlde plural values. If we want to talk about more than one "plaintiff", we can say which plaintiff we mean - the first one, the second one, the third one, and so on. We add a number as part of our prefix.
298 |
299 | Label to use in the PDF | When to use it
300 | ------------------------|-----------------------------------
301 | `plaintiff1_name_first` | Label for a field that asks for the first plaintiff's first name
302 | `plaintiff2_name_first` | Label for a field that asks for the second plaintiff's first name
303 |
304 | Each of those "plaintiffs" can have any of the suffixes that were described above. Here's an example of some fields a second plaintiff might be filling in.
305 |
306 | Label to use in the PDF | When to use it
307 | ------------------------|-----------------------------------
308 | `plaintiff2` | Label for a field that asks for the second plaintiff's full name
309 | `plaintiff2_gender` | Label for a text field asking for the second plaintiff to write in their gender
310 | `plaintiff2_signature` | Label for a single field for the second plaintiff's signature
311 |
312 | And so on. The same pattern works with other prefixes, like `child`, `defendant`, and `witness`.
313 |
314 | Label to use in the PDF | When to use it
315 | ------------------------|-----------------------------------
316 | `docket_number3` | Label for a field that asks for the third docket number
317 | `child3_name_first` | Label for a field that asks for the third child's first name
318 | `defendant4_name_first` | Label for a field that asks for the fourth 'party's first name
319 | `witness6_name_first` | Label for a field that asks for the sixth witness's first name
320 |
321 | You can combine this rule with `__`. For example, you can combine the prefix of the third `plaintiff` with the post-suffix of the second appearance of a field. That is
322 |
323 | Label to use in the PDF | When to use it
324 | ------------------------|-----------------------------------
325 | `plaintiff2__3` | Label for the third appearance of the second plaintiff's full name.
326 | `plaintiff2_signature__3` | Label for the third appearance of the second plaintiff's signature.
327 |
328 |
329 | ## Fields that the program can fill in by itself
330 |
331 | If someone puts in their birthdate, why would they have to put in their age somewhere else? The program can figure out how old they are, so it can fill that in by itself. There are some other things it will know how to print as well.
332 |
333 |
339 |
340 | Label to use in the PDF | When to use it
341 | ------------------------|-----------------------------------
342 | `plaintiff_age` | Label for a field where the plaintiff's age will be inserted automatically
343 | `plaintiff_address_on_one_line` | Label for a field where the plaintiff's address will be inserted on one line
344 | `plaintiff_address_city_state_zip` | Label for a field where the plaintiff's city, state, and zip will be inserted on one line
345 | `plaintiff_address_block` | Label for a field where the plaintiff's full address will be inserted on 3 lines
346 |
347 | There are some lists we can automatically print onto the PDF too.
348 |
349 | Label to use in the PDF | When to use it
350 | ------------------------|-----------------------------------
351 | `plaintiffs` | Label for a field to list all the plaintiffs.
352 | `defendants` | The same for defendants.
353 | `respondents` | The same for respondents
354 |
355 | The finished form will show a list of names that makes sense. For example, if there were two (Susan and Talia), you would see "Susan and Talia", and so on.
356 |
357 | For the curious: `plaintiff_name__2` and such things work like this under the hood.
358 |
359 | # Congratulations!
360 |
361 | You have made it to the end of all of the current documentation! You've got moxie, that's for sure, and it'll serve you well in life!
362 |
--------------------------------------------------------------------------------
/labeling-pdf-fields.md:
--------------------------------------------------------------------------------
1 | See [https://github.com/SuffolkLITLab/doc-assembly-line/blob/master/labeling-fields.md](https://github.com/SuffolkLITLab/doc-assembly-line/blob/master/labeling-fields.md)
2 |
--------------------------------------------------------------------------------
/labeling_fields_guideline.md:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/sample_docs/military_affidavit.pdf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/SuffolkLITLab/doc-assembly-line/62d89e74d93b9f641386cc88afd9074d8ac89acb/sample_docs/military_affidavit.pdf
--------------------------------------------------------------------------------
/sample_docs/military_affidavit.yml:
--------------------------------------------------------------------------------
1 | comment: |
2 | The metadata section controls the tab title and saved interview title. You can delete this section if you include this YAML file in another YAML file.
3 | metadata:
4 | title: |
5 | Military Affidavit
6 | short title: |
7 | Military Affidavit
8 | ---
9 | comment: |
10 | This section is used by MAVirtualCourts to control how some of the questions work.
11 | mandatory: True
12 | code: |
13 | interview_metadata # make sure we initialize the object
14 | if not defined("interview_metadata['military_affidavit']"):
15 | interview_metadata.initializeObject('military_affidavit')
16 | interview_metadata['military_affidavit'].update({
17 | 'title': 'Military Affidavit',
18 | 'short title': 'Military Affidavit',
19 | 'description': 'Use this online form to complete a military affidavit to comply with the Servicemembers Civil Relief Act.',
20 | 'original_form': '',
21 | 'allowed courts': [
22 | 'Boston Municipal Court',
23 | 'District Court',
24 | 'Housing Court',
25 | 'Juvenile Court',
26 | 'Land Court',
27 | 'Probate and Family Court',
28 | 'Superior Court',
29 | ],
30 | 'categories': [
31 | 'Consumer and Debt',
32 | 'Domestic Violence / Safety of self',
33 | 'Education',
34 | 'Employment / Unemployment',
35 | 'Family Law',
36 | 'Guardianship',
37 | 'Health and Mental Health',
38 | 'Housing',
39 | 'Immigration',
40 | 'Income and benefits',
41 | 'Rights of incarcerated/formerly incarcerated',
42 | ],
43 | 'logic block variable': 'military_affidavit',
44 | 'attachment block variable': 'military_affidavit_attachment',
45 | 'typical role': 'unknown',
46 | })
47 | ---
48 | include:
49 | - docassemble.MAVirtualCourt:basic-questions.yml
50 | ---
51 | features:
52 | navigation: True
53 | ---
54 | sections:
55 | - review_military_affidavit: Review your answers
56 | ---
57 | id: interview_order_military_affidavit
58 | code: |
59 | # This is a placeholder to control logic flow in this interview
60 |
61 | basic_questions_intro_screen
62 | military_affidavit_intro
63 | # Set the allowed courts for this interview
64 | allowed_courts = interview_metadata["military_affidavit"]["allowed courts"]
65 | nav.set_section('review_military_affidavit')
66 | # Below sets the user_role by asking a question.
67 | # You can set user_role directly instead to either 'plaintiff' or 'defendant'
68 | user_ask_role
69 | court_department
70 | parties_are_serving
71 | facts
72 | user_bbo
73 | courts[0].division
74 | plaintiffs
75 | defendants
76 | str(docket_numbers)
77 | str(users[0])
78 | signature_date
79 | military_affidavit_preview_question # Pre-canned preview screen
80 | basic_questions_signature_flow
81 | users[0].signature
82 | military_affidavit = True
83 | ---
84 | comment: |
85 | This question is used to introduce your interview. Please customize
86 | id: Military Affidavit
87 | continue button field: military_affidavit_intro
88 | question: |
89 | Military Affidavit
90 | subquestion: |
91 | Use this online form to complete a military affidavit to comply with the Servicemembers Civil Relief Act.
92 | ---
93 | id: Placeholder preview screen
94 | continue button field: military_affidavit_preview_question
95 | question: |
96 | Placeholder preview screen
97 | subquestion: |
98 | Here is a preview of the form you'll sign on the next page.
99 |
100 | ${military_affidavit_attachment['preview']}
101 | ---
102 | id: Screen one
103 | question: |
104 | Screen one
105 | subquestion: |
106 | Placeholder text
107 | fields:
108 | - 'Court department': court_department
109 | ---
110 | id: Information about Military Service
111 | question: |
112 | Information about Military Service
113 | subquestion: |
114 | Tell us what you know about each party and whether they are currently serving in the United States Military or state militia.
115 | fields:
116 | - 'At least one of the parties is currently serving in the military': parties_are_serving
117 | datatype: yesno
118 | - 'Names of parties currently serving in the military': serving_parties
119 | input type: area
120 | - 'At least one of the parties is not currently serving in the military': parties_not_serving
121 | datatype: yesno
122 | - 'Names of parties who are not currently serving in the military': not_serving_parties
123 | input type: area
124 | - 'Names of parties who you are not sure whether or not they are currently serving in the military': unsure_serving_parties
125 | input type: area
126 | ---
127 | id: What facts are you using to support this affidavit?
128 | question: |
129 | What facts are you using to support this affidavit?
130 | subquestion: |
131 | Placeholder text
132 | fields:
133 | - 'Facts': facts
134 | input type: area
135 | ---
136 | id: BBO number
137 | question: |
138 | BBO number
139 | subquestion: |
140 | If you are an attorney with a BBO number, please fill it in below.
141 | fields:
142 | - 'User bbo': user_bbo
143 | ---
144 | progress: 100
145 | mandatory: True
146 | id: Placeholder download screen
147 | question: |
148 | Placeholder download screen
149 | subquestion: |
150 | Placeholder
151 |
152 | ### Next steps
153 |
154 | 1. Step 1
155 | 1. Step 2
156 |
157 | Below is a preview of your form.
158 |
159 | ${military_affidavit_attachment['final'] }
160 | need: military_affidavit
161 | attachment code: military_affidavit_attachment['final']
162 | ---
163 | objects:
164 | - military_affidavit_attachment: DADict
165 | ---
166 | attachment:
167 | variable name: military_affidavit_attachment[i]
168 | name: Military Affidavit
169 | filename: Military_Affidavit
170 | skip undefined: True
171 | pdf template file: military_affidavit.pdf
172 | fields:
173 | - "court_division": ${ courts[0].division }
174 | - "plaintiff": ${ plaintiffs }
175 | - "defendant": ${ defendants }
176 | - "docket_numbers": ${ str(docket_numbers) }
177 | - "user_name_full": ${ str(users[0]) }
178 | # If it is a signature, test which file version we're expecting. leave it empty unless it's the final attachment version
179 | - "user_signature": ${ users[0].signature if i == 'final' else '' }
180 | - "signature_date": ${ signature_date }
181 | - "user_name_full__2": ${ str(users[0]) }
182 | - "court_department": ${ court_department }
183 | - "parties_are_serving": ${ parties_are_serving }
184 | - "serving_parties": ${ serving_parties }
185 | - "parties_not_serving": ${ parties_not_serving }
186 | - "not_serving_parties": ${ not_serving_parties }
187 | - "unsure_serving_parties": ${ unsure_serving_parties }
188 | - "facts": ${ facts }
189 | - "user_bbo": ${ user_bbo }
190 | ---
191 | id: military_affidavit review screen
192 | event: review_military_affidavit
193 | question: |
194 | Placeholder Review Screen
195 | subquestion: |
196 | Edit your answers below
197 | review:
198 | - Edit: court_department
199 | button: |
200 | Court department:
201 | ${ court_department }
202 | - Edit: parties_are_serving
203 | button: |
204 | At least one of the parties is currently serving in the military:
205 | ${ word(yesno(parties_are_serving)) }
206 | - Edit: serving_parties
207 | button: |
208 | Names of parties currently serving in the military:
209 | > ${ single_paragraph(serving_parties) }
210 | - Edit: parties_not_serving
211 | button: |
212 | At least one of the parties is not currently serving in the military:
213 | ${ word(yesno(parties_not_serving)) }
214 | - Edit: not_serving_parties
215 | button: |
216 | Names of parties who are not currently serving in the military:
217 | > ${ single_paragraph(not_serving_parties) }
218 | - Edit: unsure_serving_parties
219 | button: |
220 | Names of parties who you are not sure whether or not they are currently serving in the military:
221 | > ${ single_paragraph(unsure_serving_parties) }
222 | - Edit: facts
223 | button: |
224 | Facts:
225 | > ${ single_paragraph(facts) }
226 | - Edit: user_bbo
227 | button: |
228 | User bbo:
229 | ${ user_bbo }
230 | - Edit: courts[0].division
231 | button: |
232 | courts[0].division:
233 | ${ courts[0].division }
234 | - Edit: plaintiffs
235 | button: |
236 | plaintiffs:
237 | ${ plaintiffs }
238 | - Edit: defendants
239 | button: |
240 | defendants:
241 | ${ defendants }
242 | - Edit: docket_numbers
243 | button: |
244 | docket_numbers:
245 | ${ docket_numbers }
246 | - Edit: users[0]
247 | button: |
248 | users[0]:
249 | ${ users[0] }
250 | - Edit: users[0].signature
251 | button: |
252 | users[0].signature:
253 | ${ users[0].signature }
254 | - Edit: signature_date
255 | button: |
256 | signature_date:
257 | ${ signature_date }
258 |
--------------------------------------------------------------------------------