diff --git a/semantics/validation.py b/semantics/validation.py
index 73e5309..5eee7d8 100644
--- a/semantics/validation.py
+++ b/semantics/validation.py
@@ -237,10 +237,20 @@ def lemma_always_pinned(frame):
 def validate_schemas(lemma_id):
     error_msg = ''
     lemma = Lemma.objects.get(id=lemma_id, old=False)
-    if not all_schemas_used(lemma):
+    if missing_schemata_opinions(lemma):
+        error_msg = u'Nie wszystkie schematy mają wybrane oceny.'
+    elif not all_schemas_used(lemma):
         error_msg = u'Semantyka nie wykorzystuje wszystkich poprawnych schematów walencyjnych.'
     return error_msg
 
+def missing_schemata_opinions(lemma):
+    schemata = lemma.frames
+    for schema in schemata.all():
+        schema_opinion = lemma.frame_opinions.filter(frame=schema)
+        if not schema_opinion.exists():
+            return True
+    return False
+
 def all_schemas_used(lemma):
     frames = lemma.entry_obj.visible_frames()
     schemas = lemma.frames