Coverage for C: \ Users \ peaco \ OneDrive \ Documents \ GitHub \ mt_metadata \ mt_metadata \ common \ geographic_location.py: 100%
11 statements
« prev ^ index » next coverage.py v7.13.1, created at 2026-01-10 00:11 -0800
« prev ^ index » next coverage.py v7.13.1, created at 2026-01-10 00:11 -0800
1# =====================================================
2# Imports
3# =====================================================
4from typing import Annotated
6from pydantic import Field
8from mt_metadata.base import MetadataBase
11# =====================================================
12class GeographicLocation(MetadataBase):
13 country: Annotated[
14 str | list[str] | None,
15 Field(
16 default=None,
17 description="Country of the geographic location, should be spelled out in full. Can be a list of countries.",
18 alias=None,
19 json_schema_extra={
20 "units": None,
21 "required": False,
22 "examples": "United States of America",
23 },
24 ),
25 ]
27 state: Annotated[
28 str | list[str] | None,
29 Field(
30 default=None,
31 description="State or province of the geographic location, should be spelled out in full. Can be a list of states or provinces.",
32 alias=None,
33 json_schema_extra={
34 "units": None,
35 "required": False,
36 "examples": "[Colorado, Utah]",
37 },
38 ),
39 ]
41 county: Annotated[
42 str | list[str] | None,
43 Field(
44 default=None,
45 description="County of the geographic location, should be spelled out in full. Can be a list of counties.",
46 alias=None,
47 json_schema_extra={
48 "units": None,
49 "required": False,
50 "examples": "[Douglass, Fayet]",
51 },
52 ),
53 ]
55 township: Annotated[
56 str | list[str] | None,
57 Field(
58 default=None,
59 description="Township or city name or code.",
60 alias=None,
61 json_schema_extra={
62 "units": None,
63 "required": False,
64 "examples": "090",
65 },
66 ),
67 ]
69 section: Annotated[
70 str | list[str] | None,
71 Field(
72 default=None,
73 description="Section name or code.",
74 alias=None,
75 json_schema_extra={
76 "units": None,
77 "required": False,
78 "examples": "012",
79 },
80 ),
81 ]
83 quarter: Annotated[
84 str | list[str] | None,
85 Field(
86 default=None,
87 description="Quarter section code.",
88 alias=None,
89 json_schema_extra={
90 "units": None,
91 "required": False,
92 "examples": "400",
93 },
94 ),
95 ]
97 parcel: Annotated[
98 str | list[str] | None,
99 Field(
100 default=None,
101 description="Land parcel ID.",
102 alias=None,
103 json_schema_extra={
104 "units": None,
105 "required": False,
106 "examples": "46b29a",
107 },
108 ),
109 ]