public bool Equals(Kinematic other)
        {
            if (other == null)
            {
                return(false);
            }

            if (!(_internalElement?.RefBaseSystemUnitPath?.Equals(other._internalElement?.RefBaseSystemUnitPath) ??
                  false))
            {
                return(false);
            }

            if (!(Name?.Equals(other.Name) ?? false))
            {
                return(false);
            }

            if (!(Id?.Equals(other.Id) ?? false))
            {
                return(false);
            }

            if (!(Links?.Equals(other.Links) ?? false))
            {
                return(false);
            }

            if (!(JointValues?.Equals(other.JointValues) ?? false))
            {
                return(false);
            }

            if (!(Joints?.Equals(other.Joints) ?? false))
            {
                return(false);
            }

            return(true);
        }