<?xml version="1.0" encoding="utf-8"?>
<!-- SPDX-FileCopyrightText: 2026 W.D. de Pooter <fabian@maraton.consulting>
     SPDX-License-Identifier: CC-BY-4.0
     W.D. de Pooter — Independent marine consultant and developer -->
<!--
  activeAssets (ASI) draft Feature Catalogue 0.1.0 — night pass 2026-08-07.
  DRAFT FOR DISCUSSION. No IHO product code is allocated; "S-1XX" is a deliberately
  obvious placeholder. Structure follows S-100 Ed 5.2.1 Part 5, modelled on the
  S-101 FC 2.1.0 XML shapes (verified locally, not recalled).

  Design basis: single feature type ActiveStatusIndicator; categoryOfAsset says what
  the indicator is bound to; operationalStatus is the ASI itself; conditional domains
  (status-per-category, parent/child pairs) are OUTSIDE this file by design - they
  ship as Schematron + auditor rules (see ASI-enumeration.md section 3).

  definitionReference elements are intentionally omitted in this draft: register
  sourceIdentifiers do not exist until concepts are proposed to the IHO GI Registry.
-->
<S100FC:S100_FC_FeatureCatalogue xmlns:S100FC="http://www.iho.int/S100FC/5.2"
    xmlns:S100Base="http://www.iho.int/S100Base/5.0"
    xmlns:S100CI="http://www.iho.int/S100CI/5.0"
    xmlns:xlink="http://www.w3.org/1999/xlink"
    xmlns:S100CD="http://www.iho.int/S100CD/5.0"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xsi:schemaLocation="http://www.iho.int/S100FC/5.2 https://schemas.s100dev.net/schemas/S100/5.2.0/S100FC/20231214/S100FC.xsd">
	<S100FC:name>Active Status Indicators</S100FC:name>
	<S100FC:scope>Near-live operational status of berths, anchorages, fairway sections, locks, bridges, sluices and mobile terminal infrastructure, published as a switchable overlay for ECDIS, Inland ECDIS and PPU. The catalogue models indicators, not assets: the assets themselves are published by S-101, Inland ENC and S-131.</S100FC:scope>
	<S100FC:fieldOfApplication>Marine and inland navigation</S100FC:fieldOfApplication>
	<S100FC:versionNumber>0.1.0</S100FC:versionNumber>
	<S100FC:versionDate>2026-08-07</S100FC:versionDate>
	<S100FC:productId>S-1XX</S100FC:productId>
	<S100FC:producer>
		<S100CI:role>pointOfContact</S100CI:role>
		<S100CI:party>
			<S100CI:CI_Organisation>
				<S100CI:name>activeAssets project (draft proposal, no allocated code)</S100CI:name>
			</S100CI:CI_Organisation>
		</S100CI:party>
	</S100FC:producer>
	<S100FC:S100_FC_SimpleAttributes>
		<S100FC:S100_FC_SimpleAttribute>
			<S100FC:name>Category of Asset</S100FC:name>
			<S100FC:definition>The kind of real-world asset to which this Active Status Indicator is bound. The asset itself is charted by other products; this value determines which operational status values the indicator may carry, and which aggregation rules apply to it.</S100FC:definition>
			<S100FC:code>categoryOfAsset</S100FC:code>
			<S100FC:valueType>enumeration</S100FC:valueType>
			<S100FC:listedValues>
				<S100FC:listedValue>
					<S100FC:label>Lock</S100FC:label>
					<S100FC:definition>An indicator bound to a lock complex. Parent of lock basin, lock gate and span indicators.</S100FC:definition>
					<S100FC:code>1</S100FC:code>
				</S100FC:listedValue>
				<S100FC:listedValue>
					<S100FC:label>Lock Basin</S100FC:label>
					<S100FC:definition>An indicator bound to a lock chamber. Component of a lock.</S100FC:definition>
					<S100FC:code>2</S100FC:code>
				</S100FC:listedValue>
				<S100FC:listedValue>
					<S100FC:label>Lock Gate</S100FC:label>
					<S100FC:definition>An indicator bound to a lock gate or door. Component of a lock.</S100FC:definition>
					<S100FC:code>3</S100FC:code>
				</S100FC:listedValue>
				<S100FC:listedValue>
					<S100FC:label>Bridge</S100FC:label>
					<S100FC:definition>An indicator bound to a bridge. Parent of span indicators.</S100FC:definition>
					<S100FC:code>4</S100FC:code>
				</S100FC:listedValue>
				<S100FC:listedValue>
					<S100FC:label>Span, Opening</S100FC:label>
					<S100FC:definition>An indicator bound to a bridge span that can open. Component of exactly one bridge or one lock, never both.</S100FC:definition>
					<S100FC:code>5</S100FC:code>
				</S100FC:listedValue>
				<S100FC:listedValue>
					<S100FC:label>Span, Fixed</S100FC:label>
					<S100FC:definition>An indicator bound to a fixed bridge span. Exception-only: it carries no state in normal conditions, and asserts a status only when obstructed.</S100FC:definition>
					<S100FC:code>6</S100FC:code>
				</S100FC:listedValue>
				<S100FC:listedValue>
					<S100FC:label>Sluice</S100FC:label>
					<S100FC:definition>An indicator bound to a sluice. Standalone; no aggregation.</S100FC:definition>
					<S100FC:code>7</S100FC:code>
				</S100FC:listedValue>
				<S100FC:listedValue>
					<S100FC:label>Berth</S100FC:label>
					<S100FC:definition>An indicator bound to a berth.</S100FC:definition>
					<S100FC:code>8</S100FC:code>
				</S100FC:listedValue>
				<S100FC:listedValue>
					<S100FC:label>Anchor Berth</S100FC:label>
					<S100FC:definition>An indicator bound to an anchor berth.</S100FC:definition>
					<S100FC:code>9</S100FC:code>
				</S100FC:listedValue>
				<S100FC:listedValue>
					<S100FC:label>Anchorage</S100FC:label>
					<S100FC:definition>An indicator bound to an anchorage area.</S100FC:definition>
					<S100FC:code>10</S100FC:code>
				</S100FC:listedValue>
				<S100FC:listedValue>
					<S100FC:label>Fairway Section</S100FC:label>
					<S100FC:definition>An indicator bound to a defined section of a fairway.</S100FC:definition>
					<S100FC:code>11</S100FC:code>
				</S100FC:listedValue>
				<S100FC:listedValue>
					<S100FC:label>Mobile Terminal Infrastructure</S100FC:label>
					<S100FC:definition>An indicator bound to mobile or moveable terminal infrastructure. Component of exactly one MTI Area.</S100FC:definition>
					<S100FC:code>12</S100FC:code>
				</S100FC:listedValue>
				<S100FC:listedValue>
					<S100FC:label>MTI Area</S100FC:label>
					<S100FC:definition>A control feature bounding the area within which the positions of its component Mobile Terminal Infrastructure indicators are trusted. It reports the state of that trust and is not itself an indicator of asset status.</S100FC:definition>
					<S100FC:code>13</S100FC:code>
				</S100FC:listedValue>
			</S100FC:listedValues>
		</S100FC:S100_FC_SimpleAttribute>
		<S100FC:S100_FC_SimpleAttribute>
			<S100FC:name>Operational Status</S100FC:name>
			<S100FC:definition>The live operational condition of the asset to which the indicator is bound, as asserted through the single write path of the publishing authority. Distinct from the S-101 attribute status, which records the charted character of an object rather than its live condition. The permitted values for each categoryOfAsset are defined in the Product Specification and enforced by validation; a value outside the permitted domain of its category shall be treated by the reading system as no trusted data.</S100FC:definition>
			<S100FC:code>operationalStatus</S100FC:code>
			<S100FC:valueType>enumeration</S100FC:valueType>
			<S100FC:listedValues>
				<S100FC:listedValue>
					<S100FC:label>Clear</S100FC:label>
					<S100FC:definition>The asset is unoccupied and available.</S100FC:definition>
					<S100FC:code>1</S100FC:code>
				</S100FC:listedValue>
				<S100FC:listedValue>
					<S100FC:label>Taken</S100FC:label>
					<S100FC:definition>The asset is occupied by a vessel.</S100FC:definition>
					<S100FC:code>2</S100FC:code>
				</S100FC:listedValue>
				<S100FC:listedValue>
					<S100FC:label>Reserved</S100FC:label>
					<S100FC:definition>The asset is unoccupied but allocated to a vessel and not available to others.</S100FC:definition>
					<S100FC:code>3</S100FC:code>
				</S100FC:listedValue>
				<S100FC:listedValue>
					<S100FC:label>At Capacity</S100FC:label>
					<S100FC:definition>The area holds as many vessels as it can accommodate; no room remains.</S100FC:definition>
					<S100FC:code>4</S100FC:code>
				</S100FC:listedValue>
				<S100FC:listedValue>
					<S100FC:label>Restricted</S100FC:label>
					<S100FC:definition>The asset is usable subject to a restriction. The kind of restriction is stated by the publishing authority and available on interrogation of the indicator; the specific values of the restriction are published through the authority's authoritative channels, not through this product.</S100FC:definition>
					<S100FC:code>5</S100FC:code>
				</S100FC:listedValue>
				<S100FC:listedValue>
					<S100FC:label>Operational</S100FC:label>
					<S100FC:definition>The asset is in service.</S100FC:definition>
					<S100FC:code>10</S100FC:code>
				</S100FC:listedValue>
				<S100FC:listedValue>
					<S100FC:label>Idle</S100FC:label>
					<S100FC:definition>The asset is in service but not currently engaged in an operation.</S100FC:definition>
					<S100FC:code>11</S100FC:code>
				</S100FC:listedValue>
				<S100FC:listedValue>
					<S100FC:label>Not In Operation</S100FC:label>
					<S100FC:definition>The asset is not in service. For a parent asset whose operation its components depend upon, this condition invalidates the component indicators.</S100FC:definition>
					<S100FC:code>12</S100FC:code>
				</S100FC:listedValue>
				<S100FC:listedValue>
					<S100FC:label>Vessel Management</S100FC:label>
					<S100FC:definition>The lock is in service and handling vessel traffic.</S100FC:definition>
					<S100FC:code>13</S100FC:code>
				</S100FC:listedValue>
				<S100FC:listedValue>
					<S100FC:label>Water Management</S100FC:label>
					<S100FC:definition>The lock is in service but engaged in the movement of water rather than vessels.</S100FC:definition>
					<S100FC:code>14</S100FC:code>
				</S100FC:listedValue>
				<S100FC:listedValue>
					<S100FC:label>Open</S100FC:label>
					<S100FC:definition>The aperture is fully open.</S100FC:definition>
					<S100FC:code>20</S100FC:code>
				</S100FC:listedValue>
				<S100FC:listedValue>
					<S100FC:label>Closed</S100FC:label>
					<S100FC:definition>The aperture is fully closed. Whether a closed aperture may be passed depends on the vessel and on charted clearances; this value states the condition of the asset only.</S100FC:definition>
					<S100FC:code>21</S100FC:code>
				</S100FC:listedValue>
				<S100FC:listedValue>
					<S100FC:label>Moving</S100FC:label>
					<S100FC:definition>The asset is in transit between conditions: a barrier travelling between open and closed, or mobile infrastructure under way.</S100FC:definition>
					<S100FC:code>22</S100FC:code>
				</S100FC:listedValue>
				<S100FC:listedValue>
					<S100FC:label>Levelling</S100FC:label>
					<S100FC:definition>The water level in the chamber is changing toward another level.</S100FC:definition>
					<S100FC:code>23</S100FC:code>
				</S100FC:listedValue>
				<S100FC:listedValue>
					<S100FC:label>Flowing</S100FC:label>
					<S100FC:definition>Water is passing through the structure. The direction of flow is resolved from the feature's orientation and the reported direction sense.</S100FC:definition>
					<S100FC:code>24</S100FC:code>
				</S100FC:listedValue>
				<S100FC:listedValue>
					<S100FC:label>Not Flowing</S100FC:label>
					<S100FC:definition>No water is passing through the structure, regardless of gate position.</S100FC:definition>
					<S100FC:code>25</S100FC:code>
				</S100FC:listedValue>
				<S100FC:listedValue>
					<S100FC:label>Parts Over Water</S100FC:label>
					<S100FC:definition>Parts of the mobile infrastructure project over navigable water. This condition is asserted whenever it holds, whether the infrastructure is operational, idle or moving, since it is the condition of greatest navigational consequence for that indicator.</S100FC:definition>
					<S100FC:code>30</S100FC:code>
				</S100FC:listedValue>
				<S100FC:listedValue>
					<S100FC:label>Obstructed</S100FC:label>
					<S100FC:definition>Nothing may pass or use the asset. This value shall only be asserted by a named human operator and shall never be set or cleared by automation. For a parent asset, this condition invalidates the component indicators.</S100FC:definition>
					<S100FC:code>90</S100FC:code>
				</S100FC:listedValue>
			</S100FC:listedValues>
		</S100FC:S100_FC_SimpleAttribute>
		<S100FC:S100_FC_SimpleAttribute>
			<S100FC:name>Sub Status Type</S100FC:name>
			<S100FC:definition>The kind of operation or restriction in effect at the asset. Composable with operationalStatus: a sub status is true alongside a status, never instead of one, and more than one may be asserted at the same time. It states the kind of a restriction and never the restricting value; those values are published by the authority through the channels named in the service metadata.</S100FC:definition>
			<S100FC:code>subStatusType</S100FC:code>
			<S100FC:valueType>enumeration</S100FC:valueType>
			<S100FC:listedValues>
				<S100FC:listedValue>
					<S100FC:label>Diving Operations</S100FC:label>
					<S100FC:definition>Diving operations in progress, requiring vessels to keep well clear and pass at slow speed, signalled by flag A of the International Code of Signals.</S100FC:definition>
					<S100FC:code>1</S100FC:code>
				</S100FC:listedValue>
				<S100FC:listedValue>
					<S100FC:label>Transshipment of Dangerous Cargo</S100FC:label>
					<S100FC:definition>Loading, offloading or transfer of dangerous cargo in progress, signalled by flag B of the International Code of Signals.</S100FC:definition>
					<S100FC:code>2</S100FC:code>
				</S100FC:listedValue>
				<S100FC:listedValue>
					<S100FC:label>Depth Restricted</S100FC:label>
					<S100FC:definition>A depth restriction is in effect. The restricting value is not carried by this product; it is published by the authority through the channels named in the service metadata.</S100FC:definition>
					<S100FC:code>3</S100FC:code>
				</S100FC:listedValue>
				<S100FC:listedValue>
					<S100FC:label>Speed Restricted</S100FC:label>
					<S100FC:definition>A speed restriction is in effect. The restricting value is not carried by this product; it is published by the authority through the channels named in the service metadata.</S100FC:definition>
					<S100FC:code>4</S100FC:code>
				</S100FC:listedValue>
				<S100FC:listedValue>
					<S100FC:label>Lock Session</S100FC:label>
					<S100FC:definition>A lock session is in progress or allocated, identified by the value carried in Sub Status Value. The identifier is allocated by the publishing authority and exists in no other publication, so stating it creates no second source that could disagree. Applicable to lock indicators only.</S100FC:definition>
					<S100FC:code>5</S100FC:code>
				</S100FC:listedValue>
				<S100FC:listedValue>
					<S100FC:label>Survey or Dredging Operations</S100FC:label>
					<S100FC:definition>Survey or dredging operations are in progress in this stretch of water. The craft engaged may be restricted in its ability to manoeuvre, and may have gear, pipelines, anchors or a towed body deployed clear of its own hull. States that work is under way and not its extent, which is published by the authority through the channels named in the service metadata. Applicable to fairway section indicators only.</S100FC:definition>
					<S100FC:code>6</S100FC:code>
				</S100FC:listedValue>
			</S100FC:listedValues>
		</S100FC:S100_FC_SimpleAttribute>
		<S100FC:S100_FC_SimpleAttribute>
			<S100FC:name>Sub Status Value</S100FC:name>
			<S100FC:definition>The identifier qualifying a sub status, carried only where the sub status type calls for one. At present that is the lock session type alone: it holds the session identifier allocated by the publishing authority. It is never used to carry the magnitude of a restriction, which remains the property of the authoritative publication rather than of this product.</S100FC:definition>
			<S100FC:code>subStatusValue</S100FC:code>
			<S100FC:valueType>text</S100FC:valueType>
		</S100FC:S100_FC_SimpleAttribute>
		<S100FC:S100_FC_SimpleAttribute>
			<S100FC:name>Orientation Value</S100FC:name>
			<S100FC:definition>The angular distance measured from true north to the major axis of the feature. For Active Status Indicator features the major axis is defined as the main direction of flow (downstream). Where no obvious downstream direction is present, the producer shall ensure the encoded direction is equal to the actual direction of flow at the structure. For a sluice able to work in both directions due to tidal movement, the downstream direction is always seawards.</S100FC:definition>
			<S100FC:code>orientationValue</S100FC:code>
			<S100FC:valueType>real</S100FC:valueType>
		</S100FC:S100_FC_SimpleAttribute>
		<S100FC:S100_FC_SimpleAttribute>
			<S100FC:name>Scale Minimum</S100FC:name>
			<S100FC:definition>The minimum scale at which the feature may be used for example for ECDIS presentation.</S100FC:definition>
			<S100FC:code>scaleMinimum</S100FC:code>
			<S100FC:valueType>integer</S100FC:valueType>
		</S100FC:S100_FC_SimpleAttribute>
		<S100FC:S100_FC_SimpleAttribute>
			<S100FC:name>Update Interval</S100FC:name>
			<S100FC:definition>The declared interval, in seconds, at which the publishing authority undertakes to refresh this indicator. A reading system that measures the actual arrival rate falling materially outside this declaration shall treat the indicator as carrying no trusted data. Not applicable to exception-only categories, which declare no interval.</S100FC:definition>
			<S100FC:code>updateInterval</S100FC:code>
			<S100FC:valueType>integer</S100FC:valueType>
		</S100FC:S100_FC_SimpleAttribute>
		<S100FC:S100_FC_SimpleAttribute>
			<S100FC:name>Direction Sense</S100FC:name>
			<S100FC:definition>Whether reported movement of water runs with or against the orientation declared for the indicator in the product. Carried only with the statuses that denote water in motion — levelling and flowing. It is not carried for a gate or span in motion, whose leaf travel has no direction in the horizontal plane for lift and mitre mechanisms, nor for mobile terminal infrastructure, whose direction is derived from successive geometries.</S100FC:definition>
			<S100FC:code>directionSense</S100FC:code>
			<S100FC:valueType>enumeration</S100FC:valueType>
			<S100FC:listedValues>
				<S100FC:listedValue>
					<S100FC:label>With Orientation</S100FC:label>
					<S100FC:definition>The movement runs in the direction declared by the indicator's orientation.</S100FC:definition>
					<S100FC:code>1</S100FC:code>
				</S100FC:listedValue>
				<S100FC:listedValue>
					<S100FC:label>Against Orientation</S100FC:label>
					<S100FC:definition>The movement runs opposite to the direction declared by the indicator's orientation.</S100FC:definition>
					<S100FC:code>2</S100FC:code>
				</S100FC:listedValue>
			</S100FC:listedValues>
		</S100FC:S100_FC_SimpleAttribute>
		<S100FC:S100_FC_SimpleAttribute>
			<S100FC:name>Asserted By</S100FC:name>
			<S100FC:definition>The named person who asserted a human-set condition. Required with every condition that only a human may set, and retained so that every prohibition carried by this product is attributable to an identified individual.</S100FC:definition>
			<S100FC:code>assertedBy</S100FC:code>
			<S100FC:valueType>text</S100FC:valueType>
		</S100FC:S100_FC_SimpleAttribute>
		<S100FC:S100_FC_SimpleAttribute>
			<S100FC:name>Reported At</S100FC:name>
			<S100FC:definition>The instant to which this report applies, encoded as a thematic attribute because the S-100 GML profile excludes the ISO 19108 temporal types. A reading system compares it against the indicator's declared update interval to determine whether the report is still to be trusted.</S100FC:definition>
			<S100FC:code>reportedAt</S100FC:code>
			<S100FC:valueType>text</S100FC:valueType>
		</S100FC:S100_FC_SimpleAttribute>
		<S100FC:S100_FC_SimpleAttribute>
			<S100FC:name>Interoperability Identifier</S100FC:name>
			<S100FC:definition>A unique identifier in URN form binding this indicator to the charted feature it animates, for interoperability processing.</S100FC:definition>
			<S100FC:code>interoperabilityIdentifier</S100FC:code>
			<S100FC:valueType>URN</S100FC:valueType>
		</S100FC:S100_FC_SimpleAttribute>
		<S100FC:S100_FC_SimpleAttribute>
			<S100FC:name>Language</S100FC:name>
			<S100FC:definition>The language, expressed as a three-character code from ISO 639-3.</S100FC:definition>
			<S100FC:code>language</S100FC:code>
			<S100FC:valueType>text</S100FC:valueType>
		</S100FC:S100_FC_SimpleAttribute>
		<S100FC:S100_FC_SimpleAttribute>
			<S100FC:name>Name</S100FC:name>
			<S100FC:definition>The individual name of an entity.</S100FC:definition>
			<S100FC:code>name</S100FC:code>
			<S100FC:valueType>text</S100FC:valueType>
		</S100FC:S100_FC_SimpleAttribute>
		<S100FC:S100_FC_SimpleAttribute>
			<S100FC:name>Name Usage</S100FC:name>
			<S100FC:definition>The intended usage of the name at various system display settings.</S100FC:definition>
			<S100FC:code>nameUsage</S100FC:code>
			<S100FC:valueType>enumeration</S100FC:valueType>
			<S100FC:listedValues>
				<S100FC:listedValue>
					<S100FC:label>Primary Name Display</S100FC:label>
					<S100FC:definition>The name is intended for display in standard presentation.</S100FC:definition>
					<S100FC:code>1</S100FC:code>
				</S100FC:listedValue>
				<S100FC:listedValue>
					<S100FC:label>Alternate Name Display</S100FC:label>
					<S100FC:definition>The name is intended for display on user demand.</S100FC:definition>
					<S100FC:code>2</S100FC:code>
				</S100FC:listedValue>
			</S100FC:listedValues>
		</S100FC:S100_FC_SimpleAttribute>
	</S100FC:S100_FC_SimpleAttributes>
	<S100FC:S100_FC_ComplexAttributes>
		<S100FC:S100_FC_ComplexAttribute>
			<S100FC:name>Feature Name</S100FC:name>
			<S100FC:definition>Provides the name of an entity, defines the national language of the name, and provides the option to display the name at various system display settings.</S100FC:definition>
			<S100FC:code>featureName</S100FC:code>
			<S100FC:subAttributeBinding sequential="false">
				<S100FC:multiplicity>
					<S100Base:lower>0</S100Base:lower>
					<S100Base:upper xsi:nil="false" infinite="false">1</S100Base:upper>
				</S100FC:multiplicity>
				<S100FC:attribute ref="language" />
			</S100FC:subAttributeBinding>
			<S100FC:subAttributeBinding sequential="false">
				<S100FC:multiplicity>
					<S100Base:lower>1</S100Base:lower>
					<S100Base:upper xsi:nil="false" infinite="false">1</S100Base:upper>
				</S100FC:multiplicity>
				<S100FC:attribute ref="name" />
			</S100FC:subAttributeBinding>
			<S100FC:subAttributeBinding sequential="false">
				<S100FC:multiplicity>
					<S100Base:lower>0</S100Base:lower>
					<S100Base:upper xsi:nil="false" infinite="false">1</S100Base:upper>
				</S100FC:multiplicity>
				<S100FC:attribute ref="nameUsage" />
			</S100FC:subAttributeBinding>
		</S100FC:S100_FC_ComplexAttribute>
		<S100FC:S100_FC_ComplexAttribute>
			<S100FC:name>Operational Sub Status</S100FC:name>
			<S100FC:definition>A qualifier on the operational status: what kind of operation or restriction is in effect, and where the kind calls for one, its identifier. Repeatable, so a feature may assert several at once. It is complex rather than simple precisely because it repeats: with a value held in a separate field, a feature asserting several sub statuses could not say which of them the value belonged to.</S100FC:definition>
			<S100FC:code>operationalSubStatus</S100FC:code>
			<S100FC:subAttributeBinding sequential="false">
				<S100FC:multiplicity>
					<S100Base:lower>1</S100Base:lower>
					<S100Base:upper xsi:nil="false" infinite="false">1</S100Base:upper>
				</S100FC:multiplicity>
				<S100FC:attribute ref="subStatusType" />
			</S100FC:subAttributeBinding>
			<S100FC:subAttributeBinding sequential="false">
				<S100FC:multiplicity>
					<S100Base:lower>0</S100Base:lower>
					<S100Base:upper xsi:nil="false" infinite="false">1</S100Base:upper>
				</S100FC:multiplicity>
				<S100FC:attribute ref="subStatusValue" />
			</S100FC:subAttributeBinding>
		</S100FC:S100_FC_ComplexAttribute>
	</S100FC:S100_FC_ComplexAttributes>
	<S100FC:S100_FC_Roles>
		<S100FC:S100_FC_Role>
			<S100FC:name>The Collection</S100FC:name>
			<S100FC:definition>A pointer to the aggregate in a whole-part relationship.</S100FC:definition>
			<S100FC:code>theCollection</S100FC:code>
		</S100FC:S100_FC_Role>
		<S100FC:S100_FC_Role>
			<S100FC:name>The Component</S100FC:name>
			<S100FC:definition>A pointer to a part in a whole-part relationship.</S100FC:definition>
			<S100FC:code>theComponent</S100FC:code>
		</S100FC:S100_FC_Role>
	</S100FC:S100_FC_Roles>
	<S100FC:S100_FC_FeatureAssociations>
		<S100FC:S100_FC_FeatureAssociation isAbstract="false">
			<S100FC:name>Asset Aggregation</S100FC:name>
			<S100FC:definition>A feature association for the binding between a parent Active Status Indicator and its component indicators: a lock and its basin, gates and spans; a bridge and its spans; an MTI Area and its mobile terminal infrastructure. The permitted parent and component categories, and the exclusivity of span parentage, are defined in the Product Specification and enforced by validation.</S100FC:definition>
			<S100FC:code>AssetAggregation</S100FC:code>
			<S100FC:role ref="theCollection" />
			<S100FC:role ref="theComponent" />
		</S100FC:S100_FC_FeatureAssociation>
	</S100FC:S100_FC_FeatureAssociations>
	<S100FC:S100_FC_FeatureTypes>
		<S100FC:S100_FC_FeatureType isAbstract="false">
			<S100FC:name>Active Status Indicator</S100FC:name>
			<S100FC:definition>An indicator publishing the near-live operational status of a charted or otherwise established asset. The indicator is the phenomenon published by this product: the asset itself is published by other products. The kind of asset is stated by categoryOfAsset; the status by operationalStatus.</S100FC:definition>
			<S100FC:code>ActiveStatusIndicator</S100FC:code>
			<S100FC:attributeBinding sequential="false">
				<S100FC:multiplicity>
					<S100Base:lower>1</S100Base:lower>
					<S100Base:upper xsi:nil="false" infinite="false">1</S100Base:upper>
				</S100FC:multiplicity>
				<S100FC:attribute ref="categoryOfAsset" />
			</S100FC:attributeBinding>
			<S100FC:attributeBinding sequential="false">
				<S100FC:multiplicity>
					<S100Base:lower>0</S100Base:lower>
					<S100Base:upper xsi:nil="false" infinite="false">1</S100Base:upper>
				</S100FC:multiplicity>
				<S100FC:attribute ref="orientationValue" />
			</S100FC:attributeBinding>
			<S100FC:attributeBinding sequential="false">
				<S100FC:multiplicity>
					<S100Base:lower>0</S100Base:lower>
					<S100Base:upper xsi:nil="false" infinite="false">1</S100Base:upper>
				</S100FC:multiplicity>
				<S100FC:attribute ref="featureName" />
			</S100FC:attributeBinding>
			<S100FC:attributeBinding sequential="false">
				<S100FC:multiplicity>
					<S100Base:lower>1</S100Base:lower>
					<S100Base:upper xsi:nil="false" infinite="false">1</S100Base:upper>
				</S100FC:multiplicity>
				<S100FC:attribute ref="scaleMinimum" />
			</S100FC:attributeBinding>
			<S100FC:attributeBinding sequential="false">
				<S100FC:multiplicity>
					<S100Base:lower>0</S100Base:lower>
					<S100Base:upper xsi:nil="false" infinite="false">1</S100Base:upper>
				</S100FC:multiplicity>
				<S100FC:attribute ref="updateInterval" />
			</S100FC:attributeBinding>
			<S100FC:attributeBinding sequential="false">
				<S100FC:multiplicity>
					<S100Base:lower>0</S100Base:lower>
					<S100Base:upper xsi:nil="false" infinite="false">1</S100Base:upper>
				</S100FC:multiplicity>
				<S100FC:attribute ref="interoperabilityIdentifier" />
			</S100FC:attributeBinding>
			<S100FC:featureUseType>geographic</S100FC:featureUseType>
			<S100FC:featureBinding roleType="aggregation">
				<S100FC:multiplicity>
					<S100Base:lower>0</S100Base:lower>
					<S100Base:upper xsi:nil="false" infinite="true" />
				</S100FC:multiplicity>
				<S100FC:association ref="AssetAggregation" />
				<S100FC:role ref="theComponent" />
				<S100FC:featureType ref="ActiveStatusIndicator" />
			</S100FC:featureBinding>
			<S100FC:permittedPrimitives>point</S100FC:permittedPrimitives>
			<S100FC:permittedPrimitives>curve</S100FC:permittedPrimitives>
			<S100FC:permittedPrimitives>surface</S100FC:permittedPrimitives>
		</S100FC:S100_FC_FeatureType>

		<S100FC:S100_FC_FeatureType>
			<S100FC:name>Asset Status</S100FC:name>
			<S100FC:definition>The reported condition of one Active Status Indicator at one instant, carried by the status stream and never by the product. It references the indicator it reports on by that indicator's identifier, which is issued by the producer and never reused. A reading system holds the most recent Asset Status for an indicator as a transient overlay on the product: where an Asset Status supplies a value, it prevails; where it does not, or where it is no longer trusted, the product's own value applies.</S100FC:definition>
			<S100FC:code>AssetStatus</S100FC:code>
			<S100FC:featureUseType>geographic</S100FC:featureUseType>
			<S100FC:permittedPrimitives>point</S100FC:permittedPrimitives>
			<S100FC:permittedPrimitives>none</S100FC:permittedPrimitives>

			<S100FC:attributeBinding sequential="false">
				<S100FC:multiplicity>
					<S100Base:lower>0</S100Base:lower>
					<S100Base:upper xsi:nil="false" infinite="false">1</S100Base:upper>
				</S100FC:multiplicity>
				<S100FC:attribute ref="operationalStatus" />
			</S100FC:attributeBinding>
			<S100FC:attributeBinding sequential="false">
				<S100FC:multiplicity>
					<S100Base:lower>0</S100Base:lower>
					<S100Base:upper xsi:nil="true" infinite="true"/>
				</S100FC:multiplicity>
				<S100FC:attribute ref="operationalSubStatus" />
			</S100FC:attributeBinding>
			<S100FC:attributeBinding sequential="false">
				<S100FC:multiplicity>
					<S100Base:lower>0</S100Base:lower>
					<S100Base:upper xsi:nil="false" infinite="false">1</S100Base:upper>
				</S100FC:multiplicity>
				<S100FC:attribute ref="directionSense" />
			</S100FC:attributeBinding>
			<S100FC:attributeBinding sequential="false">
				<S100FC:multiplicity>
					<S100Base:lower>0</S100Base:lower>
					<S100Base:upper xsi:nil="false" infinite="false">1</S100Base:upper>
				</S100FC:multiplicity>
				<S100FC:attribute ref="assertedBy" />
			</S100FC:attributeBinding>
			<S100FC:attributeBinding sequential="false">
				<S100FC:multiplicity>
					<S100Base:lower>1</S100Base:lower>
					<S100Base:upper xsi:nil="false" infinite="false">1</S100Base:upper>
				</S100FC:multiplicity>
				<S100FC:attribute ref="reportedAt" />
			</S100FC:attributeBinding>
		</S100FC:S100_FC_FeatureType>
	</S100FC:S100_FC_FeatureTypes>
</S100FC:S100_FC_FeatureCatalogue>
