add basic semantic