Für ein intervallwertiges Constraint-Beispiel wird ebenfalls ein bestehendes Constraint modifiziert. So wird dem Konzept mit dem Namen CD_Rom für den Parameter Speed ein Werteintervall von 24 bis 40, und dem Parameter Transfer_Rate ein Werteintervall von 3600 bis 6000 zugewiesen:
(def-do :name CD_Rom :oberkonzept PC_Component :parameter ((Speed [24 40] (default 32)) (Transfer_Rate [3600 6000]) (Icon "cdrom" (non-config true)) (Price {100 200})))
Die entsprechenden Unterkonzepte werden ebenfalls modifiziert. Nachfolgend ist die Constraint-Relation sowie das konzeptuelle Constraint für die Berechnung der Übertragungsgeschwindigkeit eines CD-ROM-Laufwerks aufgeführt. Das Constraint entspricht dem in Abschnitt 3.6.2 ff. beschriebenen Beispiel für ein Funktions-Constraint (vgl. Abbildung 3.9):
(def-constraint-relation :name func_CD_Rom :constraint-typ :funktion :externe-pins (A B) :beschraenkungs-funktion "A = B * [150,150]; B = A / [150,150]; # interval_consistency") (def-konzeptuelles-constraint :name conc_CD_Rom :variablen-pattern-paare ((?c :name CD_Rom)) :constraint-aufrufe ((func_CD_Rom (?c Transfer_Rate) (?c Speed))))
Auch hier erfährt das konzeptuelle Constraint keinerlei Modifikation. Die Beschränkungsfunktion der Constraint-Relation hingegen wird entsprechend dem in YACS enthaltenen Intervall-Constraint-Solver angepasst, durch den sich ausschließlich vorgefertigte solution functions verarbeiten lassen. Außerdem ist auch hier durch ,,#`` als Trennzeichen der Name der für dieses Constraint zu nutzenden Constraint-Lösungsstrategie spezifiziert. Es ist wiederum nur ein einziger Constraint-Ausdruck, in diesem Fall bestehend aus zwei primitiven Constraints, erforderlich, der vom Constraint-Parser des YACS-Frameworks in einem Schritt geparst wird.