From b4c56ffc0f8a0594af6868ff22a54ad667e8e85f Mon Sep 17 00:00:00 2001 From: xinmiao1995 Date: Wed, 27 Dec 2023 10:47:07 +0900 Subject: [PATCH 01/11] =?UTF-8?q?FacilityAttributeProperty=E3=81=AE?= =?UTF-8?q?=E4=B8=80=E9=83=A8=E8=A9=A6=E4=BD=9C?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../src/models/iur/uro/facility.rs | 158 +++++++++++++++++- 1 file changed, 154 insertions(+), 4 deletions(-) diff --git a/nusamai-plateau/src/models/iur/uro/facility.rs b/nusamai-plateau/src/models/iur/uro/facility.rs index 1b27943a6..383febbb6 100644 --- a/nusamai-plateau/src/models/iur/uro/facility.rs +++ b/nusamai-plateau/src/models/iur/uro/facility.rs @@ -1,10 +1,12 @@ -use citygml::citygml_property; +use citygml::{citygml_property,citygml_data,CityGMLElement,Code,Measure}; #[citygml_property(name = "uro:FacilityAttributeProperty")] pub enum FacilityAttributeProperty { - // TODO: - // #[citygml(path = b"uro:CargoHandlingFacility")] - // CargoHandlingFacility(CargoHandlingFacility), + #[citygml(path = b"uro:RiverFacilityIdAttribute")] + RiverFacilityIdAttribute(RiverFacilityIdAttribute), + + #[citygml(path = b"uro:CargoHandlingFacility")] + CargoHandlingFacility(CargoHandlingFacility), // TODO: // #[citygml(path = b"uro:CyberportMarinaAndPBS")] // CyberportMarinaAndPBS(CyberportMarinaAndPBS), @@ -63,3 +65,151 @@ pub enum FacilityAttributeProperty { // #[citygml(path = b"uro:ShipServiceFacility")] // ShipServiceFacility(ShipServiceFacility), } + + +#[citygml_data(name = "uro:RiverFacilityIdAttribute")] +pub struct RiverFacilityIdAttribute { + #[citygml(path = b"uro:id")] + pub id: Option, + + #[citygml(path = b"uro:partId")] + pub part_id: Option, + + #[citygml(path = b"uro:branchId")] + pub branch_id: Option, + + #[citygml(path = b"uro:prefecture")] + pub prefecture: Vec, + + #[citygml(path = b"uro:city")] + pub city: Vec, + + #[citygml(path = b"uro:route")] + pub route: Option, + + #[citygml(path = b"uro:startPost")] + pub start_post: Option, + + #[citygml(path = b"uro:endPost")] + pub end_post: Option, + + #[citygml(path = b"uro:startLat")] + pub start_lat: Option, + + #[citygml(path = b"uro:startLong")] + pub start_long: Option, + + #[citygml(path = b"uro:alternativeName")] + pub alternative_name: Vec, + + #[citygml(path = b"uro:riverCode")] + pub river_code: Code, + + #[citygml(path = b"uro:riverName")] + pub river_name: Option, + + #[citygml(path = b"uro:sideType")] + pub side_type: Code, + + #[citygml(path = b"uro:leftPost")] + pub left_post: Option, + + #[citygml(path = b"uro:leftDistance")] + pub left_distance: Option, + + #[citygml(path = b"uro:rightPost")] + pub right_post: Option, + + #[citygml(path = b"uro:rightDistance")] + pub right_distance: Option, + + #[citygml(path = b"uro:leftStartPost")] + pub left_start_post: Option, + + #[citygml(path = b"uro:leftStartDistance")] + pub left_start_distance: Option, + + #[citygml(path = b"uro:leftEndPost")] + pub left_end_post: Option, + + #[citygml(path = b"uro:lefEndDistance")] + pub lef_end_distance: Option, + + #[citygml(path = b"uro:rightStartPost")] + pub right_start_post: Option, + + #[citygml(path = b"uro:rightStartDistance")] + pub right_start_distance: Option, + + #[citygml(path = b"uro:rightEndPost")] + pub right_end_post: Option, + + #[citygml(path = b"uro:rightEndDistance")] + pub right_end_distance: Option, +} + +#[citygml_data(name = "uro:CargoHandlingFacility")] +pub struct CargoHandlingFacility { + #[citygml(path = b"uro:facilityId")] + pub facility_id: Option, + + #[citygml(path = b"uro:portFacilityDetailsType")] + pub port_facility_details_type: Code, + + #[citygml(path = b"uro:portName")] + pub port_name: String, + + #[citygml(path = b"uro:portStatus")] + pub port_status: Option, + + #[citygml(path = b"uro:district")] + pub district: Option, + + #[citygml(path = b"uro:grantType")] + pub grant_type: Option, + + #[citygml(path = b"uro:isDesignated")] + pub is_designated: Option, + + #[citygml(path = b"uro:degradationLevel")] + pub degradation_level: Option, + + #[citygml(path = b"uro:mainCargo")] + pub main_cargo: Option, + + #[citygml(path = b"uro:mooringFacility")] + pub mooring_facility: Option, + + #[citygml(path = b"uro:liftableLoad")] + pub liftable_load: Option, + + #[citygml(path = b"uro:ability")] + pub ability: Option, + + #[citygml(path = b"uro:packingName")] + pub packing_name: Option, + + #[citygml(path = b"uro:acquisitionYear")] + pub acquisition_year: Option, + + #[citygml(path = b"uro:innerTotalFloorArea")] + pub inner_total_floor_area: Option, + + #[citygml(path = b"uro:innerOfSiteArea")] + pub inner_of_site_area: Option, + + #[citygml(path = b"uro:outerOfTotalFloorArea")] + pub outer_of_total_floor_area: Option, + + #[citygml(path = b"uro:outerSiteArea")] + pub outer_site_area: Option, + + #[citygml(path = b"uro:mainMaterial")] + pub main_material: Option, + + #[citygml(path = b"uro:totalCost")] + pub total_cost: Option, + + #[citygml(path = b"uro:note")] + pub note: Option, +} \ No newline at end of file From bbca98434a987897f33fe3fbceaebe8b8781b8b7 Mon Sep 17 00:00:00 2001 From: xinmiao1995 Date: Wed, 27 Dec 2023 14:12:16 +0900 Subject: [PATCH 02/11] uro:FishingPortFacilityAttribute --- .../src/models/iur/uro/facility.rs | 306 +++++++++++++++++- 1 file changed, 299 insertions(+), 7 deletions(-) diff --git a/nusamai-plateau/src/models/iur/uro/facility.rs b/nusamai-plateau/src/models/iur/uro/facility.rs index 383febbb6..05e3fd7a8 100644 --- a/nusamai-plateau/src/models/iur/uro/facility.rs +++ b/nusamai-plateau/src/models/iur/uro/facility.rs @@ -1,4 +1,4 @@ -use citygml::{citygml_property,citygml_data,CityGMLElement,Code,Measure}; +use citygml::{citygml_property,citygml_data,CityGMLElement,Code,Measure,Date}; #[citygml_property(name = "uro:FacilityAttributeProperty")] pub enum FacilityAttributeProperty { @@ -7,12 +7,12 @@ pub enum FacilityAttributeProperty { #[citygml(path = b"uro:CargoHandlingFacility")] CargoHandlingFacility(CargoHandlingFacility), - // TODO: - // #[citygml(path = b"uro:CyberportMarinaAndPBS")] - // CyberportMarinaAndPBS(CyberportMarinaAndPBS), - // TODO: - // #[citygml(path = b"uro:FishingPortAttribute")] - // FishingPortAttribute(FishingPortAttribute), + + #[citygml(path = b"uro:CyberportMarinaAndPBS")] + CyberportMarinaAndPBS(CyberportMarinaAndPBS), + + #[citygml(path = b"uro:FishingPortFacilityAttribute")] + FishingPortFacilityAttribute(FishingPortFacilityAttribute), // TODO: // #[citygml(path = b"uro:FishingPortCapacity")] // FishingPortAttribute(FishingPortAttribute), @@ -212,4 +212,296 @@ pub struct CargoHandlingFacility { #[citygml(path = b"uro:note")] pub note: Option, +} + +#[citygml_data(name = "uro:CyberportMarinaAndPBS")] +pub struct CyberportMarinaAndPBS{ + #[citygml(path = b"uro:facilityId")] + pub facility_id: Option, + + #[citygml(path = b"uro:facilityDetailType")] + pub facility_details_type: Code, + + #[citygml(path = b"uro:portName")] + pub port_name: String, + + #[citygml(path = b"uro:portStatus")] + pub port_status: Option, + + #[citygml(path = b"uro:district")] + pub district: Option, + + #[citygml(path = b"uro:grantType")] + pub grant_type: Option, + + #[citygml(path = b"uro:isDesignated")] + pub is_designated: Option, + + #[citygml(path = b"uro:degradationLevel")] + pub degradation_level: Option, + + #[citygml(path = b"uro:geologicalType")] + pub geological_type: Option, + + #[citygml(path = b"uro:obstructingStructures")] + pub obstructing_structures: Option, + + #[citygml(path = b"uro:mainPartLength")] + pub main_part_length: Option, + + #[citygml(path = b"uro:totalLength")] + pub total_length: Option, + + #[citygml(path = b"uro:waveDissipatorLength")] + pub wave_dissipator_length: Option, + + #[citygml(path = b"uro:facilityWidth")] + pub facility_width: Option, + + #[citygml(path = b"uro:apronWidth")] + pub apron_width: Option, + + #[citygml(path = b"uro:restrictionStructure")] + pub restriction_structure: Option, + + #[citygml(path = b"uro:plannedDepth")] + pub planned_depth: Option, + + #[citygml(path = b"uro:currentDepth")] + pub current_depth: Option, + + #[citygml(path = b"uro:innerTotalFloorArea")] + pub inner_total_floor_area: Option, + + #[citygml(path = b"uro:innerOfSiteArea")] + pub inner_of_site_area: Option, + + #[citygml(path = b"uro:outerOfTotalFloorArea")] + pub outer_of_total_floor_area: Option, + + #[citygml(path = b"uro:outerSiteArea")] + pub outer_site_area: Option, + + #[citygml(path = b"uro:ceilingHeight")] + pub ceiling_height: Option, + + #[citygml(path = b"uro:gravityResistant")] + pub gravity_resistant: Option, + + #[citygml(path = b"uro:form")] + pub form: Option, + + #[citygml(path = b"uro:areaType")] + pub area_type: Option, + + #[citygml(path = b"uro:mainVessels")] + pub main_vessels: Option, + + #[citygml(path = b"uro:isDredged")] + pub is_dredged: Option, + + #[citygml(path = b"uro:mooringPostWeight")] + pub mooring_post_weight: Option, + + #[citygml(path = b"uro:numberOfMooringPosts")] + pub number_of_mooring_posts: Option, + + #[citygml(path = b"uro:resistantMaterial")] + pub resistant_material: Option, + + #[citygml(path = b"uro:lighting")] + pub lighting: Option, + + #[citygml(path = b"uro:stairs")] + pub stairs: Option, + + #[citygml(path = b"uro:lifesaving")] + pub lifesaving: Option, + + #[citygml(path = b"uro:lifesavingNumber")] + pub lifesaving_number: Option, + + #[citygml(path = b"uro:bumper")] + pub bumper: Option, + + #[citygml(path = b"uro:numberOfVehicleBoardings")] + pub number_of_vehicle_boardings: Option, + + #[citygml(path = b"uro:vehicleBoardingWidth")] + pub vehicle_boarding_width: Option, + + #[citygml(path = b"uro:shipType")] + pub ship_type: Option, + + #[citygml(path = b"uro:numberOfSeats")] + pub number_of_seats: Option, + + #[citygml(path = b"uro:mainCargo")] + pub main_cargo: Option, + + #[citygml(path = b"uro:storageCapacity")] + pub storage_capacity: Option, + + #[citygml(path = b"uro:storageCapacityUnit")] + pub storage_capacity_unit: Option, + + #[citygml(path = b"uro:structureType")] + pub structure_type: Option, + + #[citygml(path = b"uro:mainMaterial")] + pub main_material: Option, + + #[citygml(path = b"uro:totalCost")] + pub total_cost: Option, + + #[citygml(path = b"uro:subsidy")] + pub subsidy: Option, + + #[citygml(path = b"uro:note")] + pub note: Option, +} + +#[citygml_data(name = "uro:FishingPortFacilityAttribute")] +pub struct FishingPortFacilityAttribute { + #[citygml(path = b"uro:facilityId")] + pub facility_id: Option, + + #[citygml(path = b"uro:facilityDetailsType")] + pub facility_details_type: Code, + + #[citygml(path = b"uro:portName")] + pub port_name: String, + + #[citygml(path = b"uro:portTpye")] + pub port_type: Code, + + #[citygml(path = b"uro:address")] + pub address: String, + + #[citygml(path = b"uro:designatedArea")] + pub designated_area: String, + + #[citygml(path = b"uro:designation")] + pub designation: Vec, + + #[citygml(path = b"uro:designatedAdministrator")] + pub designated_administrator: Vec, + + #[citygml(path = b"uro:referenceNumber")] + pub reference_number: Vec, + + #[citygml(path = b"uro:grantType")] + pub grant_type: Option, + + #[citygml(path = b"uro:administrator")] + pub administrator: Option, + + #[citygml(path = b"uro:facilityManager")] + pub facility_manager: Option, + + #[citygml(path = b"uro:structureType")] + pub structure_type: Option, + + #[citygml(path = b"uro:mainMaterial")] + pub main_material: Option, + + #[citygml(path = b"uro:otherStructure")] + pub other_structure: Option, + + #[citygml(path = b"uro:length")] + pub length: Option, + + #[citygml(path = b"uro:width")] + pub width: Option, + + #[citygml(path = b"uro:ceilingHeight")] + pub ceiling_height: Option, + + #[citygml(path = b"uro:depth")] + pub depth: Option, + + #[citygml(path = b"uro:area")] + pub area: Option, + + #[citygml(path = b"uro:otherSizeDescription")] + pub other_size_description: Option, + + #[citygml(path = b"uro:dateOfConstructionOrAcquisition")] + pub date_of_construction_or_acquisition: Option, + + #[citygml(path = b"uro:cost")] + pub cost: Option, + + #[citygml(path = b"uro:note")] + pub note: Option, +} + +#[citygml_data(name = "uro:FishingPortCapacityAttribute")] +pub struct FishingPortCapacityAttribute { + #[citygml(path = b"uro:facilityId")] + pub facility_id: Option, + + #[citygml(path = b"uro:capacity")] + pub capacity: Option, + + #[citygml(path = b"uro:weightCapacity")] + pub weight_capacity: Option, + + #[citygml(path = b"uro:hullForm")] + pub hull_form: Option, + + #[citygml(path = b"uro:shipNumber")] + pub ship_number: Option, + + #[citygml(path = b"uro:waterDepth-2m")] + pub water_depth_2m: Option, + + #[citygml(path = b"uro:waterDepth2-3m")] + pub water_depth_2_3m: Option, + + #[citygml(path = b"uro:waterDepth3-6m")] + pub water_depth_3_6m: Option, + + #[citygml(path = b"uro:waterDepth6-m")] + pub water_depth_6_m: Option, + + #[citygml(path = b"uro:heightAboveAWL")] + pub height_above_awl: Option, + + #[citygml(path = b"uro:heightOnFoundations")] + pub height_on_foundations: Option, + + #[citygml(path = b"uro:luminousRange")] + pub luminous_range: Option, + + #[citygml(path = b"uro:luminousColor")] + pub luminous_color: Option, + + #[citygml(path = b"uro:candlePower")] + pub candle_power: Option, + + #[citygml(path = b"uro:lightType")] + pub light_type: Option, + + #[citygml(path = b"uro:period")] + pub period: Option, + + #[citygml(path = b"uro:maximumGroundingWeight")] + pub maximum_grounding_weight: Option, + + #[citygml(path = b"uro:handleablePower")] + pub handleable_power: Option, + + #[citygml(path = b"uro:maximumWaterSupply")] + pub maximum_water_supply: Option, + + #[citygml(path = b"uro:maximumRefueling")] + pub maximum_refueling: Option, + + #[citygml(path = b"uro:people")] + pub people: Option, + + #[citygml(path = b"uro:other")] + pub other: Option, + } \ No newline at end of file From f1256dcd1dad9ae8bd2e08c1c39bcb14e45c9482 Mon Sep 17 00:00:00 2001 From: xinmiao1995 Date: Wed, 27 Dec 2023 14:29:00 +0900 Subject: [PATCH 03/11] HarborFacility --- .../src/models/iur/uro/facility.rs | 85 +++++++++++++++++-- 1 file changed, 78 insertions(+), 7 deletions(-) diff --git a/nusamai-plateau/src/models/iur/uro/facility.rs b/nusamai-plateau/src/models/iur/uro/facility.rs index 05e3fd7a8..412a401f4 100644 --- a/nusamai-plateau/src/models/iur/uro/facility.rs +++ b/nusamai-plateau/src/models/iur/uro/facility.rs @@ -13,15 +13,15 @@ pub enum FacilityAttributeProperty { #[citygml(path = b"uro:FishingPortFacilityAttribute")] FishingPortFacilityAttribute(FishingPortFacilityAttribute), - // TODO: - // #[citygml(path = b"uro:FishingPortCapacity")] - // FishingPortAttribute(FishingPortAttribute), - // TODO: + + #[citygml(path = b"uro:FishingPortCapacity")] + FishingPortAttribute(FishingPortAttribute), + // #[citygml(path = b"uro:FishingPortFacility")] // FishingPortFacility(FishingPortFacility), - // TODO: - // #[citygml(path = b"uro:HarborFacility")] - // HarborFacility(HarborFacility), + + #[citygml(path = b"uro:HarborFacility")] + HarborFacility(HarborFacility), // TODO: // #[citygml(path = b"uro:MaintenanceHistoryAttribute")] // MaintenanceHistoryAttribute(MaintenanceHistoryAttribute), @@ -503,5 +503,76 @@ pub struct FishingPortCapacityAttribute { #[citygml(path = b"uro:other")] pub other: Option, +} + +#[citygml_data(name = "uro:HarborFacility")] +pub struct HarborFacility { + #[citygml(path = b"uro:facilityId")] + pub facility_id: Option, + + #[citygml(path = b"uro:facilityDetailType")] + pub facility_detail_type: Code, + + #[citygml(path = b"uro:portName")] + pub port_name: String, + + #[citygml(path = b"uro:portStatus")] + pub port_status: Option, + + #[citygml(path = b"uro:district")] + pub district: Option, + + #[citygml(path = b"uro:grantType")] + pub grant_type: Option, + #[citygml(path = b"uro:isDesignated")] + pub is_designated: Option, + + #[citygml(path = b"uro:degradationLevel")] + pub degradation_level: Option, + + #[citygml(path = b"uro:geologicalType")] + pub geological_type: Option, + + #[citygml(path = b"uro:obstructingStructures")] + pub obstructing_structures: Option, + + #[citygml(path = b"uro:structuralLimitations")] + pub structural_limitations: Option, + + #[citygml(path = b"uro:length")] + pub length: Option, + + #[citygml(path = b"uro:minimumWidth")] + pub minimum_width: Option, + + #[citygml(path = b"uro:maximumWidth")] + pub maximum_width: Option, + + #[citygml(path = b"uro:plannedDepth")] + pub planned_depth: Option, + + #[citygml(path = b"uro:currentDepth")] + pub current_depth: Option, + + #[citygml(path = b"uro:isDredged")] + pub is_dredged: Option, + + #[citygml(path = b"uro:areaType")] + pub area_type: Option, + + #[citygml(path = b"uro:innerArea")] + pub inner_area: Option, + + #[citygml(path = b"uro:outerArea")] + pub outer_area: Option, + + #[citygml(path = b"uro:totalCost")] + pub total_cost: Option, + + #[citygml(path = b"uro:subsidy")] + pub subsidy: Option, + + #[citygml(path = b"uro:note")] + pub note: Vec, } \ No newline at end of file From 7ae775b73429e599f437b2f20d7d5cacc3a776b2 Mon Sep 17 00:00:00 2001 From: xinmiao1995 Date: Wed, 27 Dec 2023 18:18:12 +0900 Subject: [PATCH 04/11] =?UTF-8?q?=E5=85=A8=E3=81=A6=E3=81=AE=E5=B1=9E?= =?UTF-8?q?=E6=80=A7=E3=82=92=E4=B8=80=E6=97=A6=E6=9B=B8=E3=81=8D=E8=BE=BC?= =?UTF-8?q?=E3=81=BF?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../src/models/iur/uro/facility.rs | 976 +++++++++++++++++- 1 file changed, 926 insertions(+), 50 deletions(-) diff --git a/nusamai-plateau/src/models/iur/uro/facility.rs b/nusamai-plateau/src/models/iur/uro/facility.rs index 412a401f4..3ac796b59 100644 --- a/nusamai-plateau/src/models/iur/uro/facility.rs +++ b/nusamai-plateau/src/models/iur/uro/facility.rs @@ -15,55 +15,56 @@ pub enum FacilityAttributeProperty { FishingPortFacilityAttribute(FishingPortFacilityAttribute), #[citygml(path = b"uro:FishingPortCapacity")] - FishingPortAttribute(FishingPortAttribute), + FishingPortCapacity(FishingPortCapacity), - // #[citygml(path = b"uro:FishingPortFacility")] - // FishingPortFacility(FishingPortFacility), + #[citygml(path = b"uro:FishingPortFacility")] + FishingPortFacility(FishingPortFacility), #[citygml(path = b"uro:HarborFacility")] HarborFacility(HarborFacility), - // TODO: - // #[citygml(path = b"uro:MaintenanceHistoryAttribute")] - // MaintenanceHistoryAttribute(MaintenanceHistoryAttribute), - // TODO: - // #[citygml(path = b"uro:MooringFacility")] - // MooringFacility(MooringFacility), - // TODO: - // #[citygml(path = b"uro:NavigationAssistanceFacility")] - // NavigationAssistanceFacility(NavigationAssistanceFacility), - // TODO: + + #[citygml(path = b"uro:MaintenanceHistoryAttribute")] + MaintenanceHistoryAttribute(MaintenanceHistoryAttribute), + + #[citygml(path = b"uro:MooringFacility")] + MooringFacility(MooringFacility), + + #[citygml(path = b"uro:NavigationAssistanceFacility")] + NavigationAssistanceFacility(NavigationAssistanceFacility), + + //抽象型なので、実装しない // #[citygml(path = b"uro:PortAttribute")] // PortAttribute(PortAttribute), - // TODO: - // #[citygml(path = b"uro:PortEnvironmentalImprovementFacility")] - // PortEnvironmentalImprovementFacility(PortEnvironmentalImprovementFacility), - // TODO: - // #[citygml(path = b"uro:PortManagementFacility")] - // PortManagementFacility(PortManagementFacility), - // TODO: - // #[citygml(path = b"uro:PortPassengerFacility")] - // PortPassengerFacility(PortPassengerFacility), - // TODO: - // #[citygml(path = b"uro:PortPollutionControlFacility")] - // PortPollutionControlFacility(PortPollutionControlFacility), - // TODO: - // #[citygml(path = b"uro:PortProtectiveFacility")] - // PortProtectiveFacility(PortProtectiveFacility), - // TODO: - // #[citygml(path = b"uro:PortStorageFacility")] - // PortStorageFacility(PortStorageFacility), - // TODO: - // #[citygml(path = b"uro:PortTransportationFacility")] - // PortTransportationFacility(PortTransportationFacility), - // TODO: - // #[citygml(path = b"uro:PortWasteTreatmentFacility")] - // PortWasteTreatmentFacility(PortWasteTreatmentFacility), - // TODO: - // #[citygml(path = b"uro:PortWelfareFacility")] - // PortWelfareFacility(PortWelfareFacility), - // TODO: - // #[citygml(path = b"uro:ShipServiceFacility")] - // ShipServiceFacility(ShipServiceFacility), + + #[citygml(path = b"uro:PortEnvironmentalImprovementFacility")] + PortEnvironmentalImprovementFacility(PortEnvironmentalImprovementFacility), + + #[citygml(path = b"uro:PortManagementFacility")] + PortManagementFacility(PortManagementFacility), + + #[citygml(path = b"uro:PortPassengerFacility")] + PortPassengerFacility(PortPassengerFacility), + + #[citygml(path = b"uro:PortPollutionControlFacility")] + PortPollutionControlFacility(PortPollutionControlFacility), + + #[citygml(path = b"uro:PortProtectiveFacility")] + PortProtectiveFacility(PortProtectiveFacility), + + #[citygml(path = b"uro:PortStorageFacility")] + PortStorageFacility(PortStorageFacility), + + #[citygml(path = b"uro:PortTransportationFacility")] + PortTransportationFacility(PortTransportationFacility), + + #[citygml(path = b"uro:PortWasteTreatmentFacility")] + PortWasteTreatmentFacility(PortWasteTreatmentFacility), + + #[citygml(path = b"uro:PortWelfareFacility")] + PortWelfareFacility(PortWelfareFacility), + + #[citygml(path = b"uro:ShipServiceFacility")] + ShipServiceFacility(ShipServiceFacility), } @@ -154,7 +155,7 @@ pub struct CargoHandlingFacility { pub facility_id: Option, #[citygml(path = b"uro:portFacilityDetailsType")] - pub port_facility_details_type: Code, + pub port_facility_details_type: Code,//スキーマに存在しない #[citygml(path = b"uro:portName")] pub port_name: String, @@ -219,8 +220,8 @@ pub struct CyberportMarinaAndPBS{ #[citygml(path = b"uro:facilityId")] pub facility_id: Option, - #[citygml(path = b"uro:facilityDetailType")] - pub facility_details_type: Code, + #[citygml(path = b"uro:portFacilityDetailsType")] + pub port_facility_details_type: Code,//仕様書間違い #[citygml(path = b"uro:portName")] pub port_name: String, @@ -361,7 +362,7 @@ pub struct CyberportMarinaAndPBS{ pub note: Option, } -#[citygml_data(name = "uro:FishingPortFacilityAttribute")] +#[citygml_data(name = "uro:FishingPortFacilityAttribute")]//スキーマに存在しない pub struct FishingPortFacilityAttribute { #[citygml(path = b"uro:facilityId")] pub facility_id: Option, @@ -436,7 +437,7 @@ pub struct FishingPortFacilityAttribute { pub note: Option, } -#[citygml_data(name = "uro:FishingPortCapacityAttribute")] +#[citygml_data(name = "uro:FishingPortCapacityAttribute")]//スキーマに存在しない pub struct FishingPortCapacityAttribute { #[citygml(path = b"uro:facilityId")] pub facility_id: Option, @@ -510,8 +511,8 @@ pub struct HarborFacility { #[citygml(path = b"uro:facilityId")] pub facility_id: Option, - #[citygml(path = b"uro:facilityDetailType")] - pub facility_detail_type: Code, + #[citygml(path = b"uro:portFacilityDetailsType")]//仕様書間違い + pub port_facility_details_type: Code, #[citygml(path = b"uro:portName")] pub port_name: String, @@ -575,4 +576,879 @@ pub struct HarborFacility { #[citygml(path = b"uro:note")] pub note: Vec, +} + +#[citygml_data(name = "uro:MaintenanceHistoryAttribute")] +pub struct MaintenanceHistoryAttribute { + #[citygml(path = b"uro:facilityId")] + pub facility_id: Option, + + #[citygml(path = b"uro:maintenanceType")] + pub maintenance_type: Code, + + #[citygml(path = b"uro:maintenanceFiscalYear")] + pub maintenance_fiscal_year: Option, + + #[citygml(path = b"uro:maintenanceYear")] + pub maintenance_year: Option, + + #[citygml(path = b"uro:maintenanceDate")] + pub maintenance_date: Option, + + #[citygml(path = b"uro:status")] + pub status: Option, + + #[citygml(path = b"uro:description")] + pub description: Option, +} + +#[citygml_data(name = "uro:MooringFacility")] +pub struct MooringFacility { + #[citygml(path = b"uro:facilityId")] + pub facility_id: Option, + + #[citygml(path = b"uro:portFacilityDetailsType")]//仕様書間違い + pub port_facility_details_type: Code, + + #[citygml(path = b"uro:portName")] + pub port_name: String, + + #[citygml(path = b"uro:portStatus")] + pub port_status: Option, + + #[citygml(path = b"uro:district")] + pub district: Option, + + #[citygml(path = b"uro:grantType")] + pub grant_type: Option, + + #[citygml(path = b"uro:isDesignated")] + pub is_designated: Option, + + #[citygml(path = b"uro:degradationLevel")] + pub degradation_level: Option, + + #[citygml(path = b"uro:mainPartLength")] + pub main_part_length: Option, + + #[citygml(path = b"uro:totalLength")] + pub total_length: Option, + + #[citygml(path = b"uro:facilityWidth")] + pub facility_width: Option, + + #[citygml(path = b"uro:apronWidth")] + pub apron_width: Option, + + #[citygml(path = b"uro:plannedDepth")] + pub planned_depth: Option, + + #[citygml(path = b"uro:currentDepth")] + pub current_depth: Option, + + #[citygml(path = b"uro:area")] + pub area: Option, + + #[citygml(path = b"uro:ceilingHeight")] + pub ceiling_height: Option, + + #[citygml(path = b"uro:gravityResistant")] + pub gravity_resistant: Option, + + #[citygml(path = b"uro:form")] + pub form: Option, + + #[citygml(path = b"uro:mainVessels")] + pub main_vessels: Option, + + #[citygml(path = b"uro:mooringPostWeight")] + pub mooring_post_weight: Option, + + #[citygml(path = b"uro:numberOfMooringPosts")] + pub number_of_mooring_posts: Option, + + #[citygml(path = b"uro:resistantMaterial")] + pub resistant_material: Option, + + #[citygml(path = b"uro:lighting")] + pub lighting: Option, + + #[citygml(path = b"uro:stairs")] + pub stairs: Option, + + #[citygml(path = b"uro:lifesavingAppliances")] + pub lifesaving_appliances: Option, + + #[citygml(path = b"uro:numberOfLifesavingAppliances")] + pub number_of_lifesaving_appliances: Option, + + #[citygml(path = b"uro:bumper")] + pub bumper: Option, + + #[citygml(path = b"uro:numberOfVehicleBoardings")] + pub number_of_vehicle_boardings: Option, + + #[citygml(path = b"uro:vehicleBoardingWidth")] + pub vehicle_boarding_width: Option, + + #[citygml(path = b"uro:shipType")] + pub ship_type: Option, + + #[citygml(path = b"uro:numberOfSeats")] + pub number_of_seats: Option, + + #[citygml(path = b"uro:mainCargo")] + pub main_cargo: Option, + + #[citygml(path = b"uro:structureType")] + pub structure_type: Option, + + #[citygml(path = b"uro:mainMaterial")] + pub main_material: Option, + + #[citygml(path = b"uro:totalCost")] + pub total_cost: Option, + + #[citygml(path = b"uro:subsidy")] + pub subsidy: Option, + + #[citygml(path = b"uro:note")] + pub note: Option, +} + +#[citygml_data(name = "uro:NavigationAssistanceFacility")] +pub struct NavigationAssistanceFacility { + #[citygml(path = b"uro:facilityId")] + pub facility_id: Option, + + #[citygml(path = b"uro:portFacilityDetailsType")] + pub port_facility_details_type: Code,//仕様書間違い + + #[citygml(path = b"uro:portName")] + pub port_name: String, + + #[citygml(path = b"uro:portStatus")] + pub port_status: Option, + + #[citygml(path = b"uro:district")] + pub district: Option, + + #[citygml(path = b"uro:grantType")] + pub grant_type: Option, + + #[citygml(path = b"uro:isDesignated")] + pub is_designated: Option, + + #[citygml(path = b"uro:degradationLevel")] + pub degradation_level: Option, + + #[citygml(path = b"uro:totalCost")] + pub total_cost: Option, + + #[citygml(path = b"uro:subsidy")] + pub subsidy: Option, + + #[citygml(path = b"uro:note")] + pub note: Option, +} + +#[citygml_data(name = "uro:PortEnvironmentalImprovementFacility")] +pub struct PortEnvironmentalImprovementFacility{ + #[citygml(path = b"uro:facilityId")] + pub facility_id: Option, + + #[citygml(path = b"uro:portFacilityDetailsType")] + pub port_facility_details_type: Code,//仕様書間違い + + #[citygml(path = b"uro:portName")] + pub port_name: String, + + #[citygml(path = b"uro:portStatus")] + pub port_status: Option, + + #[citygml(path = b"uro:district")] + pub district: Option, + + #[citygml(path = b"uro:grantType")] + pub grant_type: Option, + + #[citygml(path = b"uro:isDesignated")] + pub is_designated: Option, + + #[citygml(path = b"uro:degradationLevel")] + pub degradation_level: Option, + + #[citygml(path = b"uro:usage")] + pub usage: Option, + + #[citygml(path = b"uro:length")] + pub length: Option, + + #[citygml(path = b"uro:area")] + pub area: Option, + + #[citygml(path = b"uro:totalFoorArea")] + pub total_foor_area: Option, + + #[citygml(path = b"uro:totalCost")] + pub total_cost: Option, + + #[citygml(path = b"uro:subsidy")] + pub subsidy: Option, + + #[citygml(path = b"uro:note")] + pub note: Option, +} + +#[citygml_data(name = "uro:PortPassengerFacility")] +pub struct PortPassengerFacility{ + #[citygml(path = b"uro:facilityId")] + pub facility_id: Option, + + #[citygml(path = b"uro:portFacilityDetailsType")] + pub port_facility_details_type: Code,//仕様書間違い + + #[citygml(path = b"uro:portName")] + pub port_name: String, + + #[citygml(path = b"uro:portStatus")] + pub port_status: Option, + + #[citygml(path = b"uro:district")] + pub district: Option, + + #[citygml(path = b"uro:grantType")] + pub grant_type: Option, + + #[citygml(path = b"uro:isDesignated")] + pub is_designated: Option, + + #[citygml(path = b"uro:degradationLevel")] + pub degradation_level: Option, + + #[citygml(path = b"uro:length")] + pub length: Option, + + #[citygml(path = b"uro:width")] + pub width: Option, + + #[citygml(path = b"uro:mainMaterial")] + pub main_material: Option, + + #[citygml(path = b"uro:totalFloorArea")] + pub total_floor_area: Option, + + #[citygml(path = b"uro:acquisitionYear")] + pub acquisition_year: Option, + + #[citygml(path = b"uro:totalCost")] + pub total_cost: Option, + + #[citygml(path = b"uro:note")] + pub note: Option, +} + +#[citygml_data(name = "uro:PortPollutionControlFacility")] +pub struct PortPollutionControlFacility{ + #[citygml(path = b"uro:facilityId")] + pub facility_id: Option, + + #[citygml(path = b"uro:portFacilityDetailsType")] + pub port_facility_details_type: Code,//仕様書間違い + + #[citygml(path = b"uro:portName")] + pub port_name: String, + + #[citygml(path = b"uro:portStatus")] + pub port_status: Option, + + #[citygml(path = b"uro:district")] + pub district: Option, + + #[citygml(path = b"uro:grantType")] + pub grant_type: Option, + + #[citygml(path = b"uro:isDesignated")] + pub is_designated: Option, + + #[citygml(path = b"uro:degradationLevel")] + pub degradation_level: Option, + + #[citygml(path = b"uro:length")] + pub length: Option, + + #[citygml(path = b"uro:width")] + pub width: Option, + + #[citygml(path = b"uro:crossSectionalArea")] + pub cross_sectional_area: Option, + + #[citygml(path = b"uro:area")] + pub area: Option, + + #[citygml(path = b"uro:height")] + pub height: Option, + + #[citygml(path = b"uro:mainMaterial")] + pub main_material: Option, + + #[citygml(path = b"uro:totalCost")] + pub total_cost: Option, + + #[citygml(path = b"uro:subsidy")] + pub subsidy: Option, + + #[citygml(path = b"uro:note")] + pub note: Option, +} + +#[citygml_data(name = "uro:PortProtectiveFacility")] +pub struct PortProtectiveFacility{ + #[citygml(path = b"uro:facilityId")] + pub facility_id: Option, + + #[citygml(path = b"uro:portFacilityDetailsType")] + pub port_facility_details_type: Code,//仕様書間違い + + #[citygml(path = b"uro:portName")] + pub port_name: String, + + #[citygml(path = b"uro:portStatus")] + pub port_status: Option, + + #[citygml(path = b"uro:district")] + pub district: Option, + + #[citygml(path = b"uro:grantType")] + pub grant_type: Option, + + #[citygml(path = b"uro:isDesignated")] + pub is_designated: Option, + + #[citygml(path = b"uro:degradationLevel")] + pub degradation_level: Option, + + #[citygml(path = b"uro:structureType")] + pub structure_type: Option, + + #[citygml(path = b"uro:mainMaterial")] + pub main_material: Option, + + #[citygml(path = b"uro:totalCost")] + pub total_cost: Option, + + #[citygml(path = b"uro:subsidy")] + pub subsidy: Option, + + #[citygml(path = b"uro:note")] + pub note: Vec, +} + +#[citygml_data(name = "uro:PortStorageFacility")] +pub struct PortStorageFacility{ + #[citygml(path = b"uro:facilityId")] + pub facility_id: Option, + + #[citygml(path = b"uro:portFacilityDetailsType")] + pub port_facility_details_type: Code, + + #[citygml(path = b"uro:portName")] + pub port_name: String, + + #[citygml(path = b"uro:portStatus")] + pub port_status: Option, + + #[citygml(path = b"uro:district")] + pub district: Option, + + #[citygml(path = b"uro:grantType")] + pub grant_type: Option, + + #[citygml(path = b"uro:isDesignated")] + pub is_designated: Option, + + #[citygml(path = b"uro:degradationLevel")] + pub degradation_level: Option, + + #[citygml(path = b"uro:innerTotalFloorArea")] + pub inner_total_floor_area: Option, + + #[citygml(path = b"uro:innerOfSiteArea")] + pub inner_of_site_area: Option, + + #[citygml(path = b"uro:outerOfTotalFloorArea")] + pub outer_of_total_floor_area: Option, + + #[citygml(path = b"uro:outerSiteArea")] + pub outer_site_area: Option, + + #[citygml(path = b"uro:mainCargo")] + pub main_cargo: Option, + + #[citygml(path = b"uro:storageCapacity")] + pub storage_capacity: Option, + + #[citygml(path = b"uro:storageCapacityUnit")] + pub storage_capacity_unit: Option, + + #[citygml(path = b"uro:mainMaterial")] + pub main_material: Option, + + #[citygml(path = b"uro:totalCost")] + pub total_cost: Option, + + #[citygml(path = b"uro:note")] + pub note: Option, +} + +#[citygml_data(name = "uro:PortTransportationFacility")] +pub struct PortTransportationFacility{ + #[citygml(path = b"uro:facilityId")] + pub facility_id: Option, + + #[citygml(path = b"uro:portFacilityDetailsType")] + pub port_facility_details_type: Code, + + #[citygml(path = b"uro:portName")] + pub port_name: String, + + #[citygml(path = b"uro:portStatus")] + pub port_status: Option, + + #[citygml(path = b"uro:district")] + pub district: Option, + + #[citygml(path = b"uro:grantType")] + pub grant_type: Option, + + #[citygml(path = b"uro:isDesignated")] + pub is_designated: Option, + + #[citygml(path = b"uro:degradationLevel")] + pub degradation_level: Option, + + #[citygml(path = b"uro:structureType")] + pub structure_type: Option, + + #[citygml(path = b"uro:startingPoint")] + pub starting_point: Option, + + #[citygml(path = b"uro:length")] + pub length: Option, + + #[citygml(path = b"uro:area")] + pub area: Option, + + #[citygml(path = b"uro:beddingWidth")] + pub bedding_width: Option, + + #[citygml(path = b"uro:numberOfLanes")] + pub number_of_lanes: Option, + + #[citygml(path = b"uro:parkingLotCapacityOfBus")] + pub parking_lot_capacity_of_bus: Option, + + #[citygml(path = b"uro:parkingLotCapacityOfCars")] + pub parking_lot_capacity_of_cars: Option, + + #[citygml(path = b"uro:routeType")] + pub route_type: Option, + + #[citygml(path = b"uro:heightToDigit")] + pub height_to_digit: Option, + + #[citygml(path = b"uro:heightLimit")] + pub height_limit: Option, + + #[citygml(path = b"uro:minimumWidth")] + pub minimum_width: Option, + + #[citygml(path = b"uro:minimumDepth")] + pub minimum_depth: Option, + + #[citygml(path = b"uro:numberOfAircraftParkingSpaces")] + pub number_of_aircraft_parking_spaces: Option, + + #[citygml(path = b"uro:pavementType")] + pub pavement_type: Option, + + #[citygml(path = b"uro:mainCargo")] + pub main_cargo: Option, + + #[citygml(path = b"uro:totalCost")] + pub total_cost: Option, + + #[citygml(path = b"uro:subsidy")] + pub subsidy: Option, + + #[citygml(path = b"uro:note")] + pub note: Option, +} + +#[citygml_data(name = "uro:PortWasteTreatmentFacility")] +pub struct PortWasteTreatmentFacility{ + #[citygml(path = b"uro:facilityId")] + pub facility_id: Option, + + #[citygml(path = b"uro:portFacilityDetailsType")] + pub port_facility_details_type: Code, + + #[citygml(path = b"uro:portName")] + pub port_name: String, + + #[citygml(path = b"uro:portStatus")] + pub port_status: Option, + + #[citygml(path = b"uro:district")] + pub district: Option, + + #[citygml(path = b"uro:grantType")] + pub grant_type: Option, + + #[citygml(path = b"uro:isDesignated")] + pub is_designated: Option, + + #[citygml(path = b"uro:degradationLevel")] + pub degradation_level: Option, + + #[citygml(path = b"uro:structureType")] + pub structure_type: Option, + + #[citygml(path = b"uro:perimeter")] + pub perimeter: Option, + + #[citygml(path = b"uro:mainPartLength")] + pub main_part_length: Option, + + #[citygml(path = b"uro:innerShoreLength")] + pub inner_shore_length: Option, + + #[citygml(path = b"uro:ceilingHeight")] + pub ceiling_height: Option, + + #[citygml(path = b"uro:waveDissipatorLength")] + pub wave_dissipator_length: Option, + + #[citygml(path = b"uro:mainMaterial")] + pub main_material: Option, + + #[citygml(path = b"uro:wasteType")] + pub waste_type: Option, + + #[citygml(path = b"uro:plannedDisposalArea")] + pub planned_disposal_area: Option, + + #[citygml(path = b"uro:plannedDisposalAmount")] + pub planned_disposal_amount: Option, + + #[citygml(path = b"uro:receivingCapacity")] + pub receiving_capacity: Option, + + #[citygml(path = b"uro:shipType")] + pub ship_type: Option, + + #[citygml(path = b"uro:unitOfReceivingCapacity")] + pub unit_of_receiving_capacity: Option, + + #[citygml(path = b"uro:acquisitionYear")] + pub acquisition_year: Option, + + #[citygml(path = b"uro:totalCost")] + pub total_cost: Option, + + #[citygml(path = b"uro:subsidy")] + pub subsidy: Option, + + #[citygml(path = b"uro:note")] + pub note: Option, +} +#[citygml_data(name = "uro:ShipServiceFacility")] +pub struct ShipServiceFacility{ + #[citygml(path = b"uro:facilityId")] + pub facility_id: Option, + + #[citygml(path = b"uro:portFacilityDetailsType")] + pub port_facility_details_type: Code, + + #[citygml(path = b"uro:portName")] + pub port_name: String, + + #[citygml(path = b"uro:portStatus")] + pub port_status: Option, + + #[citygml(path = b"uro:district")] + pub district: Option, + + #[citygml(path = b"uro:grantType")] + pub grant_type: Option, + + #[citygml(path = b"uro:isDesignated")] + pub is_designated: Option, + + #[citygml(path = b"uro:degradationLevel")] + pub degradation_level: Option, + + #[citygml(path = b"uro:shipType")] + pub ship_type: Option, + + #[citygml(path = b"uro:supplyAbility")] + pub supply_ability: Option, + + #[citygml(path = b"uro:supplyAbilityUnit")] + pub supply_ability_unit: Option, + + #[citygml(path = b"uro:mooringPlace")] + pub mooring_place: Option, + + #[citygml(path = b"uro:length")] + pub length: Option, + + #[citygml(path = b"uro:width")] + pub width: Option, + + #[citygml(path = b"uro:area")] + pub area: Option, + + #[citygml(path = b"uro:acquisitionYear")] + pub acquisition_year: Option, + + #[citygml(path = b"uro:totalCost")] + pub total_cost: Option, + + #[citygml(path = b"uro:note")] + pub note: Option, +} + +#[citygml_data(name = "uro:PortManagementFacility")] +pub struct PortManagementFacility{ + #[citygml(path = b"uro:facilityId")] + pub facility_id: Option, + + #[citygml(path = b"uro:portFacilityDetailsType")] + pub port_facility_details_type: Code, + + #[citygml(path = b"uro:portName")] + pub port_name: String, + + #[citygml(path = b"uro:portStatus")] + pub port_status: Option, + + #[citygml(path = b"uro:district")] + pub district: Option, + + #[citygml(path = b"uro:grantType")] + pub grant_type: Option, + + #[citygml(path = b"uro:isDesignated")] + pub is_designated: Option, + + #[citygml(path = b"uro:degradationLevel")] + pub degradation_level: Option, + + #[citygml(path = b"uro:totalFloorArea")] + pub total_floor_area: Option, + + #[citygml(path = b"uro:numberOfShipTypes")] + pub number_of_ship_types: Option, + + #[citygml(path = b"uro:unitOfShipType")] + pub unit_of_ship_type: Option, + + #[citygml(path = b"uro:loadingCapacity")] + pub loading_capacity: Option, + + #[citygml(path = b"uro:acquisitionYear")] + pub acquisition_year: Option, + + #[citygml(path = b"uro:usage")] + pub usage: Option, + + #[citygml(path = b"uro:totalCost")] + pub total_cost: Option, + + #[citygml(path = b"uro:subsidy")] + pub subsidy: Option, + + #[citygml(path = b"uro:note")] + pub note: Option, +} + +#[citygml_data(name = "uro:PortWelfareFacility")] +pub struct PortWelfareFacility{ + #[citygml(path = b"uro:facilityId")] + pub facility_id: Option, + + #[citygml(path = b"uro:portFacilityDetailsType")] + pub port_facility_details_type: Code, + + #[citygml(path = b"uro:portName")] + pub port_name: String, + + #[citygml(path = b"uro:portStatus")] + pub port_status: Option, + + #[citygml(path = b"uro:district")] + pub district: Option, + + #[citygml(path = b"uro:grantType")] + pub grant_type: Option, + + #[citygml(path = b"uro:isDesignated")] + pub is_designated: Option, + + #[citygml(path = b"uro:degradationLevel")] + pub degradation_level: Option, + + #[citygml(path = b"uro:totalFloorArea")] + pub total_floor_area: Option, + + #[citygml(path = b"uro:totalCost")] + pub total_cost: Option, + + #[citygml(path = b"uro:note")] + pub note: Option, +} + +#[citygml_data(name = "uro:FishingPortCapacity")] +pub struct FishingPortCapacity { + #[citygml(path = b"uro:facilityId")] + pub facility_id: Option, + + #[citygml(path = b"uro:capacity")] + pub capacity: Option, + + #[citygml(path = b"uro:weightCapacity")] + pub weight_capacity: Option, + + #[citygml(path = b"uro:hullForm")] + pub hull_form: Option, + + #[citygml(path = b"uro:shipNumber")] + pub ship_number: Option, + + #[citygml(path = b"uro:waterDepth-2m")] + pub water_depth_2m: Option, + + #[citygml(path = b"uro:waterDepth2-3m")] + pub water_depth2_3m: Option, + + #[citygml(path = b"uro:waterDepth3-6m")] + pub water_depth3_6m: Option, + + #[citygml(path = b"uro:waterDepth6-m")] + pub water_depth6m: Option, + + #[citygml(path = b"uro:heightAboveAWL")] + pub height_above_a_w_l: Option, + + #[citygml(path = b"uro:heightOnFoundations")] + pub height_on_foundations: Option, + + #[citygml(path = b"uro:luminousRange")] + pub luminous_range: Option, + + #[citygml(path = b"uro:luminousColor")] + pub luminous_color: Option, + + #[citygml(path = b"uro:candlePower")] + pub candle_power: Option, + + #[citygml(path = b"uro:lightType")] + pub light_type: Option, + + #[citygml(path = b"uro:period")] + pub period: Option, + + #[citygml(path = b"uro:maximumGroundingWeight")] + pub maximum_grounding_weight: Option, + + #[citygml(path = b"uro:handleablePower")] + pub handleable_power: Option, + + #[citygml(path = b"uro:maximumWaterSupply")] + pub maximum_water_supply: Option, + + #[citygml(path = b"uro:maximumRefueling")] + pub maximum_refueling: Option, + + #[citygml(path = b"uro:people")] + pub people: Option, + + #[citygml(path = b"uro:other")] + pub other: Option, +} + +#[citygml_data(name = "uro:FishingPortFacility")] +pub struct FishingPortFacility { + #[citygml(path = b"uro:facilityId")] + pub facility_id: Option, + + #[citygml(path = b"uro:facilityDetailsType")] + pub facility_details_type: Code, + + #[citygml(path = b"uro:portName")] + pub port_name: String, + + #[citygml(path = b"uro:portType")] + pub port_type: Code, + + #[citygml(path = b"uro:address")] + pub address: String, + + #[citygml(path = b"uro:designatedArea")] + pub designated_area: String, + + #[citygml(path = b"uro:designation")] + pub designation: Vec, + + #[citygml(path = b"uro:designatedAdministrator")] + pub designated_administrator: Vec, + + #[citygml(path = b"uro:referenceNumber")] + pub reference_number: Vec, + + #[citygml(path = b"uro:grantType")] + pub grant_type: Option, + + #[citygml(path = b"uro:administrator")] + pub administrator: Option, + + #[citygml(path = b"uro:facilityManager")] + pub facility_manager: Option, + + #[citygml(path = b"uro:structureType")] + pub structure_type: Option, + + #[citygml(path = b"uro:mainMaterial")] + pub main_material: Option, + + #[citygml(path = b"uro:otherStructure")] + pub other_structure: Option, + + #[citygml(path = b"uro:length")] + pub length: Option, + + #[citygml(path = b"uro:width")] + pub width: Option, + + #[citygml(path = b"uro:ceilingHeight")] + pub ceiling_height: Option, + + #[citygml(path = b"uro:depth")] + pub depth: Option, + + #[citygml(path = b"uro:area")] + pub area: Option, + + #[citygml(path = b"uro:otherSizeDescription")] + pub other_size_description: Option, + + #[citygml(path = b"uro:dateOfConstructionOrAcquisition")] + pub date_of_construction_or_acquisition: Option, + + #[citygml(path = b"uro:cost")] + pub cost: Option, + + #[citygml(path = b"uro:note")] + pub note: Option, } \ No newline at end of file From 2604160ae094dbcf6738967464cbada30f87884c Mon Sep 17 00:00:00 2001 From: xinmiao1995 Date: Thu, 28 Dec 2023 11:45:51 +0900 Subject: [PATCH 05/11] fix use model --- nusamai-plateau/src/models/iur/uro/facility.rs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/nusamai-plateau/src/models/iur/uro/facility.rs b/nusamai-plateau/src/models/iur/uro/facility.rs index 3ac796b59..5273b22b1 100644 --- a/nusamai-plateau/src/models/iur/uro/facility.rs +++ b/nusamai-plateau/src/models/iur/uro/facility.rs @@ -1,4 +1,4 @@ -use citygml::{citygml_property,citygml_data,CityGMLElement,Code,Measure,Date}; +use nusamai_citygml::{citygml_property,citygml_data,CityGMLElement,Code,Measure,Date}; #[citygml_property(name = "uro:FacilityAttributeProperty")] pub enum FacilityAttributeProperty { From f1072f1313dc3eb21e5f99a9265322b25db49f23 Mon Sep 17 00:00:00 2001 From: Qu Xinmiao <83005951+xinmiaooo@users.noreply.github.com> Date: Thu, 4 Jan 2024 10:34:22 +0800 Subject: [PATCH 06/11] format --- nusamai-plateau/src/models/iur/uro/facility.rs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/nusamai-plateau/src/models/iur/uro/facility.rs b/nusamai-plateau/src/models/iur/uro/facility.rs index 5273b22b1..5f90dc08c 100644 --- a/nusamai-plateau/src/models/iur/uro/facility.rs +++ b/nusamai-plateau/src/models/iur/uro/facility.rs @@ -1,4 +1,4 @@ -use nusamai_citygml::{citygml_property,citygml_data,CityGMLElement,Code,Measure,Date}; +use nusamai_citygml::{citygml_property, citygml_data, CityGMLElement, Code, Measure, Date}; #[citygml_property(name = "uro:FacilityAttributeProperty")] pub enum FacilityAttributeProperty { From 4668bd52e7e16d3432ac8c09e0551a175a84fa9b Mon Sep 17 00:00:00 2001 From: Qu Xinmiao <83005951+xinmiaooo@users.noreply.github.com> Date: Thu, 4 Jan 2024 10:38:53 +0800 Subject: [PATCH 07/11] =?UTF-8?q?xs:integer=E3=82=92i64=E3=81=AB=E5=A4=89?= =?UTF-8?q?=E6=9B=B4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../src/models/iur/uro/facility.rs | 162 +++++++++--------- 1 file changed, 81 insertions(+), 81 deletions(-) diff --git a/nusamai-plateau/src/models/iur/uro/facility.rs b/nusamai-plateau/src/models/iur/uro/facility.rs index 5f90dc08c..d5d2ee365 100644 --- a/nusamai-plateau/src/models/iur/uro/facility.rs +++ b/nusamai-plateau/src/models/iur/uro/facility.rs @@ -173,7 +173,7 @@ pub struct CargoHandlingFacility { pub is_designated: Option, #[citygml(path = b"uro:degradationLevel")] - pub degradation_level: Option, + pub degradation_level: Option, #[citygml(path = b"uro:mainCargo")] pub main_cargo: Option, @@ -185,7 +185,7 @@ pub struct CargoHandlingFacility { pub liftable_load: Option, #[citygml(path = b"uro:ability")] - pub ability: Option, + pub ability: Option, #[citygml(path = b"uro:packingName")] pub packing_name: Option, @@ -209,7 +209,7 @@ pub struct CargoHandlingFacility { pub main_material: Option, #[citygml(path = b"uro:totalCost")] - pub total_cost: Option, + pub total_cost: Option, #[citygml(path = b"uro:note")] pub note: Option, @@ -239,7 +239,7 @@ pub struct CyberportMarinaAndPBS{ pub is_designated: Option, #[citygml(path = b"uro:degradationLevel")] - pub degradation_level: Option, + pub degradation_level: Option, #[citygml(path = b"uro:geologicalType")] pub geological_type: Option, @@ -305,28 +305,28 @@ pub struct CyberportMarinaAndPBS{ pub mooring_post_weight: Option, #[citygml(path = b"uro:numberOfMooringPosts")] - pub number_of_mooring_posts: Option, + pub number_of_mooring_posts: Option, #[citygml(path = b"uro:resistantMaterial")] - pub resistant_material: Option, + pub resistant_material: Option, #[citygml(path = b"uro:lighting")] - pub lighting: Option, + pub lighting: Option, #[citygml(path = b"uro:stairs")] - pub stairs: Option, + pub stairs: Option, #[citygml(path = b"uro:lifesaving")] pub lifesaving: Option, #[citygml(path = b"uro:lifesavingNumber")] - pub lifesaving_number: Option, + pub lifesaving_number: Option, #[citygml(path = b"uro:bumper")] pub bumper: Option, #[citygml(path = b"uro:numberOfVehicleBoardings")] - pub number_of_vehicle_boardings: Option, + pub number_of_vehicle_boardings: Option, #[citygml(path = b"uro:vehicleBoardingWidth")] pub vehicle_boarding_width: Option, @@ -335,13 +335,13 @@ pub struct CyberportMarinaAndPBS{ pub ship_type: Option, #[citygml(path = b"uro:numberOfSeats")] - pub number_of_seats: Option, + pub number_of_seats: Option, #[citygml(path = b"uro:mainCargo")] pub main_cargo: Option, #[citygml(path = b"uro:storageCapacity")] - pub storage_capacity: Option, + pub storage_capacity: Option, #[citygml(path = b"uro:storageCapacityUnit")] pub storage_capacity_unit: Option, @@ -353,10 +353,10 @@ pub struct CyberportMarinaAndPBS{ pub main_material: Option, #[citygml(path = b"uro:totalCost")] - pub total_cost: Option, + pub total_cost: Option, #[citygml(path = b"uro:subsidy")] - pub subsidy: Option, + pub subsidy: Option, #[citygml(path = b"uro:note")] pub note: Option, @@ -431,7 +431,7 @@ pub struct FishingPortFacilityAttribute { pub date_of_construction_or_acquisition: Option, #[citygml(path = b"uro:cost")] - pub cost: Option, + pub cost: Option, #[citygml(path = b"uro:note")] pub note: Option, @@ -449,10 +449,10 @@ pub struct FishingPortCapacityAttribute { pub weight_capacity: Option, #[citygml(path = b"uro:hullForm")] - pub hull_form: Option, + pub hull_form: Option, #[citygml(path = b"uro:shipNumber")] - pub ship_number: Option, + pub ship_number: Option, #[citygml(path = b"uro:waterDepth-2m")] pub water_depth_2m: Option, @@ -479,7 +479,7 @@ pub struct FishingPortCapacityAttribute { pub luminous_color: Option, #[citygml(path = b"uro:candlePower")] - pub candle_power: Option, + pub candle_power: Option, #[citygml(path = b"uro:lightType")] pub light_type: Option, @@ -488,19 +488,19 @@ pub struct FishingPortCapacityAttribute { pub period: Option, #[citygml(path = b"uro:maximumGroundingWeight")] - pub maximum_grounding_weight: Option, + pub maximum_grounding_weight: Option, #[citygml(path = b"uro:handleablePower")] - pub handleable_power: Option, + pub handleable_power: Option, #[citygml(path = b"uro:maximumWaterSupply")] - pub maximum_water_supply: Option, + pub maximum_water_supply: Option, #[citygml(path = b"uro:maximumRefueling")] pub maximum_refueling: Option, #[citygml(path = b"uro:people")] - pub people: Option, + pub people: Option, #[citygml(path = b"uro:other")] pub other: Option, @@ -530,7 +530,7 @@ pub struct HarborFacility { pub is_designated: Option, #[citygml(path = b"uro:degradationLevel")] - pub degradation_level: Option, + pub degradation_level: Option, #[citygml(path = b"uro:geologicalType")] pub geological_type: Option, @@ -569,10 +569,10 @@ pub struct HarborFacility { pub outer_area: Option, #[citygml(path = b"uro:totalCost")] - pub total_cost: Option, + pub total_cost: Option, #[citygml(path = b"uro:subsidy")] - pub subsidy: Option, + pub subsidy: Option, #[citygml(path = b"uro:note")] pub note: Vec, @@ -626,7 +626,7 @@ pub struct MooringFacility { pub is_designated: Option, #[citygml(path = b"uro:degradationLevel")] - pub degradation_level: Option, + pub degradation_level: Option, #[citygml(path = b"uro:mainPartLength")] pub main_part_length: Option, @@ -665,28 +665,28 @@ pub struct MooringFacility { pub mooring_post_weight: Option, #[citygml(path = b"uro:numberOfMooringPosts")] - pub number_of_mooring_posts: Option, + pub number_of_mooring_posts: Option, #[citygml(path = b"uro:resistantMaterial")] - pub resistant_material: Option, + pub resistant_material: Option, #[citygml(path = b"uro:lighting")] - pub lighting: Option, + pub lighting: Option, #[citygml(path = b"uro:stairs")] - pub stairs: Option, + pub stairs: Option, #[citygml(path = b"uro:lifesavingAppliances")] pub lifesaving_appliances: Option, #[citygml(path = b"uro:numberOfLifesavingAppliances")] - pub number_of_lifesaving_appliances: Option, + pub number_of_lifesaving_appliances: Option, #[citygml(path = b"uro:bumper")] pub bumper: Option, #[citygml(path = b"uro:numberOfVehicleBoardings")] - pub number_of_vehicle_boardings: Option, + pub number_of_vehicle_boardings: Option, #[citygml(path = b"uro:vehicleBoardingWidth")] pub vehicle_boarding_width: Option, @@ -695,7 +695,7 @@ pub struct MooringFacility { pub ship_type: Option, #[citygml(path = b"uro:numberOfSeats")] - pub number_of_seats: Option, + pub number_of_seats: Option, #[citygml(path = b"uro:mainCargo")] pub main_cargo: Option, @@ -707,10 +707,10 @@ pub struct MooringFacility { pub main_material: Option, #[citygml(path = b"uro:totalCost")] - pub total_cost: Option, + pub total_cost: Option, #[citygml(path = b"uro:subsidy")] - pub subsidy: Option, + pub subsidy: Option, #[citygml(path = b"uro:note")] pub note: Option, @@ -740,10 +740,10 @@ pub struct NavigationAssistanceFacility { pub is_designated: Option, #[citygml(path = b"uro:degradationLevel")] - pub degradation_level: Option, + pub degradation_level: Option, #[citygml(path = b"uro:totalCost")] - pub total_cost: Option, + pub total_cost: Option, #[citygml(path = b"uro:subsidy")] pub subsidy: Option, @@ -776,7 +776,7 @@ pub struct PortEnvironmentalImprovementFacility{ pub is_designated: Option, #[citygml(path = b"uro:degradationLevel")] - pub degradation_level: Option, + pub degradation_level: Option, #[citygml(path = b"uro:usage")] pub usage: Option, @@ -791,10 +791,10 @@ pub struct PortEnvironmentalImprovementFacility{ pub total_foor_area: Option, #[citygml(path = b"uro:totalCost")] - pub total_cost: Option, + pub total_cost: Option, #[citygml(path = b"uro:subsidy")] - pub subsidy: Option, + pub subsidy: Option, #[citygml(path = b"uro:note")] pub note: Option, @@ -824,7 +824,7 @@ pub struct PortPassengerFacility{ pub is_designated: Option, #[citygml(path = b"uro:degradationLevel")] - pub degradation_level: Option, + pub degradation_level: Option, #[citygml(path = b"uro:length")] pub length: Option, @@ -842,7 +842,7 @@ pub struct PortPassengerFacility{ pub acquisition_year: Option, #[citygml(path = b"uro:totalCost")] - pub total_cost: Option, + pub total_cost: Option, #[citygml(path = b"uro:note")] pub note: Option, @@ -872,7 +872,7 @@ pub struct PortPollutionControlFacility{ pub is_designated: Option, #[citygml(path = b"uro:degradationLevel")] - pub degradation_level: Option, + pub degradation_level: Option, #[citygml(path = b"uro:length")] pub length: Option, @@ -893,10 +893,10 @@ pub struct PortPollutionControlFacility{ pub main_material: Option, #[citygml(path = b"uro:totalCost")] - pub total_cost: Option, + pub total_cost: Option, #[citygml(path = b"uro:subsidy")] - pub subsidy: Option, + pub subsidy: Option, #[citygml(path = b"uro:note")] pub note: Option, @@ -926,7 +926,7 @@ pub struct PortProtectiveFacility{ pub is_designated: Option, #[citygml(path = b"uro:degradationLevel")] - pub degradation_level: Option, + pub degradation_level: Option, #[citygml(path = b"uro:structureType")] pub structure_type: Option, @@ -935,10 +935,10 @@ pub struct PortProtectiveFacility{ pub main_material: Option, #[citygml(path = b"uro:totalCost")] - pub total_cost: Option, + pub total_cost: Option, #[citygml(path = b"uro:subsidy")] - pub subsidy: Option, + pub subsidy: Option, #[citygml(path = b"uro:note")] pub note: Vec, @@ -968,7 +968,7 @@ pub struct PortStorageFacility{ pub is_designated: Option, #[citygml(path = b"uro:degradationLevel")] - pub degradation_level: Option, + pub degradation_level: Option, #[citygml(path = b"uro:innerTotalFloorArea")] pub inner_total_floor_area: Option, @@ -986,7 +986,7 @@ pub struct PortStorageFacility{ pub main_cargo: Option, #[citygml(path = b"uro:storageCapacity")] - pub storage_capacity: Option, + pub storage_capacity: Option, #[citygml(path = b"uro:storageCapacityUnit")] pub storage_capacity_unit: Option, @@ -995,7 +995,7 @@ pub struct PortStorageFacility{ pub main_material: Option, #[citygml(path = b"uro:totalCost")] - pub total_cost: Option, + pub total_cost: Option, #[citygml(path = b"uro:note")] pub note: Option, @@ -1025,7 +1025,7 @@ pub struct PortTransportationFacility{ pub is_designated: Option, #[citygml(path = b"uro:degradationLevel")] - pub degradation_level: Option, + pub degradation_level: Option, #[citygml(path = b"uro:structureType")] pub structure_type: Option, @@ -1043,13 +1043,13 @@ pub struct PortTransportationFacility{ pub bedding_width: Option, #[citygml(path = b"uro:numberOfLanes")] - pub number_of_lanes: Option, + pub number_of_lanes: Option, #[citygml(path = b"uro:parkingLotCapacityOfBus")] - pub parking_lot_capacity_of_bus: Option, + pub parking_lot_capacity_of_bus: Option, #[citygml(path = b"uro:parkingLotCapacityOfCars")] - pub parking_lot_capacity_of_cars: Option, + pub parking_lot_capacity_of_cars: Option, #[citygml(path = b"uro:routeType")] pub route_type: Option, @@ -1067,7 +1067,7 @@ pub struct PortTransportationFacility{ pub minimum_depth: Option, #[citygml(path = b"uro:numberOfAircraftParkingSpaces")] - pub number_of_aircraft_parking_spaces: Option, + pub number_of_aircraft_parking_spaces: Option, #[citygml(path = b"uro:pavementType")] pub pavement_type: Option, @@ -1076,10 +1076,10 @@ pub struct PortTransportationFacility{ pub main_cargo: Option, #[citygml(path = b"uro:totalCost")] - pub total_cost: Option, + pub total_cost: Option, #[citygml(path = b"uro:subsidy")] - pub subsidy: Option, + pub subsidy: Option, #[citygml(path = b"uro:note")] pub note: Option, @@ -1109,7 +1109,7 @@ pub struct PortWasteTreatmentFacility{ pub is_designated: Option, #[citygml(path = b"uro:degradationLevel")] - pub degradation_level: Option, + pub degradation_level: Option, #[citygml(path = b"uro:structureType")] pub structure_type: Option, @@ -1139,10 +1139,10 @@ pub struct PortWasteTreatmentFacility{ pub planned_disposal_area: Option, #[citygml(path = b"uro:plannedDisposalAmount")] - pub planned_disposal_amount: Option, + pub planned_disposal_amount: Option, #[citygml(path = b"uro:receivingCapacity")] - pub receiving_capacity: Option, + pub receiving_capacity: Option, #[citygml(path = b"uro:shipType")] pub ship_type: Option, @@ -1154,10 +1154,10 @@ pub struct PortWasteTreatmentFacility{ pub acquisition_year: Option, #[citygml(path = b"uro:totalCost")] - pub total_cost: Option, + pub total_cost: Option, #[citygml(path = b"uro:subsidy")] - pub subsidy: Option, + pub subsidy: Option, #[citygml(path = b"uro:note")] pub note: Option, @@ -1186,13 +1186,13 @@ pub struct ShipServiceFacility{ pub is_designated: Option, #[citygml(path = b"uro:degradationLevel")] - pub degradation_level: Option, + pub degradation_level: Option, #[citygml(path = b"uro:shipType")] pub ship_type: Option, #[citygml(path = b"uro:supplyAbility")] - pub supply_ability: Option, + pub supply_ability: Option, #[citygml(path = b"uro:supplyAbilityUnit")] pub supply_ability_unit: Option, @@ -1213,7 +1213,7 @@ pub struct ShipServiceFacility{ pub acquisition_year: Option, #[citygml(path = b"uro:totalCost")] - pub total_cost: Option, + pub total_cost: Option, #[citygml(path = b"uro:note")] pub note: Option, @@ -1243,19 +1243,19 @@ pub struct PortManagementFacility{ pub is_designated: Option, #[citygml(path = b"uro:degradationLevel")] - pub degradation_level: Option, + pub degradation_level: Option, #[citygml(path = b"uro:totalFloorArea")] pub total_floor_area: Option, #[citygml(path = b"uro:numberOfShipTypes")] - pub number_of_ship_types: Option, + pub number_of_ship_types: Option, #[citygml(path = b"uro:unitOfShipType")] pub unit_of_ship_type: Option, #[citygml(path = b"uro:loadingCapacity")] - pub loading_capacity: Option, + pub loading_capacity: Option, #[citygml(path = b"uro:acquisitionYear")] pub acquisition_year: Option, @@ -1264,10 +1264,10 @@ pub struct PortManagementFacility{ pub usage: Option, #[citygml(path = b"uro:totalCost")] - pub total_cost: Option, + pub total_cost: Option, #[citygml(path = b"uro:subsidy")] - pub subsidy: Option, + pub subsidy: Option, #[citygml(path = b"uro:note")] pub note: Option, @@ -1297,13 +1297,13 @@ pub struct PortWelfareFacility{ pub is_designated: Option, #[citygml(path = b"uro:degradationLevel")] - pub degradation_level: Option, + pub degradation_level: Option, #[citygml(path = b"uro:totalFloorArea")] pub total_floor_area: Option, #[citygml(path = b"uro:totalCost")] - pub total_cost: Option, + pub total_cost: Option, #[citygml(path = b"uro:note")] pub note: Option, @@ -1321,10 +1321,10 @@ pub struct FishingPortCapacity { pub weight_capacity: Option, #[citygml(path = b"uro:hullForm")] - pub hull_form: Option, + pub hull_form: Option, #[citygml(path = b"uro:shipNumber")] - pub ship_number: Option, + pub ship_number: Option, #[citygml(path = b"uro:waterDepth-2m")] pub water_depth_2m: Option, @@ -1351,7 +1351,7 @@ pub struct FishingPortCapacity { pub luminous_color: Option, #[citygml(path = b"uro:candlePower")] - pub candle_power: Option, + pub candle_power: Option, #[citygml(path = b"uro:lightType")] pub light_type: Option, @@ -1360,19 +1360,19 @@ pub struct FishingPortCapacity { pub period: Option, #[citygml(path = b"uro:maximumGroundingWeight")] - pub maximum_grounding_weight: Option, + pub maximum_grounding_weight: Option, #[citygml(path = b"uro:handleablePower")] - pub handleable_power: Option, + pub handleable_power: Option, #[citygml(path = b"uro:maximumWaterSupply")] - pub maximum_water_supply: Option, + pub maximum_water_supply: Option, #[citygml(path = b"uro:maximumRefueling")] pub maximum_refueling: Option, #[citygml(path = b"uro:people")] - pub people: Option, + pub people: Option, #[citygml(path = b"uro:other")] pub other: Option, @@ -1447,7 +1447,7 @@ pub struct FishingPortFacility { pub date_of_construction_or_acquisition: Option, #[citygml(path = b"uro:cost")] - pub cost: Option, + pub cost: Option, #[citygml(path = b"uro:note")] pub note: Option, From ec45f968e91e90dbd1d7800947e435cfd1e03b68 Mon Sep 17 00:00:00 2001 From: Qu Xinmiao <83005951+xinmiaooo@users.noreply.github.com> Date: Thu, 4 Jan 2024 10:46:46 +0800 Subject: [PATCH 08/11] =?UTF-8?q?=E5=BF=85=E9=A0=88=E5=B1=9E=E6=80=A7?= =?UTF-8?q?=E3=82=92Option=E3=81=AB=E4=B8=80=E6=97=A6=E6=9B=B8=E3=81=8D?= =?UTF-8?q?=E6=8F=9B=E3=81=88=E3=82=8B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../src/models/iur/uro/facility.rs | 86 +++++++++---------- 1 file changed, 43 insertions(+), 43 deletions(-) diff --git a/nusamai-plateau/src/models/iur/uro/facility.rs b/nusamai-plateau/src/models/iur/uro/facility.rs index d5d2ee365..7b793e57a 100644 --- a/nusamai-plateau/src/models/iur/uro/facility.rs +++ b/nusamai-plateau/src/models/iur/uro/facility.rs @@ -104,13 +104,13 @@ pub struct RiverFacilityIdAttribute { pub alternative_name: Vec, #[citygml(path = b"uro:riverCode")] - pub river_code: Code, + pub river_code: Option, #[citygml(path = b"uro:riverName")] pub river_name: Option, #[citygml(path = b"uro:sideType")] - pub side_type: Code, + pub side_type: Option, #[citygml(path = b"uro:leftPost")] pub left_post: Option, @@ -155,10 +155,10 @@ pub struct CargoHandlingFacility { pub facility_id: Option, #[citygml(path = b"uro:portFacilityDetailsType")] - pub port_facility_details_type: Code,//スキーマに存在しない + pub port_facility_details_type: Option,//スキーマに存在しない #[citygml(path = b"uro:portName")] - pub port_name: String, + pub port_name: Option, #[citygml(path = b"uro:portStatus")] pub port_status: Option, @@ -221,10 +221,10 @@ pub struct CyberportMarinaAndPBS{ pub facility_id: Option, #[citygml(path = b"uro:portFacilityDetailsType")] - pub port_facility_details_type: Code,//仕様書間違い + pub port_facility_details_type: Option,//仕様書間違い #[citygml(path = b"uro:portName")] - pub port_name: String, + pub port_name: Option, #[citygml(path = b"uro:portStatus")] pub port_status: Option, @@ -368,19 +368,19 @@ pub struct FishingPortFacilityAttribute { pub facility_id: Option, #[citygml(path = b"uro:facilityDetailsType")] - pub facility_details_type: Code, + pub facility_details_type: Option, #[citygml(path = b"uro:portName")] - pub port_name: String, + pub port_name: Option, #[citygml(path = b"uro:portTpye")] - pub port_type: Code, + pub port_type: Option, #[citygml(path = b"uro:address")] - pub address: String, + pub address: Option, #[citygml(path = b"uro:designatedArea")] - pub designated_area: String, + pub designated_area: Option, #[citygml(path = b"uro:designation")] pub designation: Vec, @@ -512,10 +512,10 @@ pub struct HarborFacility { pub facility_id: Option, #[citygml(path = b"uro:portFacilityDetailsType")]//仕様書間違い - pub port_facility_details_type: Code, + pub port_facility_details_type: Option, #[citygml(path = b"uro:portName")] - pub port_name: String, + pub port_name: Option, #[citygml(path = b"uro:portStatus")] pub port_status: Option, @@ -584,7 +584,7 @@ pub struct MaintenanceHistoryAttribute { pub facility_id: Option, #[citygml(path = b"uro:maintenanceType")] - pub maintenance_type: Code, + pub maintenance_type: Option, #[citygml(path = b"uro:maintenanceFiscalYear")] pub maintenance_fiscal_year: Option, @@ -608,10 +608,10 @@ pub struct MooringFacility { pub facility_id: Option, #[citygml(path = b"uro:portFacilityDetailsType")]//仕様書間違い - pub port_facility_details_type: Code, + pub port_facility_details_type: Option, #[citygml(path = b"uro:portName")] - pub port_name: String, + pub port_name: Option, #[citygml(path = b"uro:portStatus")] pub port_status: Option, @@ -722,10 +722,10 @@ pub struct NavigationAssistanceFacility { pub facility_id: Option, #[citygml(path = b"uro:portFacilityDetailsType")] - pub port_facility_details_type: Code,//仕様書間違い + pub port_facility_details_type: Option,//仕様書間違い #[citygml(path = b"uro:portName")] - pub port_name: String, + pub port_name: Option, #[citygml(path = b"uro:portStatus")] pub port_status: Option, @@ -758,10 +758,10 @@ pub struct PortEnvironmentalImprovementFacility{ pub facility_id: Option, #[citygml(path = b"uro:portFacilityDetailsType")] - pub port_facility_details_type: Code,//仕様書間違い + pub port_facility_details_type: Option,//仕様書間違い #[citygml(path = b"uro:portName")] - pub port_name: String, + pub port_name: Option, #[citygml(path = b"uro:portStatus")] pub port_status: Option, @@ -806,10 +806,10 @@ pub struct PortPassengerFacility{ pub facility_id: Option, #[citygml(path = b"uro:portFacilityDetailsType")] - pub port_facility_details_type: Code,//仕様書間違い + pub port_facility_details_type: Option,//仕様書間違い #[citygml(path = b"uro:portName")] - pub port_name: String, + pub port_name: Option, #[citygml(path = b"uro:portStatus")] pub port_status: Option, @@ -854,10 +854,10 @@ pub struct PortPollutionControlFacility{ pub facility_id: Option, #[citygml(path = b"uro:portFacilityDetailsType")] - pub port_facility_details_type: Code,//仕様書間違い + pub port_facility_details_type: Option,//仕様書間違い #[citygml(path = b"uro:portName")] - pub port_name: String, + pub port_name: Option, #[citygml(path = b"uro:portStatus")] pub port_status: Option, @@ -908,10 +908,10 @@ pub struct PortProtectiveFacility{ pub facility_id: Option, #[citygml(path = b"uro:portFacilityDetailsType")] - pub port_facility_details_type: Code,//仕様書間違い + pub port_facility_details_type: Option,//仕様書間違い #[citygml(path = b"uro:portName")] - pub port_name: String, + pub port_name: Option, #[citygml(path = b"uro:portStatus")] pub port_status: Option, @@ -950,10 +950,10 @@ pub struct PortStorageFacility{ pub facility_id: Option, #[citygml(path = b"uro:portFacilityDetailsType")] - pub port_facility_details_type: Code, + pub port_facility_details_type: Option, #[citygml(path = b"uro:portName")] - pub port_name: String, + pub port_name: Option, #[citygml(path = b"uro:portStatus")] pub port_status: Option, @@ -1007,10 +1007,10 @@ pub struct PortTransportationFacility{ pub facility_id: Option, #[citygml(path = b"uro:portFacilityDetailsType")] - pub port_facility_details_type: Code, + pub port_facility_details_type: Option, #[citygml(path = b"uro:portName")] - pub port_name: String, + pub port_name: Option, #[citygml(path = b"uro:portStatus")] pub port_status: Option, @@ -1091,10 +1091,10 @@ pub struct PortWasteTreatmentFacility{ pub facility_id: Option, #[citygml(path = b"uro:portFacilityDetailsType")] - pub port_facility_details_type: Code, + pub port_facility_details_type: Option, #[citygml(path = b"uro:portName")] - pub port_name: String, + pub port_name: Option, #[citygml(path = b"uro:portStatus")] pub port_status: Option, @@ -1168,10 +1168,10 @@ pub struct ShipServiceFacility{ pub facility_id: Option, #[citygml(path = b"uro:portFacilityDetailsType")] - pub port_facility_details_type: Code, + pub port_facility_details_type: Option, #[citygml(path = b"uro:portName")] - pub port_name: String, + pub port_name: Option, #[citygml(path = b"uro:portStatus")] pub port_status: Option, @@ -1225,10 +1225,10 @@ pub struct PortManagementFacility{ pub facility_id: Option, #[citygml(path = b"uro:portFacilityDetailsType")] - pub port_facility_details_type: Code, + pub port_facility_details_type: Option, #[citygml(path = b"uro:portName")] - pub port_name: String, + pub port_name: Option, #[citygml(path = b"uro:portStatus")] pub port_status: Option, @@ -1279,10 +1279,10 @@ pub struct PortWelfareFacility{ pub facility_id: Option, #[citygml(path = b"uro:portFacilityDetailsType")] - pub port_facility_details_type: Code, + pub port_facility_details_type: Option, #[citygml(path = b"uro:portName")] - pub port_name: String, + pub port_name: Option, #[citygml(path = b"uro:portStatus")] pub port_status: Option, @@ -1384,19 +1384,19 @@ pub struct FishingPortFacility { pub facility_id: Option, #[citygml(path = b"uro:facilityDetailsType")] - pub facility_details_type: Code, + pub facility_details_type: Option, #[citygml(path = b"uro:portName")] - pub port_name: String, + pub port_name: Option, #[citygml(path = b"uro:portType")] - pub port_type: Code, + pub port_type: Option, #[citygml(path = b"uro:address")] - pub address: String, + pub address: Option, #[citygml(path = b"uro:designatedArea")] - pub designated_area: String, + pub designated_area: Option, #[citygml(path = b"uro:designation")] pub designation: Vec, From 77e814ee7b6731016d2592a5d772166decc3b325 Mon Sep 17 00:00:00 2001 From: Qu Xinmiao <83005951+xinmiaooo@users.noreply.github.com> Date: Thu, 4 Jan 2024 10:53:49 +0800 Subject: [PATCH 09/11] =?UTF-8?q?=E9=96=93=E9=81=95=E3=81=A3=E3=81=A6?= =?UTF-8?q?=E3=81=84=E3=82=8B=E5=B1=9E=E6=80=A7=E3=82=92=E5=89=8A=E9=99=A4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../src/models/iur/uro/facility.rs | 147 +----------------- 1 file changed, 2 insertions(+), 145 deletions(-) diff --git a/nusamai-plateau/src/models/iur/uro/facility.rs b/nusamai-plateau/src/models/iur/uro/facility.rs index 7b793e57a..055eada91 100644 --- a/nusamai-plateau/src/models/iur/uro/facility.rs +++ b/nusamai-plateau/src/models/iur/uro/facility.rs @@ -11,8 +11,8 @@ pub enum FacilityAttributeProperty { #[citygml(path = b"uro:CyberportMarinaAndPBS")] CyberportMarinaAndPBS(CyberportMarinaAndPBS), - #[citygml(path = b"uro:FishingPortFacilityAttribute")] - FishingPortFacilityAttribute(FishingPortFacilityAttribute), + #[citygml(path = b"uro:FishingPortFacility")] + FishingPortFacilityAttribute(FishingPortFacility), #[citygml(path = b"uro:FishingPortCapacity")] FishingPortCapacity(FishingPortCapacity), @@ -362,149 +362,6 @@ pub struct CyberportMarinaAndPBS{ pub note: Option, } -#[citygml_data(name = "uro:FishingPortFacilityAttribute")]//スキーマに存在しない -pub struct FishingPortFacilityAttribute { - #[citygml(path = b"uro:facilityId")] - pub facility_id: Option, - - #[citygml(path = b"uro:facilityDetailsType")] - pub facility_details_type: Option, - - #[citygml(path = b"uro:portName")] - pub port_name: Option, - - #[citygml(path = b"uro:portTpye")] - pub port_type: Option, - - #[citygml(path = b"uro:address")] - pub address: Option, - - #[citygml(path = b"uro:designatedArea")] - pub designated_area: Option, - - #[citygml(path = b"uro:designation")] - pub designation: Vec, - - #[citygml(path = b"uro:designatedAdministrator")] - pub designated_administrator: Vec, - - #[citygml(path = b"uro:referenceNumber")] - pub reference_number: Vec, - - #[citygml(path = b"uro:grantType")] - pub grant_type: Option, - - #[citygml(path = b"uro:administrator")] - pub administrator: Option, - - #[citygml(path = b"uro:facilityManager")] - pub facility_manager: Option, - - #[citygml(path = b"uro:structureType")] - pub structure_type: Option, - - #[citygml(path = b"uro:mainMaterial")] - pub main_material: Option, - - #[citygml(path = b"uro:otherStructure")] - pub other_structure: Option, - - #[citygml(path = b"uro:length")] - pub length: Option, - - #[citygml(path = b"uro:width")] - pub width: Option, - - #[citygml(path = b"uro:ceilingHeight")] - pub ceiling_height: Option, - - #[citygml(path = b"uro:depth")] - pub depth: Option, - - #[citygml(path = b"uro:area")] - pub area: Option, - - #[citygml(path = b"uro:otherSizeDescription")] - pub other_size_description: Option, - - #[citygml(path = b"uro:dateOfConstructionOrAcquisition")] - pub date_of_construction_or_acquisition: Option, - - #[citygml(path = b"uro:cost")] - pub cost: Option, - - #[citygml(path = b"uro:note")] - pub note: Option, -} - -#[citygml_data(name = "uro:FishingPortCapacityAttribute")]//スキーマに存在しない -pub struct FishingPortCapacityAttribute { - #[citygml(path = b"uro:facilityId")] - pub facility_id: Option, - - #[citygml(path = b"uro:capacity")] - pub capacity: Option, - - #[citygml(path = b"uro:weightCapacity")] - pub weight_capacity: Option, - - #[citygml(path = b"uro:hullForm")] - pub hull_form: Option, - - #[citygml(path = b"uro:shipNumber")] - pub ship_number: Option, - - #[citygml(path = b"uro:waterDepth-2m")] - pub water_depth_2m: Option, - - #[citygml(path = b"uro:waterDepth2-3m")] - pub water_depth_2_3m: Option, - - #[citygml(path = b"uro:waterDepth3-6m")] - pub water_depth_3_6m: Option, - - #[citygml(path = b"uro:waterDepth6-m")] - pub water_depth_6_m: Option, - - #[citygml(path = b"uro:heightAboveAWL")] - pub height_above_awl: Option, - - #[citygml(path = b"uro:heightOnFoundations")] - pub height_on_foundations: Option, - - #[citygml(path = b"uro:luminousRange")] - pub luminous_range: Option, - - #[citygml(path = b"uro:luminousColor")] - pub luminous_color: Option, - - #[citygml(path = b"uro:candlePower")] - pub candle_power: Option, - - #[citygml(path = b"uro:lightType")] - pub light_type: Option, - - #[citygml(path = b"uro:period")] - pub period: Option, - - #[citygml(path = b"uro:maximumGroundingWeight")] - pub maximum_grounding_weight: Option, - - #[citygml(path = b"uro:handleablePower")] - pub handleable_power: Option, - - #[citygml(path = b"uro:maximumWaterSupply")] - pub maximum_water_supply: Option, - - #[citygml(path = b"uro:maximumRefueling")] - pub maximum_refueling: Option, - - #[citygml(path = b"uro:people")] - pub people: Option, - - #[citygml(path = b"uro:other")] - pub other: Option, -} #[citygml_data(name = "uro:HarborFacility")] pub struct HarborFacility { From a2910060231342f4c46d47a96c161572d1ab26f1 Mon Sep 17 00:00:00 2001 From: Taku Fukada Date: Fri, 5 Jan 2024 15:19:45 +0900 Subject: [PATCH 10/11] Remove geojson and gpkg output examples --- nusamai/examples/gml2geojson.rs | 82 --------------------------------- nusamai/examples/gml2gpkg.rs | 77 ------------------------------- 2 files changed, 159 deletions(-) delete mode 100644 nusamai/examples/gml2geojson.rs delete mode 100644 nusamai/examples/gml2gpkg.rs diff --git a/nusamai/examples/gml2geojson.rs b/nusamai/examples/gml2geojson.rs deleted file mode 100644 index 541e80f8e..000000000 --- a/nusamai/examples/gml2geojson.rs +++ /dev/null @@ -1,82 +0,0 @@ -//! This example converts a CityGML file to GeoJSON and outputs it to a file - -use clap::Parser; -use nusamai::sink::geojson::toplevel_cityobj_to_geojson_features; -use nusamai_citygml::object::CityObject; -use nusamai_citygml::{CityGMLElement, CityGMLReader, ParseError, SubTreeReader}; -use std::fs; -use std::io::BufRead; -use std::io::BufWriter; - -#[derive(Parser)] -struct Args { - #[clap(required = true)] - filename: String, -} - -fn toplevel_dispatcher( - st: &mut SubTreeReader, -) -> Result, ParseError> { - let mut cityobjs: Vec = vec![]; - - match st.parse_children(|st| match st.current_path() { - b"core:cityObjectMember" => { - let mut cityobj: nusamai_plateau::models::TopLevelCityObject = Default::default(); - cityobj.parse(st)?; - let geometries = st.collect_geometries(); - - if let Some(root) = cityobj.into_object() { - let obj = CityObject { root, geometries }; - cityobjs.push(obj); - } - - Ok(()) - } - b"gml:boundedBy" | b"app:appearanceMember" => { - st.skip_current_element()?; - Ok(()) - } - other => Err(ParseError::SchemaViolation(format!( - "Unrecognized element {}", - String::from_utf8_lossy(other) - ))), - }) { - Ok(_) => Ok(cityobjs), - Err(e) => { - println!("Err: {:?}", e); - Err(e) - } - } -} - -fn main() { - let args = Args::parse(); - - let reader = std::io::BufReader::new(std::fs::File::open(args.filename).unwrap()); - let mut xml_reader = quick_xml::NsReader::from_reader(reader); - - let context = nusamai_citygml::ParseContext::default(); - let cityobjs = match CityGMLReader::new(context).start_root(&mut xml_reader) { - Ok(mut st) => match toplevel_dispatcher(&mut st) { - Ok(items) => items, - Err(e) => panic!("Err: {:?}", e), - }, - Err(e) => panic!("Err: {:?}", e), - }; - - let geojson_features: Vec = cityobjs - .iter() - .flat_map(toplevel_cityobj_to_geojson_features) - .collect(); - - let geojson_feature_collection = geojson::FeatureCollection { - bbox: None, - features: geojson_features, - foreign_members: None, - }; - let geojson = geojson::GeoJson::from(geojson_feature_collection); - - let mut file = fs::File::create("out.geojson").unwrap(); - let mut writer = BufWriter::new(&mut file); - serde_json::to_writer(&mut writer, &geojson).unwrap(); -} diff --git a/nusamai/examples/gml2gpkg.rs b/nusamai/examples/gml2gpkg.rs deleted file mode 100644 index 6c6151cca..000000000 --- a/nusamai/examples/gml2gpkg.rs +++ /dev/null @@ -1,77 +0,0 @@ -use clap::Parser; -use nusamai_citygml::object::CityObject; -use nusamai_citygml::{CityGMLElement, CityGMLReader, ParseError, SubTreeReader}; -use std::io::BufRead; - -#[derive(Parser)] -struct Args { - #[clap(required = true)] - filename: String, -} - -fn toplevel_dispatcher( - st: &mut SubTreeReader, -) -> Result, ParseError> { - let mut cityobjs: Vec = vec![]; - - match st.parse_children(|st| match st.current_path() { - b"core:cityObjectMember" => { - let mut cityobj: nusamai_plateau::models::TopLevelCityObject = Default::default(); - cityobj.parse(st)?; - let geometries = st.collect_geometries(); - - if let Some(root) = cityobj.into_object() { - let obj = CityObject { root, geometries }; - cityobjs.push(obj); - } - - Ok(()) - } - b"gml:boundedBy" | b"app:appearanceMember" => { - st.skip_current_element()?; - Ok(()) - } - other => Err(ParseError::SchemaViolation(format!( - "Unrecognized element {}", - String::from_utf8_lossy(other) - ))), - }) { - Ok(_) => Ok(cityobjs), - Err(e) => { - println!("Err: {:?}", e); - Err(e) - } - } -} - -#[tokio::main] -async fn main() { - // Parse CityGML - - let args = Args::parse(); - - let reader = std::io::BufReader::new(std::fs::File::open(args.filename).unwrap()); - let mut xml_reader = quick_xml::NsReader::from_reader(reader); - - let context = nusamai_citygml::ParseContext::default(); - let cityobjs = match CityGMLReader::new(context).start_root(&mut xml_reader) { - Ok(mut st) => match toplevel_dispatcher(&mut st) { - Ok(items) => items, - Err(e) => panic!("Err: {:?}", e), - }, - Err(e) => panic!("Err: {:?}", e), - }; - - // GeoPackage - - let output_path = "output.gpkg"; - let handler = nusamai_gpkg::GpkgHandler::init(output_path).await.unwrap(); - for obj in &cityobjs { - let geometries = &obj.geometries; - if !geometries.multipolygon.is_empty() { - handler - .add_multi_polygon_feature(&geometries.vertices, &geometries.multipolygon) - .await; - } - } -} From 7e4f44097fd71ea8faf6261619c1bf9348a4c756 Mon Sep 17 00:00:00 2001 From: Taku Fukada Date: Fri, 5 Jan 2024 16:37:56 +0900 Subject: [PATCH 11/11] update facility.rs --- .../src/models/iur/uro/facility.rs | 729 ++++++++---------- 1 file changed, 311 insertions(+), 418 deletions(-) diff --git a/nusamai-plateau/src/models/iur/uro/facility.rs b/nusamai-plateau/src/models/iur/uro/facility.rs index 055eada91..3bd6b3c7e 100644 --- a/nusamai-plateau/src/models/iur/uro/facility.rs +++ b/nusamai-plateau/src/models/iur/uro/facility.rs @@ -1,163 +1,56 @@ -use nusamai_citygml::{citygml_property, citygml_data, CityGMLElement, Code, Measure, Date}; +use nusamai_citygml::{ + citygml_data, citygml_property, CityGMLElement, Code, Date, GYear, Length, Measure, +}; #[citygml_property(name = "uro:FacilityAttributeProperty")] pub enum FacilityAttributeProperty { - #[citygml(path = b"uro:RiverFacilityIdAttribute")] - RiverFacilityIdAttribute(RiverFacilityIdAttribute), - #[citygml(path = b"uro:CargoHandlingFacility")] CargoHandlingFacility(CargoHandlingFacility), - #[citygml(path = b"uro:CyberportMarinaAndPBS")] CyberportMarinaAndPBS(CyberportMarinaAndPBS), - - #[citygml(path = b"uro:FishingPortFacility")] - FishingPortFacilityAttribute(FishingPortFacility), - #[citygml(path = b"uro:FishingPortCapacity")] FishingPortCapacity(FishingPortCapacity), - #[citygml(path = b"uro:FishingPortFacility")] FishingPortFacility(FishingPortFacility), - #[citygml(path = b"uro:HarborFacility")] HarborFacility(HarborFacility), - #[citygml(path = b"uro:MaintenanceHistoryAttribute")] MaintenanceHistoryAttribute(MaintenanceHistoryAttribute), - #[citygml(path = b"uro:MooringFacility")] MooringFacility(MooringFacility), - #[citygml(path = b"uro:NavigationAssistanceFacility")] NavigationAssistanceFacility(NavigationAssistanceFacility), - - //抽象型なので、実装しない - // #[citygml(path = b"uro:PortAttribute")] - // PortAttribute(PortAttribute), - #[citygml(path = b"uro:PortEnvironmentalImprovementFacility")] PortEnvironmentalImprovementFacility(PortEnvironmentalImprovementFacility), - #[citygml(path = b"uro:PortManagementFacility")] PortManagementFacility(PortManagementFacility), - #[citygml(path = b"uro:PortPassengerFacility")] PortPassengerFacility(PortPassengerFacility), - #[citygml(path = b"uro:PortPollutionControlFacility")] PortPollutionControlFacility(PortPollutionControlFacility), - #[citygml(path = b"uro:PortProtectiveFacility")] PortProtectiveFacility(PortProtectiveFacility), - #[citygml(path = b"uro:PortStorageFacility")] PortStorageFacility(PortStorageFacility), - #[citygml(path = b"uro:PortTransportationFacility")] PortTransportationFacility(PortTransportationFacility), - #[citygml(path = b"uro:PortWasteTreatmentFacility")] PortWasteTreatmentFacility(PortWasteTreatmentFacility), - #[citygml(path = b"uro:PortWelfareFacility")] PortWelfareFacility(PortWelfareFacility), - #[citygml(path = b"uro:ShipServiceFacility")] ShipServiceFacility(ShipServiceFacility), } - -#[citygml_data(name = "uro:RiverFacilityIdAttribute")] -pub struct RiverFacilityIdAttribute { - #[citygml(path = b"uro:id")] - pub id: Option, - - #[citygml(path = b"uro:partId")] - pub part_id: Option, - - #[citygml(path = b"uro:branchId")] - pub branch_id: Option, - - #[citygml(path = b"uro:prefecture")] - pub prefecture: Vec, - - #[citygml(path = b"uro:city")] - pub city: Vec, - - #[citygml(path = b"uro:route")] - pub route: Option, - - #[citygml(path = b"uro:startPost")] - pub start_post: Option, - - #[citygml(path = b"uro:endPost")] - pub end_post: Option, - - #[citygml(path = b"uro:startLat")] - pub start_lat: Option, - - #[citygml(path = b"uro:startLong")] - pub start_long: Option, - - #[citygml(path = b"uro:alternativeName")] - pub alternative_name: Vec, - - #[citygml(path = b"uro:riverCode")] - pub river_code: Option, - - #[citygml(path = b"uro:riverName")] - pub river_name: Option, - - #[citygml(path = b"uro:sideType")] - pub side_type: Option, - - #[citygml(path = b"uro:leftPost")] - pub left_post: Option, - - #[citygml(path = b"uro:leftDistance")] - pub left_distance: Option, - - #[citygml(path = b"uro:rightPost")] - pub right_post: Option, - - #[citygml(path = b"uro:rightDistance")] - pub right_distance: Option, - - #[citygml(path = b"uro:leftStartPost")] - pub left_start_post: Option, - - #[citygml(path = b"uro:leftStartDistance")] - pub left_start_distance: Option, - - #[citygml(path = b"uro:leftEndPost")] - pub left_end_post: Option, - - #[citygml(path = b"uro:lefEndDistance")] - pub lef_end_distance: Option, - - #[citygml(path = b"uro:rightStartPost")] - pub right_start_post: Option, - - #[citygml(path = b"uro:rightStartDistance")] - pub right_start_distance: Option, - - #[citygml(path = b"uro:rightEndPost")] - pub right_end_post: Option, - - #[citygml(path = b"uro:rightEndDistance")] - pub right_end_distance: Option, -} - #[citygml_data(name = "uro:CargoHandlingFacility")] pub struct CargoHandlingFacility { #[citygml(path = b"uro:facilityId")] pub facility_id: Option, - #[citygml(path = b"uro:portFacilityDetailsType")] - pub port_facility_details_type: Option,//スキーマに存在しない + #[citygml(path = b"uro:portFacilityDetailsType", required)] + pub port_facility_details_type: Option, - #[citygml(path = b"uro:portName")] + #[citygml(path = b"uro:portName", required)] pub port_name: Option, #[citygml(path = b"uro:portStatus")] @@ -191,7 +84,7 @@ pub struct CargoHandlingFacility { pub packing_name: Option, #[citygml(path = b"uro:acquisitionYear")] - pub acquisition_year: Option, + pub acquisition_year: Option, #[citygml(path = b"uro:innerTotalFloorArea")] pub inner_total_floor_area: Option, @@ -216,14 +109,14 @@ pub struct CargoHandlingFacility { } #[citygml_data(name = "uro:CyberportMarinaAndPBS")] -pub struct CyberportMarinaAndPBS{ +pub struct CyberportMarinaAndPBS { #[citygml(path = b"uro:facilityId")] pub facility_id: Option, - #[citygml(path = b"uro:portFacilityDetailsType")] - pub port_facility_details_type: Option,//仕様書間違い + #[citygml(path = b"uro:portFacilityDetailsType", required)] + pub port_facility_details_type: Option, - #[citygml(path = b"uro:portName")] + #[citygml(path = b"uro:portName", required)] pub port_name: Option, #[citygml(path = b"uro:portStatus")] @@ -248,28 +141,28 @@ pub struct CyberportMarinaAndPBS{ pub obstructing_structures: Option, #[citygml(path = b"uro:mainPartLength")] - pub main_part_length: Option, + pub main_part_length: Option, #[citygml(path = b"uro:totalLength")] - pub total_length: Option, + pub total_length: Option, #[citygml(path = b"uro:waveDissipatorLength")] - pub wave_dissipator_length: Option, + pub wave_dissipator_length: Option, #[citygml(path = b"uro:facilityWidth")] - pub facility_width: Option, + pub facility_width: Option, #[citygml(path = b"uro:apronWidth")] - pub apron_width: Option, + pub apron_width: Option, #[citygml(path = b"uro:restrictionStructure")] pub restriction_structure: Option, #[citygml(path = b"uro:plannedDepth")] - pub planned_depth: Option, + pub planned_depth: Option, #[citygml(path = b"uro:currentDepth")] - pub current_depth: Option, + pub current_depth: Option, #[citygml(path = b"uro:innerTotalFloorArea")] pub inner_total_floor_area: Option, @@ -284,7 +177,7 @@ pub struct CyberportMarinaAndPBS{ pub outer_site_area: Option, #[citygml(path = b"uro:ceilingHeight")] - pub ceiling_height: Option, + pub ceiling_height: Option, #[citygml(path = b"uro:gravityResistant")] pub gravity_resistant: Option, @@ -323,13 +216,13 @@ pub struct CyberportMarinaAndPBS{ pub lifesaving_number: Option, #[citygml(path = b"uro:bumper")] - pub bumper: Option, + pub bumper: Option, #[citygml(path = b"uro:numberOfVehicleBoardings")] pub number_of_vehicle_boardings: Option, #[citygml(path = b"uro:vehicleBoardingWidth")] - pub vehicle_boarding_width: Option, + pub vehicle_boarding_width: Option, #[citygml(path = b"uro:shipType")] pub ship_type: Option, @@ -362,16 +255,159 @@ pub struct CyberportMarinaAndPBS{ pub note: Option, } +#[citygml_data(name = "uro:FishingPortCapacity")] +pub struct FishingPortCapacity { + #[citygml(path = b"uro:facilityId")] + pub facility_id: Option, + + #[citygml(path = b"uro:capacity")] + pub capacity: Option, + + #[citygml(path = b"uro:weightCapacity")] + pub weight_capacity: Option, + + #[citygml(path = b"uro:hullForm")] + pub hull_form: Option, + + #[citygml(path = b"uro:shipNumber")] + pub ship_number: Option, + + #[citygml(path = b"uro:waterDepth-2m")] + pub water_depth_2m: Option, + + #[citygml(path = b"uro:waterDepth2-3m")] + pub water_depth2_3m: Option, + + #[citygml(path = b"uro:waterDepth3-6m")] + pub water_depth3_6m: Option, + + #[citygml(path = b"uro:waterDepth6-m")] + pub water_depth6_m: Option, + + #[citygml(path = b"uro:heightAboveAWL")] + pub height_above_a_w_l: Option, + + #[citygml(path = b"uro:heightOnFoundations")] + pub height_on_foundations: Option, + + #[citygml(path = b"uro:luminousRange")] + pub luminous_range: Option, + + #[citygml(path = b"uro:luminousColor")] + pub luminous_color: Option, + + #[citygml(path = b"uro:candlePower")] + pub candle_power: Option, + + #[citygml(path = b"uro:lightType")] + pub light_type: Option, + + #[citygml(path = b"uro:period")] + pub period: Option, + + #[citygml(path = b"uro:maximumGroundingWeight")] + pub maximum_grounding_weight: Option, + + #[citygml(path = b"uro:handleablePower")] + pub handleable_power: Option, + + #[citygml(path = b"uro:maximumWaterSupply")] + pub maximum_water_supply: Option, + + #[citygml(path = b"uro:maximumRefueling")] + pub maximum_refueling: Option, + + #[citygml(path = b"uro:people")] + pub people: Option, + + #[citygml(path = b"uro:other")] + pub other: Option, +} + +#[citygml_data(name = "uro:FishingPortFacility")] +pub struct FishingPortFacility { + #[citygml(path = b"uro:facilityId")] + pub facility_id: Option, + + #[citygml(path = b"uro:facilityDetailsType", required)] + pub facility_details_type: Option, + + #[citygml(path = b"uro:portName", required)] + pub port_name: Option, + + #[citygml(path = b"uro:portType", required)] + pub port_type: Option, + + #[citygml(path = b"uro:address", required)] + pub address: Option, + + #[citygml(path = b"uro:designatedArea", required)] + pub designated_area: Option, + + #[citygml(path = b"uro:designation")] + pub designation: Vec, + + #[citygml(path = b"uro:designatedAdministrator")] + pub designated_administrator: Vec, + + #[citygml(path = b"uro:referenceNumber")] + pub reference_number: Vec, + + #[citygml(path = b"uro:grantType")] + pub grant_type: Option, + + #[citygml(path = b"uro:administrator")] + pub administrator: Option, + + #[citygml(path = b"uro:facilityManager")] + pub facility_manager: Option, + + #[citygml(path = b"uro:structureType")] + pub structure_type: Option, + + #[citygml(path = b"uro:mainMaterial")] + pub main_material: Option, + + #[citygml(path = b"uro:otherStructure")] + pub other_structure: Option, + + #[citygml(path = b"uro:length")] + pub length: Option, + + #[citygml(path = b"uro:width")] + pub width: Option, + + #[citygml(path = b"uro:ceilingHeight")] + pub ceiling_height: Option, + + #[citygml(path = b"uro:depth")] + pub depth: Option, + + #[citygml(path = b"uro:area")] + pub area: Option, + + #[citygml(path = b"uro:otherSizeDescription")] + pub other_size_description: Option, + + #[citygml(path = b"uro:dateOfConstructionOrAcquisition")] + pub date_of_construction_or_acquisition: Option, + + #[citygml(path = b"uro:cost")] + pub cost: Option, + + #[citygml(path = b"uro:note")] + pub note: Option, +} #[citygml_data(name = "uro:HarborFacility")] pub struct HarborFacility { #[citygml(path = b"uro:facilityId")] pub facility_id: Option, - #[citygml(path = b"uro:portFacilityDetailsType")]//仕様書間違い + #[citygml(path = b"uro:portFacilityDetailsType", required)] pub port_facility_details_type: Option, - #[citygml(path = b"uro:portName")] + #[citygml(path = b"uro:portName", required)] pub port_name: Option, #[citygml(path = b"uro:portStatus")] @@ -396,22 +432,22 @@ pub struct HarborFacility { pub obstructing_structures: Option, #[citygml(path = b"uro:structuralLimitations")] - pub structural_limitations: Option, + pub structural_limitations: Option, #[citygml(path = b"uro:length")] - pub length: Option, + pub length: Option, #[citygml(path = b"uro:minimumWidth")] - pub minimum_width: Option, + pub minimum_width: Option, #[citygml(path = b"uro:maximumWidth")] - pub maximum_width: Option, + pub maximum_width: Option, #[citygml(path = b"uro:plannedDepth")] - pub planned_depth: Option, + pub planned_depth: Option, #[citygml(path = b"uro:currentDepth")] - pub current_depth: Option, + pub current_depth: Option, #[citygml(path = b"uro:isDredged")] pub is_dredged: Option, @@ -440,14 +476,14 @@ pub struct MaintenanceHistoryAttribute { #[citygml(path = b"uro:facilityId")] pub facility_id: Option, - #[citygml(path = b"uro:maintenanceType")] + #[citygml(path = b"uro:maintenanceType", required)] pub maintenance_type: Option, #[citygml(path = b"uro:maintenanceFiscalYear")] - pub maintenance_fiscal_year: Option, + pub maintenance_fiscal_year: Option, #[citygml(path = b"uro:maintenanceYear")] - pub maintenance_year: Option, + pub maintenance_year: Option, #[citygml(path = b"uro:maintenanceDate")] pub maintenance_date: Option, @@ -464,10 +500,10 @@ pub struct MooringFacility { #[citygml(path = b"uro:facilityId")] pub facility_id: Option, - #[citygml(path = b"uro:portFacilityDetailsType")]//仕様書間違い - pub port_facility_details_type: Option, + #[citygml(path = b"uro:portFacilityDetailsType", required)] + pub port_facility_details_type: Option, - #[citygml(path = b"uro:portName")] + #[citygml(path = b"uro:portName", required)] pub port_name: Option, #[citygml(path = b"uro:portStatus")] @@ -486,28 +522,28 @@ pub struct MooringFacility { pub degradation_level: Option, #[citygml(path = b"uro:mainPartLength")] - pub main_part_length: Option, + pub main_part_length: Option, #[citygml(path = b"uro:totalLength")] - pub total_length: Option, + pub total_length: Option, #[citygml(path = b"uro:facilityWidth")] - pub facility_width: Option, + pub facility_width: Option, #[citygml(path = b"uro:apronWidth")] - pub apron_width: Option, + pub apron_width: Option, #[citygml(path = b"uro:plannedDepth")] - pub planned_depth: Option, + pub planned_depth: Option, #[citygml(path = b"uro:currentDepth")] - pub current_depth: Option, + pub current_depth: Option, #[citygml(path = b"uro:area")] pub area: Option, #[citygml(path = b"uro:ceilingHeight")] - pub ceiling_height: Option, + pub ceiling_height: Option, #[citygml(path = b"uro:gravityResistant")] pub gravity_resistant: Option, @@ -540,13 +576,13 @@ pub struct MooringFacility { pub number_of_lifesaving_appliances: Option, #[citygml(path = b"uro:bumper")] - pub bumper: Option, + pub bumper: Option, #[citygml(path = b"uro:numberOfVehicleBoardings")] pub number_of_vehicle_boardings: Option, #[citygml(path = b"uro:vehicleBoardingWidth")] - pub vehicle_boarding_width: Option, + pub vehicle_boarding_width: Option, #[citygml(path = b"uro:shipType")] pub ship_type: Option, @@ -578,10 +614,10 @@ pub struct NavigationAssistanceFacility { #[citygml(path = b"uro:facilityId")] pub facility_id: Option, - #[citygml(path = b"uro:portFacilityDetailsType")] - pub port_facility_details_type: Option,//仕様書間違い + #[citygml(path = b"uro:portFacilityDetailsType", required)] + pub port_facility_details_type: Option, - #[citygml(path = b"uro:portName")] + #[citygml(path = b"uro:portName", required)] pub port_name: Option, #[citygml(path = b"uro:portStatus")] @@ -610,14 +646,14 @@ pub struct NavigationAssistanceFacility { } #[citygml_data(name = "uro:PortEnvironmentalImprovementFacility")] -pub struct PortEnvironmentalImprovementFacility{ +pub struct PortEnvironmentalImprovementFacility { #[citygml(path = b"uro:facilityId")] pub facility_id: Option, - #[citygml(path = b"uro:portFacilityDetailsType")] - pub port_facility_details_type: Option,//仕様書間違い + #[citygml(path = b"uro:portFacilityDetailsType", required)] + pub port_facility_details_type: Option, - #[citygml(path = b"uro:portName")] + #[citygml(path = b"uro:portName", required)] pub port_name: Option, #[citygml(path = b"uro:portStatus")] @@ -639,7 +675,7 @@ pub struct PortEnvironmentalImprovementFacility{ pub usage: Option, #[citygml(path = b"uro:length")] - pub length: Option, + pub length: Option, #[citygml(path = b"uro:area")] pub area: Option, @@ -657,15 +693,69 @@ pub struct PortEnvironmentalImprovementFacility{ pub note: Option, } +#[citygml_data(name = "uro:PortManagementFacility")] +pub struct PortManagementFacility { + #[citygml(path = b"uro:facilityId")] + pub facility_id: Option, + + #[citygml(path = b"uro:portFacilityDetailsType", required)] + pub port_facility_details_type: Option, + + #[citygml(path = b"uro:portName", required)] + pub port_name: Option, + + #[citygml(path = b"uro:portStatus")] + pub port_status: Option, + + #[citygml(path = b"uro:district")] + pub district: Option, + + #[citygml(path = b"uro:grantType")] + pub grant_type: Option, + + #[citygml(path = b"uro:isDesignated")] + pub is_designated: Option, + + #[citygml(path = b"uro:degradationLevel")] + pub degradation_level: Option, + + #[citygml(path = b"uro:totalFloorArea")] + pub total_floor_area: Option, + + #[citygml(path = b"uro:numberOfShipTypes")] + pub number_of_ship_types: Option, + + #[citygml(path = b"uro:unitOfShipType")] + pub unit_of_ship_type: Option, + + #[citygml(path = b"uro:loadingCapacity")] + pub loading_capacity: Option, + + #[citygml(path = b"uro:acquisitionYear")] + pub acquisition_year: Option, + + #[citygml(path = b"uro:usage")] + pub usage: Option, + + #[citygml(path = b"uro:totalCost")] + pub total_cost: Option, + + #[citygml(path = b"uro:subsidy")] + pub subsidy: Option, + + #[citygml(path = b"uro:note")] + pub note: Option, +} + #[citygml_data(name = "uro:PortPassengerFacility")] -pub struct PortPassengerFacility{ +pub struct PortPassengerFacility { #[citygml(path = b"uro:facilityId")] pub facility_id: Option, - #[citygml(path = b"uro:portFacilityDetailsType")] - pub port_facility_details_type: Option,//仕様書間違い + #[citygml(path = b"uro:portFacilityDetailsType", required)] + pub port_facility_details_type: Option, - #[citygml(path = b"uro:portName")] + #[citygml(path = b"uro:portName", required)] pub port_name: Option, #[citygml(path = b"uro:portStatus")] @@ -684,10 +774,10 @@ pub struct PortPassengerFacility{ pub degradation_level: Option, #[citygml(path = b"uro:length")] - pub length: Option, + pub length: Option, #[citygml(path = b"uro:width")] - pub width: Option, + pub width: Option, #[citygml(path = b"uro:mainMaterial")] pub main_material: Option, @@ -696,7 +786,7 @@ pub struct PortPassengerFacility{ pub total_floor_area: Option, #[citygml(path = b"uro:acquisitionYear")] - pub acquisition_year: Option, + pub acquisition_year: Option, #[citygml(path = b"uro:totalCost")] pub total_cost: Option, @@ -706,14 +796,14 @@ pub struct PortPassengerFacility{ } #[citygml_data(name = "uro:PortPollutionControlFacility")] -pub struct PortPollutionControlFacility{ +pub struct PortPollutionControlFacility { #[citygml(path = b"uro:facilityId")] pub facility_id: Option, - #[citygml(path = b"uro:portFacilityDetailsType")] - pub port_facility_details_type: Option,//仕様書間違い + #[citygml(path = b"uro:portFacilityDetailsType", required)] + pub port_facility_details_type: Option, - #[citygml(path = b"uro:portName")] + #[citygml(path = b"uro:portName", required)] pub port_name: Option, #[citygml(path = b"uro:portStatus")] @@ -732,10 +822,10 @@ pub struct PortPollutionControlFacility{ pub degradation_level: Option, #[citygml(path = b"uro:length")] - pub length: Option, + pub length: Option, #[citygml(path = b"uro:width")] - pub width: Option, + pub width: Option, #[citygml(path = b"uro:crossSectionalArea")] pub cross_sectional_area: Option, @@ -744,7 +834,7 @@ pub struct PortPollutionControlFacility{ pub area: Option, #[citygml(path = b"uro:height")] - pub height: Option, + pub height: Option, #[citygml(path = b"uro:mainMaterial")] pub main_material: Option, @@ -760,14 +850,14 @@ pub struct PortPollutionControlFacility{ } #[citygml_data(name = "uro:PortProtectiveFacility")] -pub struct PortProtectiveFacility{ +pub struct PortProtectiveFacility { #[citygml(path = b"uro:facilityId")] pub facility_id: Option, - #[citygml(path = b"uro:portFacilityDetailsType")] - pub port_facility_details_type: Option,//仕様書間違い + #[citygml(path = b"uro:portFacilityDetailsType", required)] + pub port_facility_details_type: Option, - #[citygml(path = b"uro:portName")] + #[citygml(path = b"uro:portName", required)] pub port_name: Option, #[citygml(path = b"uro:portStatus")] @@ -802,14 +892,14 @@ pub struct PortProtectiveFacility{ } #[citygml_data(name = "uro:PortStorageFacility")] -pub struct PortStorageFacility{ +pub struct PortStorageFacility { #[citygml(path = b"uro:facilityId")] pub facility_id: Option, - #[citygml(path = b"uro:portFacilityDetailsType")] + #[citygml(path = b"uro:portFacilityDetailsType", required)] pub port_facility_details_type: Option, - #[citygml(path = b"uro:portName")] + #[citygml(path = b"uro:portName", required)] pub port_name: Option, #[citygml(path = b"uro:portStatus")] @@ -859,14 +949,14 @@ pub struct PortStorageFacility{ } #[citygml_data(name = "uro:PortTransportationFacility")] -pub struct PortTransportationFacility{ +pub struct PortTransportationFacility { #[citygml(path = b"uro:facilityId")] pub facility_id: Option, - #[citygml(path = b"uro:portFacilityDetailsType")] + #[citygml(path = b"uro:portFacilityDetailsType", required)] pub port_facility_details_type: Option, - #[citygml(path = b"uro:portName")] + #[citygml(path = b"uro:portName", required)] pub port_name: Option, #[citygml(path = b"uro:portStatus")] @@ -891,13 +981,13 @@ pub struct PortTransportationFacility{ pub starting_point: Option, #[citygml(path = b"uro:length")] - pub length: Option, + pub length: Option, #[citygml(path = b"uro:area")] pub area: Option, #[citygml(path = b"uro:beddingWidth")] - pub bedding_width: Option, + pub bedding_width: Option, #[citygml(path = b"uro:numberOfLanes")] pub number_of_lanes: Option, @@ -912,16 +1002,16 @@ pub struct PortTransportationFacility{ pub route_type: Option, #[citygml(path = b"uro:heightToDigit")] - pub height_to_digit: Option, + pub height_to_digit: Option, #[citygml(path = b"uro:heightLimit")] - pub height_limit: Option, + pub height_limit: Option, #[citygml(path = b"uro:minimumWidth")] - pub minimum_width: Option, + pub minimum_width: Option, #[citygml(path = b"uro:minimumDepth")] - pub minimum_depth: Option, + pub minimum_depth: Option, #[citygml(path = b"uro:numberOfAircraftParkingSpaces")] pub number_of_aircraft_parking_spaces: Option, @@ -943,14 +1033,14 @@ pub struct PortTransportationFacility{ } #[citygml_data(name = "uro:PortWasteTreatmentFacility")] -pub struct PortWasteTreatmentFacility{ +pub struct PortWasteTreatmentFacility { #[citygml(path = b"uro:facilityId")] pub facility_id: Option, - #[citygml(path = b"uro:portFacilityDetailsType")] + #[citygml(path = b"uro:portFacilityDetailsType", required)] pub port_facility_details_type: Option, - #[citygml(path = b"uro:portName")] + #[citygml(path = b"uro:portName", required)] pub port_name: Option, #[citygml(path = b"uro:portStatus")] @@ -972,19 +1062,19 @@ pub struct PortWasteTreatmentFacility{ pub structure_type: Option, #[citygml(path = b"uro:perimeter")] - pub perimeter: Option, + pub perimeter: Option, #[citygml(path = b"uro:mainPartLength")] - pub main_part_length: Option, + pub main_part_length: Option, #[citygml(path = b"uro:innerShoreLength")] - pub inner_shore_length: Option, + pub inner_shore_length: Option, #[citygml(path = b"uro:ceilingHeight")] - pub ceiling_height: Option, + pub ceiling_height: Option, #[citygml(path = b"uro:waveDissipatorLength")] - pub wave_dissipator_length: Option, + pub wave_dissipator_length: Option, #[citygml(path = b"uro:mainMaterial")] pub main_material: Option, @@ -1008,7 +1098,7 @@ pub struct PortWasteTreatmentFacility{ pub unit_of_receiving_capacity: Option, #[citygml(path = b"uro:acquisitionYear")] - pub acquisition_year: Option, + pub acquisition_year: Option, #[citygml(path = b"uro:totalCost")] pub total_cost: Option, @@ -1019,72 +1109,16 @@ pub struct PortWasteTreatmentFacility{ #[citygml(path = b"uro:note")] pub note: Option, } -#[citygml_data(name = "uro:ShipServiceFacility")] -pub struct ShipServiceFacility{ - #[citygml(path = b"uro:facilityId")] - pub facility_id: Option, - #[citygml(path = b"uro:portFacilityDetailsType")] - pub port_facility_details_type: Option, - - #[citygml(path = b"uro:portName")] - pub port_name: Option, - - #[citygml(path = b"uro:portStatus")] - pub port_status: Option, - - #[citygml(path = b"uro:district")] - pub district: Option, - - #[citygml(path = b"uro:grantType")] - pub grant_type: Option, - - #[citygml(path = b"uro:isDesignated")] - pub is_designated: Option, - - #[citygml(path = b"uro:degradationLevel")] - pub degradation_level: Option, - - #[citygml(path = b"uro:shipType")] - pub ship_type: Option, - - #[citygml(path = b"uro:supplyAbility")] - pub supply_ability: Option, - - #[citygml(path = b"uro:supplyAbilityUnit")] - pub supply_ability_unit: Option, - - #[citygml(path = b"uro:mooringPlace")] - pub mooring_place: Option, - - #[citygml(path = b"uro:length")] - pub length: Option, - - #[citygml(path = b"uro:width")] - pub width: Option, - - #[citygml(path = b"uro:area")] - pub area: Option, - - #[citygml(path = b"uro:acquisitionYear")] - pub acquisition_year: Option, - - #[citygml(path = b"uro:totalCost")] - pub total_cost: Option, - - #[citygml(path = b"uro:note")] - pub note: Option, -} - -#[citygml_data(name = "uro:PortManagementFacility")] -pub struct PortManagementFacility{ +#[citygml_data(name = "uro:PortWelfareFacility")] +pub struct PortWelfareFacility { #[citygml(path = b"uro:facilityId")] pub facility_id: Option, - #[citygml(path = b"uro:portFacilityDetailsType")] + #[citygml(path = b"uro:portFacilityDetailsType", required)] pub port_facility_details_type: Option, - #[citygml(path = b"uro:portName")] + #[citygml(path = b"uro:portName", required)] pub port_name: Option, #[citygml(path = b"uro:portStatus")] @@ -1105,40 +1139,22 @@ pub struct PortManagementFacility{ #[citygml(path = b"uro:totalFloorArea")] pub total_floor_area: Option, - #[citygml(path = b"uro:numberOfShipTypes")] - pub number_of_ship_types: Option, - - #[citygml(path = b"uro:unitOfShipType")] - pub unit_of_ship_type: Option, - - #[citygml(path = b"uro:loadingCapacity")] - pub loading_capacity: Option, - - #[citygml(path = b"uro:acquisitionYear")] - pub acquisition_year: Option, - - #[citygml(path = b"uro:usage")] - pub usage: Option, - #[citygml(path = b"uro:totalCost")] pub total_cost: Option, - #[citygml(path = b"uro:subsidy")] - pub subsidy: Option, - #[citygml(path = b"uro:note")] pub note: Option, } -#[citygml_data(name = "uro:PortWelfareFacility")] -pub struct PortWelfareFacility{ +#[citygml_data(name = "uro:ShipServiceFacility")] +pub struct ShipServiceFacility { #[citygml(path = b"uro:facilityId")] pub facility_id: Option, - #[citygml(path = b"uro:portFacilityDetailsType")] + #[citygml(path = b"uro:portFacilityDetailsType", required)] pub port_facility_details_type: Option, - #[citygml(path = b"uro:portName")] + #[citygml(path = b"uro:portName", required)] pub port_name: Option, #[citygml(path = b"uro:portStatus")] @@ -1156,156 +1172,33 @@ pub struct PortWelfareFacility{ #[citygml(path = b"uro:degradationLevel")] pub degradation_level: Option, - #[citygml(path = b"uro:totalFloorArea")] - pub total_floor_area: Option, - - #[citygml(path = b"uro:totalCost")] - pub total_cost: Option, - - #[citygml(path = b"uro:note")] - pub note: Option, -} - -#[citygml_data(name = "uro:FishingPortCapacity")] -pub struct FishingPortCapacity { - #[citygml(path = b"uro:facilityId")] - pub facility_id: Option, - - #[citygml(path = b"uro:capacity")] - pub capacity: Option, - - #[citygml(path = b"uro:weightCapacity")] - pub weight_capacity: Option, - - #[citygml(path = b"uro:hullForm")] - pub hull_form: Option, - - #[citygml(path = b"uro:shipNumber")] - pub ship_number: Option, - - #[citygml(path = b"uro:waterDepth-2m")] - pub water_depth_2m: Option, - - #[citygml(path = b"uro:waterDepth2-3m")] - pub water_depth2_3m: Option, - - #[citygml(path = b"uro:waterDepth3-6m")] - pub water_depth3_6m: Option, - - #[citygml(path = b"uro:waterDepth6-m")] - pub water_depth6m: Option, - - #[citygml(path = b"uro:heightAboveAWL")] - pub height_above_a_w_l: Option, - - #[citygml(path = b"uro:heightOnFoundations")] - pub height_on_foundations: Option, - - #[citygml(path = b"uro:luminousRange")] - pub luminous_range: Option, - - #[citygml(path = b"uro:luminousColor")] - pub luminous_color: Option, - - #[citygml(path = b"uro:candlePower")] - pub candle_power: Option, - - #[citygml(path = b"uro:lightType")] - pub light_type: Option, - - #[citygml(path = b"uro:period")] - pub period: Option, - - #[citygml(path = b"uro:maximumGroundingWeight")] - pub maximum_grounding_weight: Option, - - #[citygml(path = b"uro:handleablePower")] - pub handleable_power: Option, - - #[citygml(path = b"uro:maximumWaterSupply")] - pub maximum_water_supply: Option, - - #[citygml(path = b"uro:maximumRefueling")] - pub maximum_refueling: Option, - - #[citygml(path = b"uro:people")] - pub people: Option, - - #[citygml(path = b"uro:other")] - pub other: Option, -} - -#[citygml_data(name = "uro:FishingPortFacility")] -pub struct FishingPortFacility { - #[citygml(path = b"uro:facilityId")] - pub facility_id: Option, - - #[citygml(path = b"uro:facilityDetailsType")] - pub facility_details_type: Option, - - #[citygml(path = b"uro:portName")] - pub port_name: Option, - - #[citygml(path = b"uro:portType")] - pub port_type: Option, - - #[citygml(path = b"uro:address")] - pub address: Option, - - #[citygml(path = b"uro:designatedArea")] - pub designated_area: Option, - - #[citygml(path = b"uro:designation")] - pub designation: Vec, - - #[citygml(path = b"uro:designatedAdministrator")] - pub designated_administrator: Vec, - - #[citygml(path = b"uro:referenceNumber")] - pub reference_number: Vec, - - #[citygml(path = b"uro:grantType")] - pub grant_type: Option, - - #[citygml(path = b"uro:administrator")] - pub administrator: Option, - - #[citygml(path = b"uro:facilityManager")] - pub facility_manager: Option, + #[citygml(path = b"uro:shipType")] + pub ship_type: Option, - #[citygml(path = b"uro:structureType")] - pub structure_type: Option, + #[citygml(path = b"uro:supplyAbility")] + pub supply_ability: Option, - #[citygml(path = b"uro:mainMaterial")] - pub main_material: Option, + #[citygml(path = b"uro:supplyAbilityUnit")] + pub supply_ability_unit: Option, - #[citygml(path = b"uro:otherStructure")] - pub other_structure: Option, + #[citygml(path = b"uro:mooringPlace")] + pub mooring_place: Option, #[citygml(path = b"uro:length")] - pub length: Option, + pub length: Option, #[citygml(path = b"uro:width")] - pub width: Option, - - #[citygml(path = b"uro:ceilingHeight")] - pub ceiling_height: Option, - - #[citygml(path = b"uro:depth")] - pub depth: Option, + pub width: Option, #[citygml(path = b"uro:area")] pub area: Option, - #[citygml(path = b"uro:otherSizeDescription")] - pub other_size_description: Option, - - #[citygml(path = b"uro:dateOfConstructionOrAcquisition")] - pub date_of_construction_or_acquisition: Option, + #[citygml(path = b"uro:acquisitionYear")] + pub acquisition_year: Option, - #[citygml(path = b"uro:cost")] - pub cost: Option, + #[citygml(path = b"uro:totalCost")] + pub total_cost: Option, #[citygml(path = b"uro:note")] pub note: Option, -} \ No newline at end of file +}