def visitUnaryShape(self, ctx: ShExDocParser.UnaryShapeContext):
if ctx.include():<EOL><INDENT>self.expression = self.context.tripleexprlabel_to_iriref(ctx.include().tripleExprLabel())<EOL><DEDENT>else:<EOL><INDENT>lbl = self.context.tripleexprlabel_to_iriref(ctx.tripleExprLabel()) if ctx.tripleExprLabel() else None<EOL>if ctx.tripleConstraint():<EOL><INDENT>self.expression = TripleConstraint(lbl)<EOL>self.visit(ctx.tripleConstraint())<EOL><DEDENT>elif ctx.encapsulatedShape():<EOL><INDENT>self.visit(ctx.encapsulatedShape())<EOL>self.expression.id = lbl<EOL><DEDENT><DEDENT>
unaryShape: ('$' tripleExprLabel)? (tripleConstraint | encapsulatedShape) | include