code: def visitNodeConstraintNonLiteral(self, ctx: ShExDocParser.NodeConstraintNonLiteralContext):
          
          self.nodeconstraint.nodeKind = 'iri' if ctx.nonLiteralKind().KW_IRI() \
              else 'bnode' if ctx.nonLiteralKind().KW_BNODE() \
              else 'nonliteral' if ctx.nonLiteralKind().KW_NONLITERAL() \
              else 'undefined'
          self.visitChildren(ctx)
docs: nodeConstraint: nonLiteralKind stringFacet*  # nodeConstraintNonLiteral