Spaces:
Sleeping
Sleeping
| { | |
| "terminology": [ | |
| { | |
| "pattern": "\\btitle (\\d+) of the United States Code \\((\\d+ U\\.S\\.C\\.)\\)\\b", | |
| "description": "Ensure proper formatting for United States Code references", | |
| "is_error": false | |
| }, | |
| { | |
| "pattern": "\\btitle (\\d+) of the Code of Federal Regulations \\((\\d+ CFR)\\)\\b", | |
| "description": "Ensure proper formatting for Code of Federal Regulations references", | |
| "is_error": false | |
| }, | |
| { | |
| "pattern": "\\btitle (\\d+) of the (United States Code|Code of Federal Regulations) \\((\\d+ U\\.S\\.C\\.|\\d+ CFR)\\)\\b", | |
| "description": "Ensure proper formatting for references to titles of the United States Code or Code of Federal Regulations", | |
| "is_error": false | |
| }, | |
| { | |
| "pattern": "\\bAD Compliance Team \\(AD CRT\\)\\b", | |
| "description": "Ignore 'AD Compliance Team (AD CRT)'", | |
| "is_error": false | |
| }, | |
| { | |
| "_comment": "Per the GPO Style Manual", | |
| "pattern": "\\b(?:USC|U\\.S\\.C)\\b", | |
| "description": "USC should be U.S.C.", | |
| "is_error": true, | |
| "replacement": "U.S.C. (per the GPO Style Manual)" | |
| }, | |
| { | |
| "_comment": "Flag U.S.C without final period", | |
| "pattern": "\\bU\\.S\\.C\\b", | |
| "description": "U.S.C should have a final period (U.S.C.)", | |
| "is_error": true, | |
| "replacement": "U.S.C." | |
| }, | |
| { | |
| "_comment": "Handle Technical Standard Order acronyms", | |
| "pattern": "\\bTechnical Standard Order \\(TSO\\)\\b", | |
| "description": "Technical Standard Order (TSO) is a valid form", | |
| "is_error": false | |
| }, | |
| { | |
| "_comment": "Handle Technical Standard Order with hyphen", | |
| "pattern": "\\bTechnical Standard Order \\(TSO-\\)\\b", | |
| "description": "Technical Standard Order (TSO-) is a valid form", | |
| "is_error": false | |
| }, | |
| { | |
| "_comment": "Per FAA Order 1320.46", | |
| "pattern": "\\bCFR Part\\b", | |
| "description": "CFR Part should be CFR part (lowercase)", | |
| "is_error": true, | |
| "replacement": "CFR part (per Document Drafting Handbook & FAA Order 1320.46). However, if your document is being reviewed by DOT OGC, use CFR Part" | |
| }, | |
| { | |
| "_comment": "Per the GPO Style Manual", | |
| "pattern": "\\bC\\.F\\.R\\.\\b", | |
| "description": "C.F.R. should be CFR (per the GPO Style Manual)", | |
| "is_error": true, | |
| "replacement": "CFR (per the GPO Style Manual & FAA Order 1320.46)" | |
| }, | |
| { | |
| "_comment": "Replace ACO with Certification Branch", | |
| "pattern": "\\bACO\\b", | |
| "description": "ACO should be replaced with Certification Branch", | |
| "is_error": true, | |
| "replacement": "Certification Branch (as of 2023 AIR Reorganization)" | |
| }, | |
| { | |
| "pattern": "\\b(?:[Ww]e)\\b", | |
| "description": "'We' or 'we' should be replaced with 'The FAA' or 'the FAA', depending on case", | |
| "is_error": true, | |
| "replacements": { | |
| "We": "The FAA", | |
| "we": "the FAA" | |
| } | |
| }, | |
| { | |
| "_comment": "Per the GPO Style Manual", | |
| "pattern": "\\bcancelled\\b", | |
| "description": "'cancelled' should be 'canceled' (per the GPO Style Manual)", | |
| "is_error": true, | |
| "replacement": "canceled (per the GPO Style Manual)" | |
| }, | |
| { | |
| "_comment": "Per FAA Order 1320.46", | |
| "pattern": "\\bshall\\b", | |
| "description": "'shall' should be 'must' (per FAA Order 1320.46)", | |
| "is_error": true, | |
| "replacement": "must (per FAA Order 1320.46)" | |
| }, | |
| { | |
| "_comment": "Per AIR-600 Quick Reference Guide", | |
| "pattern": "\\bflight crew\\b", | |
| "description": "'flight crew' should be 'flightcrew' (per AIR-600 Quick Reference Guide)", | |
| "is_error": true, | |
| "replacement": "flightcrew (per AIR-600 Quick Reference Guide)" | |
| }, | |
| { | |
| "_comment": "Per AIR-600 Quick Reference Guide", | |
| "pattern": "\\b(chairman|flagman|man|manmade|manpower)\\b", | |
| "description": "Replace gendered terms with their appropriate alternatives", | |
| "is_error": true, | |
| "replacements": { | |
| "chairman": "chair (per AIR-600 Quick Reference Guide)", | |
| "flagman": "flagperson (per AIR-600 Quick Reference Guide)", | |
| "man": "person (per AIR-600 Quick Reference Guide)", | |
| "manmade": "personmade (per AIR-600 Quick Reference Guide)", | |
| "manpower": "labor force (per AIR-600 Quick Reference Guide)" | |
| } | |
| }, | |
| { | |
| "_comment": "Per AIR-600 Quick Reference Guide. Changed per GENOT N 7930.114", | |
| "pattern": "\\bnotice to air missions\\b", | |
| "description": "'notice to air missions' should be 'notice to airmen' (per GENOT N 7930.114)", | |
| "is_error": true, | |
| "replacement": "notice to airmen (per GENOT N 7930.114)" | |
| }, | |
| { | |
| "_comment": "Per AIR-600 Quick Reference Guide", | |
| "pattern": "\\bcockpit\\b", | |
| "description": "'cockpit' should be 'flight deck' (per AIR-600 Quick Reference Guide)", | |
| "is_error": true, | |
| "replacement": "flight deck (per AIR-600 Quick Reference Guide)" | |
| }, | |
| { | |
| "pattern": "\\b(in order to|for the purpose of)\\b", | |
| "description": "Simplify phrases like 'in order to' to 'to'", | |
| "is_error": true | |
| }, | |
| { | |
| "pattern": "\\b(herein|therein|thereof|heretofore|aforementioned)\\b", | |
| "description": "Avoid archaic or legalese terms; use modern, plain language equivalents", | |
| "is_error": true | |
| }, | |
| { | |
| "pattern": "\\b(aircraft|airplane|flightcrew|flight deck|maintenance technician)\\b", | |
| "description": "Ensure consistent use of defined aviation terms", | |
| "is_error": true | |
| }, | |
| { | |
| "pattern": "\\b(shall|will|may|must)\\b", | |
| "description": "Ensure proper use of 'must' instead of 'shall' for requirements", | |
| "is_error": true | |
| }, | |
| { | |
| "pattern": "\\b(very|extremely|highly|quite)\\b", | |
| "description": "Avoid unnecessary qualifiers; use precise language", | |
| "is_error": true | |
| }, | |
| { | |
| "pattern": "\\b(data are|criteria is|phenomena is)\\b", | |
| "description": "Ensure consistent singular/plural usage (e.g., 'data is,' 'criteria are,' 'phenomena are')", | |
| "is_error": true | |
| }, | |
| { | |
| "pattern": "\\bappropriate\\b", | |
| "description": "Avoid vague terms like 'appropriate'; specify conditions or criteria", | |
| "is_error": true | |
| }, | |
| { | |
| "pattern": "\\b(is|was|were|are|be|been|being)\\s+(\\w+ed)\\b", | |
| "description": "Flag likely passive constructions even if no agent ('by') is present", | |
| "is_error": true | |
| }, | |
| { | |
| "pattern": "\\babove\\b", | |
| "description": "Avoid using 'above' for references; specify the section or item explicitly (per Document Drafting Handbook)", | |
| "is_error": true | |
| }, | |
| { | |
| "pattern": "\\bbelow\\b", | |
| "description": "Avoid using 'below' for references; specify the section or item explicitly (per Document Drafting Handbook)", | |
| "is_error": true | |
| }, | |
| { | |
| "pattern": "\\baforementioned\\b", | |
| "description": "Avoid using 'aforementioned' as it can be unclear", | |
| "is_error": true | |
| }, | |
| { | |
| "pattern": "\\bpreceding\\b", | |
| "description": "Avoid using 'preceding' for references; specify the section or item explicitly (per Document Drafting Handbook)", | |
| "is_error": true | |
| }, | |
| { | |
| "pattern": "\\bfollowing\\b", | |
| "description": "Avoid using 'following' for references; specify the section or item explicitly (per Document Drafting Handbook)", | |
| "is_error": true | |
| }, | |
| { | |
| "pattern": "\\blatter\\b", | |
| "description": "Avoid using 'latter'; specify the section or item explicitly (per Document Drafting Handbook)", | |
| "is_error": true | |
| }, | |
| { | |
| "pattern": "\\bformer\\b", | |
| "description": "Avoid using 'former'; specify the section or item explicitly (per Document Drafting Handbook)", | |
| "is_error": true | |
| }, | |
| { | |
| "pattern": "\\bthis\\b", | |
| "description": "Avoid using 'this' without a clear antecedent", | |
| "is_error": true | |
| }, | |
| { | |
| "pattern": "\\bit\\b", | |
| "description": "Avoid using 'it' without a clear antecedent", | |
| "is_error": true | |
| }, | |
| { | |
| "pattern": "\\bthese\\b", | |
| "description": "Avoid using 'these' without a clear antecedent", | |
| "is_error": true | |
| }, | |
| { | |
| "pattern": "\\bsuch\\b", | |
| "description": "Avoid using 'such' without a clear antecedent", | |
| "is_error": true | |
| }, | |
| { | |
| "pattern": "\\brespectively\\b", | |
| "description": "Avoid using 'respectively' as it can be confusing in complex lists", | |
| "is_error": true | |
| }, | |
| { | |
| "pattern": "\\bper above\\b", | |
| "description": "Avoid using 'per above'; specify the section or item explicitly (per Document Drafting Handbook)", | |
| "is_error": true | |
| }, | |
| { | |
| "pattern": "\\bas mentioned earlier\\b", | |
| "description": "Avoid using 'as mentioned earlier'; specify the section or item explicitly (per Document Drafting Handbook)", | |
| "is_error": true | |
| }, | |
| { | |
| "pattern": "\\bas stated earlier\\b", | |
| "description": "Avoid using 'as stated earlier'; specify the section or item explicitly (per Document Drafting Handbook)", | |
| "is_error": true | |
| }, | |
| { | |
| "pattern": "\\bin question\\b", | |
| "description": "Avoid using 'in question'; specify the section or item explicitly (per Document Drafting Handbook)", | |
| "is_error": true | |
| }, | |
| { | |
| "pattern": "\\bafore\\b", | |
| "description": "Avoid using archaic terms like 'afore'; specify the section or item explicitly (per Document Drafting Handbook)", | |
| "is_error": true | |
| }, | |
| { | |
| "pattern": "\\b(may|might|could|should|possibly|likely)\\b", | |
| "description": "Avoid vague terms; use definitive language unless the conditional meaning is intended", | |
| "is_error": true | |
| }, | |
| { | |
| "pattern": "\\b(as stated in|refer to|see)\\b.*?(\\bAppendix\\b|\\bTable\\b|\\bSection\\b|\\bFigure\\b)", | |
| "description": "Ensure references are complete and properly formatted", | |
| "is_error": true | |
| }, | |
| { | |
| "pattern": "\\band/or\\b", | |
| "description": "Avoid using 'and/or'; rewrite the sentence to be more specific about the conditions", | |
| "is_error": true, | |
| "replacement": "written sentence breaking up and/or (per AGC)" | |
| }, | |
| { | |
| "_comment": "Per Document Drafting Handbook", | |
| "pattern": "\\b(?:pursuant to|in accordance with|in compliance with)\\b", | |
| "description": "Use simpler alternatives like 'under' or 'following'", | |
| "is_error": true, | |
| "replacement": "under (per FAA Order 1320.46)" | |
| }, | |
| { | |
| "_comment": "Per Document Drafting Handbook", | |
| "pattern": "\\b(?:authority|authorized|authorizes)\\b", | |
| "description": "Specify the specific authority (e.g., 'under 49 U.S.C. § 44701')", | |
| "is_error": true | |
| }, | |
| { | |
| "_comment": "Per Document Drafting Handbook", | |
| "pattern": "\\b(?:means|includes|does not include|includes but is not limited to)\\b", | |
| "description": "Ensure proper formatting of regulatory definitions", | |
| "is_error": true | |
| }, | |
| { | |
| "_comment": "Per Document Drafting Handbook", | |
| "pattern": "\\b(?:amends|adds|removes|revises|replaces)\\b", | |
| "description": "Ensure proper use of regulatory action terms", | |
| "is_error": true | |
| }, | |
| { | |
| "_comment": "Per Document Drafting Handbook", | |
| "pattern": "\\b(?:applies|applicable|covers)\\s+(?:to|for|in)\\b", | |
| "description": "Ensure clear specification of regulatory scope", | |
| "is_error": true | |
| }, | |
| { | |
| "_comment": "Per Document Drafting Handbook", | |
| "pattern": "\\b(?:comply|compliance|noncompliance)\\b", | |
| "description": "Ensure proper handling of compliance terms", | |
| "is_error": true | |
| }, | |
| { | |
| "_comment": "Per Document Drafting Handbook", | |
| "pattern": "\\b(?:enforce|enforcement|violation)\\b", | |
| "description": "Ensure proper handling of enforcement terms", | |
| "is_error": true | |
| }, | |
| { | |
| "_comment": "Per Document Drafting Handbook", | |
| "pattern": "\\b(?:implement|implementation|carry out)\\b", | |
| "description": "Ensure proper handling of implementation terms", | |
| "is_error": true | |
| }, | |
| { | |
| "_comment": "Per Document Drafting Handbook", | |
| "pattern": "\\b(?:delegated|authorized|assigned)\\s+(?:to|by)\\b", | |
| "description": "Ensure proper specification of authority delegation", | |
| "is_error": true | |
| }, | |
| { | |
| "_comment": "Per Document Drafting Handbook", | |
| "pattern": "\\b(?:requirement|standard|specification)\\s+(?:for|of|in)\\b", | |
| "description": "Ensure proper specification of requirements and standards", | |
| "is_error": true | |
| }, | |
| { | |
| "_comment": "Per Document Drafting Handbook", | |
| "pattern": "\\b(?:procedure|process|method)\\s+(?:for|of|in)\\b", | |
| "description": "Ensure proper specification of procedures and processes", | |
| "is_error": true | |
| }, | |
| { | |
| "_comment": "Per Document Drafting Handbook", | |
| "pattern": "\\b(?:document|record|report)\\s+(?:required|maintained|submitted)\\b", | |
| "description": "Ensure proper specification of documentation requirements", | |
| "is_error": true | |
| }, | |
| { | |
| "_comment": "Per Document Drafting Handbook", | |
| "pattern": "\\b(?:review|approval|authorization)\\s+(?:required|granted|denied)\\b", | |
| "description": "Ensure proper specification of review and approval processes", | |
| "is_error": true | |
| }, | |
| { | |
| "_comment": "Per Document Drafting Handbook", | |
| "pattern": "\\b(?:violation|penalty|sanction)\\s+(?:for|of|in)\\b", | |
| "description": "Ensure proper specification of violations and penalties", | |
| "is_error": true | |
| }, | |
| { | |
| "_comment": "Per Document Drafting Handbook", | |
| "pattern": "\\b(?:waiver|exemption|variance)\\s+(?:from|of|for)\\b", | |
| "description": "Ensure proper specification of waivers and exemptions", | |
| "is_error": true | |
| }, | |
| { | |
| "_comment": "Per Document Drafting Handbook", | |
| "pattern": "\\b(?:compliance|implementation|enforcement)\\s+(?:date|deadline|requirement)\\b", | |
| "description": "Ensure proper specification of compliance dates", | |
| "is_error": true | |
| }, | |
| { | |
| "_comment": "Per Document Drafting Handbook", | |
| "pattern": "\\b(?:defined|definition|term)\\s+(?:in|under|for)\\b", | |
| "description": "Ensure proper formatting of regulatory definitions", | |
| "is_error": true | |
| }, | |
| { | |
| "_comment": "Per Document Drafting Handbook", | |
| "pattern": "\\b(?:authority|power|jurisdiction)\\s+(?:to|for|over)\\b", | |
| "description": "Ensure proper specification of regulatory authority", | |
| "is_error": true | |
| }, | |
| { | |
| "_comment": "Per Document Drafting Handbook", | |
| "pattern": "\\b(?:compliance|enforcement)\\s+(?:with|under|of)\\b", | |
| "description": "Ensure proper specification of compliance and enforcement terms", | |
| "is_error": true | |
| }, | |
| { | |
| "_comment": "Per Document Drafting Handbook", | |
| "pattern": "\\b(?:implementation|transition|phase-in)\\s+(?:of|for|under)\\b", | |
| "description": "Ensure proper specification of implementation and transition terms", | |
| "is_error": true | |
| }, | |
| { | |
| "_comment": "Per Document Drafting Handbook", | |
| "pattern": "\\b(?:regulatory|economic|environmental)\\s+(?:impact|analysis|assessment)\\s+(?:of|for|under)\\b", | |
| "description": "Ensure proper handling of regulatory analysis terms", | |
| "is_error": true | |
| }, | |
| { | |
| "_comment": "Per Document Drafting Handbook", | |
| "pattern": "\\b(?:except|unless|provided that|notwithstanding)\\s+(?:for|under|in)\\b", | |
| "description": "Ensure proper formatting of regulatory exceptions", | |
| "is_error": true | |
| }, | |
| { | |
| "_comment": "Per Document Drafting Handbook", | |
| "pattern": "\\b(?:requirement|standard|specification)\\s+(?:for|of|in)\\b", | |
| "description": "Ensure proper specification of requirements and standards", | |
| "is_error": true | |
| }, | |
| { | |
| "_comment": "Per Document Drafting Handbook", | |
| "pattern": "\\b(?:procedure|process|method)\\s+(?:for|of|in)\\b", | |
| "description": "Ensure proper specification of procedures and processes", | |
| "is_error": true | |
| }, | |
| { | |
| "_comment": "Per Document Drafting Handbook", | |
| "pattern": "\\b(?:document|record|report)\\s+(?:required|maintained|submitted)\\b", | |
| "description": "Ensure proper specification of documentation requirements", | |
| "is_error": true | |
| }, | |
| { | |
| "_comment": "Per Document Drafting Handbook", | |
| "pattern": "\\b(?:review|approval|authorization)\\s+(?:required|granted|denied)\\b", | |
| "description": "Ensure proper specification of review and approval processes", | |
| "is_error": true | |
| }, | |
| { | |
| "_comment": "Per Document Drafting Handbook", | |
| "pattern": "\\b(?:violation|penalty|sanction)\\s+(?:for|of|in)\\b", | |
| "description": "Ensure proper specification of violations and penalties", | |
| "is_error": true | |
| }, | |
| { | |
| "_comment": "Per Document Drafting Handbook", | |
| "pattern": "\\b(?:waiver|exemption|variance)\\s+(?:from|of|for)\\b", | |
| "description": "Ensure proper specification of waivers and exemptions", | |
| "is_error": true | |
| }, | |
| { | |
| "pattern": "\\bRegulatory and Guidance Library\\b", | |
| "description": "Replace 'Regulatory and Guidance Library' with 'Dynamic Regulatory System'", | |
| "is_error": true, | |
| "replacement": "Dynamic Regulatory System" | |
| }, | |
| { | |
| "pattern": "\\bRegulatory and Guidance Library \\(RGL\\)\\b", | |
| "description": "Replace 'Regulatory and Guidance Library (RGL)' with 'Dynamic Regulatory System (DRS)'", | |
| "is_error": true, | |
| "replacement": "Dynamic Regulatory System (DRS)" | |
| }, | |
| { | |
| "pattern": "\\bRGL\\b", | |
| "description": "Replace 'RGL' with 'DRS'", | |
| "is_error": true, | |
| "replacement": "DRS" | |
| } | |
| ], | |
| "section_symbol": [ | |
| { | |
| "pattern": "\\b(section|subsection|paragraph|clause)\\b", | |
| "description": "Ensure proper use of '§' or '§§' instead of spelled-out 'section'", | |
| "is_error": true | |
| }, | |
| { | |
| "pattern": "^§", | |
| "description": "Don't start a sentence with the section symbol. Write out 'Section'", | |
| "is_error": true | |
| }, | |
| { | |
| "pattern": "\\b(\\d+ U\\.S\\.C\\. §§? \\d+\\([a-zA-Z0-9]*\\)(?:\\([a-zA-Z0-9]*\\))?)\\b", | |
| "description": "Do not flag properly formatted citations with section symbols (e.g., '5 U.S.C. § 533(a)(1)')", | |
| "is_error": false | |
| }, | |
| { | |
| "pattern": "\\b(\\d+ U\\.S\\.C\\. §§? \\d+\\([a-zA-Z0-9]*\\)(?:\\([a-zA-Z0-9]*\\))?)\\.\\b", | |
| "description": "Do not flag properly formatted citations with section symbols that end sentences (e.g., '5 U.S.C. § 533(a)(1).')", | |
| "is_error": false | |
| }, | |
| { | |
| "pattern": "\\b14 CFR §\\s*\\d+\\.\\d+\\b", | |
| "description": "14 CFR should not use section symbol", | |
| "is_error": true | |
| }, | |
| { | |
| "pattern": "§\\s*\\d+\\.\\d+\\s+(?:and|or)\\s+\\d+\\.\\d+", | |
| "description": "Missing section symbol in multiple sections", | |
| "is_error": true | |
| }, | |
| { | |
| "pattern": "§\\s*\\d+\\.\\d+\\s+through\\s+\\d+\\.\\d+", | |
| "description": "Missing section symbol in range of sections", | |
| "is_error": true | |
| }, | |
| { | |
| "pattern": "§\\s*\\d+\\.\\d+\\s+or\\s+§?\\s*\\d+\\.\\d+", | |
| "description": "Inconsistent section symbol usage with 'or'", | |
| "is_error": true | |
| } | |
| ], | |
| "spacing": [ | |
| { | |
| "pattern": "([^\\s]+)[ ]{2,}([^\\s]+)", | |
| "description": "Remove double spacing between '{0}' and '{1}'", | |
| "is_error": true | |
| }, | |
| { | |
| "pattern": "(?<!\\s)(AC|AD|CFR|FAA|N|SFAR)(\\d+[-]?\\d*[A-Z]?)", | |
| "description": "Add space between '{0}' and '{1}'", | |
| "is_error": true | |
| }, | |
| { | |
| "pattern": "(§|§§)(\\d+\\.\\d+)", | |
| "description": "Add space after '{0}' before '{1}'", | |
| "is_error": true | |
| }, | |
| { | |
| "pattern": "(?<!\\s)(Part)(\\d+)", | |
| "description": "Add space between '{0}' and '{1}'", | |
| "is_error": true | |
| }, | |
| { | |
| "pattern": "^(\\d+\\.\\d+\\.\\d+\\.\\d+)\\s*$", | |
| "description": "Ensure subsections are followed by content", | |
| "is_error": true | |
| }, | |
| { | |
| "pattern": "^\\s*[-*]\\s*[^a-zA-Z0-9]+", | |
| "description": "Flag empty or improperly formatted bullet points", | |
| "is_error": true | |
| }, | |
| { | |
| "pattern": "\\b(\\d+)\\s*to\\s*(\\d+)\\b", | |
| "description": "Ensure numeric ranges use a dash (e.g., '10-20') instead of 'to' (per GPO Style Manual)", | |
| "is_error": true | |
| } | |
| ], | |
| "dates": [ | |
| { | |
| "pattern": "(?<![\\w/-])(\\d{1,2}/\\d{1,2}/\\d{2,4}|\\d{1,2}-\\d{1,2}-\\d{2,4}|\\d{4}-\\d{1,2}-\\d{1,2})(?![\\w/-])", | |
| "description": "Use 'Month Day, Year' format instead of numeric date formats (MM/DD/YYYY, MM-DD-YYYY, YYYY-MM-DD)", | |
| "is_error": true | |
| }, | |
| { | |
| "_comment": "Common aviation/regulatory references that look like dates but aren't", | |
| "pattern": "\\b(?:AD|SFAR|AC|Order|Notice|Policy|Memo)\\s*\\d{2,4}[-/]\\d{1,2}[-/]\\d{1,2}\\b", | |
| "description": "Do not flag aviation/regulatory references as date format issues", | |
| "is_error": false | |
| }, | |
| { | |
| "_comment": "Docket numbers including placeholders", | |
| "pattern": "\\bDocket\\s+(?:No\\.?|Number)\\s*\\d{2,4}[-/][xX]{1,2}[-/][xX]{1,2}\\b", | |
| "description": "Do not flag docket numbers with placeholders as date format issues", | |
| "is_error": false | |
| }, | |
| { | |
| "_comment": "TSO references", | |
| "pattern": "\\bTSO-[A-Z]?\\d{1,3}[a-zA-Z]?\\b", | |
| "description": "Do not flag TSO references as date format issues", | |
| "is_error": false | |
| }, | |
| { | |
| "_comment": "Part/section references", | |
| "pattern": "\\b(?:Part|Section|§)\\s*\\d{1,3}[-/]\\d{1,3}\\b", | |
| "description": "Do not flag part/section references as date format issues", | |
| "is_error": false | |
| }, | |
| { | |
| "_comment": "Document numbers", | |
| "pattern": "\\b(?:No\\.?|Number)\\s*\\d{2,4}[-/]\\d{1,2}[-/]\\d{1,2}\\b", | |
| "description": "Do not flag document numbers as date format issues", | |
| "is_error": false | |
| }, | |
| { | |
| "_comment": "Per Document Drafting Handbook", | |
| "pattern": "\\b(?:effective|commencing|beginning)\\s+(?:on|as of|from)\\s+(?:the|this)\\s+(?:date|day)\\b", | |
| "description": "Specify the exact effective date", | |
| "is_error": true | |
| }, | |
| { | |
| "_comment": "Per Document Drafting Handbook", | |
| "pattern": "\\b(?:compliance|implementation|enforcement)\\s+(?:date|deadline)\\b", | |
| "description": "Ensure proper formatting of compliance dates", | |
| "is_error": true | |
| } | |
| ], | |
| "placeholders": [ | |
| { | |
| "pattern": "\\bTBD\\b", | |
| "description": "Remove TBD placeholder", | |
| "is_error": true | |
| }, | |
| { | |
| "pattern": "\\bTo be determined\\b", | |
| "description": "Remove 'To be determined' placeholder", | |
| "is_error": true | |
| }, | |
| { | |
| "pattern": "\\bTo be added\\b", | |
| "description": "Remove 'To be added' placeholder", | |
| "is_error": true | |
| }, | |
| { | |
| "pattern": "\\bTBA\\b", | |
| "description": "Remove TBA (To Be Announced) placeholder", | |
| "is_error": true | |
| }, | |
| { | |
| "pattern": "\\bTo be updated\\b", | |
| "description": "Remove 'To be updated' placeholder", | |
| "is_error": true | |
| }, | |
| { | |
| "pattern": "\\bTo follow\\b", | |
| "description": "Remove 'To follow' placeholder", | |
| "is_error": true | |
| }, | |
| { | |
| "pattern": "\\bInsert here\\b", | |
| "description": "Remove 'Insert here' placeholder", | |
| "is_error": true | |
| }, | |
| { | |
| "pattern": "\\[Insert.*?\\]", | |
| "description": "Remove '[Insert...]' placeholder", | |
| "is_error": true | |
| }, | |
| { | |
| "pattern": "\\[Placeholder.*?\\]", | |
| "description": "Remove '[Placeholder...]' placeholder", | |
| "is_error": true | |
| }, | |
| { | |
| "pattern": "\\bComing soon\\b", | |
| "description": "Remove 'Coming soon' placeholder", | |
| "is_error": true | |
| }, | |
| { | |
| "pattern": "\\[Add .*?\\]", | |
| "description": "Remove '[Add...]' placeholder", | |
| "is_error": true | |
| }, | |
| { | |
| "pattern": "\\[Replace .*?\\]", | |
| "description": "Remove '[Replace...]' placeholder", | |
| "is_error": true | |
| }, | |
| { | |
| "pattern": "\\[Example.*?\\]", | |
| "description": "Remove '[Example...]' placeholder", | |
| "is_error": true | |
| }, | |
| { | |
| "pattern": "\\[Add text here\\]", | |
| "description": "Remove '[Add text here]' placeholder", | |
| "is_error": true | |
| }, | |
| { | |
| "pattern": "\\bTo be filled\\b", | |
| "description": "Remove 'To be filled' placeholder", | |
| "is_error": true | |
| } | |
| ], | |
| "periods": [ | |
| { | |
| "pattern": "\\.\\.", | |
| "description": "Remove double periods", | |
| "is_error": true | |
| }, | |
| { | |
| "pattern": "(?<!\\.)\\.\\s*\\.\\s*", | |
| "description": "Remove multiple standalone periods", | |
| "is_error": true | |
| }, | |
| { | |
| "pattern": "\\s+\\.", | |
| "description": "Remove unnecessary spaces before periods", | |
| "is_error": true | |
| }, | |
| { | |
| "pattern": "(?<!\\w)\\.\\s*$", | |
| "description": "Avoid ending sentences with only a period (check for sentence fragment)", | |
| "is_error": true | |
| }, | |
| { | |
| "pattern": "\\.(?!\\s|$)", | |
| "description": "Add a space after a period unless at the end of the text", | |
| "is_error": true | |
| }, | |
| { | |
| "pattern": "(\\.{3,})", | |
| "description": "Replace repeated periods with an ellipsis ('...') where appropriate", | |
| "is_error": true, | |
| "replacement": "..." | |
| }, | |
| { | |
| "pattern": "(?<!\\s)\\.{3}(?!\\s)", | |
| "description": "Ensure spaces before and after ellipses", | |
| "is_error": true | |
| }, | |
| { | |
| "pattern": "\\.{4,}", | |
| "description": "Replace four or more periods with a single ellipsis ('...')", | |
| "is_error": true, | |
| "replacement": "..." | |
| }, | |
| { | |
| "pattern": "\\.(\\d)", | |
| "description": "Add a space between the period and the number if it's not a decimal", | |
| "is_error": true | |
| }, | |
| { | |
| "pattern": "\\.\\s+(\\.|\\d)", | |
| "description": "Remove extra spaces after a period if followed by another period or number", | |
| "is_error": true | |
| }, | |
| { | |
| "pattern": "\\bU\\.S\\.C\\.\\s*\\d+\\b", | |
| "description": "Do not flag 'U.S.C. x' as a period issue", | |
| "is_error": false | |
| } | |
| ], | |
| "table_figure_references": [ | |
| { | |
| "pattern": "(?<!^)(?<![.!?])\\s+(Table|Figure)\\s+\\d+(?:-\\d+)?", | |
| "description": "'Table' and 'Figure' references within sentences should be lowercase", | |
| "is_error": true, | |
| "replacement": "table/figure (lowercase when used within a sentence)" | |
| }, | |
| { | |
| "pattern": "^(table|figure)\\s+\\d+(?:-\\d+)?", | |
| "description": "'Table' and 'Figure' references at the start of a sentence should be capitalized", | |
| "is_error": true, | |
| "replacement": "Table/Figure (capitalized when starting a sentence)" | |
| } | |
| ], | |
| "parentheses": [ | |
| { | |
| "pattern": "\\([^)]*$|[^(]*\\)", | |
| "description": "Detect unmatched parentheses (missing opening or closing parenthesis)", | |
| "is_error": true, | |
| "notes": "Matches cases where a closing parenthesis is missing after an opening or an opening parenthesis is missing before a closing." | |
| } | |
| ], | |
| "citations": [ | |
| { | |
| "_comment": "Per GPO Style Manual", | |
| "pattern": "\\b(\\d+)\\s+(?:U\\.S\\.C\\.|CFR)\\s+(§|§§)\\s+(\\d+(?:\\.\\d+)*)\\b", | |
| "description": "Format citations to U.S. Code or CFR with correct spacing and symbols, e.g., 14 CFR § 21.1 or 49 U.S.C. §§ 44701–44704", | |
| "is_error": true, | |
| "replacement": "$1 $2 $3 $4 (per GPO Style Manual & Document Drafting Handbook)" | |
| }, | |
| { | |
| "_comment": "Per Document Drafting Handbook", | |
| "pattern": "\\b(?:refer|reference|see)\\s+(?:section|paragraph|subsection|clause)\\s+(\\d+(?:\\.\\d+)*)\\b", | |
| "description": "Replace narrative references to numbered legal sections with standardized cross-references, e.g., 'see § 21.1'", | |
| "is_error": true, | |
| "replacement": "see § $1 (per GPO Style Manual & Document Drafting Handbook)" | |
| } | |
| ], | |
| "regulatory_analysis": [ | |
| { | |
| "_comment": "Per Document Drafting Handbook", | |
| "pattern": "\\b(?:comment|commenter|commenting)\\b", | |
| "description": "Ensure proper handling of public comment references (per Document Drafting Handbook)", | |
| "is_error": true | |
| }, | |
| { | |
| "_comment": "Per Document Drafting Handbook", | |
| "pattern": "\\b(?:cost-benefit|regulatory impact|economic impact)\\b", | |
| "description": "Ensure proper handling of regulatory analysis terms (per Document Drafting Handbook)", | |
| "is_error": true | |
| }, | |
| { | |
| "_comment": "Per Document Drafting Handbook", | |
| "pattern": "\\b(?:regulatory|economic|environmental)\\s+(?:impact|analysis|assessment)\\b", | |
| "description": "Ensure proper handling of regulatory analysis terms (per Document Drafting Handbook)", | |
| "is_error": true | |
| }, | |
| { | |
| "_comment": "Per Document Drafting Handbook", | |
| "pattern": "\\b(?:regulatory|economic|environmental)\\s+(?:impact|analysis|assessment)\\s+(?:of|for|under)\\b", | |
| "description": "Ensure proper handling of regulatory analysis terms (per Document Drafting Handbook)", | |
| "is_error": true | |
| } | |
| ], | |
| "exceptions": [ | |
| { | |
| "_comment": "Per Document Drafting Handbook", | |
| "pattern": "\\b(?:except|unless|provided that)\\b", | |
| "description": "Ensure proper formatting of regulatory exceptions (per Document Drafting Handbook)", | |
| "is_error": true | |
| }, | |
| { | |
| "_comment": "Per Document Drafting Handbook", | |
| "pattern": "\\b(?:except|unless|provided that|notwithstanding)\\b", | |
| "description": "Ensure proper formatting of regulatory exceptions (per Document Drafting Handbook)", | |
| "is_error": true | |
| }, | |
| { | |
| "_comment": "Per Document Drafting Handbook", | |
| "pattern": "\\b(?:except|unless|provided that|notwithstanding)\\s+(?:for|under|in)\\b", | |
| "description": "Ensure proper formatting of regulatory exceptions (per Document Drafting Handbook)", | |
| "is_error": true | |
| } | |
| ], | |
| "compliance": [ | |
| { | |
| "_comment": "Per Document Drafting Handbook", | |
| "pattern": "\\b(?:compliance|enforcement)\\s+(?:date|deadline|requirement|action)\\b", | |
| "description": "Ensure proper specification of compliance and enforcement terms (per Document Drafting Handbook)", | |
| "is_error": true | |
| }, | |
| { | |
| "_comment": "Per Document Drafting Handbook", | |
| "pattern": "\\b(?:implementation|transition|phase-in)\\s+(?:period|schedule|plan)\\b", | |
| "description": "Ensure proper specification of implementation and transition terms (per Document Drafting Handbook)", | |
| "is_error": true | |
| }, | |
| { | |
| "_comment": "Per Document Drafting Handbook", | |
| "pattern": "\\b(?:compliance|implementation|enforcement)\\s+(?:date|deadline|requirement)\\b", | |
| "description": "Ensure proper specification of compliance dates (per Document Drafting Handbook)", | |
| "is_error": true | |
| }, | |
| { | |
| "_comment": "Per Document Drafting Handbook", | |
| "pattern": "\\b(?:compliance|enforcement)\\s+(?:with|under|of)\\b", | |
| "description": "Ensure proper specification of compliance and enforcement terms (per Document Drafting Handbook)", | |
| "is_error": true | |
| }, | |
| { | |
| "_comment": "Per Document Drafting Handbook", | |
| "pattern": "\\b(?:implementation|transition|phase-in)\\s+(?:of|for|under)\\b", | |
| "description": "Ensure proper specification of implementation and transition terms (per Document Drafting Handbook)", | |
| "is_error": true | |
| }, | |
| { | |
| "_comment": "Per Document Drafting Handbook", | |
| "pattern": "\\b(?:compliance|implementation|enforcement)\\s+(?:date|deadline|requirement)\\b", | |
| "description": "Ensure proper specification of compliance dates (per Document Drafting Handbook)", | |
| "is_error": true | |
| } | |
| ] | |
| } |