Reference
nrl_sdk_lib.models
Model package.
Crs
Bases: Parent
A CRS model.
CrsProperties
Bases: Parent
A CRS properties model.
DatafangsMetode
Bases: str
, Enum
An enumeration for data capture methods.
Feature
Bases: Parent
A Feature model.
FeatureCollection
Bases: Parent
A FeatureCollection model.
How to create a FeatureCollection from a JSON file:
>>> from pydantic import ValidationError
>>> from nrl_sdk_lib.models import FeatureCollection
>>>
>>> testfile_path = "tests/files/Eksempelfil_NRLRapportering-1.0.1.json"
>>> with open(testfile_path) as file:
... data = file.read()
>>>
>>> try:
... feature_collection = FeatureCollection.model_validate_json(data)
... except ValidationError as e:
... print(e.errors())
How to create a FeatureCollection programmatically:
>>> from uuid import UUID
>>>
>>> from nrl_sdk_lib.models import (
... CrsProperties,
... Feature,
... Point,
... NrlFlate,
... FeatureStatus,
... FlateType,
... FeatureCollection,
... Crs,
... )
>>>
>>> nrl_flate = NrlFlate(
... feature_type="NrlFlate",
... status=FeatureStatus.eksisterende,
... komponentident=UUID("12345678-1234-5678-1234-567812345678"),
... verifisert_rapporteringsnøyaktighet="20230101_5-1",
... flate_type=FlateType.trafostasjon,
... )
>>>
>>> feature = Feature(
... type="Feature",
... geometry=Point(type="Point", coordinates=[10.0, 59.0]),
... properties=nrl_flate,
... )
>>>
>>> feature_collection = FeatureCollection(
... crs=Crs(properties=CrsProperties(name="EPSG:4326")),
... features=[feature],
... )
>>>
>>> # Do something with feature_collection, e.g. serialize it to JSON:
>>> # print(feature_collection.model_dump_json(indent=2))
FeatureStatus
Bases: str
, Enum
An enumeration for feature property statuses.
FlateType
Bases: str
, Enum
An enumeration for flate types.
Høydereferanse
Bases: str
, Enum
An enumeration for height references.
KomponentReferanse
Bases: Parent
A KomponentReferanse model.
Kvalitet
Bases: Parent
A Kvalitet model.
LineString
Bases: Geometry
A LineString geometry model.
LuftfartsHinderLyssetting
Bases: str
, Enum
An enumeration for luftfartshinderlyssetting.
LuftfartsHinderMerking
Bases: str
, Enum
An enumeration for luftfartshindermerking.
LuftspennType
Bases: str
, Enum
An enumeration for luftspenn types.
MastType
Bases: str
, Enum
An enumeration for mast types.
Materiale
Bases: str
, Enum
An enumeration for materials.
NrlFlate
Bases: FeatureProperty
A Nrl Flate model.
To create a NrlFlate:
>>> from uuid import UUID
>>>
>>> from nrl_sdk_lib.models import NrlFlate, FeatureStatus, FlateType
>>>
>>> nrl_flate = NrlFlate(
... feature_type="NrlFlate",
... status=FeatureStatus.eksisterende,
... komponentident=UUID("12345678-1234-5678-1234-567812345678"),
... verifisert_rapporteringsnøyaktighet="20230101_5-1",
... flate_type=FlateType.trafostasjon,
... )
>>> # Do something with nrl_flate, e.g. add it to a feature collection
NrlLinje
Bases: FeatureProperty
A Nrl Linje model.
NrlLuftspenn
Bases: FeatureProperty
A Nrl Luftspenn model.
NrlMast
Bases: FeatureProperty
A Nrl Mast model.
NrlPunkt
Bases: FeatureProperty
A Nrl Punkt model.
Point
Bases: Geometry
A Point geometry model.
Polygon
Bases: Geometry
A Polygon geometry model.
PunktType
Bases: str
, Enum
An enumeration for punkt types.