Source code for aws.osml.formats.sidd.models.sfa

#  Copyright 2023-2024 Amazon.com, Inc. or its affiliates.

"""This file was generated by xsdata, v23.8, on 2023-10-05 09:59:45

Generator: DataclassGenerator
See: https://xsdata.readthedocs.io/
"""
from dataclasses import dataclass, field
from typing import List, Optional

__NAMESPACE__ = "urn:SFA:1.2.0"


[docs] @dataclass class GeometryType: pass
[docs] @dataclass class ParameterType: parameter_name: Optional[str] = field( default=None, metadata={ "name": "ParameterName", "type": "Element", "namespace": "urn:SFA:1.2.0", "required": True, }, ) value: Optional[float] = field( default=None, metadata={ "name": "Value", "type": "Element", "namespace": "urn:SFA:1.2.0", "required": True, }, )
[docs] @dataclass class PrimeMeridianType: name: Optional[str] = field( default=None, metadata={ "name": "Name", "type": "Element", "namespace": "urn:SFA:1.2.0", "required": True, }, ) longitude: Optional[float] = field( default=None, metadata={ "name": "Longitude", "type": "Element", "namespace": "urn:SFA:1.2.0", "required": True, }, )
[docs] @dataclass class ProjectionType: projection_name: Optional[str] = field( default=None, metadata={ "name": "ProjectionName", "type": "Element", "namespace": "urn:SFA:1.2.0", "required": True, }, )
[docs] @dataclass class SpheriodType: spheriod_name: Optional[str] = field( default=None, metadata={ "name": "SpheriodName", "type": "Element", "namespace": "urn:SFA:1.2.0", "required": True, }, ) semi_major_axis: Optional[float] = field( default=None, metadata={ "name": "SemiMajorAxis", "type": "Element", "namespace": "urn:SFA:1.2.0", "required": True, }, ) inverse_flattening: Optional[float] = field( default=None, metadata={ "name": "InverseFlattening", "type": "Element", "namespace": "urn:SFA:1.2.0", "required": True, }, )
[docs] @dataclass class UNITType: unit_name: Optional[str] = field( default=None, metadata={ "name": "UnitName", "type": "Element", "namespace": "urn:SFA:1.2.0", "required": True, }, ) conversion_factor: Optional[float] = field( default=None, metadata={ "name": "ConversionFactor", "type": "Element", "namespace": "urn:SFA:1.2.0", "required": True, }, )
[docs] @dataclass class CurveType(GeometryType): pass
[docs] @dataclass class DatumType: spheroid: Optional[SpheriodType] = field( default=None, metadata={ "name": "Spheroid", "type": "Element", "namespace": "urn:SFA:1.2.0", "required": True, }, )
[docs] @dataclass class GeometryCollectionType(GeometryType): pass
[docs] @dataclass class PointType(GeometryType): x: Optional[float] = field( default=None, metadata={ "name": "X", "type": "Element", "namespace": "urn:SFA:1.2.0", "required": True, }, ) y: Optional[float] = field( default=None, metadata={ "name": "Y", "type": "Element", "namespace": "urn:SFA:1.2.0", "required": True, }, ) z: Optional[float] = field( default=None, metadata={ "name": "Z", "type": "Element", "namespace": "urn:SFA:1.2.0", }, ) m: Optional[float] = field( default=None, metadata={ "name": "M", "type": "Element", "namespace": "urn:SFA:1.2.0", }, )
[docs] @dataclass class SurfaceType(GeometryType): pass
[docs] @dataclass class GeocentricCoordinateSystemType: csname: Optional[str] = field( default=None, metadata={ "name": "Csname", "type": "Element", "namespace": "urn:SFA:1.2.0", "required": True, }, ) datum: Optional[DatumType] = field( default=None, metadata={ "name": "Datum", "type": "Element", "namespace": "urn:SFA:1.2.0", "required": True, }, ) prime_meridian: Optional[PrimeMeridianType] = field( default=None, metadata={ "name": "PrimeMeridian", "type": "Element", "namespace": "urn:SFA:1.2.0", "required": True, }, ) linear_unit: Optional[str] = field( default=None, metadata={ "name": "LinearUnit", "type": "Element", "namespace": "urn:SFA:1.2.0", "required": True, }, )
[docs] @dataclass class GeographicCoordinateSystemType: csname: Optional[str] = field( default=None, metadata={ "name": "Csname", "type": "Element", "namespace": "urn:SFA:1.2.0", "required": True, }, ) datum: Optional[DatumType] = field( default=None, metadata={ "name": "Datum", "type": "Element", "namespace": "urn:SFA:1.2.0", "required": True, }, ) prime_meridian: Optional[PrimeMeridianType] = field( default=None, metadata={ "name": "PrimeMeridian", "type": "Element", "namespace": "urn:SFA:1.2.0", "required": True, }, ) angular_unit: Optional[str] = field( default=None, metadata={ "name": "AngularUnit", "type": "Element", "namespace": "urn:SFA:1.2.0", "required": True, }, ) linear_unit: Optional[str] = field( default=None, metadata={ "name": "LinearUnit", "type": "Element", "namespace": "urn:SFA:1.2.0", }, )
[docs] @dataclass class LineStringType(CurveType): vertex: List[PointType] = field( default_factory=list, metadata={ "name": "Vertex", "type": "Element", "namespace": "urn:SFA:1.2.0", "min_occurs": 2, }, )
[docs] @dataclass class MultiCurveType(GeometryCollectionType): pass
[docs] @dataclass class MultiPointType(GeometryCollectionType): vertex: List[PointType] = field( default_factory=list, metadata={ "name": "Vertex", "type": "Element", "namespace": "urn:SFA:1.2.0", "min_occurs": 2, }, )
[docs] @dataclass class MultiSurfaceType(GeometryCollectionType): pass
[docs] @dataclass class LineType(LineStringType): pass
[docs] @dataclass class LinearRingType(LineStringType): pass
[docs] @dataclass class ProjectedCoordinateSystemType: csname: Optional[str] = field( default=None, metadata={ "name": "Csname", "type": "Element", "namespace": "urn:SFA:1.2.0", "required": True, }, ) geographic_coordinate_system: Optional[GeographicCoordinateSystemType] = field( default=None, metadata={ "name": "GeographicCoordinateSystem", "type": "Element", "namespace": "urn:SFA:1.2.0", "required": True, }, ) projection: Optional[ProjectionType] = field( default=None, metadata={ "name": "Projection", "type": "Element", "namespace": "urn:SFA:1.2.0", "required": True, }, ) parameter: Optional[ParameterType] = field( default=None, metadata={ "name": "Parameter", "type": "Element", "namespace": "urn:SFA:1.2.0", }, ) linear_unit: Optional[str] = field( default=None, metadata={ "name": "LinearUnit", "type": "Element", "namespace": "urn:SFA:1.2.0", "required": True, }, )
[docs] @dataclass class AbstractReferenceSystemType: projected_coordinate_system: Optional[ProjectedCoordinateSystemType] = field( default=None, metadata={ "name": "ProjectedCoordinateSystem", "type": "Element", "namespace": "urn:SFA:1.2.0", }, ) geographic_coordinate_system: Optional[GeographicCoordinateSystemType] = field( default=None, metadata={ "name": "GeographicCoordinateSystem", "type": "Element", "namespace": "urn:SFA:1.2.0", }, ) geocentric_coordinate_system: Optional[GeocentricCoordinateSystemType] = field( default=None, metadata={ "name": "GeocentricCoordinateSystem", "type": "Element", "namespace": "urn:SFA:1.2.0", }, )
[docs] @dataclass class MultiLineStringType(MultiCurveType): element: List[LineType] = field( default_factory=list, metadata={ "name": "Element", "type": "Element", "namespace": "urn:SFA:1.2.0", }, )
[docs] @dataclass class PolygonType(SurfaceType): ring: List[LinearRingType] = field( default_factory=list, metadata={ "name": "Ring", "type": "Element", "namespace": "urn:SFA:1.2.0", "min_occurs": 1, }, )
[docs] @dataclass class MultiPolygonType(MultiSurfaceType): element: List[PolygonType] = field( default_factory=list, metadata={ "name": "Element", "type": "Element", "namespace": "urn:SFA:1.2.0", }, )
[docs] @dataclass class PolyhedralSurfaceType(SurfaceType): patch: List[PolygonType] = field( default_factory=list, metadata={ "name": "Patch", "type": "Element", "namespace": "urn:SFA:1.2.0", "min_occurs": 1, }, )
[docs] @dataclass class ReferenceSystemType(AbstractReferenceSystemType): axis_name: List[str] = field( default_factory=list, metadata={ "name": "AxisName", "type": "Element", "namespace": "urn:SFA:1.2.0", "min_occurs": 1, }, )
[docs] @dataclass class TriangleType(PolygonType): pass
[docs] @dataclass class TriangulatedIrregularNetworkType(PolyhedralSurfaceType): triangular_patch: List[TriangleType] = field( default_factory=list, metadata={ "name": "TriangularPatch", "type": "Element", "namespace": "urn:SFA:1.2.0", "min_occurs": 1, }, )