public override void AcceptVisitor(IMappingModelVisitor visitor)
{
visitor.ProcessClass(this);
if (Id != null)
visitor.Visit(Id);
if (Discriminator != null)
visitor.Visit(Discriminator);
foreach (var subclass in Subclasses)
visitor.Visit(subclass);
foreach (var join in Joins)
visitor.Visit(join);
base.AcceptVisitor(visitor);
}