diff --git a/compiler/grammar2.py b/compiler/grammar2.py
index <HASH>..<HASH> 100644
--- a/compiler/grammar2.py
+++ b/compiler/grammar2.py
@@ -47,7 +47,7 @@ COMPONENT_NAME = r'(?:[a-z][a-zA-Z0-9._]*\.)?[A-Z][A-Za-z0-9]*'
 component_name = re.compile(COMPONENT_NAME)
 component_name_lookahead = re.compile(COMPONENT_NAME + r'\s*{')
 identifier_re = re.compile(r'[a-z_][A-Za-z0-9_]*')
-property_type_re = re.compile(r'[a-z][a-z0-9]*', re.IGNORECASE)
+property_type_re = re.compile(r'[a-z_][a-z0-9_]*', re.IGNORECASE)
 nested_identifier_re = re.compile(r'[a-z_][A-Za-z0-9_\.]*')
 function_name_re = re.compile(r'[a-z_][a-z0-9_\.]*', re.IGNORECASE)
 string_re = StringParser()
allow underscore in propery_type_re