Does equality between sets contradict the philosophy behind structural set theory? Zermelo-Fraenkel set theory (with choice) is commonly accepted as the standard foundation of mathematics. It is a material set theory. This means that for every two objects/sets $a,b$ one can ask whether $a=b$ or not. Also, one can always ask whether $a∈b$ is true or not. So $\in$ is a global element relation.
As an alternative foundation for set theory, Lawvere proposed ETCS (= elementary theory of the category of sets). It is the standard example of a structural set theory. The idea behind structural set theory is that  elements—in contrast to material set theory—have no internal structure, i.e. are just "abstract dots". Thus there there is no global element relation, and "objects" are not indepedent things, they always lie in a particular structure (for example, we cannot speak about 2 as an object that exists on its own, but we instead talk about the "2 in the structure IN" or the "2 in the structure IR", and strictly speaking, these are not the "same" objects, but we have a natural injection IN -> IR which maps the "natural number 2" to the "real number 2").
There have been controversial discussion whether ETCS is more appropriate as a foundation for mathematics than ZFC. I don't want to discuss this here, but want to point you to this paper:
https://arxiv.org/pdf/1212.6543.pdf
in which Tom Leinster introduces ETCS and argues that this foundational system is much nearer to the practice of mathematicians than ZFC.
Quite at the end of the paper, Leinster states that Sets for Mathematics by Lawvere and Rosebrugh is the quite the only book that teaches set theory in the flavour of structural set theory (ETCS)—which makes sense, since Lawvere is the "founder" of structural set theory.
Now, let me come to my question: Does equality between sets contradict the philosophy behind structural set theory? Obviously, when doing set theory in the spirit of structural set theory, we don't need equality between sets. Instead, we talk about isomorphisms, which makes more sense structurally. Also, the typical definition of equality between sets (extensionality) can't be formulated in ETCS. Thus it seems to me that the notion of "equality between sets" doesn't make much sense in structural set theory. Of course, we could say that two sets are equal if there is a bijection between them, or state that equality exists between sets without further specifying what it does (in particular, if we identify all isomorphic sets, whether there are infinitely many isomorphic sets that are not equal, ...). But this wouldn't yield to additional value, and is thus superfluous. Having this thoughts in mind, I was surprised when I read the following in Sets for Mathematics—the standard text book for structural set theory (on page 2!):

Notation 1.1: The arrow notation f : A -> B just means the domain of f is A and
  the codomain of f is B, and we write dom(f) = A and cod(f) = B.

Here, the authors talk about the equality of two sets (dom(f) = A). They also use the "big bag of morphisms"-definition of category and not the "by pairs (A, B) of objects indexed family of hom-sets". But in this definition, one must talk about operations dom and cod which specify for each morphism a unique domain and codomain. But the word "unique" here presupposes that we have a notion of equality between objects.
Could someone from the foundations of mathematics clarify my confusion? On the nLab (see https://ncatlab.org/nlab/show/category ) there are two definitions of the term "category" ("With one collection of morphisms" and "With a family of collections of morphisms"), and to me it seems the second ("With a family of collections of morphisms") is more appropriate for structural set theory. But then, why does Lawvere—the founder of structural set theory—uses the first one ("With one collection of morphisms") in the only book about structural set theory?
 A: I can't give you an answer that fully addresses what Lawvere and Rosebrugh were thinking, since I haven't asked them.  (If you want to ask them, Rosebrugh runs a category-theory mailing list at https://www.mta.ca/~cat-dist/; he is an active participant, and Lawvere has been known to comment from time to time as well.)  But I can say something about what can be done with equality between objects in ETCS.
For the most part, I think that ETCS has equality between objects by default.  First-order logic, as usually treated, is both untyped and equipped with a global equality predicate, and since ZFC is usually written in such a first-order logic, Lawvere wrote ETCS in that logic too.  Using an untyped logic requires him to put all morphisms into a single class (and to put objects in that class as well, identifying an object with its identity morphism), which means that he needs that global equality predicate.
On the other hand, it's quite possible to write ETCS in a typed first-order logic, with a type of sets, a dependent type of morphisms (dependent on two terms of the type of sets), and a dependent equality predicate for morphisms, but no equality predicate for sets.  This is how Leinster does it; although he doesn't say things like ‘dependent type’ and ‘equality predicate’, such types and predicates are what appear in his paper.  (And while he never denies the existence of an equality predicate between sets, no such predicate appears in his paper either.)
I think that Leinster's way of putting it is more in the structural spirit than Lawvere's, for the reasons in your question.  But I don't think that Lawvere made a conscious choice to reject that argument either.
