Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Multiplicity of Relationships (Lights and Transponder Beacons) in FC 1.2.0 #114

Closed
kusala9 opened this issue Feb 9, 2024 · 12 comments
Closed

Comments

@kusala9
Copy link

kusala9 commented Feb 9, 2024

There seems to be three mandatory relationships required for LightAllAround according to the latest FC 1.2.0

Mandatory Feature Bindings from the 1.2.0 FC for LightAllAround. this would require one from each group to be associated. They also all have the same asssociation and role, so could all be combined. DCEG doesn't mandate any relationships at all.

Seems to also affect Fog, Sectored and Air Obstruction Lights too.

image

                  <S100FC:featureBinding roleType="composition">
                        <S100FC:multiplicity>
                              <S100Base:lower>1</S100Base:lower>
                              <S100Base:upper xsi:nil="false" infinite="false">1</S100Base:upper>
                        </S100FC:multiplicity>
                        <S100FC:association ref="StructureEquipment"/>
                        <S100FC:role ref="supportedBy"/>
                        <S100FC:featureType ref="Bridge"/>
                        <S100FC:featureType ref="Building"/>
                        <S100FC:featureType ref="Crane"/>
                        <S100FC:featureType ref="CardinalBeacon"/>
                        <S100FC:featureType ref="CardinalBuoy"/>
                        <S100FC:featureType ref="Conveyor"/>
                        <S100FC:featureType ref="Dolphin"/>
                        <S100FC:featureType ref="EmergencyWreckMarkingBuoy"/>
                        <S100FC:featureType ref="FishingFacility"/>
                        <S100FC:featureType ref="FloatingDock"/>
                        <S100FC:featureType ref="FortifiedStructure"/>
                        <S100FC:featureType ref="Hulk"/>
                        <S100FC:featureType ref="InstallationBuoy"/>
                        <S100FC:featureType ref="IsolatedDangerBeacon"/>
                        <S100FC:featureType ref="IsolatedDangerBuoy"/>
                        <S100FC:featureType ref="Landmark"/>
                        <S100FC:featureType ref="LateralBeacon"/>
                        <S100FC:featureType ref="LateralBuoy"/>
                        <S100FC:featureType ref="LightFloat"/>
                        <S100FC:featureType ref="LightVessel"/>
                        <S100FC:featureType ref="MooringBuoy"/>
                        <S100FC:featureType ref="OffshorePlatform"/>
                        <S100FC:featureType ref="Pile"/>
                        <S100FC:featureType ref="PipelineOverhead"/>
                        <S100FC:featureType ref="Pontoon"/>
                        <S100FC:featureType ref="PylonBridgeSupport"/>
                        <S100FC:featureType ref="SafeWaterBeacon"/>
                        <S100FC:featureType ref="SafeWaterBuoy"/>
                        <S100FC:featureType ref="ShorelineConstruction"/>
                        <S100FC:featureType ref="SiloTank"/>
                        <S100FC:featureType ref="SpanFixed"/>
                        <S100FC:featureType ref="SpanOpening"/>
                        <S100FC:featureType ref="SpecialPurposeGeneralBeacon"/>
                        <S100FC:featureType ref="SpecialPurposeGeneralBuoy"/>
                        <S100FC:featureType ref="WindTurbine"/>
                        <S100FC:featureType ref="Wreck"/>
                  </S100FC:featureBinding>
                  <S100FC:featureBinding roleType="composition">
                        <S100FC:multiplicity>
                              <S100Base:lower>1</S100Base:lower>
                              <S100Base:upper xsi:nil="false" infinite="false">1</S100Base:upper>
                        </S100FC:multiplicity>
                        <S100FC:association ref="StructureEquipment"/>
                        <S100FC:role ref="supportedBy"/>
                        <S100FC:featureType ref="LightAllAround"/>
                        <S100FC:featureType ref="LightSectored"/>
                  </S100FC:featureBinding>
 
                  <S100FC:featureBinding roleType="composition">
                        <S100FC:multiplicity>
                              <S100Base:lower>1</S100Base:lower>
                              <S100Base:upper xsi:nil="false" infinite="false">1</S100Base:upper>
                        </S100FC:multiplicity>
                        <S100FC:association ref="StructureEquipment"/>
                        <S100FC:role ref="supportedBy"/>
                        <S100FC:featureType ref="Daymark"/>
                  </S100FC:featureBinding>
@kusala9
Copy link
Author

kusala9 commented Feb 9, 2024

RadarTransponderBeacon has the same affliction - mandatory relationships which aren't in the DCEG.
Daymark has mandatory relationships which aren't in the DCEG. Composition/SupportedBy

@kusala9 kusala9 changed the title Multiplicity of Lights in FC 1.2.0 Multiplicity of Relationships (Lights and Transponder Beacons) in FC 1.2.0 Feb 11, 2024
@kusala9
Copy link
Author

kusala9 commented Feb 11, 2024

These are all Composition/StructureEquipment and role SupportedBy so they shouldn't be different groups, they should all be a single F->F relationship with the features in a single list. Not sure why they've been split into subgroups. It's not a validation problem but it's inconsistent and it makes automated validation and editing a problem as they have to be joined together first.

@kusala9
Copy link
Author

kusala9 commented Feb 12, 2024

CautionArea. FC 1.2.0 says every CautionArea must have at least one association to an ASL or TSS.

@kusala9
Copy link
Author

kusala9 commented Feb 12, 2024

TrafficSeparationScheme. Seems to have mandatory relationships in 4 associations.

@kusala9
Copy link
Author

kusala9 commented Feb 12, 2024

Fairway.

@kusala9
Copy link
Author

kusala9 commented Feb 12, 2024

FogSignal (I think)

@kusala9
Copy link
Author

kusala9 commented Feb 14, 2024

signalStationWarning and signalStastionTraffic. All seem to be composition relationships set to 1

@kusala9
Copy link
Author

kusala9 commented Feb 14, 2024

RangeSystem
RangeSystem (componentOf) seems to have disappeared (or wasn't in 1.1 anyway).

@kusala9
Copy link
Author

kusala9 commented Feb 14, 2024

I automated the search, eventually. Below is a list of all duplicate relationships (i.e. the same role/association/roletype) and also any mandatory relationships (some I think are ok, e.g. TextPlacement and IslandAggregation). These should all be fixed in the FC prior to 2.0.0 (and, really, in the 1.2.X timeframe as they affect validation of any test data). Quite a few of the mandatories are fixed in the 1.2.X that is in the PC repo. I may fix the grouping issues too, time permitting. If I can find someone I will get the other issues fixed too.

F UpdateInformation: WARNING: Mandatory relationship ASSOCIATION:UpdatedInformation:identifies [178 features ]
F IslandGroup: WARNING: Mandatory relationship ASSOCIATION:IslandAggregation:consistsOf [2 features ]
F Building: ERROR - ASSOCIATION:StructureEquipment:supports already exists for this feature
F Building: ERROR - ASSOCIATION:StructureEquipment:supports already exists for this feature
F Bridge: ERROR - ASSOCIATION:StructureEquipment:supports already exists for this feature
F Bridge: ERROR - ASSOCIATION:StructureEquipment:supports already exists for this feature
F SpanFixed: ERROR - ASSOCIATION:StructureEquipment:supports already exists for this feature
F SpanFixed: ERROR - ASSOCIATION:StructureEquipment:supports already exists for this feature
F SpanOpening: ERROR - ASSOCIATION:StructureEquipment:supports already exists for this feature
F SpanOpening: ERROR - ASSOCIATION:StructureEquipment:supports already exists for this feature
F Conveyor: ERROR - ASSOCIATION:StructureEquipment:supports already exists for this feature
F Conveyor: ERROR - ASSOCIATION:StructureEquipment:supports already exists for this feature
F PipelineOverhead: ERROR - ASSOCIATION:StructureEquipment:supports already exists for this feature
F PipelineOverhead: ERROR - ASSOCIATION:StructureEquipment:supports already exists for this feature
F PylonBridgeSupport: ERROR - ASSOCIATION:StructureEquipment:supports already exists for this feature
F PylonBridgeSupport: ERROR - ASSOCIATION:StructureEquipment:supports already exists for this feature
F PylonBridgeSupport: ERROR - ASSOCIATION:StructureEquipment:supports already exists for this feature
F Landmark: ERROR - ASSOCIATION:StructureEquipment:supports already exists for this feature
F Landmark: ERROR - ASSOCIATION:StructureEquipment:supports already exists for this feature
F Landmark: ERROR - ASSOCIATION:StructureEquipment:supports already exists for this feature
F SiloTank: ERROR - ASSOCIATION:StructureEquipment:supports already exists for this feature
F WindTurbine: ERROR - ASSOCIATION:StructureEquipment:supports already exists for this feature
F WindTurbine: ERROR - ASSOCIATION:StructureEquipment:supports already exists for this feature
F FortifiedStructure: ERROR - ASSOCIATION:StructureEquipment:supports already exists for this feature
F FortifiedStructure: ERROR - ASSOCIATION:StructureEquipment:supports already exists for this feature
F Hulk: ERROR - ASSOCIATION:StructureEquipment:supports already exists for this feature
F Pile: ERROR - ASSOCIATION:StructureEquipment:supports already exists for this feature
F Pile: ERROR - ASSOCIATION:StructureEquipment:supports already exists for this feature
F ShorelineConstruction: ERROR - ASSOCIATION:StructureEquipment:supports already exists for this feature
F ShorelineConstruction: ERROR - ASSOCIATION:StructureEquipment:supports already exists for this feature
F DistanceMark: WARNING: Mandatory relationship COMPOSITION:StructureEquipment:supportedBy [36 features ]
F DistanceMark: WARNING: Mandatory relationship COMPOSITION:StructureEquipment:supportedBy [1 features ]
F DistanceMark: ERROR - COMPOSITION:StructureEquipment:supportedBy already exists for this feature
F Crane: ERROR - ASSOCIATION:StructureEquipment:supports already exists for this feature
F Crane: ERROR - ASSOCIATION:StructureEquipment:supports already exists for this feature
F Dolphin: ERROR - ASSOCIATION:StructureEquipment:supports already exists for this feature
F Dolphin: ERROR - ASSOCIATION:StructureEquipment:supports already exists for this feature
F Bollard: WARNING: Mandatory relationship COMPOSITION:StructureEquipment:supportedBy [8 features ]
F MooringTrot: WARNING: Mandatory relationship ASSOCIATION:MooringTrotAggregation:consistsOf [4 features ]
F Wreck: ERROR - ASSOCIATION:StructureEquipment:supports already exists for this feature
F FishingFacility: ERROR - ASSOCIATION:StructureEquipment:supports already exists for this feature
F OffshorePlatform: ERROR - ASSOCIATION:StructureEquipment:supports already exists for this feature
F OffshorePlatform: ERROR - ASSOCIATION:StructureEquipment:supports already exists for this feature
F OffshorePlatform: ERROR - ASSOCIATION:StructureEquipment:supports already exists for this feature
F RangeSystem: WARNING: Mandatory relationship ASSOCIATION:RangeSystemAggregation:consistsOf [19 features ]
F Fairway: WARNING: Mandatory relationship ASSOCIATION:FairwayAuxiliary:hasAuxiliary [22 features ]
F FairwaySystem: WARNING: Mandatory relationship ASSOCIATION:AidsToNavigationAssociation:consistsOf [15 features ]
F FairwaySystem: WARNING: Mandatory relationship ASSOCIATION:AidsToNavigationAssociation:consistsOf [10 features ]
F FairwaySystem: ERROR - ASSOCIATION:AidsToNavigationAssociation:consistsOf already exists for this feature
F FairwaySystem: WARNING: Mandatory relationship ASSOCIATION:AidsToNavigationAssociation:consistsOf [10 features ]
F FairwaySystem: ERROR - ASSOCIATION:AidsToNavigationAssociation:consistsOf already exists for this feature
F FairwaySystem: WARNING: Mandatory relationship ASSOCIATION:FairwayAggregation:consistsOf [1 features ]
F TwoWayRoute: WARNING: Mandatory relationship ASSOCIATION:AidsToNavigationAssociation:consistsOf [15 features ]
F TwoWayRoute: WARNING: Mandatory relationship ASSOCIATION:AidsToNavigationAssociation:consistsOf [10 features ]
F TwoWayRoute: ERROR - ASSOCIATION:AidsToNavigationAssociation:consistsOf already exists for this feature
F TwoWayRoute: WARNING: Mandatory relationship ASSOCIATION:AidsToNavigationAssociation:consistsOf [10 features ]
F TwoWayRoute: ERROR - ASSOCIATION:AidsToNavigationAssociation:consistsOf already exists for this feature
F TwoWayRoute: WARNING: Mandatory relationship ASSOCIATION:TwoWayRouteAggregation:consistsOf [1 features ]
F DeepWaterRoute: WARNING: Mandatory relationship ASSOCIATION:AidsToNavigationAssociation:consistsOf [15 features ]
F DeepWaterRoute: WARNING: Mandatory relationship ASSOCIATION:AidsToNavigationAssociation:consistsOf [10 features ]
F DeepWaterRoute: ERROR - ASSOCIATION:AidsToNavigationAssociation:consistsOf already exists for this feature
F DeepWaterRoute: WARNING: Mandatory relationship ASSOCIATION:DeepWaterRouteAggregation:consistsOf [2 features ]
F TrafficSeparationScheme: WARNING: Mandatory relationship ASSOCIATION:AidsToNavigationAssociation:consistsOf [15 features ]
F TrafficSeparationScheme: WARNING: Mandatory relationship ASSOCIATION:AidsToNavigationAssociation:consistsOf [10 features ]
F TrafficSeparationScheme: ERROR - ASSOCIATION:AidsToNavigationAssociation:consistsOf already exists for this feature
F TrafficSeparationScheme: WARNING: Mandatory relationship ASSOCIATION:AidsToNavigationAssociation:consistsOf [10 features ]
F TrafficSeparationScheme: ERROR - ASSOCIATION:AidsToNavigationAssociation:consistsOf already exists for this feature
F TrafficSeparationScheme: WARNING: Mandatory relationship ASSOCIATION:TrafficSeparationSchemeAggregation:consistsOf [14 features ]
F ArchipelagicSeaLane: WARNING: Mandatory relationship ASSOCIATION:AidsToNavigationAssociation:consistsOf [15 features ]
F ArchipelagicSeaLane: WARNING: Mandatory relationship ASSOCIATION:ASLAggregation:consistsOf [2 features ]
F CautionArea: WARNING: Mandatory relationship ASSOCIATION:CautionAreaAssociation:consistsOf [2 features ]
F LightAllAround: WARNING: Mandatory relationship COMPOSITION:StructureEquipment:supportedBy [36 features ]
F LightAllAround: WARNING: Mandatory relationship COMPOSITION:StructureEquipment:supportedBy [2 features ]
F LightAllAround: ERROR - COMPOSITION:StructureEquipment:supportedBy already exists for this feature
F LightAllAround: WARNING: Mandatory relationship COMPOSITION:StructureEquipment:supportedBy [1 features ]
F LightAllAround: ERROR - COMPOSITION:StructureEquipment:supportedBy already exists for this feature
F LightSectored: WARNING: Mandatory relationship COMPOSITION:StructureEquipment:supportedBy [23 features ]
F LightSectored: WARNING: Mandatory relationship COMPOSITION:StructureEquipment:supportedBy [2 features ]
F LightSectored: ERROR - COMPOSITION:StructureEquipment:supportedBy already exists for this feature
F LightSectored: WARNING: Mandatory relationship COMPOSITION:StructureEquipment:supportedBy [1 features ]
F LightSectored: ERROR - COMPOSITION:StructureEquipment:supportedBy already exists for this feature
F LightFogDetector: WARNING: Mandatory relationship COMPOSITION:StructureEquipment:supportedBy [36 features ]
F LightFogDetector: WARNING: Mandatory relationship COMPOSITION:StructureEquipment:supportedBy [2 features ]
F LightFogDetector: ERROR - COMPOSITION:StructureEquipment:supportedBy already exists for this feature
F LightFogDetector: WARNING: Mandatory relationship COMPOSITION:StructureEquipment:supportedBy [1 features ]
F LightFogDetector: ERROR - COMPOSITION:StructureEquipment:supportedBy already exists for this feature
F LightAirObstruction: WARNING: Mandatory relationship COMPOSITION:StructureEquipment:supportedBy [10 features ]
F LightAirObstruction: WARNING: Mandatory relationship COMPOSITION:StructureEquipment:supportedBy [2 features ]
F LightAirObstruction: ERROR - COMPOSITION:StructureEquipment:supportedBy already exists for this feature
F LateralBeacon: ERROR - ASSOCIATION:StructureEquipment:supports already exists for this feature
F CardinalBeacon: ERROR - ASSOCIATION:StructureEquipment:supports already exists for this feature
F IsolatedDangerBeacon: ERROR - ASSOCIATION:StructureEquipment:supports already exists for this feature
F SafeWaterBeacon: ERROR - ASSOCIATION:StructureEquipment:supports already exists for this feature
F SpecialPurposeGeneralBeacon: ERROR - ASSOCIATION:StructureEquipment:supports already exists for this feature
F Daymark: WARNING: Mandatory relationship COMPOSITION:StructureEquipment:supportedBy [36 features ]
F Retroreflector: WARNING: Mandatory relationship COMPOSITION:StructureEquipment:supportedBy [36 features ]
F Retroreflector: WARNING: Mandatory relationship COMPOSITION:StructureEquipment:supportedBy [2 features ]
F Retroreflector: ERROR - COMPOSITION:StructureEquipment:supportedBy already exists for this feature
F Retroreflector: WARNING: Mandatory relationship COMPOSITION:StructureEquipment:supportedBy [1 features ]
F Retroreflector: ERROR - COMPOSITION:StructureEquipment:supportedBy already exists for this feature
F RadarReflector: WARNING: Mandatory relationship COMPOSITION:StructureEquipment:supportedBy [2 features ]
F FogSignal: WARNING: Mandatory relationship COMPOSITION:StructureEquipment:supportedBy [36 features ]
F FogSignal: WARNING: Mandatory relationship COMPOSITION:StructureEquipment:supportedBy [2 features ]
F FogSignal: ERROR - COMPOSITION:StructureEquipment:supportedBy already exists for this feature
F FogSignal: WARNING: Mandatory relationship COMPOSITION:StructureEquipment:supportedBy [1 features ]
F FogSignal: ERROR - COMPOSITION:StructureEquipment:supportedBy already exists for this feature
F PhysicalAISAidToNavigation: WARNING: Mandatory relationship COMPOSITION:StructureEquipment:supportedBy [36 features ]
F PhysicalAISAidToNavigation: WARNING: Mandatory relationship COMPOSITION:StructureEquipment:supportedBy [1 features ]
F PhysicalAISAidToNavigation: ERROR - COMPOSITION:StructureEquipment:supportedBy already exists for this feature
F RadarTransponderBeacon: WARNING: Mandatory relationship COMPOSITION:StructureEquipment:supportedBy [36 features ]
F RadarTransponderBeacon: WARNING: Mandatory relationship COMPOSITION:StructureEquipment:supportedBy [2 features ]
F RadarTransponderBeacon: ERROR - COMPOSITION:StructureEquipment:supportedBy already exists for this feature
F RadarTransponderBeacon: WARNING: Mandatory relationship COMPOSITION:StructureEquipment:supportedBy [1 features ]
F RadarTransponderBeacon: ERROR - COMPOSITION:StructureEquipment:supportedBy already exists for this feature
F SignalStationWarning: WARNING: Mandatory relationship COMPOSITION:StructureEquipment:supportedBy [36 features ]
F SignalStationWarning: WARNING: Mandatory relationship COMPOSITION:StructureEquipment:supportedBy [1 features ]
F SignalStationWarning: ERROR - COMPOSITION:StructureEquipment:supportedBy already exists for this feature
F SignalStationTraffic: WARNING: Mandatory relationship COMPOSITION:StructureEquipment:supportedBy [36 features ]
F SignalStationTraffic: WARNING: Mandatory relationship COMPOSITION:StructureEquipment:supportedBy [1 features ]
F SignalStationTraffic: ERROR - COMPOSITION:StructureEquipment:supportedBy already exists for this feature
F TextPlacement: WARNING: Mandatory relationship COMPOSITION:TextAssociation:identifies [151 features ]

@TomRichardson6
Copy link

KHOA is now preparing an updated FC which will address these changes, Issue to be closed once this version is available.

@kusala9
Copy link
Author

kusala9 commented Mar 7, 2024

Received new version of feature catalogue. There are still some mandatory relationships which aren't in the DCEG and should be removed. These are listed below.

Additionally, the FairwaySystem and TwoWayRoute mandatory associations in the feature catalogue I believe should also be of type "AGGREGATION" and are in the FC as "ASSOCIATION" type which is a mismatch. These are listed below (don't delete these :) :

  • F FairwaySystem: WARNING: Mandatory relationship ASSOCIATION:FairwayAggregation:consistsOf [1 features ]
  • F TwoWayRoute: WARNING: Mandatory relationship ASSOCIATION:TwoWayRouteAggregation:consistsOf [1 features ]

these are still present and, I believe, incorrect with respect of the DCEG.

F UpdateInformation: WARNING: Mandatory relationship ASSOCIATION:UpdatedInformation:identifies [178 features ]
F IslandGroup: WARNING: Mandatory relationship ASSOCIATION:IslandAggregation:consistsOf [2 features ]
F DistanceMark: WARNING: Mandatory relationship COMPOSITION:StructureEquipment:supportedBy [37 features ]
F Bollard: WARNING: Mandatory relationship COMPOSITION:StructureEquipment:supportedBy [8 features ]
F MooringTrot: WARNING: Mandatory relationship ASSOCIATION:MooringTrotAggregation:consistsOf [4 features ]
F RangeSystem: WARNING: Mandatory relationship ASSOCIATION:RangeSystemAggregation:consistsOf [19 features ]
F FairwaySystem: WARNING: Mandatory relationship ASSOCIATION:AidsToNavigationAssociation:consistsOf [35 features ]
F TwoWayRoute: WARNING: Mandatory relationship ASSOCIATION:AidsToNavigationAssociation:consistsOf [35 features ]
F DeepWaterRoute: WARNING: Mandatory relationship ASSOCIATION:AidsToNavigationAssociation:consistsOf [25 features ]
F DeepWaterRoute: WARNING: Mandatory relationship ASSOCIATION:DeepWaterRouteAggregation:consistsOf [2 features ]
F ArchipelagicSeaLane: WARNING: Mandatory relationship ASSOCIATION:AidsToNavigationAssociation:consistsOf [15 features ]
F ArchipelagicSeaLane: WARNING: Mandatory relationship ASSOCIATION:ASLAggregation:consistsOf [2 features ]
F SignalStationWarning: WARNING: Mandatory relationship COMPOSITION:StructureEquipment:supportedBy [37 features ]
F SignalStationTraffic: WARNING: Mandatory relationship COMPOSITION:StructureEquipment:supportedBy [37 features ]
F TextPlacement: WARNING: Mandatory relationship COMPOSITION:TextAssociation:identifies [151 features ]

@JeffWootton
Copy link
Collaborator

I think this Issue has been overtaken by events (including the creation of the new Issue #140).

Close issue, pending further requirements.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

3 participants