При настройке N-четырехкратных троек для мутаций в клиентах gRPC, таких как dgraph4j, вам нужно только указать сами тройки, разделенные новой строкой, и передать их Mutation#setSetNquads
. Они не окружены set
. Другими словами, вместо этого:
{
set {
_:user <label> "USER" .
_:user <userType> "USER_TYPE" .
_:user <email> "ba@a.aa" .
}
}
Вам нужны только тройки:
_:user <label> "USER" .
_:user <userType> "USER_TYPE" .
_:user <email> "ba@a.aa" .
Вот как это будет выглядеть в вашем коде Java:
String email = "ba@a.aa";
String userType = "JOB_SEEKER";
Transaction newTransaction = this.dgraphClient.newTransaction();
String triples =
"_:user <label> \"USER\" .\n" +
"_:user <userType> \"" + email + "\" .\n" +
"_:user <email> \"" + userType + "\" .";
Mutation mu =
Mutation.newBuilder()
.setSetNquads(ByteString.copyFromUtf8(triples))
.build();
Assigned assigned = newTransaction.mutate(mu);
Первый формат мутаций с { set { ... } }
предназначен для клиентов HTTP, который включает мутации в Dgraph Ratel или с curl
.
Дополнительная информация о мутациях Dgraph доступна в документации по мутациям: https://docs.dgraph.io/mutations/