# 5.50.1 DSNAME Equality

When comparing DSNAME elements for equality, an implementation must be aware that multiple attributes can be specified. DSNAME values x and y are equal only if one of the following conditions holds:

x.Guid is not zeros and y.Guid is not zeros and x.Guid = y.Guid

All of the following are true:

x.Guid is zeros or y.Guid is zeros.

x.StringLen ≠ 0.

The number of RDNs in x is the same as in y.

For each RDN xi in x and RDN yi in y (see [RFC2253]):

AttributeType of xi = AttributeType of yi.

AttributeValue of xi = AttributeValue of yi, without regard to case differences, Hiragana and Katakana character differences, and nonspacing characters.

All of the following are true:

x.Guid is zeros.

y.Guid is zeros.

x.StringLen = 0.

y.StringLen = 0.

x.SidLen ≠ 0.

x.SidLen = y.SidLen.

x.Sid and y.Sid contain identical values in the first x.SidLen array items.