regparser package¶
Subpackages¶
- regparser.commands package
- Submodules
- regparser.commands.annual_editions module
- regparser.commands.citations module
- regparser.commands.clear module
- regparser.commands.compare_to module
- regparser.commands.current_version module
- regparser.commands.dependency_resolver module
- regparser.commands.diffs module
- regparser.commands.fetch_annual_edition module
- regparser.commands.fetch_sxs module
- regparser.commands.fill_with_rules module
- regparser.commands.layers module
- regparser.commands.parse_rule_changes module
- regparser.commands.pipeline module
- regparser.commands.preprocess_notice module
- regparser.commands.sync_xml module
- regparser.commands.versions module
- regparser.commands.write_to module
- Module contents
- regparser.diff package
- regparser.grammar package
- Submodules
- regparser.grammar.amdpar module
- regparser.grammar.appendix module
- regparser.grammar.atomic module
- regparser.grammar.delays module
- regparser.grammar.interpretation_headers module
- regparser.grammar.terms module
- regparser.grammar.tokens module
- regparser.grammar.unified module
- regparser.grammar.utils module
- Module contents
- regparser.history package
- regparser.index package
- regparser.layer package
- Submodules
- regparser.layer.def_finders module
- regparser.layer.external_citations module
- regparser.layer.external_types module
- regparser.layer.formatting module
- regparser.layer.graphics module
- regparser.layer.internal_citations module
- regparser.layer.interpretations module
- regparser.layer.key_terms module
- regparser.layer.layer module
- regparser.layer.meta module
- regparser.layer.model_forms_text module
- regparser.layer.paragraph_markers module
- regparser.layer.scope_finder module
- regparser.layer.section_by_section module
- regparser.layer.table_of_contents module
- regparser.layer.terms module
- Module contents
- regparser.notice package
- Submodules
- regparser.notice.address module
- regparser.notice.build module
- regparser.notice.build_appendix module
- regparser.notice.build_interp module
- regparser.notice.changes module
- regparser.notice.compiler module
- regparser.notice.dates module
- regparser.notice.diff module
- regparser.notice.encoder module
- regparser.notice.fake module
- regparser.notice.sxs module
- regparser.notice.util module
- regparser.notice.xml module
- Module contents
- regparser.tree package
- Subpackages
- regparser.tree.appendix package
- regparser.tree.depth package
- regparser.tree.xml_parser package
- Submodules
- regparser.tree.xml_parser.appendices module
- regparser.tree.xml_parser.extended_preprocessors module
- regparser.tree.xml_parser.flatsubtree_processor module
- regparser.tree.xml_parser.import_category module
- regparser.tree.xml_parser.interpretations module
- regparser.tree.xml_parser.paragraph_processor module
- regparser.tree.xml_parser.preprocessors module
- regparser.tree.xml_parser.reg_text module
- regparser.tree.xml_parser.simple_hierarchy_processor module
- regparser.tree.xml_parser.tree_utils module
- regparser.tree.xml_parser.us_code module
- regparser.tree.xml_parser.xml_wrapper module
- Module contents
- Submodules
- regparser.tree.build module
- regparser.tree.interpretation module
- regparser.tree.paragraph module
- regparser.tree.priority_stack module
- regparser.tree.reg_text module
- regparser.tree.struct module
- regparser.tree.supplement module
- Module contents
- Subpackages
Submodules¶
regparser.api_stub module¶
regparser.api_writer module¶
-
class
regparser.api_writer.
APIWriteContent
(*path_parts)[source]¶ This writer writes the contents to the specified API
-
class
regparser.api_writer.
AmendmentNodeEncoder
(skipkeys=False, ensure_ascii=True, check_circular=True, allow_nan=True, sort_keys=False, indent=None, separators=None, encoding='utf-8', default=None)[source]¶ Bases:
regparser.notice.encoder.AmendmentEncoder
,regparser.tree.struct.NodeEncoder
-
class
regparser.api_writer.
FSWriteContent
(*path_parts)[source]¶ This writer places the contents in the file system
regparser.builder module¶
regparser.citations module¶
-
class
regparser.citations.
Label
(schema=None, **kwargs)[source]¶ Bases:
object
-
SCHEMA_FIELDS
= set(['p2', 'p3', 'p1', 'p6', 'p7', 'p4', 'p5', 'cfr_title', 'p8', 'p9', 'comment', 'appendix', 'appendix_section', 'c3', 'c2', 'part', 'c1', 'section', 'c4'])¶
-
app_schema
= ('part', 'appendix', 'p1', 'p2', 'p3', 'p4', 'p5', 'p6', 'p7', 'p8', 'p9')¶
-
app_sect_schema
= ('part', 'appendix', 'appendix_section', 'p1', 'p2', 'p3', 'p4', 'p5', 'p6', 'p7', 'p8', 'p9')¶
-
comment_schema
= ('comment', 'c1', 'c2', 'c3', 'c4')¶
-
default_schema
= ('cfr_title', 'part', 'section', 'p1', 'p2', 'p3', 'p4', 'p5', 'p6', 'p7', 'p8', 'p9')¶
-
classmethod
from_node
(node)[source]¶ Convert between a struct.Node and a Label; use heuristics to determine which schema to follow. Node labels aren’t as expressive as Label objects
-
labels_until
(other)[source]¶ Given self as a starting point and other as an end point, yield a Label for paragraphs in between. For example, if self is something like 123.45(a)(2) and end is 123.45(a)(6), this should emit 123.45(a)(3), (4), and (5)
-
regtext_schema
= ('cfr_title', 'part', 'section', 'p1', 'p2', 'p3', 'p4', 'p5', 'p6', 'p7', 'p8', 'p9')¶
-
-
class
regparser.citations.
ParagraphCitation
(start, end, label, full_start=None, full_end=None, in_clause=False)[source]¶ Bases:
object
-
regparser.citations.
cfr_citations
(text, include_fill=False)[source]¶ Find all citations which include CFR title and part
-
regparser.citations.
internal_citations
(text, initial_label=None, require_marker=False, title=None)[source]¶ List of all internal citations in the text. require_marker helps by requiring text be prepended by ‘comment’/’paragraphs’/etc. title represents the CFR title (e.g. 11 for FEC, 12 for CFPB regs) and is used to correctly parse citations of the the form 11 CFR 110.1 when 11 CFR 110 is the regulation being parsed.
-
regparser.citations.
match_to_label
(match, initial_label, comment=False)[source]¶ Return the citation and offsets for this match
-
regparser.citations.
multiple_citations
(matches, initial_label, comment=False, include_fill=False)[source]¶ Similar to single_citations save that we have a compound citation, such as “paragraphs (b), (d), and (f). Yield a ParagraphCitation for each sub-citation. We refer to the first match as “head” and all following as “tail”
-
regparser.citations.
remove_citation_overlaps
(text, possible_markers)[source]¶ Given a list of markers, remove any that overlap with citations
regparser.content module¶
We need to modify content from time to time, e.g. image overrides and xml macros. To provide flexibility in future expansion, we provide a layer of indirection here.
TODO: Delete and replace with plugins.
regparser.federalregister module¶
regparser.search module¶
-
regparser.search.
find_offsets
(text, search_fn)[source]¶ Find the start and end of an appendix, supplement, etc.