You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: docs/2_4_common_schema.adoc
+17Lines changed: 17 additions & 0 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -1894,6 +1894,12 @@ Predefined rules for variable matching in a connection are given in <<table-pred
1894
1894
Predefined variable kinds are used to describe how the terminal member variables have to be handled.
1895
1895
Domain specific connection rules, terminals and their member variables can be provided by other standards, including layered standards.
1896
1896
1897
+
_[Terminal definitions provide heuristics to help importers connect FMUs and check compatibility.
1898
+
The matching rules and terminal kinds serve as guidance and should not be interpreted as strict requirements that prevent reasonable connections.
1899
+
Importers have flexibility in how they interpret and apply terminal information, and may choose to allow connections that are not explicitly covered by the rules defined here.
1900
+
This flexibility is intentional, as terminals are designed to work best within specific user communities or tool ecosystems where additional conventions and constraints may apply.
1901
+
Specific domains may provide more precise connection rules and semantics for their use cases.]_
1902
+
1897
1903
_[Algebraic loops in systems of connected FMUs are not addressed or resolved by the terminals._
1898
1904
_The FMU standard does not require that the <<causality>> of the terminal member variables in connected terminals match._
1899
1905
_This must be handled by the importer._
@@ -1949,6 +1955,17 @@ However, an importer may still connect terminals based on additional information
1949
1955
1950
1956
|====
1951
1957
1958
+
_[When connecting two terminals, each terminal's `matchingRule` is evaluated independently for that terminal.
1959
+
For example, a terminal with `matchingRule="plug"` can be connected to a terminal with `matchingRule="bus"` as long as the requirements of each rule are satisfied from that terminal's perspective:
1960
+
The plug terminal requires all its member variables to be present in the connection, while the bus terminal allows for partial matching.
1961
+
This asymmetric matching is intentional and supports flexible connection scenarios._
1962
+
1963
+
_For hierarchical (nested) terminals, matching is performed at each level according to the `matchingRule` of that level.
1964
+
Each terminal and sub-terminal is matched according to its own `matchingRule`, and the specific order of traversal or flattening is left to the importer's discretion._
1965
+
1966
+
_A single variable from <<ModelVariables>> may be referenced by multiple terminals within the same FMU.
1967
+
This allows the same variable to participate in different connection contexts or to be grouped in multiple logical interfaces.]_
1968
+
1952
1969
[[terminalKind,`terminalKind`]]
1953
1970
The normalized string `terminalKind` is an optional attribute.
0 commit comments