diff --git a/autotest/dfns/__snapshots__/v2.0.0.dev3/gwe-lke.json b/autotest/dfns/__snapshots__/v2.0.0.dev3/gwe-lke.json index 2ceff9e9..e7ee5185 100644 --- a/autotest/dfns/__snapshots__/v2.0.0.dev3/gwe-lke.json +++ b/autotest/dfns/__snapshots__/v2.0.0.dev3/gwe-lke.json @@ -617,7 +617,7 @@ "type": "union", "tagged": false, "arms": { - "lakeno": { + "lakeno_lakeno2": { "type": "record", "tagged": false, "fields": { diff --git a/autotest/dfns/__snapshots__/v2.0.0.dev3/gwe-lke.toml b/autotest/dfns/__snapshots__/v2.0.0.dev3/gwe-lke.toml index ec244cf2..32b54d79 100644 --- a/autotest/dfns/__snapshots__/v2.0.0.dev3/gwe-lke.toml +++ b/autotest/dfns/__snapshots__/v2.0.0.dev3/gwe-lke.toml @@ -556,17 +556,17 @@ tagged = false type = "union" tagged = false -[observations.flow-ja-face.arms.lakeno] +[observations.flow-ja-face.arms.lakeno_lakeno2] type = "record" tagged = false -[observations.flow-ja-face.arms.lakeno.fields.lakeno] +[observations.flow-ja-face.arms.lakeno_lakeno2.fields.lakeno] type = "integer" tagged = false index = true fk = "packagedata.lakeno" -[observations.flow-ja-face.arms.lakeno.fields.lakeno2] +[observations.flow-ja-face.arms.lakeno_lakeno2.fields.lakeno2] type = "integer" tagged = false index = true diff --git a/autotest/dfns/__snapshots__/v2.0.0.dev3/gwe-lke.yaml b/autotest/dfns/__snapshots__/v2.0.0.dev3/gwe-lke.yaml index c1dfec06..fc9c0e55 100644 --- a/autotest/dfns/__snapshots__/v2.0.0.dev3/gwe-lke.yaml +++ b/autotest/dfns/__snapshots__/v2.0.0.dev3/gwe-lke.yaml @@ -559,7 +559,7 @@ observations: type: union tagged: false arms: - lakeno: + lakeno_lakeno2: type: record tagged: false fields: diff --git a/autotest/dfns/__snapshots__/v2.0.0.dev3/gwe-mwe.json b/autotest/dfns/__snapshots__/v2.0.0.dev3/gwe-mwe.json index b93610b7..68409b7e 100644 --- a/autotest/dfns/__snapshots__/v2.0.0.dev3/gwe-mwe.json +++ b/autotest/dfns/__snapshots__/v2.0.0.dev3/gwe-mwe.json @@ -524,7 +524,7 @@ "type": "union", "tagged": false, "arms": { - "mawno": { + "mawno_iconn": { "type": "record", "tagged": false, "fields": { diff --git a/autotest/dfns/__snapshots__/v2.0.0.dev3/gwe-mwe.toml b/autotest/dfns/__snapshots__/v2.0.0.dev3/gwe-mwe.toml index fcf1f3f0..2630bc84 100644 --- a/autotest/dfns/__snapshots__/v2.0.0.dev3/gwe-mwe.toml +++ b/autotest/dfns/__snapshots__/v2.0.0.dev3/gwe-mwe.toml @@ -469,17 +469,17 @@ tagged = false type = "union" tagged = false -[observations.mwe.arms.mawno] +[observations.mwe.arms.mawno_iconn] type = "record" tagged = false -[observations.mwe.arms.mawno.fields.mawno] +[observations.mwe.arms.mawno_iconn.fields.mawno] type = "integer" tagged = false index = true fk = "packagedata.mawno" -[observations.mwe.arms.mawno.fields.iconn] +[observations.mwe.arms.mawno_iconn.fields.iconn] type = "integer" tagged = false index = true diff --git a/autotest/dfns/__snapshots__/v2.0.0.dev3/gwe-mwe.yaml b/autotest/dfns/__snapshots__/v2.0.0.dev3/gwe-mwe.yaml index 9b4c5ce3..5705a878 100644 --- a/autotest/dfns/__snapshots__/v2.0.0.dev3/gwe-mwe.yaml +++ b/autotest/dfns/__snapshots__/v2.0.0.dev3/gwe-mwe.yaml @@ -476,7 +476,7 @@ observations: type: union tagged: false arms: - mawno: + mawno_iconn: type: record tagged: false fields: diff --git a/autotest/dfns/__snapshots__/v2.0.0.dev3/gwe-sfe.json b/autotest/dfns/__snapshots__/v2.0.0.dev3/gwe-sfe.json index bab54a85..7c2df68c 100644 --- a/autotest/dfns/__snapshots__/v2.0.0.dev3/gwe-sfe.json +++ b/autotest/dfns/__snapshots__/v2.0.0.dev3/gwe-sfe.json @@ -653,7 +653,7 @@ "type": "union", "tagged": false, "arms": { - "rno": { + "rno_rno2": { "type": "record", "tagged": false, "fields": { diff --git a/autotest/dfns/__snapshots__/v2.0.0.dev3/gwe-sfe.toml b/autotest/dfns/__snapshots__/v2.0.0.dev3/gwe-sfe.toml index b2a75ac2..56978756 100644 --- a/autotest/dfns/__snapshots__/v2.0.0.dev3/gwe-sfe.toml +++ b/autotest/dfns/__snapshots__/v2.0.0.dev3/gwe-sfe.toml @@ -590,17 +590,17 @@ tagged = false type = "union" tagged = false -[observations.flow-ja-face.arms.rno] +[observations.flow-ja-face.arms.rno_rno2] type = "record" tagged = false -[observations.flow-ja-face.arms.rno.fields.rno] +[observations.flow-ja-face.arms.rno_rno2.fields.rno] type = "integer" tagged = false index = true fk = "packagedata.rno" -[observations.flow-ja-face.arms.rno.fields.rno2] +[observations.flow-ja-face.arms.rno_rno2.fields.rno2] type = "integer" tagged = false index = true diff --git a/autotest/dfns/__snapshots__/v2.0.0.dev3/gwe-sfe.yaml b/autotest/dfns/__snapshots__/v2.0.0.dev3/gwe-sfe.yaml index b7151809..1ce54575 100644 --- a/autotest/dfns/__snapshots__/v2.0.0.dev3/gwe-sfe.yaml +++ b/autotest/dfns/__snapshots__/v2.0.0.dev3/gwe-sfe.yaml @@ -587,7 +587,7 @@ observations: type: union tagged: false arms: - rno: + rno_rno2: type: record tagged: false fields: diff --git a/autotest/dfns/__snapshots__/v2.0.0.dev3/gwe-uze.json b/autotest/dfns/__snapshots__/v2.0.0.dev3/gwe-uze.json index 24d81d17..7b891c1e 100644 --- a/autotest/dfns/__snapshots__/v2.0.0.dev3/gwe-uze.json +++ b/autotest/dfns/__snapshots__/v2.0.0.dev3/gwe-uze.json @@ -539,7 +539,7 @@ "type": "union", "tagged": false, "arms": { - "uzfno": { + "uzfno_uzfno2": { "type": "record", "tagged": false, "fields": { diff --git a/autotest/dfns/__snapshots__/v2.0.0.dev3/gwe-uze.toml b/autotest/dfns/__snapshots__/v2.0.0.dev3/gwe-uze.toml index a7098c70..34ba1b3a 100644 --- a/autotest/dfns/__snapshots__/v2.0.0.dev3/gwe-uze.toml +++ b/autotest/dfns/__snapshots__/v2.0.0.dev3/gwe-uze.toml @@ -480,17 +480,17 @@ tagged = false type = "union" tagged = false -[observations.flow-ja-face.arms.uzfno] +[observations.flow-ja-face.arms.uzfno_uzfno2] type = "record" tagged = false -[observations.flow-ja-face.arms.uzfno.fields.uzfno] +[observations.flow-ja-face.arms.uzfno_uzfno2.fields.uzfno] type = "integer" tagged = false index = true fk = "packagedata.uzfno" -[observations.flow-ja-face.arms.uzfno.fields.uzfno2] +[observations.flow-ja-face.arms.uzfno_uzfno2.fields.uzfno2] type = "integer" tagged = false index = true diff --git a/autotest/dfns/__snapshots__/v2.0.0.dev3/gwe-uze.yaml b/autotest/dfns/__snapshots__/v2.0.0.dev3/gwe-uze.yaml index 89967deb..eb76a1b4 100644 --- a/autotest/dfns/__snapshots__/v2.0.0.dev3/gwe-uze.yaml +++ b/autotest/dfns/__snapshots__/v2.0.0.dev3/gwe-uze.yaml @@ -489,7 +489,7 @@ observations: type: union tagged: false arms: - uzfno: + uzfno_uzfno2: type: record tagged: false fields: diff --git a/autotest/dfns/__snapshots__/v2.0.0.dev3/gwf-lak.json b/autotest/dfns/__snapshots__/v2.0.0.dev3/gwf-lak.json index f6652ae0..604b8179 100644 --- a/autotest/dfns/__snapshots__/v2.0.0.dev3/gwf-lak.json +++ b/autotest/dfns/__snapshots__/v2.0.0.dev3/gwf-lak.json @@ -988,7 +988,7 @@ "type": "union", "tagged": false, "arms": { - "ifno": { + "ifno_iconn": { "type": "record", "tagged": false, "fields": { @@ -1005,6 +1005,22 @@ } } }, + "ifno_boundname": { + "type": "record", + "tagged": false, + "fields": { + "ifno": { + "type": "integer", + "tagged": false, + "index": true, + "fk": "packagedata.ifno" + }, + "boundname": { + "type": "string", + "tagged": false + } + } + }, "boundname": { "type": "string", "tagged": false @@ -1015,7 +1031,7 @@ "type": "union", "tagged": false, "arms": { - "ifno": { + "ifno_iconn": { "type": "record", "tagged": false, "fields": { @@ -1032,6 +1048,22 @@ } } }, + "ifno_boundname": { + "type": "record", + "tagged": false, + "fields": { + "ifno": { + "type": "integer", + "tagged": false, + "index": true, + "fk": "packagedata.ifno" + }, + "boundname": { + "type": "string", + "tagged": false + } + } + }, "boundname": { "type": "string", "tagged": false @@ -1042,7 +1074,7 @@ "type": "union", "tagged": false, "arms": { - "ifno": { + "ifno_iconn": { "type": "record", "tagged": false, "fields": { @@ -1059,6 +1091,22 @@ } } }, + "ifno_boundname": { + "type": "record", + "tagged": false, + "fields": { + "ifno": { + "type": "integer", + "tagged": false, + "index": true, + "fk": "packagedata.ifno" + }, + "boundname": { + "type": "string", + "tagged": false + } + } + }, "boundname": { "type": "string", "tagged": false diff --git a/autotest/dfns/__snapshots__/v2.0.0.dev3/gwf-lak.toml b/autotest/dfns/__snapshots__/v2.0.0.dev3/gwf-lak.toml index abfb46bb..d8fbda81 100644 --- a/autotest/dfns/__snapshots__/v2.0.0.dev3/gwf-lak.toml +++ b/autotest/dfns/__snapshots__/v2.0.0.dev3/gwf-lak.toml @@ -877,21 +877,35 @@ tagged = false type = "union" tagged = false -[observations.lak.arms.ifno] +[observations.lak.arms.ifno_iconn] type = "record" tagged = false -[observations.lak.arms.ifno.fields.ifno] +[observations.lak.arms.ifno_iconn.fields.ifno] type = "integer" tagged = false index = true fk = "packagedata.ifno" -[observations.lak.arms.ifno.fields.iconn] +[observations.lak.arms.ifno_iconn.fields.iconn] type = "integer" tagged = false index = true +[observations.lak.arms.ifno_boundname] +type = "record" +tagged = false + +[observations.lak.arms.ifno_boundname.fields.ifno] +type = "integer" +tagged = false +index = true +fk = "packagedata.ifno" + +[observations.lak.arms.ifno_boundname.fields.boundname] +type = "string" +tagged = false + [observations.lak.arms.boundname] type = "string" tagged = false @@ -900,21 +914,35 @@ tagged = false type = "union" tagged = false -[observations.wetted-area.arms.ifno] +[observations.wetted-area.arms.ifno_iconn] type = "record" tagged = false -[observations.wetted-area.arms.ifno.fields.ifno] +[observations.wetted-area.arms.ifno_iconn.fields.ifno] type = "integer" tagged = false index = true fk = "packagedata.ifno" -[observations.wetted-area.arms.ifno.fields.iconn] +[observations.wetted-area.arms.ifno_iconn.fields.iconn] type = "integer" tagged = false index = true +[observations.wetted-area.arms.ifno_boundname] +type = "record" +tagged = false + +[observations.wetted-area.arms.ifno_boundname.fields.ifno] +type = "integer" +tagged = false +index = true +fk = "packagedata.ifno" + +[observations.wetted-area.arms.ifno_boundname.fields.boundname] +type = "string" +tagged = false + [observations.wetted-area.arms.boundname] type = "string" tagged = false @@ -923,20 +951,34 @@ tagged = false type = "union" tagged = false -[observations.conductance.arms.ifno] +[observations.conductance.arms.ifno_iconn] type = "record" tagged = false -[observations.conductance.arms.ifno.fields.ifno] +[observations.conductance.arms.ifno_iconn.fields.ifno] type = "integer" tagged = false index = true fk = "packagedata.ifno" -[observations.conductance.arms.ifno.fields.iconn] +[observations.conductance.arms.ifno_iconn.fields.iconn] +type = "integer" +tagged = false +index = true + +[observations.conductance.arms.ifno_boundname] +type = "record" +tagged = false + +[observations.conductance.arms.ifno_boundname.fields.ifno] type = "integer" tagged = false index = true +fk = "packagedata.ifno" + +[observations.conductance.arms.ifno_boundname.fields.boundname] +type = "string" +tagged = false [observations.conductance.arms.boundname] type = "string" diff --git a/autotest/dfns/__snapshots__/v2.0.0.dev3/gwf-lak.yaml b/autotest/dfns/__snapshots__/v2.0.0.dev3/gwf-lak.yaml index 700388ab..f89b50a0 100644 --- a/autotest/dfns/__snapshots__/v2.0.0.dev3/gwf-lak.yaml +++ b/autotest/dfns/__snapshots__/v2.0.0.dev3/gwf-lak.yaml @@ -997,7 +997,7 @@ observations: type: union tagged: false arms: - ifno: + ifno_iconn: type: record tagged: false fields: @@ -1010,6 +1010,18 @@ observations: type: integer tagged: false index: true + ifno_boundname: + type: record + tagged: false + fields: + ifno: + type: integer + tagged: false + index: true + fk: packagedata.ifno + boundname: + type: string + tagged: false boundname: type: string tagged: false @@ -1017,7 +1029,7 @@ observations: type: union tagged: false arms: - ifno: + ifno_iconn: type: record tagged: false fields: @@ -1030,6 +1042,18 @@ observations: type: integer tagged: false index: true + ifno_boundname: + type: record + tagged: false + fields: + ifno: + type: integer + tagged: false + index: true + fk: packagedata.ifno + boundname: + type: string + tagged: false boundname: type: string tagged: false @@ -1037,7 +1061,7 @@ observations: type: union tagged: false arms: - ifno: + ifno_iconn: type: record tagged: false fields: @@ -1050,6 +1074,18 @@ observations: type: integer tagged: false index: true + ifno_boundname: + type: record + tagged: false + fields: + ifno: + type: integer + tagged: false + index: true + fk: packagedata.ifno + boundname: + type: string + tagged: false boundname: type: string tagged: false diff --git a/autotest/dfns/__snapshots__/v2.0.0.dev3/gwf-maw.json b/autotest/dfns/__snapshots__/v2.0.0.dev3/gwf-maw.json index 4887333c..516ae38e 100644 --- a/autotest/dfns/__snapshots__/v2.0.0.dev3/gwf-maw.json +++ b/autotest/dfns/__snapshots__/v2.0.0.dev3/gwf-maw.json @@ -654,7 +654,7 @@ "type": "union", "tagged": false, "arms": { - "ifno": { + "ifno_icon": { "type": "record", "tagged": false, "fields": { @@ -671,6 +671,22 @@ } } }, + "ifno_boundname": { + "type": "record", + "tagged": false, + "fields": { + "ifno": { + "type": "integer", + "tagged": false, + "index": true, + "fk": "packagedata.ifno" + }, + "boundname": { + "type": "string", + "tagged": false + } + } + }, "boundname": { "type": "string", "tagged": false @@ -681,7 +697,7 @@ "type": "union", "tagged": false, "arms": { - "ifno": { + "ifno_icon": { "type": "record", "tagged": false, "fields": { @@ -698,6 +714,22 @@ } } }, + "ifno_boundname": { + "type": "record", + "tagged": false, + "fields": { + "ifno": { + "type": "integer", + "tagged": false, + "index": true, + "fk": "packagedata.ifno" + }, + "boundname": { + "type": "string", + "tagged": false + } + } + }, "boundname": { "type": "string", "tagged": false diff --git a/autotest/dfns/__snapshots__/v2.0.0.dev3/gwf-maw.toml b/autotest/dfns/__snapshots__/v2.0.0.dev3/gwf-maw.toml index e98cf307..a0a0854f 100644 --- a/autotest/dfns/__snapshots__/v2.0.0.dev3/gwf-maw.toml +++ b/autotest/dfns/__snapshots__/v2.0.0.dev3/gwf-maw.toml @@ -581,21 +581,35 @@ tagged = false type = "union" tagged = false -[observations.maw.arms.ifno] +[observations.maw.arms.ifno_icon] type = "record" tagged = false -[observations.maw.arms.ifno.fields.ifno] +[observations.maw.arms.ifno_icon.fields.ifno] type = "integer" tagged = false index = true fk = "packagedata.ifno" -[observations.maw.arms.ifno.fields.icon] +[observations.maw.arms.ifno_icon.fields.icon] type = "integer" tagged = false index = true +[observations.maw.arms.ifno_boundname] +type = "record" +tagged = false + +[observations.maw.arms.ifno_boundname.fields.ifno] +type = "integer" +tagged = false +index = true +fk = "packagedata.ifno" + +[observations.maw.arms.ifno_boundname.fields.boundname] +type = "string" +tagged = false + [observations.maw.arms.boundname] type = "string" tagged = false @@ -604,21 +618,35 @@ tagged = false type = "union" tagged = false -[observations.conductance.arms.ifno] +[observations.conductance.arms.ifno_icon] type = "record" tagged = false -[observations.conductance.arms.ifno.fields.ifno] +[observations.conductance.arms.ifno_icon.fields.ifno] type = "integer" tagged = false index = true fk = "packagedata.ifno" -[observations.conductance.arms.ifno.fields.icon] +[observations.conductance.arms.ifno_icon.fields.icon] type = "integer" tagged = false index = true +[observations.conductance.arms.ifno_boundname] +type = "record" +tagged = false + +[observations.conductance.arms.ifno_boundname.fields.ifno] +type = "integer" +tagged = false +index = true +fk = "packagedata.ifno" + +[observations.conductance.arms.ifno_boundname.fields.boundname] +type = "string" +tagged = false + [observations.conductance.arms.boundname] type = "string" tagged = false diff --git a/autotest/dfns/__snapshots__/v2.0.0.dev3/gwf-maw.yaml b/autotest/dfns/__snapshots__/v2.0.0.dev3/gwf-maw.yaml index a5530c6a..8327d921 100644 --- a/autotest/dfns/__snapshots__/v2.0.0.dev3/gwf-maw.yaml +++ b/autotest/dfns/__snapshots__/v2.0.0.dev3/gwf-maw.yaml @@ -693,7 +693,7 @@ observations: type: union tagged: false arms: - ifno: + ifno_icon: type: record tagged: false fields: @@ -706,6 +706,18 @@ observations: type: integer tagged: false index: true + ifno_boundname: + type: record + tagged: false + fields: + ifno: + type: integer + tagged: false + index: true + fk: packagedata.ifno + boundname: + type: string + tagged: false boundname: type: string tagged: false @@ -713,7 +725,7 @@ observations: type: union tagged: false arms: - ifno: + ifno_icon: type: record tagged: false fields: @@ -726,6 +738,18 @@ observations: type: integer tagged: false index: true + ifno_boundname: + type: record + tagged: false + fields: + ifno: + type: integer + tagged: false + index: true + fk: packagedata.ifno + boundname: + type: string + tagged: false boundname: type: string tagged: false diff --git a/autotest/dfns/__snapshots__/v2.0.0.dev3/gwt-lkt.json b/autotest/dfns/__snapshots__/v2.0.0.dev3/gwt-lkt.json index d5639ae1..399f85dc 100644 --- a/autotest/dfns/__snapshots__/v2.0.0.dev3/gwt-lkt.json +++ b/autotest/dfns/__snapshots__/v2.0.0.dev3/gwt-lkt.json @@ -569,7 +569,7 @@ "type": "union", "tagged": false, "arms": { - "ifno": { + "ifno_ifno2": { "type": "record", "tagged": false, "fields": { @@ -612,7 +612,7 @@ "type": "union", "tagged": false, "arms": { - "ifno": { + "ifno_iconn": { "type": "record", "tagged": false, "fields": { diff --git a/autotest/dfns/__snapshots__/v2.0.0.dev3/gwt-lkt.toml b/autotest/dfns/__snapshots__/v2.0.0.dev3/gwt-lkt.toml index ef3bfcaf..f8eae05f 100644 --- a/autotest/dfns/__snapshots__/v2.0.0.dev3/gwt-lkt.toml +++ b/autotest/dfns/__snapshots__/v2.0.0.dev3/gwt-lkt.toml @@ -510,17 +510,17 @@ tagged = false type = "union" tagged = false -[observations.flow-ja-face.arms.ifno] +[observations.flow-ja-face.arms.ifno_ifno2] type = "record" tagged = false -[observations.flow-ja-face.arms.ifno.fields.ifno] +[observations.flow-ja-face.arms.ifno_ifno2.fields.ifno] type = "integer" tagged = false index = true fk = "packagedata.ifno" -[observations.flow-ja-face.arms.ifno.fields.ifno2] +[observations.flow-ja-face.arms.ifno_ifno2.fields.ifno2] type = "integer" tagged = false index = true @@ -547,17 +547,17 @@ tagged = false type = "union" tagged = false -[observations.lkt.arms.ifno] +[observations.lkt.arms.ifno_iconn] type = "record" tagged = false -[observations.lkt.arms.ifno.fields.ifno] +[observations.lkt.arms.ifno_iconn.fields.ifno] type = "integer" tagged = false index = true fk = "packagedata.ifno" -[observations.lkt.arms.ifno.fields.iconn] +[observations.lkt.arms.ifno_iconn.fields.iconn] type = "integer" tagged = false index = true diff --git a/autotest/dfns/__snapshots__/v2.0.0.dev3/gwt-lkt.yaml b/autotest/dfns/__snapshots__/v2.0.0.dev3/gwt-lkt.yaml index 22234cf0..0db017ee 100644 --- a/autotest/dfns/__snapshots__/v2.0.0.dev3/gwt-lkt.yaml +++ b/autotest/dfns/__snapshots__/v2.0.0.dev3/gwt-lkt.yaml @@ -520,7 +520,7 @@ observations: type: union tagged: false arms: - ifno: + ifno_ifno2: type: record tagged: false fields: @@ -552,7 +552,7 @@ observations: type: union tagged: false arms: - ifno: + ifno_iconn: type: record tagged: false fields: diff --git a/autotest/dfns/__snapshots__/v2.0.0.dev3/gwt-mwt.json b/autotest/dfns/__snapshots__/v2.0.0.dev3/gwt-mwt.json index cac1109a..1ccbeee5 100644 --- a/autotest/dfns/__snapshots__/v2.0.0.dev3/gwt-mwt.json +++ b/autotest/dfns/__snapshots__/v2.0.0.dev3/gwt-mwt.json @@ -492,7 +492,7 @@ "type": "union", "tagged": false, "arms": { - "ifno": { + "ifno_iconn": { "type": "record", "tagged": false, "fields": { diff --git a/autotest/dfns/__snapshots__/v2.0.0.dev3/gwt-mwt.toml b/autotest/dfns/__snapshots__/v2.0.0.dev3/gwt-mwt.toml index 30f57e91..1c4c71f5 100644 --- a/autotest/dfns/__snapshots__/v2.0.0.dev3/gwt-mwt.toml +++ b/autotest/dfns/__snapshots__/v2.0.0.dev3/gwt-mwt.toml @@ -437,17 +437,17 @@ tagged = false type = "union" tagged = false -[observations.mwt.arms.ifno] +[observations.mwt.arms.ifno_iconn] type = "record" tagged = false -[observations.mwt.arms.ifno.fields.ifno] +[observations.mwt.arms.ifno_iconn.fields.ifno] type = "integer" tagged = false index = true fk = "packagedata.ifno" -[observations.mwt.arms.ifno.fields.iconn] +[observations.mwt.arms.ifno_iconn.fields.iconn] type = "integer" tagged = false index = true diff --git a/autotest/dfns/__snapshots__/v2.0.0.dev3/gwt-mwt.yaml b/autotest/dfns/__snapshots__/v2.0.0.dev3/gwt-mwt.yaml index 9dc45235..e12249f7 100644 --- a/autotest/dfns/__snapshots__/v2.0.0.dev3/gwt-mwt.yaml +++ b/autotest/dfns/__snapshots__/v2.0.0.dev3/gwt-mwt.yaml @@ -448,7 +448,7 @@ observations: type: union tagged: false arms: - ifno: + ifno_iconn: type: record tagged: false fields: diff --git a/autotest/dfns/__snapshots__/v2.0.0.dev3/gwt-sft.json b/autotest/dfns/__snapshots__/v2.0.0.dev3/gwt-sft.json index 27ae0cda..6298a71e 100644 --- a/autotest/dfns/__snapshots__/v2.0.0.dev3/gwt-sft.json +++ b/autotest/dfns/__snapshots__/v2.0.0.dev3/gwt-sft.json @@ -605,7 +605,7 @@ "type": "union", "tagged": false, "arms": { - "ifno": { + "ifno_ifno2": { "type": "record", "tagged": false, "fields": { diff --git a/autotest/dfns/__snapshots__/v2.0.0.dev3/gwt-sft.toml b/autotest/dfns/__snapshots__/v2.0.0.dev3/gwt-sft.toml index 88f51c3f..8d16d771 100644 --- a/autotest/dfns/__snapshots__/v2.0.0.dev3/gwt-sft.toml +++ b/autotest/dfns/__snapshots__/v2.0.0.dev3/gwt-sft.toml @@ -544,17 +544,17 @@ tagged = false type = "union" tagged = false -[observations.flow-ja-face.arms.ifno] +[observations.flow-ja-face.arms.ifno_ifno2] type = "record" tagged = false -[observations.flow-ja-face.arms.ifno.fields.ifno] +[observations.flow-ja-face.arms.ifno_ifno2.fields.ifno] type = "integer" tagged = false index = true fk = "packagedata.ifno" -[observations.flow-ja-face.arms.ifno.fields.ifno2] +[observations.flow-ja-face.arms.ifno_ifno2.fields.ifno2] type = "integer" tagged = false index = true diff --git a/autotest/dfns/__snapshots__/v2.0.0.dev3/gwt-sft.yaml b/autotest/dfns/__snapshots__/v2.0.0.dev3/gwt-sft.yaml index da0a3838..3a121df1 100644 --- a/autotest/dfns/__snapshots__/v2.0.0.dev3/gwt-sft.yaml +++ b/autotest/dfns/__snapshots__/v2.0.0.dev3/gwt-sft.yaml @@ -546,7 +546,7 @@ observations: type: union tagged: false arms: - ifno: + ifno_ifno2: type: record tagged: false fields: diff --git a/autotest/dfns/__snapshots__/v2.0.0.dev3/gwt-uzt.json b/autotest/dfns/__snapshots__/v2.0.0.dev3/gwt-uzt.json index 3814e241..0b77ae35 100644 --- a/autotest/dfns/__snapshots__/v2.0.0.dev3/gwt-uzt.json +++ b/autotest/dfns/__snapshots__/v2.0.0.dev3/gwt-uzt.json @@ -523,7 +523,7 @@ "type": "union", "tagged": false, "arms": { - "ifno": { + "ifno_ifno2": { "type": "record", "tagged": false, "fields": { diff --git a/autotest/dfns/__snapshots__/v2.0.0.dev3/gwt-uzt.toml b/autotest/dfns/__snapshots__/v2.0.0.dev3/gwt-uzt.toml index a4bbf49c..f6ec048d 100644 --- a/autotest/dfns/__snapshots__/v2.0.0.dev3/gwt-uzt.toml +++ b/autotest/dfns/__snapshots__/v2.0.0.dev3/gwt-uzt.toml @@ -466,17 +466,17 @@ tagged = false type = "union" tagged = false -[observations.flow-ja-face.arms.ifno] +[observations.flow-ja-face.arms.ifno_ifno2] type = "record" tagged = false -[observations.flow-ja-face.arms.ifno.fields.ifno] +[observations.flow-ja-face.arms.ifno_ifno2.fields.ifno] type = "integer" tagged = false index = true fk = "packagedata.ifno" -[observations.flow-ja-face.arms.ifno.fields.ifno2] +[observations.flow-ja-face.arms.ifno_ifno2.fields.ifno2] type = "integer" tagged = false index = true diff --git a/autotest/dfns/__snapshots__/v2.0.0.dev3/gwt-uzt.yaml b/autotest/dfns/__snapshots__/v2.0.0.dev3/gwt-uzt.yaml index 94f251f8..872efed3 100644 --- a/autotest/dfns/__snapshots__/v2.0.0.dev3/gwt-uzt.yaml +++ b/autotest/dfns/__snapshots__/v2.0.0.dev3/gwt-uzt.yaml @@ -478,7 +478,7 @@ observations: type: union tagged: false arms: - ifno: + ifno_ifno2: type: record tagged: false fields: diff --git a/autotest/dfns/test_migrate.py b/autotest/dfns/test_migrate.py index e494809f..7ffaa542 100644 --- a/autotest/dfns/test_migrate.py +++ b/autotest/dfns/test_migrate.py @@ -425,8 +425,28 @@ def _obs_forms(field) -> list[tuple]: [(("index", "packagedata.ifno"), ("double", "depth")), (_NAME, ("double", "depth"))], ), ("gwf-uzf", "uzet", [(("index", "packagedata.ifno"),), (_NAME,)]), - # a connection number follows a lake number, but not a boundname - ("gwf-lak", "lak", [(("index", "packagedata.ifno"), ("index", None)), (_NAME,)]), + # a connection number or a boundname follows a lake/well number, + # but nothing follows a boundname + ( + "gwf-lak", + "lak", + [ + (("index", "packagedata.ifno"), ("index", None)), + (("index", "packagedata.ifno"), _NAME), + (_NAME,), + ], + ), + ( + "gwf-maw", + "conductance", + [ + (("index", "packagedata.ifno"), ("index", None)), + (("index", "packagedata.ifno"), _NAME), + (_NAME,), + ], + ), + # APT packages read id2 as a number only + ("gwt-lkt", "lkt", [(("index", "packagedata.ifno"), ("index", None)), (_NAME,)]), ("gwf-lak", "outlet", [(("index", "outlets.outletno"),), (_NAME,)]), ( "gwt-lkt", diff --git a/modflow_devtools/dfns/observations.py b/modflow_devtools/dfns/observations.py index 864944f3..c490d98e 100644 --- a/modflow_devtools/dfns/observations.py +++ b/modflow_devtools/dfns/observations.py @@ -24,9 +24,13 @@ def _cellid(name: str = "cellid") -> v2.Array: ) -def _record(*fields: "v2.Integer | v2.Double | v2.Array | v2.Union") -> v2.Record: - """ID and ID2, named after the first.""" - return v2.Record(name=fields[0].name, tagged=False, fields={f.name: f for f in fields}) +def _record( + *fields: "v2.Integer | v2.Double | v2.String | v2.Array | v2.Union", +) -> v2.Record: + """ID and ID2, named after both (e.g. ``ifno_iconn``) so records that are + arms of the same union get distinct names.""" + name = "_".join(f.name for f in fields) + return v2.Record(name=name, tagged=False, fields={f.name: f for f in fields}) def _or_boundname(form: "v2.Integer | v2.Array | v2.Record") -> v2.Union: @@ -55,6 +59,16 @@ def _connection(pk: str, iconn: str = "iconn") -> v2.Union: return _or_boundname(_record(_index(pk, fk=f"packagedata.{pk}"), _index(iconn))) +def _connection_or_name(pk: str, iconn: str = "iconn") -> v2.Union: + """A feature and one of its connections, or a boundname for all of them, + after a feature number or not (MF6 then ignores the number). LAK and MAW + read a boundname as ID2; the APT packages read ID2 as a number only.""" + feature = _index(pk, fk=f"packagedata.{pk}") + boundname = v2.String(name="boundname", tagged=False) + arms = (_record(feature, _index(iconn)), _record(feature, boundname), boundname) + return v2.Union(name=pk, tagged=False, arms={arm.name: arm for arm in arms}) + + # Stress packages _CHD = _all(_CELL_OR_NAME, "chd") _WEL = _all(_CELL_OR_NAME, "wel", "to-mvr", "wel-reduction") @@ -157,7 +171,7 @@ def _model(*depvars: str) -> dict[str, _Field]: "volume", "surface-area", ), - **_all(_connection("ifno"), "lak", "wetted-area", "conductance"), + **_all(_connection_or_name("ifno"), "lak", "wetted-area", "conductance"), **_all(_LAK_OUTLET, "ext-outflow", "to-mvr", "outlet"), } _MAW = { @@ -173,7 +187,7 @@ def _model(*depvars: str) -> dict[str, _Field]: "constant", "fw-conductance", ), - **_all(_connection("ifno", "icon"), "maw", "conductance"), + **_all(_connection_or_name("ifno", "icon"), "maw", "conductance"), } _SFR = _all( _feature("ifno"),