Вы можете использовать специальное свойство "this":
rule "multipleSTPSamePeriod"
when
$stp1 : SubjectTeacherPeriod( $period:period )
$stp2 : SubjectTeacherPeriod( this != $stp1, period==$period)
Если вы хотите, чтобы такое поведение было во всех ваших правилах, вы можете установить опцию конфигурации базы знаний, и механизм автоматически проверит это дляВы без необходимости добавлять ограничение для каждого шаблона.
Используя системное свойство или файл конфигурации, вы можете установить:
drools.removeIdentities = <true|false>
Или использовать API:
KnowledgeBaseConfiguration conf = ...
conf.setOption( RemoveIdentitiesOption.YES );