There is a small problem in section 8.3.6 regarding property access expressions.
The problem is that the concrete syntax defined in that section will not 
actually match the examples given in that section.
---------
Here is the concrete syntax defined in that section...
    PropertyAccessExpression(e: PropertyAccessExpression)
     = FeatureReference(e.featureReference)
   FeatureReference(f: FeatureReference)
     = FeatureTargetExpression(f.expression) "." NameBinding(f.nameBinding)
   FeatureTargetExpression(e: Expression)
     = NameTargetExpression(e)
|  NonNamePrimaryExpression(e) | 
   NameTargetExpression(e: NameExpression)
    = ColonQualifiedName(e.name)
Note that NameTargetExpression only allows ColonQualifiedName(s) to be used to 
define a PropertyAccessExpression.
-------
Here are the examples of property access expressions from the same section...
    poleValue.im
    this.node
    members.name
    jack.house
Note that, because NameTargetExpression only allows ColonQualifiedName(s), none 
of the above examples matches the concrete syntax.
----------
I suspect that NameTargetExpression should be defined to be a QualifiedName, 
which is defined to be either a DotQualifiedName, an UnqualifiedName, or a 
ColonQualifiedName, so...
   NameTargetExpression(e: NameExpression)
    = QualifiedName(e.name)
where QualifiedName is defined elsewhere as:
QualifiedName(q: QualifedName)
= ColonQualifiedName(q)
|  DotQualifiedName(q) | 
|  UnqualifiedName(q) |