Polyhierarki

Polyhierarkiske forhold

I forbindelse med konseptuelle systemer som ontologier og synonymordbøker (konseptuelle hierarkier ), beskriver polyhierarki en hierarkisk struktur der en klasse kan ha mer enn en overordnet klasse. Dermed kan hvert begrep tilordnes flere generiske termer, siden forskjellige egenskaper blir tatt i betraktning i oppgaven. Strengt tatt er polyhierarkiet derfor ikke noe reelt hierarki i form av et rotfestet tre, men en rettet asyklisk graf (engelsk rettet acyklisk graf , DAG).

Avhengig av definisjonen kan et polyhierarki også forstås som et sett med trær som kan ha noder til felles. I dette tilfellet er et polyhierarki en spesiell type multigraf , fordi to noder også kan kobles til flere ganger (i forskjellige trær).

Når det gjelder polyhierarkiske strukturer, skilles det innimellom mellom flertrær og generelt rettet asykliske grafer. Et flertre (engelsk MultiTree ) er en rettet asyklisk graf der flere trær kan identifiseres som underkonstruksjoner. Generelt betyr dette at diamantstrukturer (to noder med vanlige foreldre og barn) ikke vises. Imidlertid brukes begrepet flertre inkonsekvent.

I objektorientert programmering forekommer polyhierarkiet i form av flere arv . Dette kan føre til uønskede uklarheter med Diamond-problemet .