AssemblageTerminologySet.java
/*
* Copyright © 2026 IKE Network (support@ike.network)
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package network.ike.foundation.ike.terms;
import dev.ikm.tinkar.entity.builder.ActiveStamp;
import dev.ikm.tinkar.entity.builder.KnowledgeSet;
/**
* The modern membership-pattern terminology (IKE-Network/ike-issues#880): KEC's rule —
* treat "assemblage" the same way this project already treats the other rejected
* philosophical/OWL-baggage term for describing IKE's own work. Pattern is the modern
* equivalent Tinkar itself settled on: a pattern's own semantics — the components
* carrying that pattern's public id — already are the set "assemblage" used to name.
* <p>
* Under the inception flatten (IKE-Network/ike-issues#894) the four SOLOR-inherited
* concepts that carried "assemblage" in their fully qualified names are corrected in
* place at their section declarations ({@code foundation.Section3}/{@code Section13}/
* {@code Section18}, registered in {@code DELIBERATELY_RENAMED_FQNS}), and the three
* already-correctly-modeled membership patterns ({@code Tinkar base model component
* pattern}, {@code Komet base model component pattern}, {@code Version control path
* pattern}) carry {@code Set membership (IkeFoundation)} as the purpose of their single
* declared version in {@code foundation.Section71}. This file mints that purpose concept
* and the fresh IKE-native {@code Solor Concepts Pattern (IkeFoundation)}.
* <p>
* {@code SOLORConceptAssemblage} (the pattern) is left untouched entirely — it is
* dormant (zero live semantics anywhere in the ingested foundation, confirmed before this
* file was written) — and is cited in the narrative only as legacy prior art, the same
* treatment already given {@code TinkarTerm.CONCEPT_CONSTRAINTS} when
* {@code ConstraintPatternSet} was minted. {@code Solor Concepts Pattern (IkeFoundation)}
* is the fresh IKE-native replacement going forward. {@code Membership semantic (SOLOR)}
* itself stays real and unrenamed — just no longer this project's own preferred
* terminology.
*/
final class AssemblageTerminologySet {
private AssemblageTerminologySet() {
}
/**
* Composes this section's declarations into the session.
*
* @param set the knowledge set (the session)
*/
static void compose(KnowledgeSet set) {
// The one declared inception stamp of the pre-release set
// (IKE-Network/ike-issues#894).
ActiveStamp inception = Ike.INCEPTION;
// ── The modern membership-pattern purpose concept ──────────────────────
set.concept("Set membership (IkeFoundation)").at(inception)
.synonym("Set membership")
.definition("A component's role as an element of a pattern's own set of"
+ " semantics — the modern replacement for the deprecated SOLOR term"
+ " Membership semantic.")
.isA(set.conceptRef("Chronicle and version model (IkeFoundation)"), IkeTerm.PURPOSE);
// ── Solor Concepts Pattern: the IKE-native replacement for the dormant ──
// SOLORConceptAssemblage — untouched, cited as legacy prior art only.
set.pattern("Solor Concepts Pattern (IkeFoundation)").at(inception)
.meaning(set.conceptRef("Concept pattern for logic coordinate"))
.purpose(set.conceptRef("Set membership (IkeFoundation)"));
}
}