void IClassExpressionVisitor.Visit(
     IDataMaxCardinality dataMaxCardinality
     )
 {
     _enter?.Visit(dataMaxCardinality);
     _exit?.Visit(dataMaxCardinality);
 }
 public virtual void Visit(IDataMaxCardinality dataMaxCardinality)
 {
 }
 bool IClassMembershipEvaluator.Evaluate(
     IDataMaxCardinality dataMaxCardinality,
     object individual
     ) => DataPropertyValues(
     dataMaxCardinality.DataPropertyExpression,
     individual).Count(value => dataMaxCardinality.DataRange?.HasMember(value) ?? true) <= dataMaxCardinality.Cardinality;