The Yoneda embedding and the scheme category Define a category $\mathcal{C}$ as a class of objects $Ob(\mathcal{C})$, and for each pair $A,B\in Ob(\mathcal{C})$ there is a set denoted by $Mor(A,B)$, that satisfies the usual conditions.
I have defined the contravariant functor class, denoted by $[\mathcal{C},\mathbf{Set}]$, where $\mathbf{Set}$ is the category of sets and functions. 
In order to $[\mathcal{C},\mathbf{Set}]$ exists, the category $\mathcal{C}$ must be small; that is, $Ob(\mathcal{C})$ has to be a set (not a class).
On other hand, the Yoneda embedding says that the functor $\mathcal{C}\rightarrow [\mathcal{C},\mathbf{Set}]$ is faithful, and I am studying the Functor Points of an Scheme and there is used the Yoneda embedding when $\mathcal{C}$ is the scheme category. 
My question is: I know the scheme category is not small, so what should I do in order to be able to use the Yoneda embedding? 
 A: The typical solution to this is to use a Grothendieck universe, e.g. by using Tarski-Grothendieck set theory instead of ZFC. We can then define the category of sets relative to a Grothendieck universe $V$ which will often be notated $\mathbf{Set}_V$ or similarly. You then get a notion of a $V$-small set which is an element of $V$. Instead of classes, you can talk about subsets of $V$. However, $V$ itself (in TG set theory) is an element of some larger Grothendieck universe $U$ and so $V$-large sets are $U$-small and we can talk about the Yoneda embedding in $\mathbf{Set}_U$.
Sticking to ZFC, the problem is mostly the existence of the functor category $[\mathcal C^{op},\mathbf{Set}]$ as a category and therefore the Yoneda embedding being a functor. There is no need to state the Yoneda lemma in terms of these though. You can just spell out what the Yoneda lemma is saying logically replacing references to sets with predicates. So instead of saying $F\in Ob([\mathcal{C}^{op},\mathbf{Set}])$ you would formulate a logical predicate that states that $F$ behaves like a functor. To do this would require reformulating the definition of functor (and natural transformation and category) to speak in terms of predicates. So again this would produce something like: "Given a predicate $Ob\mathcal{C}$ representing the class of objects of $\mathcal{C}$, we have a class function (i.e. a total when restricted by $Ob\mathcal{C}$ functional binary predicate) $id_\mathcal{C}$ and class functions $F_0$ and $F_1$ such that $$\forall x. Ob\mathcal{C}(x)\to F_1(id_\mathcal{C}(x))=\{(y,y)\mid y\in F_0(x)\}$$ and ..." This is a reformulation of the $F(id)=id$ law. This would need to be done for the other laws and for categories, natural transformations, and the Yoneda lemma itself. This is pretty tedious but fairly mechanical. It may nevertheless be a good idea to go through it if you are interested in working with proper classes. The result is more of a theorem/proof schema as you can't quantify over predicates/classes. Relatedly, there's not even a way to formulate a "larger-than-large" notion of category because the "objects" of that category would be assemblages of predicates which aren't individuals of ZFC. You can also take the result of the above exercise and stick it into TG set theory which will produce a notion of a large category that is not $V$-small for any $V$.
Often we want to consider doing category theory in set theories modeled by other toposes. Tools like Algebraic Set Theory are one approach, among others, to formulating a structure like Grothendieck universes and allowing a formulation akin to the first approach in a more arbitrary topos.
