SchemaAttributeDescriptors

SchemaAttributeDescriptors

#Overview

name: SchemaAttributeDescriptors

The value of this variable can be defined or overridden in .ini config files. 22 .ini config files referencing this setting variable.

It is referenced in 66 C++ source files.

#Summary

#Usage in the C++ source code

The purpose of SchemaAttributeDescriptors is to define and describe the attributes used in the schema system of Unreal Engine’s Online Services module. It is part of the configuration for the schema registry, which is responsible for managing and validating schemas used in online services.

SchemaAttributeDescriptors is primarily used in the Online Services module, specifically in the schema system. This system is likely used for defining data structures and attributes for various online features, such as lobbies, matchmaking, or user profiles.

The value of this variable is set through configuration, typically in the SchemaConfig object. It is populated with FSchemaAttributeDescriptor objects, which define individual attributes with their properties.

SchemaAttributeDescriptors interacts with other configuration variables such as:

  1. SchemaCategoryAttributeDescriptors
  2. SchemaDescriptors
  3. ServiceDescriptors
  4. ServiceAttributeDescriptors

Developers must be aware of the following when using this variable:

  1. Each attribute must have a unique ID within the schema.
  2. Attributes have specific types (e.g., String, Int64, Bool) that must be correctly set.
  3. Attribute flags (e.g., Public, Private, Searchable) determine the visibility and behavior of the attribute.
  4. Some attributes, like SchemaCompatibilityId, have special purposes and restrictions.

Best practices when using this variable include:

  1. Ensure all required attributes are defined for each schema and category.
  2. Use meaningful and consistent naming conventions for attribute IDs.
  3. Set appropriate flags for each attribute based on its intended use.
  4. Validate the configuration using the SchemaRegistry’s ParseConfig method before using it in the application.
  5. Consider the implications of attribute visibility (Public vs. Private) on network traffic and security.
  6. Use the correct data type for each attribute to ensure proper data handling and storage.

#Setting Variables

#References In INI files

<Workspace>/Engine/Config/BaseEngine.ini:2408, section: [OnlineServices.Lobbies]
<Workspace>/Projects/Lyra/Config/Custom/EOS/DefaultEngine.ini:70, section: [OnlineServices.Lobbies]
<Workspace>/Projects/Lyra/Config/Custom/EOS/DefaultEngine.ini:71, section: [OnlineServices.Lobbies]
<Workspace>/Projects/Lyra/Config/Custom/EOS/DefaultEngine.ini:72, section: [OnlineServices.Lobbies]
<Workspace>/Projects/Lyra/Config/Custom/EOS/DefaultEngine.ini:73, section: [OnlineServices.Lobbies]
<Workspace>/Projects/Lyra/Config/Custom/EOS/DefaultEngine.ini:74, section: [OnlineServices.Lobbies]
<Workspace>/Projects/Lyra/Config/Custom/EOS/DefaultEngine.ini:75, section: [OnlineServices.Lobbies]
<Workspace>/Projects/Lyra/Config/Custom/EOS/DefaultEngine.ini:76, section: [OnlineServices.Lobbies]
<Workspace>/Projects/Lyra/Config/Custom/Steam/DefaultEngine.ini:32, section: [OnlineServices.Lobbies]
<Workspace>/Projects/Lyra/Config/Custom/Steam/DefaultEngine.ini:33, section: [OnlineServices.Lobbies]
<Workspace>/Projects/Lyra/Config/Custom/Steam/DefaultEngine.ini:34, section: [OnlineServices.Lobbies]
<Workspace>/Projects/Lyra/Config/Custom/Steam/DefaultEngine.ini:35, section: [OnlineServices.Lobbies]
<Workspace>/Projects/Lyra/Config/Custom/Steam/DefaultEngine.ini:36, section: [OnlineServices.Lobbies]
<Workspace>/Projects/Lyra/Config/Custom/Steam/DefaultEngine.ini:37, section: [OnlineServices.Lobbies]
<Workspace>/Projects/Lyra/Config/Custom/Steam/DefaultEngine.ini:38, section: [OnlineServices.Lobbies]
<Workspace>/Projects/Lyra/Config/Custom/SteamEOS/DefaultEngine.ini:75, section: [OnlineServices.Lobbies]
<Workspace>/Projects/Lyra/Config/Custom/SteamEOS/DefaultEngine.ini:76, section: [OnlineServices.Lobbies]
<Workspace>/Projects/Lyra/Config/Custom/SteamEOS/DefaultEngine.ini:77, section: [OnlineServices.Lobbies]
<Workspace>/Projects/Lyra/Config/Custom/SteamEOS/DefaultEngine.ini:78, section: [OnlineServices.Lobbies]
<Workspace>/Projects/Lyra/Config/Custom/SteamEOS/DefaultEngine.ini:79, section: [OnlineServices.Lobbies]
<Workspace>/Projects/Lyra/Config/Custom/SteamEOS/DefaultEngine.ini:80, section: [OnlineServices.Lobbies]
<Workspace>/Projects/Lyra/Config/Custom/SteamEOS/DefaultEngine.ini:81, section: [OnlineServices.Lobbies]

#References in C++ code

#Callsites

This variable is referenced in the following C++ source code:

#Loc: <Workspace>/Engine/Plugins/Online/OnlineServices/Source/OnlineServicesCommon/Private/Online/LobbiesCommonTests.cpp:141

Scope (from outer to inner):

file
namespace    UE::Online
function     bool FClientLobbyDataTest::RunTest

Source code excerpt:

	SchemaConfig.SchemaCategoryAttributeDescriptors.Add({ LobbyBaseSchemaId, LobbyCategoryId, { SchemaCompatibilityAttributeId } });
	SchemaConfig.SchemaCategoryAttributeDescriptors.Add({ LobbyBaseSchemaId, LobbyMemberCategoryId, {} });
	SchemaConfig.SchemaAttributeDescriptors.Add({ SchemaCompatibilityAttributeId, ESchemaAttributeType::Int64, { ESchemaAttributeFlags::Public, ESchemaAttributeFlags::SchemaCompatibilityId }, 0, 0 });

	SchemaConfig.SchemaDescriptors.Add({ LobbySchemaId1, LobbyBaseSchemaId });
	SchemaConfig.SchemaCategoryAttributeDescriptors.Add({ LobbySchemaId1, LobbyCategoryId, { LobbyAttributeId1, LobbyAttributeId2 } });
	SchemaConfig.SchemaCategoryAttributeDescriptors.Add({ LobbySchemaId1, LobbyMemberCategoryId, { LobbyMemberAttributeId1, LobbyMemberAttributeId2 } });

	SchemaConfig.SchemaDescriptors.Add({ LobbySchemaId2, LobbyBaseSchemaId });

#Loc: <Workspace>/Engine/Plugins/Online/OnlineServices/Source/OnlineServicesCommon/Private/Online/LobbiesCommonTests.cpp:151

Scope (from outer to inner):

file
namespace    UE::Online
function     bool FClientLobbyDataTest::RunTest

Source code excerpt:

	SchemaConfig.SchemaCategoryAttributeDescriptors.Add({ LobbySchemaId2, LobbyMemberCategoryId, { LobbyMemberAttributeId1, LobbyMemberAttributeId2 } });

	SchemaConfig.SchemaAttributeDescriptors.Add({ LobbyAttributeId1, ESchemaAttributeType::String, { ESchemaAttributeFlags::Public }, 0, 64 });
	SchemaConfig.SchemaAttributeDescriptors.Add({ LobbyAttributeId2, ESchemaAttributeType::String, { ESchemaAttributeFlags::Public }, 0, 64 });
	SchemaConfig.SchemaAttributeDescriptors.Add({ LobbyMemberAttributeId1, ESchemaAttributeType::String, { ESchemaAttributeFlags::Public }, 0, 64 });
	SchemaConfig.SchemaAttributeDescriptors.Add({ LobbyMemberAttributeId2, ESchemaAttributeType::String, { ESchemaAttributeFlags::Public }, 0, 64 });

	SchemaConfig.ServiceDescriptors.Add({ LobbyServiceDescriptorId, { LobbyServiceAttributeId1, LobbyServiceAttributeId2, LobbyServiceAttributeId3 } });
	SchemaConfig.ServiceAttributeDescriptors.Add({ LobbyServiceAttributeId1, AllSupportedServiceAttributeTypes, AllSupportedServiceAttributeFlags, 64 });
	SchemaConfig.ServiceAttributeDescriptors.Add({ LobbyServiceAttributeId2, AllSupportedServiceAttributeTypes, AllSupportedServiceAttributeFlags, 64 });
	SchemaConfig.ServiceAttributeDescriptors.Add({ LobbyServiceAttributeId3, AllSupportedServiceAttributeTypes, AllSupportedServiceAttributeFlags, 64 });
	SchemaConfig.ServiceDescriptors.Add({ LobbyMemberServiceDescriptorId, { LobbyMemberServiceAttributeId1, LobbyMemberServiceAttributeId2 } });

#Loc: <Workspace>/Engine/Plugins/Online/OnlineServices/Source/OnlineServicesCommon/Private/Online/LobbiesCommonTests.cpp:1856

Scope (from outer to inner):

file
namespace    UE::Online

Source code excerpt:

 * +SchemaCategoryAttributeDescriptors=(SchemaId="FunctionalTestLobbies", CategoryId="Lobby", AttributeIds=("LobbyAttributeId1"))
 * +SchemaCategoryAttributeDescriptors=(SchemaId="FunctionalTestLobbies", CategoryId="LobbyMember", AttributeIds=("LobbyMemberAttributeId1"))
 * +SchemaAttributeDescriptors=(Id="SchemaCompatibilityId", Type="Int64", Flags=("Public", "SchemaCompatibilityId"))
 * +SchemaAttributeDescriptors=(Id="LobbyCreateTime", Type="Int64", Flags=("Public", "Searchable"))
 * +SchemaAttributeDescriptors=(Id="LobbyAttributeId1", Type="String", Flags=("Public"), MaxSize=64)
 * +SchemaAttributeDescriptors=(Id="LobbyMemberAttributeId1", Type="String", Flags=("Public"), MaxSize=64)
 */

TOnlineAsyncOpHandle<FFunctionalTestLobbies> RunLobbyFunctionalTest(IAuth& AuthInterface, FLobbiesCommon& LobbiesCommon, FLobbyEvents& LobbyEvents)
{
	static const FString ConfigName = TEXT("FunctionalTest");
	static const FString User1KeyName = TEXT("User1");
	static const FString User2KeyName = TEXT("User2");
	static const FString CreateLobbyKeyName = TEXT("CreateLobby");
	static const FString FindLobbyKeyName = TEXT("FindLobby");
	static const FString LobbyEventCaptureKeyName = TEXT("LobbyEventCapture");
	static const FString ConfigNameKeyName = TEXT("Config");
	static const FString SearchKeyName = TEXT("SearchKey");

	static const FSchemaId LobbySchemaId = TEXT("FunctionalTestLobbies");
	static const FSchemaAttributeId LobbyCreateTimeAttributeId = TEXT("LobbyCreateTime");
	static const FSchemaAttributeId LobbyAttributeId1 = TEXT("LobbyAttributeId1");
	static const FSchemaAttributeId LobbyMemberAttributeId1 = TEXT("LobbyMemberAttributeId1");
	static const FSchemaVariant LobbyAttribute1Value1 = TEXT("LobbyAttribute1Value1");
	static const FSchemaVariant LobbyAttribute1Value2 = TEXT("LobbyAttribute1Value2");
	static const FSchemaVariant LobbyMemberAttribute1Value1 = TEXT("LobbyMemberAttribute1Value1");

#Loc: <Workspace>/Engine/Plugins/Online/OnlineServices/Source/OnlineServicesInterface/Private/Online/Schema.cpp:225

Scope (from outer to inner):

file
namespace    UE::Online
function     bool FSchemaRegistry::ParseConfig

Source code excerpt:

	// Populate known schema attributes
	TMap<FSchemaAttributeId, const FSchemaAttributeDescriptor*> KnownSchemaAttributeDescriptors;
	for (const FSchemaAttributeDescriptor& SchemaAttributeDescriptor : Config.SchemaAttributeDescriptors)
	{
		// Check that schema descriptor id has not already been used.
		if (KnownSchemaAttributeDescriptors.Contains(SchemaAttributeDescriptor.Id))
		{
			UE_LOG(LogOnlineSchema, Error, TEXT("Duplicate schema attribute descriptor found: %s"), *SchemaAttributeDescriptor.Id.ToString().ToLower());
			ParsedSuccessfully = false;

#Loc: <Workspace>/Engine/Plugins/Online/OnlineServices/Source/OnlineServicesInterface/Public/Online/SchemaTypes.h:399

Scope (from outer to inner):

file
namespace    UE::Online

Source code excerpt:

	 * List of all schema attributes
	 */
	TArray<FSchemaAttributeDescriptor> SchemaAttributeDescriptors;
	/**
	 * List of additional attributes to add to the given category for the given schema.
	 */
	TArray<FSchemaCategoryAttributesDescriptor> SchemaCategoryAttributeDescriptors;

	/**

#Loc: <Workspace>/Engine/Plugins/Online/OnlineServices/Source/OnlineServicesInterface/Public/Online/SchemaTypes.h:709

Scope (from outer to inner):

file
namespace    UE::Online
namespace    Meta

Source code excerpt:

	ONLINE_STRUCT_FIELD(FSchemaRegistryDescriptorConfig, SchemaDescriptors),
	ONLINE_STRUCT_FIELD(FSchemaRegistryDescriptorConfig, SchemaCategoryDescriptors),
	ONLINE_STRUCT_FIELD(FSchemaRegistryDescriptorConfig, SchemaAttributeDescriptors),
	ONLINE_STRUCT_FIELD(FSchemaRegistryDescriptorConfig, SchemaCategoryAttributeDescriptors),
	ONLINE_STRUCT_FIELD(FSchemaRegistryDescriptorConfig, ServiceDescriptors),
	ONLINE_STRUCT_FIELD(FSchemaRegistryDescriptorConfig, ServiceAttributeDescriptors)
END_ONLINE_STRUCT_META()

/* Meta*/ }

#Loc: <Workspace>/Engine/Source/Programs/Online/OnlineTestsCore/Source/Private/Tests/Schema/SchemaTests.cpp:211

Scope: file

Source code excerpt:

		SchemaConfig.SchemaCategoryDescriptors.Add({ TestCategoryId1, FSchemaServiceDescriptorId() });
		SchemaConfig.SchemaCategoryAttributeDescriptors.Add({ TestSchemaId1, TestCategoryId1, { TestAttributeId1 } });
		SchemaConfig.SchemaAttributeDescriptors.Add({ TestAttributeId1, ESchemaAttributeType::Bool, { ESchemaAttributeFlags::Public }, 0, 0 });

		FSchemaRegistry SchemaRegistry;
		CHECK(SchemaRegistry.ParseConfig(SchemaConfig));
	}

	SECTION("Invalid attribute type")

#Loc: <Workspace>/Engine/Source/Programs/Online/OnlineTestsCore/Source/Private/Tests/Schema/SchemaTests.cpp:223

Scope: file

Source code excerpt:

		SchemaConfig.SchemaCategoryDescriptors.Add({ TestCategoryId1, FSchemaServiceDescriptorId() });
		SchemaConfig.SchemaCategoryAttributeDescriptors.Add({ TestSchemaId1, TestCategoryId1, { TestAttributeId1 } });
		SchemaConfig.SchemaAttributeDescriptors.Add({ TestAttributeId1, ESchemaAttributeType::None, { ESchemaAttributeFlags::Public }, 0, 0 });

		FSchemaRegistry SchemaRegistry;
		CHECK(SchemaRegistry.ParseConfig(SchemaConfig) == false);
	}

	SECTION("Invalid attribute visibility - none")

#Loc: <Workspace>/Engine/Source/Programs/Online/OnlineTestsCore/Source/Private/Tests/Schema/SchemaTests.cpp:235

Scope: file

Source code excerpt:

		SchemaConfig.SchemaCategoryDescriptors.Add({ TestCategoryId1, FSchemaServiceDescriptorId() });
		SchemaConfig.SchemaCategoryAttributeDescriptors.Add({ TestSchemaId1, TestCategoryId1, { TestAttributeId1 } });
		SchemaConfig.SchemaAttributeDescriptors.Add({ TestAttributeId1, ESchemaAttributeType::Bool, {}, 0, 0 });

		FSchemaRegistry SchemaRegistry;
		CHECK(SchemaRegistry.ParseConfig(SchemaConfig) == false);
	}

	SECTION("Invalid attribute visibility")

#Loc: <Workspace>/Engine/Source/Programs/Online/OnlineTestsCore/Source/Private/Tests/Schema/SchemaTests.cpp:247

Scope: file

Source code excerpt:

		SchemaConfig.SchemaCategoryDescriptors.Add({ TestCategoryId1, FSchemaServiceDescriptorId() });
		SchemaConfig.SchemaCategoryAttributeDescriptors.Add({ TestSchemaId1, TestCategoryId1, { TestAttributeId1 } });
		SchemaConfig.SchemaAttributeDescriptors.Add({ TestAttributeId1, ESchemaAttributeType::Bool, { ESchemaAttributeFlags::Public, ESchemaAttributeFlags::Private }, 0, 0 });

		FSchemaRegistry SchemaRegistry;
		CHECK(SchemaRegistry.ParseConfig(SchemaConfig) == false);
	}

	SECTION("Invalid attribute searchability")

#Loc: <Workspace>/Engine/Source/Programs/Online/OnlineTestsCore/Source/Private/Tests/Schema/SchemaTests.cpp:259

Scope: file

Source code excerpt:

		SchemaConfig.SchemaCategoryDescriptors.Add({ TestCategoryId1, FSchemaServiceDescriptorId() });
		SchemaConfig.SchemaCategoryAttributeDescriptors.Add({ TestSchemaId1, TestCategoryId1, { TestAttributeId1 } });
		SchemaConfig.SchemaAttributeDescriptors.Add({ TestAttributeId1, ESchemaAttributeType::Bool, { ESchemaAttributeFlags::Searchable, ESchemaAttributeFlags::Private }, 0, 0 });

		FSchemaRegistry SchemaRegistry;
		CHECK(SchemaRegistry.ParseConfig(SchemaConfig) == false);
	}

	SECTION("Duplicate attribute")

#Loc: <Workspace>/Engine/Source/Programs/Online/OnlineTestsCore/Source/Private/Tests/Schema/SchemaTests.cpp:272

Scope: file

Source code excerpt:

		SchemaConfig.SchemaCategoryAttributeDescriptors.Add({ TestSchemaId1, TestCategoryId1, { TestAttributeId1 } });

		SchemaConfig.SchemaAttributeDescriptors.Add({ TestAttributeId1, ESchemaAttributeType::Bool, { ESchemaAttributeFlags::Public }, 0, 0 });
		SchemaConfig.SchemaAttributeDescriptors.Add({ TestAttributeId1, ESchemaAttributeType::Bool, { ESchemaAttributeFlags::Public }, 0, 0 });

		FSchemaRegistry SchemaRegistry;
		CHECK(SchemaRegistry.ParseConfig(SchemaConfig) == false);
	}

	SECTION("Valid max length")

#Loc: <Workspace>/Engine/Source/Programs/Online/OnlineTestsCore/Source/Private/Tests/Schema/SchemaTests.cpp:285

Scope: file

Source code excerpt:

		SchemaConfig.SchemaCategoryDescriptors.Add({ TestCategoryId1, FSchemaServiceDescriptorId() });
		SchemaConfig.SchemaCategoryAttributeDescriptors.Add({ TestSchemaId1, TestCategoryId1, { TestAttributeId1 } });
		SchemaConfig.SchemaAttributeDescriptors.Add({ TestAttributeId1, ESchemaAttributeType::String, { ESchemaAttributeFlags::Public }, 0, 32 });

		FSchemaRegistry SchemaRegistry;
		CHECK(SchemaRegistry.ParseConfig(SchemaConfig));
	}

	SECTION("Invalid max length 0")

#Loc: <Workspace>/Engine/Source/Programs/Online/OnlineTestsCore/Source/Private/Tests/Schema/SchemaTests.cpp:297

Scope: file

Source code excerpt:

		SchemaConfig.SchemaCategoryDescriptors.Add({ TestCategoryId1, FSchemaServiceDescriptorId() });
		SchemaConfig.SchemaCategoryAttributeDescriptors.Add({ TestSchemaId1, TestCategoryId1, { TestAttributeId1 } });
		SchemaConfig.SchemaAttributeDescriptors.Add({ TestAttributeId1, ESchemaAttributeType::String, { ESchemaAttributeFlags::Public }, 0, 0 });

		FSchemaRegistry SchemaRegistry;
		CHECK(SchemaRegistry.ParseConfig(SchemaConfig) == false);
	}

	SECTION("Invalid max length -1")

#Loc: <Workspace>/Engine/Source/Programs/Online/OnlineTestsCore/Source/Private/Tests/Schema/SchemaTests.cpp:309

Scope: file

Source code excerpt:

		SchemaConfig.SchemaCategoryDescriptors.Add({ TestCategoryId1, FSchemaServiceDescriptorId() });
		SchemaConfig.SchemaCategoryAttributeDescriptors.Add({ TestSchemaId1, TestCategoryId1, { TestAttributeId1 } });
		SchemaConfig.SchemaAttributeDescriptors.Add({ TestAttributeId1, ESchemaAttributeType::String, { ESchemaAttributeFlags::Public }, 0, -1 });

		FSchemaRegistry SchemaRegistry;
		CHECK(SchemaRegistry.ParseConfig(SchemaConfig) == false);
	}

	SECTION("Searchable attribute declared in base")

#Loc: <Workspace>/Engine/Source/Programs/Online/OnlineTestsCore/Source/Private/Tests/Schema/SchemaTests.cpp:321

Scope: file

Source code excerpt:

		SchemaConfig.SchemaCategoryDescriptors.Add({ TestCategoryId1, FSchemaServiceDescriptorId() });
		SchemaConfig.SchemaCategoryAttributeDescriptors.Add({ TestSchemaId1, TestCategoryId1, { TestAttributeId1 } });
		SchemaConfig.SchemaAttributeDescriptors.Add({ TestAttributeId1, ESchemaAttributeType::String, { ESchemaAttributeFlags::Public, ESchemaAttributeFlags::Searchable }, 0, 32 });

		FSchemaRegistry SchemaRegistry;
		CHECK(SchemaRegistry.ParseConfig(SchemaConfig));
	}

	SECTION("Searchable attribute declared in derived")

#Loc: <Workspace>/Engine/Source/Programs/Online/OnlineTestsCore/Source/Private/Tests/Schema/SchemaTests.cpp:336

Scope: file

Source code excerpt:

		SchemaConfig.SchemaCategoryAttributeDescriptors.Add({ TestSchemaId2, TestCategoryId1, { TestAttributeId1 }});

		SchemaConfig.SchemaAttributeDescriptors.Add({ TestAttributeId1, ESchemaAttributeType::String, { ESchemaAttributeFlags::Public, ESchemaAttributeFlags::Searchable }, 0, 32 });

		FSchemaRegistry SchemaRegistry;
		CHECK(SchemaRegistry.ParseConfig(SchemaConfig) == false);
	}

	SECTION("SchemaCompatibilityId declared in base")

#Loc: <Workspace>/Engine/Source/Programs/Online/OnlineTestsCore/Source/Private/Tests/Schema/SchemaTests.cpp:348

Scope: file

Source code excerpt:

		SchemaConfig.SchemaCategoryDescriptors.Add({ TestCategoryId1, FSchemaServiceDescriptorId() });
		SchemaConfig.SchemaCategoryAttributeDescriptors.Add({ TestSchemaId1, TestCategoryId1, { TestAttributeId1 } });
		SchemaConfig.SchemaAttributeDescriptors.Add({ TestAttributeId1, ESchemaAttributeType::Int64, { ESchemaAttributeFlags::Public, ESchemaAttributeFlags::SchemaCompatibilityId }, 0, 0 });

		FSchemaRegistry SchemaRegistry;
		CHECK(SchemaRegistry.ParseConfig(SchemaConfig));
	}

	SECTION("SchemaCompatibilityId declared in derived")

#Loc: <Workspace>/Engine/Source/Programs/Online/OnlineTestsCore/Source/Private/Tests/Schema/SchemaTests.cpp:362

Scope: file

Source code excerpt:

		SchemaConfig.SchemaDescriptors.Add({ TestSchemaId2, TestSchemaId1 });
		SchemaConfig.SchemaCategoryAttributeDescriptors.Add({ TestSchemaId2, TestCategoryId1, { TestAttributeId1 } });
		SchemaConfig.SchemaAttributeDescriptors.Add({ TestAttributeId1, ESchemaAttributeType::Int64, { ESchemaAttributeFlags::Public, ESchemaAttributeFlags::SchemaCompatibilityId }, 0, 0 });

		FSchemaRegistry SchemaRegistry;
		CHECK(SchemaRegistry.ParseConfig(SchemaConfig) == false);
	}

	SECTION("Multiple SchemaCompatibilityId declared")

#Loc: <Workspace>/Engine/Source/Programs/Online/OnlineTestsCore/Source/Private/Tests/Schema/SchemaTests.cpp:374

Scope: file

Source code excerpt:

		SchemaConfig.SchemaCategoryDescriptors.Add({ TestCategoryId1, FSchemaServiceDescriptorId() });
		SchemaConfig.SchemaCategoryAttributeDescriptors.Add({ TestSchemaId1, TestCategoryId1, { TestAttributeId1, TestAttributeId2 } });
		SchemaConfig.SchemaAttributeDescriptors.Add({ TestAttributeId1, ESchemaAttributeType::Int64, { ESchemaAttributeFlags::Public, ESchemaAttributeFlags::SchemaCompatibilityId }, 0, 0 });
		SchemaConfig.SchemaAttributeDescriptors.Add({ TestAttributeId2, ESchemaAttributeType::Int64, { ESchemaAttributeFlags::Public, ESchemaAttributeFlags::SchemaCompatibilityId }, 0, 0 });

		FSchemaRegistry SchemaRegistry;
		CHECK(SchemaRegistry.ParseConfig(SchemaConfig) == false);
	}

	SECTION("SchemaCompatibilityId incorrect type")

#Loc: <Workspace>/Engine/Source/Programs/Online/OnlineTestsCore/Source/Private/Tests/Schema/SchemaTests.cpp:387

Scope: file

Source code excerpt:

		SchemaConfig.SchemaCategoryDescriptors.Add({ TestCategoryId1, FSchemaServiceDescriptorId() });
		SchemaConfig.SchemaCategoryAttributeDescriptors.Add({ TestSchemaId1, TestCategoryId1, { TestAttributeId1 } });
		SchemaConfig.SchemaAttributeDescriptors.Add({ TestAttributeId1, ESchemaAttributeType::Bool, { ESchemaAttributeFlags::Public, ESchemaAttributeFlags::SchemaCompatibilityId }, 0, 0 });

		FSchemaRegistry SchemaRegistry;
		CHECK(SchemaRegistry.ParseConfig(SchemaConfig) == false);
	}

	SECTION("SchemaCompatibilityId incorrect visibility")

#Loc: <Workspace>/Engine/Source/Programs/Online/OnlineTestsCore/Source/Private/Tests/Schema/SchemaTests.cpp:399

Scope: file

Source code excerpt:

		SchemaConfig.SchemaCategoryDescriptors.Add({ TestCategoryId1, FSchemaServiceDescriptorId() });
		SchemaConfig.SchemaCategoryAttributeDescriptors.Add({ TestSchemaId1, TestCategoryId1, { TestAttributeId1 } });
		SchemaConfig.SchemaAttributeDescriptors.Add({ TestAttributeId1, ESchemaAttributeType::Int64, { ESchemaAttributeFlags::Private, ESchemaAttributeFlags::SchemaCompatibilityId }, 0, 0 });

		FSchemaRegistry SchemaRegistry;
		CHECK(SchemaRegistry.ParseConfig(SchemaConfig) == false);
	}

	SECTION("Valid UpdateGroupId")

#Loc: <Workspace>/Engine/Source/Programs/Online/OnlineTestsCore/Source/Private/Tests/Schema/SchemaTests.cpp:411

Scope: file

Source code excerpt:

		SchemaConfig.SchemaCategoryDescriptors.Add({ TestCategoryId1, FSchemaServiceDescriptorId() });
		SchemaConfig.SchemaCategoryAttributeDescriptors.Add({ TestSchemaId1, TestCategoryId1, { TestAttributeId1 } });
		SchemaConfig.SchemaAttributeDescriptors.Add({ TestAttributeId1, ESchemaAttributeType::Bool, { ESchemaAttributeFlags::Public }, 1, 0 });

		FSchemaRegistry SchemaRegistry;
		CHECK(SchemaRegistry.ParseConfig(SchemaConfig));
	}

	SECTION("Invalid UpdateGroupId")

#Loc: <Workspace>/Engine/Source/Programs/Online/OnlineTestsCore/Source/Private/Tests/Schema/SchemaTests.cpp:423

Scope: file

Source code excerpt:

		SchemaConfig.SchemaCategoryDescriptors.Add({ TestCategoryId1, FSchemaServiceDescriptorId() });
		SchemaConfig.SchemaCategoryAttributeDescriptors.Add({ TestSchemaId1, TestCategoryId1, { TestAttributeId1 } });
		SchemaConfig.SchemaAttributeDescriptors.Add({ TestAttributeId1, ESchemaAttributeType::Bool, { ESchemaAttributeFlags::Public }, -1, 0 });

		FSchemaRegistry SchemaRegistry;
		CHECK(SchemaRegistry.ParseConfig(SchemaConfig) == false);
	}
}

#Loc: <Workspace>/Engine/Source/Programs/Online/OnlineTestsCore/Source/Private/Tests/Schema/SchemaTests.cpp:444

Scope: file

Source code excerpt:

		SchemaConfig.SchemaDescriptors.Add({ TestSchemaId1, FSchemaId(), { TestCategoryId1 } });
		SchemaConfig.SchemaCategoryDescriptors.Add({ TestCategoryId1, FSchemaServiceDescriptorId() });
		SchemaConfig.SchemaAttributeDescriptors.Add({ TestAttributeId1, ESchemaAttributeType::Bool, { ESchemaAttributeFlags::Public }, 0, 0 });

		SchemaConfig.SchemaCategoryAttributeDescriptors.Add({ TestSchemaId1, TestCategoryId1, { TestAttributeId1 } });

		FSchemaRegistry SchemaRegistry;
		CHECK(SchemaRegistry.ParseConfig(SchemaConfig));
	}

#Loc: <Workspace>/Engine/Source/Programs/Online/OnlineTestsCore/Source/Private/Tests/Schema/SchemaTests.cpp:458

Scope: file

Source code excerpt:

		SchemaConfig.SchemaDescriptors.Add({ TestSchemaId2, TestSchemaId1 });
		SchemaConfig.SchemaCategoryDescriptors.Add({ TestCategoryId1, FSchemaServiceDescriptorId() });
		SchemaConfig.SchemaAttributeDescriptors.Add({ TestAttributeId1, ESchemaAttributeType::Bool, { ESchemaAttributeFlags::Public }, 0, 0 });

		SchemaConfig.SchemaCategoryAttributeDescriptors.Add({ TestSchemaId2, TestCategoryId1, { TestAttributeId1 } });

		FSchemaRegistry SchemaRegistry;
		CHECK(SchemaRegistry.ParseConfig(SchemaConfig));
	}

#Loc: <Workspace>/Engine/Source/Programs/Online/OnlineTestsCore/Source/Private/Tests/Schema/SchemaTests.cpp:471

Scope: file

Source code excerpt:

		SchemaConfig.SchemaDescriptors.Add({ TestSchemaId1, FSchemaId(), { TestCategoryId1 } });
		SchemaConfig.SchemaCategoryDescriptors.Add({ TestCategoryId1, FSchemaServiceDescriptorId() });
		SchemaConfig.SchemaAttributeDescriptors.Add({ TestAttributeId1, ESchemaAttributeType::Bool, { ESchemaAttributeFlags::Public }, 0, 0 });

		SchemaConfig.SchemaCategoryAttributeDescriptors.Add({ TestSchemaId1, TestCategoryId1, { TestAttributeId1 } });
		SchemaConfig.SchemaCategoryAttributeDescriptors.Add({ TestSchemaId1, TestCategoryId1, { TestAttributeId1 } });

		FSchemaRegistry SchemaRegistry;
		CHECK(SchemaRegistry.ParseConfig(SchemaConfig) == false);

#Loc: <Workspace>/Engine/Source/Programs/Online/OnlineTestsCore/Source/Private/Tests/Schema/SchemaTests.cpp:485

Scope: file

Source code excerpt:

		SchemaConfig.SchemaDescriptors.Add({ TestSchemaId1, FSchemaId(), { TestCategoryId1 } });
		SchemaConfig.SchemaCategoryDescriptors.Add({ TestCategoryId1, FSchemaServiceDescriptorId() });
		SchemaConfig.SchemaAttributeDescriptors.Add({ TestAttributeId1, ESchemaAttributeType::Bool, { ESchemaAttributeFlags::Public }, 0, 0 });

		SchemaConfig.SchemaCategoryAttributeDescriptors.Add({ TestSchemaId1, TestCategoryId1, { TestAttributeId1, TestAttributeId1 } });

		FSchemaRegistry SchemaRegistry;
		CHECK(SchemaRegistry.ParseConfig(SchemaConfig) == false);
	}

#Loc: <Workspace>/Engine/Source/Programs/Online/OnlineTestsCore/Source/Private/Tests/Schema/SchemaTests.cpp:498

Scope: file

Source code excerpt:

		SchemaConfig.SchemaDescriptors.Add({ TestSchemaId1, FSchemaId(), { TestCategoryId1 } });
		SchemaConfig.SchemaCategoryDescriptors.Add({ TestCategoryId1, FSchemaServiceDescriptorId() });
		SchemaConfig.SchemaAttributeDescriptors.Add({ TestAttributeId1, ESchemaAttributeType::Bool, { ESchemaAttributeFlags::Public }, 0, 0 });

		SchemaConfig.SchemaCategoryAttributeDescriptors.Add({ TestSchemaId1, TestCategoryId2, { TestAttributeId1 } });

		FSchemaRegistry SchemaRegistry;
		CHECK(SchemaRegistry.ParseConfig(SchemaConfig) == false);
	}

#Loc: <Workspace>/Engine/Source/Programs/Online/OnlineTestsCore/Source/Private/Tests/Schema/SchemaTests.cpp:512

Scope: file

Source code excerpt:

		SchemaConfig.SchemaDescriptors.Add({ TestSchemaId2, TestSchemaId1 });
		SchemaConfig.SchemaCategoryDescriptors.Add({ TestCategoryId1, FSchemaServiceDescriptorId() });
		SchemaConfig.SchemaAttributeDescriptors.Add({ TestAttributeId1, ESchemaAttributeType::Bool, { ESchemaAttributeFlags::Public }, 0, 0 });

		SchemaConfig.SchemaCategoryAttributeDescriptors.Add({ TestSchemaId2, TestCategoryId2, { TestAttributeId1 } });

		FSchemaRegistry SchemaRegistry;
		CHECK(SchemaRegistry.ParseConfig(SchemaConfig) == false);
	}

#Loc: <Workspace>/Engine/Source/Programs/Online/OnlineTestsCore/Source/Private/Tests/Schema/SchemaTests.cpp:526

Scope: file

Source code excerpt:

		SchemaConfig.SchemaDescriptors.Add({ TestSchemaId2, TestSchemaId1 });
		SchemaConfig.SchemaCategoryDescriptors.Add({ TestCategoryId1, FSchemaServiceDescriptorId() });
		SchemaConfig.SchemaAttributeDescriptors.Add({ TestAttributeId1, ESchemaAttributeType::Bool, { ESchemaAttributeFlags::Public }, 0, 0 });

		SchemaConfig.SchemaCategoryAttributeDescriptors.Add({ TestSchemaId1, TestCategoryId1, { TestAttributeId1 } });
		SchemaConfig.SchemaCategoryAttributeDescriptors.Add({ TestSchemaId2, TestCategoryId1, { TestAttributeId1 } });

		FSchemaRegistry SchemaRegistry;
		CHECK(SchemaRegistry.ParseConfig(SchemaConfig) == false);

#Loc: <Workspace>/Engine/Source/Programs/Online/OnlineTestsCore/Source/Private/Tests/Schema/SchemaTests.cpp:613

Scope: file

Source code excerpt:

	SchemaConfig.SchemaCategoryDescriptors.Add({ TestCategoryId, FSchemaServiceDescriptorId() });
	SchemaConfig.SchemaCategoryAttributeDescriptors.Add({ TestSchemaId, TestCategoryId, { TestAttributeId } });
	SchemaConfig.SchemaAttributeDescriptors.Add({ TestAttributeId, ESchemaAttributeType::Bool, { ESchemaAttributeFlags::Public }, 0, 0 });

	FSchemaRegistry SchemaRegistry;
	REQUIRE(SchemaRegistry.ParseConfig(SchemaConfig));

	TSharedPtr<const FSchemaDefinition> SchemaDefinition = SchemaRegistry.GetDefinition(TestSchemaId);
	REQUIRE(SchemaDefinition.IsValid());

#Loc: <Workspace>/Engine/Source/Programs/Online/OnlineTestsCore/Source/Private/Tests/Schema/SchemaTests.cpp:664

Scope: file

Source code excerpt:

		SchemaConfig.SchemaCategoryDescriptors.Add({ CategoryId1, FSchemaServiceDescriptorId() });
		SchemaConfig.SchemaCategoryAttributeDescriptors.Add({ SchemaId, CategoryId1, { AttributeId1 } });
		SchemaConfig.SchemaAttributeDescriptors.Add({ AttributeId1, ESchemaAttributeType::String, { ESchemaAttributeFlags::Public }, 0, 32 });

		FSchemaRegistry SchemaRegistry;
		REQUIRE(SchemaRegistry.ParseConfig(SchemaConfig));

		TSharedPtr<const FSchemaDefinition> SchemaDefinition = SchemaRegistry.GetDefinition(SchemaId);
		REQUIRE(SchemaDefinition.IsValid());

#Loc: <Workspace>/Engine/Source/Programs/Online/OnlineTestsCore/Source/Private/Tests/Schema/SchemaTests.cpp:697

Scope: file

Source code excerpt:

		SchemaConfig.SchemaCategoryDescriptors.Add({ CategoryId1, ServiceDescriptorId });
		SchemaConfig.SchemaCategoryAttributeDescriptors.Add({ SchemaId, CategoryId1, { AttributeId1 } });
		SchemaConfig.SchemaAttributeDescriptors.Add({ AttributeId1, ESchemaAttributeType::String, { ESchemaAttributeFlags::Public }, 0, 32 });
		SchemaConfig.ServiceDescriptors.Add({ ServiceDescriptorId, { ServiceAttributeId1 } });
		SchemaConfig.ServiceAttributeDescriptors.Add({ ServiceAttributeId1, AllSupportedServiceAttributeTypes, AllSupportedServiceAttributeFlags, 32 });

		FSchemaRegistry SchemaRegistry;
		REQUIRE(SchemaRegistry.ParseConfig(SchemaConfig));

#Loc: <Workspace>/Engine/Source/Programs/Online/OnlineTestsCore/Source/Private/Tests/Schema/SchemaTests.cpp:740

Scope: file

Source code excerpt:

		SchemaConfig.SchemaCategoryDescriptors.Add({ CategoryId1, ServiceDescriptorId });
		SchemaConfig.SchemaCategoryAttributeDescriptors.Add({ SchemaId, CategoryId1, { AttributeId1 } });
		SchemaConfig.SchemaAttributeDescriptors.Add({ AttributeId1, ESchemaAttributeType::String, { ESchemaAttributeFlags::Public }, 0, 32 });
		SchemaConfig.ServiceDescriptors.Add({ ServiceDescriptorId, { ServiceAttributeId1 } });
		SchemaConfig.ServiceAttributeDescriptors.Add({ ServiceAttributeId1, AllSupportedServiceAttributeTypes, { ESchemaServiceAttributeFlags::Private }, 32 });

		FSchemaRegistry SchemaRegistry;
		REQUIRE(!SchemaRegistry.ParseConfig(SchemaConfig));
	}

#Loc: <Workspace>/Engine/Source/Programs/Online/OnlineTestsCore/Source/Private/Tests/Schema/SchemaTests.cpp:754

Scope: file

Source code excerpt:

		SchemaConfig.SchemaCategoryDescriptors.Add({ CategoryId1, ServiceDescriptorId });
		SchemaConfig.SchemaCategoryAttributeDescriptors.Add({ SchemaId, CategoryId1, { AttributeId1 } });
		SchemaConfig.SchemaAttributeDescriptors.Add({ AttributeId1, ESchemaAttributeType::String, { ESchemaAttributeFlags::Private }, 0, 32 });
		SchemaConfig.ServiceDescriptors.Add({ ServiceDescriptorId, { ServiceAttributeId1 } });
		SchemaConfig.ServiceAttributeDescriptors.Add({ ServiceAttributeId1, AllSupportedServiceAttributeTypes, { ESchemaServiceAttributeFlags::Public }, 32 });

		FSchemaRegistry SchemaRegistry;
		REQUIRE(!SchemaRegistry.ParseConfig(SchemaConfig));
	}

#Loc: <Workspace>/Engine/Source/Programs/Online/OnlineTestsCore/Source/Private/Tests/Schema/SchemaTests.cpp:768

Scope: file

Source code excerpt:

		SchemaConfig.SchemaCategoryDescriptors.Add({ CategoryId1, ServiceDescriptorId });
		SchemaConfig.SchemaCategoryAttributeDescriptors.Add({ SchemaId, CategoryId1, { AttributeId1 } });
		SchemaConfig.SchemaAttributeDescriptors.Add({ AttributeId1, ESchemaAttributeType::String, { ESchemaAttributeFlags::Public, ESchemaAttributeFlags::Searchable }, 0, 32 });
		SchemaConfig.ServiceDescriptors.Add({ ServiceDescriptorId, { ServiceAttributeId1 } });
		SchemaConfig.ServiceAttributeDescriptors.Add({ ServiceAttributeId1, AllSupportedServiceAttributeTypes, { ESchemaServiceAttributeFlags::Private }, 32 });

		FSchemaRegistry SchemaRegistry;
		REQUIRE(!SchemaRegistry.ParseConfig(SchemaConfig));
	}

#Loc: <Workspace>/Engine/Source/Programs/Online/OnlineTestsCore/Source/Private/Tests/Schema/SchemaTests.cpp:782

Scope: file

Source code excerpt:

		SchemaConfig.SchemaCategoryDescriptors.Add({ CategoryId1, ServiceDescriptorId });
		SchemaConfig.SchemaCategoryAttributeDescriptors.Add({ SchemaId, CategoryId1, { AttributeId1 } });
		SchemaConfig.SchemaAttributeDescriptors.Add({ AttributeId1, ESchemaAttributeType::String, { ESchemaAttributeFlags::Public, ESchemaAttributeFlags::Searchable }, 0, 32 });
		SchemaConfig.ServiceDescriptors.Add({ ServiceDescriptorId, { ServiceAttributeId1 } });
		SchemaConfig.ServiceAttributeDescriptors.Add({ ServiceAttributeId1, AllSupportedServiceAttributeTypes, { ESchemaServiceAttributeFlags::Public, ESchemaServiceAttributeFlags::Searchable }, 32 });

		FSchemaRegistry SchemaRegistry;
		REQUIRE(SchemaRegistry.ParseConfig(SchemaConfig));

#Loc: <Workspace>/Engine/Source/Programs/Online/OnlineTestsCore/Source/Private/Tests/Schema/SchemaTests.cpp:808

Scope: file

Source code excerpt:

		SchemaConfig.SchemaCategoryDescriptors.Add({ CategoryId1, ServiceDescriptorId });
		SchemaConfig.SchemaCategoryAttributeDescriptors.Add({ SchemaId, CategoryId1, { AttributeId1 } });
		SchemaConfig.SchemaAttributeDescriptors.Add({ AttributeId1, ESchemaAttributeType::String, { ESchemaAttributeFlags::Public }, 0, 32 });
		SchemaConfig.ServiceDescriptors.Add({ ServiceDescriptorId, { ServiceAttributeId1 } });
		SchemaConfig.ServiceAttributeDescriptors.Add({ ServiceAttributeId1, { ESchemaServiceAttributeSupportedTypeFlags::Bool }, AllSupportedServiceAttributeFlags, 32 });

		FSchemaRegistry SchemaRegistry;
		REQUIRE(!SchemaRegistry.ParseConfig(SchemaConfig));
	}

#Loc: <Workspace>/Engine/Source/Programs/Online/OnlineTestsCore/Source/Private/Tests/Schema/SchemaTests.cpp:822

Scope: file

Source code excerpt:

		SchemaConfig.SchemaCategoryDescriptors.Add({ CategoryId1, ServiceDescriptorId });
		SchemaConfig.SchemaCategoryAttributeDescriptors.Add({ SchemaId, CategoryId1, { AttributeId1 } });
		SchemaConfig.SchemaAttributeDescriptors.Add({ AttributeId1, ESchemaAttributeType::String, { ESchemaAttributeFlags::Public }, 0, 32 });
		SchemaConfig.ServiceDescriptors.Add({ ServiceDescriptorId, { ServiceAttributeId1 } });
		SchemaConfig.ServiceAttributeDescriptors.Add({ ServiceAttributeId1, { ESchemaServiceAttributeSupportedTypeFlags::String }, AllSupportedServiceAttributeFlags, 31 });

		FSchemaRegistry SchemaRegistry;
		REQUIRE(!SchemaRegistry.ParseConfig(SchemaConfig));
	}

#Loc: <Workspace>/Engine/Source/Programs/Online/OnlineTestsCore/Source/Private/Tests/Schema/SchemaTests.cpp:837

Scope: file

Source code excerpt:

		SchemaConfig.SchemaCategoryDescriptors.Add({ CategoryId1, ServiceDescriptorId });
		SchemaConfig.SchemaCategoryAttributeDescriptors.Add({ BaseSchemaId, CategoryId1, { AttributeId1 } });
		SchemaConfig.SchemaAttributeDescriptors.Add({ AttributeId1, ESchemaAttributeType::Int64, { ESchemaAttributeFlags::Public, ESchemaAttributeFlags::SchemaCompatibilityId }, 0, 0 });

		SchemaConfig.SchemaDescriptors.Add({ SchemaId, BaseSchemaId });
		SchemaConfig.SchemaCategoryAttributeDescriptors.Add({ SchemaId, CategoryId1, { AttributeId2, AttributeId3 } });
		SchemaConfig.SchemaAttributeDescriptors.Add({ AttributeId2, ESchemaAttributeType::String, { ESchemaAttributeFlags::Public }, 0, 32 });
		SchemaConfig.SchemaAttributeDescriptors.Add({ AttributeId3, ESchemaAttributeType::String, { ESchemaAttributeFlags::Public }, 0, 32 });

		SchemaConfig.ServiceDescriptors.Add({ ServiceDescriptorId, { ServiceAttributeId1, ServiceAttributeId2, ServiceAttributeId3 } });
		SchemaConfig.ServiceAttributeDescriptors.Add({ ServiceAttributeId1, AllSupportedServiceAttributeTypes, AllSupportedServiceAttributeFlags, 32 });
		SchemaConfig.ServiceAttributeDescriptors.Add({ ServiceAttributeId2, AllSupportedServiceAttributeTypes, AllSupportedServiceAttributeFlags, 32 });
		SchemaConfig.ServiceAttributeDescriptors.Add({ ServiceAttributeId3, AllSupportedServiceAttributeTypes, AllSupportedServiceAttributeFlags, 32 });

#Loc: <Workspace>/Engine/Source/Programs/Online/OnlineTestsCore/Source/Private/Tests/Schema/SchemaTests.cpp:872

Scope: file

Source code excerpt:

		SchemaConfig.SchemaCategoryDescriptors.Add({ CategoryId1, ServiceDescriptorId });
		SchemaConfig.SchemaCategoryAttributeDescriptors.Add({ BaseSchemaId, CategoryId1, { AttributeId2 } });
		SchemaConfig.SchemaAttributeDescriptors.Add({ AttributeId2, ESchemaAttributeType::Int64, { ESchemaAttributeFlags::Public, ESchemaAttributeFlags::SchemaCompatibilityId }, 0, 0 });

		SchemaConfig.SchemaDescriptors.Add({ SchemaId, BaseSchemaId });
		SchemaConfig.SchemaCategoryAttributeDescriptors.Add({ SchemaId, CategoryId1, { AttributeId3, AttributeId1 } });
		SchemaConfig.SchemaAttributeDescriptors.Add({ AttributeId3, ESchemaAttributeType::String, { ESchemaAttributeFlags::Public }, 0, 32 });
		SchemaConfig.SchemaAttributeDescriptors.Add({ AttributeId1, ESchemaAttributeType::String, { ESchemaAttributeFlags::Public }, 0, 32 });

		SchemaConfig.ServiceDescriptors.Add({ ServiceDescriptorId, { ServiceAttributeId1, ServiceAttributeId2, ServiceAttributeId3 } });
		SchemaConfig.ServiceAttributeDescriptors.Add({ ServiceAttributeId1, AllSupportedServiceAttributeTypes, AllSupportedServiceAttributeFlags, 32 });
		SchemaConfig.ServiceAttributeDescriptors.Add({ ServiceAttributeId2, AllSupportedServiceAttributeTypes, AllSupportedServiceAttributeFlags, 32 });
		SchemaConfig.ServiceAttributeDescriptors.Add({ ServiceAttributeId3, AllSupportedServiceAttributeTypes, AllSupportedServiceAttributeFlags, 32 });

#Loc: <Workspace>/Engine/Source/Programs/Online/OnlineTestsCore/Source/Private/Tests/Schema/SchemaTests.cpp:907

Scope: file

Source code excerpt:

		SchemaConfig.SchemaCategoryDescriptors.Add({ CategoryId1, ServiceDescriptorId });
		SchemaConfig.SchemaCategoryAttributeDescriptors.Add({ BaseSchemaId, CategoryId1, { AttributeId3 } });
		SchemaConfig.SchemaAttributeDescriptors.Add({ AttributeId3, ESchemaAttributeType::Int64, { ESchemaAttributeFlags::Public, ESchemaAttributeFlags::SchemaCompatibilityId }, 0, 0 });

		SchemaConfig.SchemaDescriptors.Add({ SchemaId, BaseSchemaId });
		SchemaConfig.SchemaCategoryAttributeDescriptors.Add({ SchemaId, CategoryId1, { AttributeId1, AttributeId2 } });
		SchemaConfig.SchemaAttributeDescriptors.Add({ AttributeId1, ESchemaAttributeType::String, { ESchemaAttributeFlags::Public }, 0, 32 });
		SchemaConfig.SchemaAttributeDescriptors.Add({ AttributeId2, ESchemaAttributeType::String, { ESchemaAttributeFlags::Public }, 0, 32 });

		SchemaConfig.ServiceDescriptors.Add({ ServiceDescriptorId, { ServiceAttributeId1, ServiceAttributeId2, ServiceAttributeId3 } });
		SchemaConfig.ServiceAttributeDescriptors.Add({ ServiceAttributeId1, AllSupportedServiceAttributeTypes, AllSupportedServiceAttributeFlags, 32 });
		SchemaConfig.ServiceAttributeDescriptors.Add({ ServiceAttributeId2, AllSupportedServiceAttributeTypes, AllSupportedServiceAttributeFlags, 32 });
		SchemaConfig.ServiceAttributeDescriptors.Add({ ServiceAttributeId3, AllSupportedServiceAttributeTypes, AllSupportedServiceAttributeFlags, 32 });

#Loc: <Workspace>/Engine/Source/Programs/Online/OnlineTestsCore/Source/Private/Tests/Schema/SchemaTests.cpp:967

Scope: file

Source code excerpt:

		SchemaConfig.SchemaCategoryDescriptors.Add({ CategoryId1, FSchemaServiceDescriptorId() });
		SchemaConfig.SchemaCategoryAttributeDescriptors.Add({ SchemaId1, CategoryId1, { AttributeId1 } });
		SchemaConfig.SchemaAttributeDescriptors.Add({ AttributeId1, ESchemaAttributeType::String, { ESchemaAttributeFlags::Public }, 0, 32 });

		TSharedRef<FSchemaRegistry> SchemaRegistry = MakeShared<FSchemaRegistry>();;
		REQUIRE(SchemaRegistry->ParseConfig(SchemaConfig));

		FSchemaCategoryInstance CategoryInstance(FSchemaId(), SchemaId1, CategoryId2, SchemaRegistry);
		CHECK(!CategoryInstance.IsValid());

#Loc: <Workspace>/Engine/Source/Programs/Online/OnlineTestsCore/Source/Private/Tests/Schema/SchemaTests.cpp:982

Scope: file

Source code excerpt:

		SchemaConfig.SchemaCategoryDescriptors.Add({ CategoryId1, FSchemaServiceDescriptorId() });
		SchemaConfig.SchemaCategoryAttributeDescriptors.Add({ SchemaId1, CategoryId1, { AttributeId1 } });
		SchemaConfig.SchemaAttributeDescriptors.Add({ AttributeId1, ESchemaAttributeType::String, { ESchemaAttributeFlags::Public }, 0, 32 });

		TSharedRef<FSchemaRegistry> SchemaRegistry = MakeShared<FSchemaRegistry>();;
		REQUIRE(SchemaRegistry->ParseConfig(SchemaConfig));

		FSchemaCategoryInstance CategoryInstance(FSchemaId(), SchemaId2, CategoryId1, SchemaRegistry);
		CHECK(!CategoryInstance.IsValid());

#Loc: <Workspace>/Engine/Source/Programs/Online/OnlineTestsCore/Source/Private/Tests/Schema/SchemaTests.cpp:997

Scope: file

Source code excerpt:

		SchemaConfig.SchemaCategoryDescriptors.Add({ CategoryId1, FSchemaServiceDescriptorId() });
		SchemaConfig.SchemaCategoryAttributeDescriptors.Add({ SchemaId1, CategoryId1, { AttributeId1 } });
		SchemaConfig.SchemaAttributeDescriptors.Add({ AttributeId1, ESchemaAttributeType::String, { ESchemaAttributeFlags::Public }, 0, 32 });

		TSharedRef<FSchemaRegistry> SchemaRegistry = MakeShared<FSchemaRegistry>();;
		REQUIRE(SchemaRegistry->ParseConfig(SchemaConfig));

		TSharedPtr<const FSchemaDefinition> SchemaDefinition = SchemaRegistry->GetDefinition(SchemaId1);
		REQUIRE(SchemaDefinition.IsValid());

#Loc: <Workspace>/Engine/Source/Programs/Online/OnlineTestsCore/Source/Private/Tests/Schema/SchemaTests.cpp:1031

Scope: file

Source code excerpt:

		SchemaConfig.SchemaCategoryDescriptors.Add({ CategoryId1, FSchemaServiceDescriptorId() });
		SchemaConfig.SchemaCategoryAttributeDescriptors.Add({ SchemaId1, CategoryId1, { AttributeId1 } });
		SchemaConfig.SchemaAttributeDescriptors.Add({ AttributeId1, ESchemaAttributeType::String, { ESchemaAttributeFlags::Public }, 0, 32 });

		TSharedRef<FSchemaRegistry> SchemaRegistry = MakeShared<FSchemaRegistry>();;
		REQUIRE(SchemaRegistry->ParseConfig(SchemaConfig));

		FSchemaCategoryInstance CategoryInstance(FSchemaId(), SchemaId1, CategoryId1, SchemaRegistry);
		CHECK(CategoryInstance.IsValid());

#Loc: <Workspace>/Engine/Source/Programs/Online/OnlineTestsCore/Source/Private/Tests/Schema/SchemaTests.cpp:1052

Scope: file

Source code excerpt:

		SchemaConfig.SchemaCategoryDescriptors.Add({ CategoryId1, ServiceDescriptorId });
		SchemaConfig.SchemaCategoryAttributeDescriptors.Add({ SchemaId1, CategoryId1, { AttributeId1 } });
		SchemaConfig.SchemaAttributeDescriptors.Add({ AttributeId1, ESchemaAttributeType::String, { ESchemaAttributeFlags::Public }, 0, 32 });

		SchemaConfig.ServiceDescriptors.Add({ ServiceDescriptorId, { ServiceAttributeId1 } });
		SchemaConfig.ServiceAttributeDescriptors.Add({ ServiceAttributeId1, AllSupportedServiceAttributeTypes, AllSupportedServiceAttributeFlags, 32 });

		TSharedRef<FSchemaRegistry> SchemaRegistry = MakeShared<FSchemaRegistry>();;
		REQUIRE(SchemaRegistry->ParseConfig(SchemaConfig));

#Loc: <Workspace>/Engine/Source/Programs/Online/OnlineTestsCore/Source/Private/Tests/Schema/SchemaTests.cpp:1070

Scope: file

Source code excerpt:

		SchemaConfig.SchemaCategoryDescriptors.Add({ CategoryId1, ServiceDescriptorId });
		SchemaConfig.SchemaCategoryAttributeDescriptors.Add({ BaseSchemaId1, CategoryId1, { AttributeId1 } });
		SchemaConfig.SchemaAttributeDescriptors.Add({ AttributeId1, ESchemaAttributeType::String, { ESchemaAttributeFlags::Public }, 0, 32 });

		SchemaConfig.SchemaDescriptors.Add({ SchemaId1, FSchemaId(), { CategoryId1 } });
		SchemaConfig.SchemaCategoryAttributeDescriptors.Add({ SchemaId1, CategoryId1, { AttributeId1 } });

		SchemaConfig.ServiceDescriptors.Add({ ServiceDescriptorId, { ServiceAttributeId1, ServiceAttributeId2 } });
		SchemaConfig.ServiceAttributeDescriptors.Add({ ServiceAttributeId1, AllSupportedServiceAttributeTypes, AllSupportedServiceAttributeFlags, 32 });

#Loc: <Workspace>/Engine/Source/Programs/Online/OnlineTestsCore/Source/Private/Tests/Schema/SchemaTests.cpp:1092

Scope: file

Source code excerpt:

		SchemaConfig.SchemaCategoryDescriptors.Add({ CategoryId1, ServiceDescriptorId });
		SchemaConfig.SchemaCategoryAttributeDescriptors.Add({ BaseSchemaId1, CategoryId1, { AttributeId1, AttributeId2 } });
		SchemaConfig.SchemaAttributeDescriptors.Add({ AttributeId1, ESchemaAttributeType::Int64, { ESchemaAttributeFlags::Public, ESchemaAttributeFlags::SchemaCompatibilityId }, 0, 0 });
		SchemaConfig.SchemaAttributeDescriptors.Add({ AttributeId2, ESchemaAttributeType::String, { ESchemaAttributeFlags::Public }, 0, 32 });

		SchemaConfig.SchemaDescriptors.Add({ SchemaId1, BaseSchemaId1 });
		SchemaConfig.SchemaCategoryAttributeDescriptors.Add({ SchemaId1, CategoryId1, { AttributeId3 } });
		SchemaConfig.SchemaAttributeDescriptors.Add({ AttributeId3, ESchemaAttributeType::String, { ESchemaAttributeFlags::Public }, 0, 32 });

		SchemaConfig.ServiceDescriptors.Add({ ServiceDescriptorId, { ServiceAttributeId1, ServiceAttributeId2, ServiceAttributeId3 } });
		SchemaConfig.ServiceAttributeDescriptors.Add({ ServiceAttributeId1, AllSupportedServiceAttributeTypes, AllSupportedServiceAttributeFlags, 32 });
		SchemaConfig.ServiceAttributeDescriptors.Add({ ServiceAttributeId2, AllSupportedServiceAttributeTypes, AllSupportedServiceAttributeFlags, 32 });
		SchemaConfig.ServiceAttributeDescriptors.Add({ ServiceAttributeId3, AllSupportedServiceAttributeTypes, AllSupportedServiceAttributeFlags, 32 });

#Loc: <Workspace>/Engine/Source/Programs/Online/OnlineTestsCore/Source/Private/Tests/Schema/SchemaTests.cpp:1127

Scope: file

Source code excerpt:

		SchemaConfig.SchemaCategoryDescriptors.Add({ CategoryId1, ServiceDescriptorId });
		SchemaConfig.SchemaCategoryAttributeDescriptors.Add({ SchemaId1, CategoryId1, { AttributeId1 } });
		SchemaConfig.SchemaAttributeDescriptors.Add({ AttributeId1, ESchemaAttributeType::String, { ESchemaAttributeFlags::Public }, 0, 32 });

		SchemaConfig.ServiceDescriptors.Add({ ServiceDescriptorId, { ServiceAttributeId1 } });
		SchemaConfig.ServiceAttributeDescriptors.Add({ ServiceAttributeId1, AllSupportedServiceAttributeTypes, AllSupportedServiceAttributeFlags, 32 });

		TSharedRef<FSchemaRegistry> SchemaRegistry = MakeShared<FSchemaRegistry>();;
		REQUIRE(SchemaRegistry->ParseConfig(SchemaConfig));

#Loc: <Workspace>/Engine/Source/Programs/Online/OnlineTestsCore/Source/Private/Tests/Schema/SchemaTests.cpp:1169

Scope: file

Source code excerpt:

		SchemaConfig.SchemaCategoryDescriptors.Add({ CategoryId1, ServiceDescriptorId });
		SchemaConfig.SchemaCategoryAttributeDescriptors.Add({ SchemaId1, CategoryId1, { AttributeId1 } });
		SchemaConfig.SchemaAttributeDescriptors.Add({ AttributeId1, ESchemaAttributeType::String, { ESchemaAttributeFlags::Public }, 0, 32 });

		SchemaConfig.ServiceDescriptors.Add({ ServiceDescriptorId, { ServiceAttributeId1 } });
		SchemaConfig.ServiceAttributeDescriptors.Add({ ServiceAttributeId1, AllSupportedServiceAttributeTypes, AllSupportedServiceAttributeFlags, 32 });

		TSharedRef<FSchemaRegistry> SchemaRegistry = MakeShared<FSchemaRegistry>();;
		REQUIRE(SchemaRegistry->ParseConfig(SchemaConfig));

#Loc: <Workspace>/Engine/Source/Programs/Online/OnlineTestsCore/Source/Private/Tests/Schema/SchemaTests.cpp:1197

Scope: file

Source code excerpt:

		SchemaConfig.SchemaCategoryDescriptors.Add({ CategoryId1, ServiceDescriptorId });
		SchemaConfig.SchemaCategoryAttributeDescriptors.Add({ SchemaId1, CategoryId1, { AttributeId1 } });
		SchemaConfig.SchemaAttributeDescriptors.Add({ AttributeId1, ESchemaAttributeType::String, { ESchemaAttributeFlags::Public }, 0, 32 });

		SchemaConfig.ServiceDescriptors.Add({ ServiceDescriptorId, { ServiceAttributeId1 } });
		SchemaConfig.ServiceAttributeDescriptors.Add({ ServiceAttributeId1, AllSupportedServiceAttributeTypes, AllSupportedServiceAttributeFlags, 32 });

		TSharedRef<FSchemaRegistry> SchemaRegistry = MakeShared<FSchemaRegistry>();;
		REQUIRE(SchemaRegistry->ParseConfig(SchemaConfig));

#Loc: <Workspace>/Engine/Source/Programs/Online/OnlineTestsCore/Source/Private/Tests/Schema/SchemaTests.cpp:1225

Scope: file

Source code excerpt:

		SchemaConfig.SchemaCategoryDescriptors.Add({ CategoryId1, ServiceDescriptorId });
		SchemaConfig.SchemaCategoryAttributeDescriptors.Add({ SchemaId1, CategoryId1, { AttributeId1 } });
		SchemaConfig.SchemaAttributeDescriptors.Add({ AttributeId1, ESchemaAttributeType::String, { ESchemaAttributeFlags::Public }, 0, 32 });

		SchemaConfig.ServiceDescriptors.Add({ ServiceDescriptorId, { ServiceAttributeId1 } });
		SchemaConfig.ServiceAttributeDescriptors.Add({ ServiceAttributeId1, AllSupportedServiceAttributeTypes, AllSupportedServiceAttributeFlags, 32 });

		TSharedRef<FSchemaRegistry> SchemaRegistry = MakeShared<FSchemaRegistry>();;
		REQUIRE(SchemaRegistry->ParseConfig(SchemaConfig));

#Loc: <Workspace>/Engine/Source/Programs/Online/OnlineTestsCore/Source/Private/Tests/Schema/SchemaTests.cpp:1253

Scope: file

Source code excerpt:

		SchemaConfig.SchemaCategoryDescriptors.Add({ CategoryId1, ServiceDescriptorId });
		SchemaConfig.SchemaCategoryAttributeDescriptors.Add({ SchemaId1, CategoryId1, { AttributeId1 } });
		SchemaConfig.SchemaAttributeDescriptors.Add({ AttributeId1, ESchemaAttributeType::Int64, { ESchemaAttributeFlags::Public, ESchemaAttributeFlags::SchemaCompatibilityId }, 0, 0 });

		SchemaConfig.ServiceDescriptors.Add({ ServiceDescriptorId, { ServiceAttributeId1 } });
		SchemaConfig.ServiceAttributeDescriptors.Add({ ServiceAttributeId1, AllSupportedServiceAttributeTypes, AllSupportedServiceAttributeFlags, 32 });

		TSharedRef<FSchemaRegistry> SchemaRegistry = MakeShared<FSchemaRegistry>();;
		REQUIRE(SchemaRegistry->ParseConfig(SchemaConfig));

#Loc: <Workspace>/Engine/Source/Programs/Online/OnlineTestsCore/Source/Private/Tests/Schema/SchemaTests.cpp:1277

Scope: file

Source code excerpt:

		SchemaConfig.SchemaCategoryDescriptors.Add({ CategoryId1, ServiceDescriptorId });
		SchemaConfig.SchemaCategoryAttributeDescriptors.Add({ SchemaId1, CategoryId1, { AttributeId1 } });
		SchemaConfig.SchemaAttributeDescriptors.Add({ AttributeId1, ESchemaAttributeType::Int64, { ESchemaAttributeFlags::Public, ESchemaAttributeFlags::SchemaCompatibilityId }, 0, 0 });

		SchemaConfig.ServiceDescriptors.Add({ ServiceDescriptorId, { ServiceAttributeId1 } });
		SchemaConfig.ServiceAttributeDescriptors.Add({ ServiceAttributeId1, AllSupportedServiceAttributeTypes, AllSupportedServiceAttributeFlags, 32 });

		TSharedRef<FSchemaRegistry> SchemaRegistry = MakeShared<FSchemaRegistry>();;
		REQUIRE(SchemaRegistry->ParseConfig(SchemaConfig));

#Loc: <Workspace>/Engine/Source/Programs/Online/OnlineTestsCore/Source/Private/Tests/Schema/SchemaTests.cpp:1301

Scope: file

Source code excerpt:

		SchemaConfig.SchemaCategoryDescriptors.Add({ CategoryId1, ServiceDescriptorId });
		SchemaConfig.SchemaCategoryAttributeDescriptors.Add({ BaseSchemaId1, CategoryId1, { AttributeId1 } });
		SchemaConfig.SchemaAttributeDescriptors.Add({ AttributeId1, ESchemaAttributeType::Int64, { ESchemaAttributeFlags::Public, ESchemaAttributeFlags::SchemaCompatibilityId }, 0, 0 });

		SchemaConfig.SchemaDescriptors.Add({ SchemaId1, BaseSchemaId1 });
		SchemaConfig.SchemaCategoryAttributeDescriptors.Add({ SchemaId1, CategoryId1, { AttributeId2 } });
		SchemaConfig.SchemaAttributeDescriptors.Add({ AttributeId2, ESchemaAttributeType::Int64, { ESchemaAttributeFlags::Private }, 0, 0 });

		SchemaConfig.SchemaDescriptors.Add({ BaseSchemaId2, FSchemaId(), { CategoryId1 } });
		SchemaConfig.SchemaCategoryAttributeDescriptors.Add({ BaseSchemaId2, CategoryId1, { AttributeId1 } });

		SchemaConfig.SchemaDescriptors.Add({ SchemaId2, BaseSchemaId2 });

#Loc: <Workspace>/Engine/Source/Programs/Online/OnlineTestsCore/Source/Private/Tests/Schema/SchemaTests.cpp:1346

Scope: file

Source code excerpt:

		SchemaConfig.SchemaCategoryDescriptors.Add({ CategoryId1, ServiceDescriptorId });
		SchemaConfig.SchemaCategoryAttributeDescriptors.Add({ BaseSchemaId1, CategoryId1, { AttributeId1 } });
		SchemaConfig.SchemaAttributeDescriptors.Add({ AttributeId1, ESchemaAttributeType::Int64, { ESchemaAttributeFlags::Public, ESchemaAttributeFlags::SchemaCompatibilityId }, 0, 0 });

		SchemaConfig.SchemaDescriptors.Add({ SchemaId1, BaseSchemaId1 });
		SchemaConfig.SchemaCategoryAttributeDescriptors.Add({ SchemaId1, CategoryId1, { AttributeId2 } });
		SchemaConfig.SchemaAttributeDescriptors.Add({ AttributeId2, ESchemaAttributeType::Int64, { ESchemaAttributeFlags::Private }, 0, 0 });

		SchemaConfig.SchemaDescriptors.Add({ SchemaId2, BaseSchemaId1 });

		SchemaConfig.ServiceDescriptors.Add({ ServiceDescriptorId, { ServiceAttributeId1, ServiceAttributeId2 } });
		SchemaConfig.ServiceAttributeDescriptors.Add({ ServiceAttributeId1, AllSupportedServiceAttributeTypes, AllSupportedServiceAttributeFlags, 32 });
		SchemaConfig.ServiceAttributeDescriptors.Add({ ServiceAttributeId2, AllSupportedServiceAttributeTypes, AllSupportedServiceAttributeFlags, 32 });

#Loc: <Workspace>/Engine/Source/Programs/Online/OnlineTestsCore/Source/Private/Tests/Schema/SchemaTests.cpp:1410

Scope: file

Source code excerpt:

			SchemaConfig.SchemaCategoryDescriptors.Add({ CategoryId1, ServiceDescriptorId });
			SchemaConfig.SchemaCategoryAttributeDescriptors.Add({ BaseSchemaId1, CategoryId1, { AttributeId1 } });
			SchemaConfig.SchemaAttributeDescriptors.Add({ AttributeId1, ESchemaAttributeType::Int64, { ESchemaAttributeFlags::Public, ESchemaAttributeFlags::SchemaCompatibilityId }, 0, 0 });

			SchemaConfig.SchemaDescriptors.Add({ SchemaId1, BaseSchemaId1 });
			SchemaConfig.SchemaCategoryAttributeDescriptors.Add({ SchemaId1, CategoryId1, { AttributeId2 } });
			SchemaConfig.SchemaAttributeDescriptors.Add({ AttributeId2, ESchemaAttributeType::Int64, { ESchemaAttributeFlags::Private }, 0, 0 });

			SchemaConfig.ServiceDescriptors.Add({ ServiceDescriptorId, { ServiceAttributeId1, ServiceAttributeId2 } });
			SchemaConfig.ServiceAttributeDescriptors.Add({ ServiceAttributeId1, AllSupportedServiceAttributeTypes, AllSupportedServiceAttributeFlags, 32 });
			SchemaConfig.ServiceAttributeDescriptors.Add({ ServiceAttributeId2, AllSupportedServiceAttributeTypes, AllSupportedServiceAttributeFlags, 32 });

			REQUIRE(SchemaRegistry1->ParseConfig(SchemaConfig));

#Loc: <Workspace>/Engine/Source/Programs/Online/OnlineTestsCore/Source/Private/Tests/Schema/SchemaTests.cpp:1433

Scope: file

Source code excerpt:

			SchemaConfig.SchemaCategoryDescriptors.Add({ CategoryId1, ServiceDescriptorId });
			SchemaConfig.SchemaCategoryAttributeDescriptors.Add({ BaseSchemaId1, CategoryId1, { AttributeId1 } });
			SchemaConfig.SchemaAttributeDescriptors.Add({ AttributeId1, ESchemaAttributeType::Int64, { ESchemaAttributeFlags::Public, ESchemaAttributeFlags::SchemaCompatibilityId }, 0, 0 });

			SchemaConfig.SchemaDescriptors.Add({ SchemaId2, BaseSchemaId1 });
			SchemaConfig.SchemaCategoryAttributeDescriptors.Add({ SchemaId2, CategoryId1, { AttributeId2 } });
			SchemaConfig.SchemaAttributeDescriptors.Add({ AttributeId2, ESchemaAttributeType::Int64, { ESchemaAttributeFlags::Private }, 0, 0 });

			SchemaConfig.ServiceDescriptors.Add({ ServiceDescriptorId, { ServiceAttributeId1, ServiceAttributeId2 } });
			SchemaConfig.ServiceAttributeDescriptors.Add({ ServiceAttributeId1, AllSupportedServiceAttributeTypes, AllSupportedServiceAttributeFlags, 32 });
			SchemaConfig.ServiceAttributeDescriptors.Add({ ServiceAttributeId2, AllSupportedServiceAttributeTypes, AllSupportedServiceAttributeFlags, 32 });

			REQUIRE(SchemaRegistry2->ParseConfig(SchemaConfig));

#Loc: <Workspace>/Engine/Source/Programs/Online/OnlineTestsCore/Source/Private/Tests/Schema/SchemaTests.cpp:1483

Scope: file

Source code excerpt:

			SchemaConfig.SchemaCategoryDescriptors.Add({ CategoryId1, ServiceDescriptorId });
			SchemaConfig.SchemaCategoryAttributeDescriptors.Add({ BaseSchemaId1, CategoryId1, { AttributeId1 } });
			SchemaConfig.SchemaAttributeDescriptors.Add({ AttributeId1, ESchemaAttributeType::Int64, { ESchemaAttributeFlags::Public, ESchemaAttributeFlags::SchemaCompatibilityId }, 0, 0 });

			SchemaConfig.SchemaDescriptors.Add({ SchemaId1, BaseSchemaId1 });
			SchemaConfig.SchemaCategoryAttributeDescriptors.Add({ SchemaId1, CategoryId1, { AttributeId2 } });
			SchemaConfig.SchemaAttributeDescriptors.Add({ AttributeId2, ESchemaAttributeType::String, { ESchemaAttributeFlags::Private }, 0, 32 });

			SchemaConfig.ServiceDescriptors.Add({ ServiceDescriptorId, { ServiceAttributeId1, ServiceAttributeId2 } });
			SchemaConfig.ServiceAttributeDescriptors.Add({ ServiceAttributeId1, AllSupportedServiceAttributeTypes, AllSupportedServiceAttributeFlags, 32 });
			SchemaConfig.ServiceAttributeDescriptors.Add({ ServiceAttributeId2, AllSupportedServiceAttributeTypes, AllSupportedServiceAttributeFlags, 32 });

			REQUIRE(SchemaRegistry1->ParseConfig(SchemaConfig));

#Loc: <Workspace>/Engine/Source/Programs/Online/OnlineTestsCore/Source/Private/Tests/Schema/SchemaTests.cpp:1506

Scope: file

Source code excerpt:

			SchemaConfig.SchemaCategoryDescriptors.Add({ CategoryId1, ServiceDescriptorId });
			SchemaConfig.SchemaCategoryAttributeDescriptors.Add({ BaseSchemaId1, CategoryId1, { AttributeId1 } });
			SchemaConfig.SchemaAttributeDescriptors.Add({ AttributeId1, ESchemaAttributeType::Int64, { ESchemaAttributeFlags::Public, ESchemaAttributeFlags::SchemaCompatibilityId }, 0, 0 });

			SchemaConfig.SchemaDescriptors.Add({ SchemaId1, BaseSchemaId1 });
			SchemaConfig.SchemaCategoryAttributeDescriptors.Add({ SchemaId1, CategoryId1, { AttributeId2 } });
			SchemaConfig.SchemaAttributeDescriptors.Add({ AttributeId2, ESchemaAttributeType::String, { ESchemaAttributeFlags::Private }, 0, 32 });

			SchemaConfig.ServiceDescriptors.Add({ ServiceDescriptorId, { ServiceAttributeId1, ServiceAttributeId2 } });
			SchemaConfig.ServiceAttributeDescriptors.Add({ ServiceAttributeId1, AllSupportedServiceAttributeTypes, AllSupportedServiceAttributeFlags, 32 });
			SchemaConfig.ServiceAttributeDescriptors.Add({ ServiceAttributeId2, AllSupportedServiceAttributeTypes, AllSupportedServiceAttributeFlags, 32 });
			REQUIRE(SchemaRegistry2->ParseConfig(SchemaConfig));
		}

#Loc: <Workspace>/Engine/Source/Programs/Online/OnlineTestsCore/Source/Private/Tests/Schema/SchemaTests.cpp:1617

Scope: file

Source code excerpt:

			SchemaConfig.SchemaCategoryDescriptors.Add({ CategoryId1, ServiceDescriptorId });
			SchemaConfig.SchemaCategoryAttributeDescriptors.Add({ BaseSchemaId1, CategoryId1, { AttributeId1 } });
			SchemaConfig.SchemaAttributeDescriptors.Add({ AttributeId1, ESchemaAttributeType::Int64, { ESchemaAttributeFlags::Public, ESchemaAttributeFlags::SchemaCompatibilityId }, 0, 0 });

			SchemaConfig.SchemaDescriptors.Add({ SchemaId1, BaseSchemaId1 });
			SchemaConfig.SchemaCategoryAttributeDescriptors.Add({ SchemaId1, CategoryId1, { AttributeId2 } });
			SchemaConfig.SchemaAttributeDescriptors.Add({ AttributeId2, ESchemaAttributeType::String, { ESchemaAttributeFlags::Private }, 0, 30 });

			SchemaConfig.ServiceDescriptors.Add({ ServiceDescriptorId, { ServiceAttributeId1, ServiceAttributeId2 } });
			SchemaConfig.ServiceAttributeDescriptors.Add({ ServiceAttributeId1, AllSupportedServiceAttributeTypes, AllSupportedServiceAttributeFlags, 32 });
			SchemaConfig.ServiceAttributeDescriptors.Add({ ServiceAttributeId2, AllSupportedServiceAttributeTypes, AllSupportedServiceAttributeFlags, 32 });

			REQUIRE(SchemaRegistry1->ParseConfig(SchemaConfig));

#Loc: <Workspace>/Engine/Source/Programs/Online/OnlineTestsCore/Source/Private/Tests/Schema/SchemaTests.cpp:1640

Scope: file

Source code excerpt:

			SchemaConfig.SchemaCategoryDescriptors.Add({ CategoryId1, ServiceDescriptorId });
			SchemaConfig.SchemaCategoryAttributeDescriptors.Add({ BaseSchemaId1, CategoryId1, { AttributeId1 } });
			SchemaConfig.SchemaAttributeDescriptors.Add({ AttributeId1, ESchemaAttributeType::Int64, { ESchemaAttributeFlags::Public, ESchemaAttributeFlags::SchemaCompatibilityId }, 0, 0 });

			SchemaConfig.SchemaDescriptors.Add({ SchemaId1, BaseSchemaId1 });
			SchemaConfig.SchemaCategoryAttributeDescriptors.Add({ SchemaId1, CategoryId1, { AttributeId2 } });
			SchemaConfig.SchemaAttributeDescriptors.Add({ AttributeId2, ESchemaAttributeType::String, { ESchemaAttributeFlags::Private }, 0, 32 });

			SchemaConfig.ServiceDescriptors.Add({ ServiceDescriptorId, { ServiceAttributeId1, ServiceAttributeId2 } });
			SchemaConfig.ServiceAttributeDescriptors.Add({ ServiceAttributeId1, AllSupportedServiceAttributeTypes, AllSupportedServiceAttributeFlags, 32 });
			SchemaConfig.ServiceAttributeDescriptors.Add({ ServiceAttributeId2, AllSupportedServiceAttributeTypes, AllSupportedServiceAttributeFlags, 32 });

			REQUIRE(SchemaRegistry2->ParseConfig(SchemaConfig));

#Loc: <Workspace>/Engine/Source/Programs/Online/OnlineTestsCore/Source/Private/Tests/Schema/SchemaTests.cpp:1689

Scope: file

Source code excerpt:

			SchemaConfig.SchemaCategoryDescriptors.Add({ CategoryId1, ServiceDescriptorId });
			SchemaConfig.SchemaCategoryAttributeDescriptors.Add({ BaseSchemaId1, CategoryId1, { AttributeId1 } });
			SchemaConfig.SchemaAttributeDescriptors.Add({ AttributeId1, ESchemaAttributeType::Int64, { ESchemaAttributeFlags::Public, ESchemaAttributeFlags::SchemaCompatibilityId }, 0, 0 });

			SchemaConfig.SchemaDescriptors.Add({ SchemaId1, BaseSchemaId1 });
			SchemaConfig.SchemaCategoryAttributeDescriptors.Add({ SchemaId1, CategoryId1, { AttributeId2 } });
			SchemaConfig.SchemaAttributeDescriptors.Add({ AttributeId2, ESchemaAttributeType::String, { ESchemaAttributeFlags::Private }, 0, 32 });

			SchemaConfig.ServiceDescriptors.Add({ ServiceDescriptorId, { ServiceAttributeId1, ServiceAttributeId2 } });
			SchemaConfig.ServiceAttributeDescriptors.Add({ ServiceAttributeId1, AllSupportedServiceAttributeTypes, AllSupportedServiceAttributeFlags, 32 });
			SchemaConfig.ServiceAttributeDescriptors.Add({ ServiceAttributeId2, AllSupportedServiceAttributeTypes, AllSupportedServiceAttributeFlags, 32 });

			REQUIRE(SchemaRegistry1->ParseConfig(SchemaConfig));

#Loc: <Workspace>/Engine/Source/Programs/Online/OnlineTestsCore/Source/Private/Tests/Schema/SchemaTests.cpp:1712

Scope: file

Source code excerpt:

			SchemaConfig.SchemaCategoryDescriptors.Add({ CategoryId1, ServiceDescriptorId });
			SchemaConfig.SchemaCategoryAttributeDescriptors.Add({ BaseSchemaId1, CategoryId1, { AttributeId1 } });
			SchemaConfig.SchemaAttributeDescriptors.Add({ AttributeId1, ESchemaAttributeType::Int64, { ESchemaAttributeFlags::Public, ESchemaAttributeFlags::SchemaCompatibilityId }, 0, 0 });

			SchemaConfig.SchemaDescriptors.Add({ SchemaId1, BaseSchemaId1 });
			SchemaConfig.SchemaCategoryAttributeDescriptors.Add({ SchemaId1, CategoryId1, { AttributeId2 } });
			SchemaConfig.SchemaAttributeDescriptors.Add({ AttributeId2, ESchemaAttributeType::String, { ESchemaAttributeFlags::Private }, 0, 32 });

			SchemaConfig.ServiceDescriptors.Add({ ServiceDescriptorId, { ServiceAttributeId1, ServiceAttributeId3 } });
			SchemaConfig.ServiceAttributeDescriptors.Add({ ServiceAttributeId1, AllSupportedServiceAttributeTypes, AllSupportedServiceAttributeFlags, 32 });
			SchemaConfig.ServiceAttributeDescriptors.Add({ ServiceAttributeId3, AllSupportedServiceAttributeTypes, AllSupportedServiceAttributeFlags, 32 });

			REQUIRE(SchemaRegistry2->ParseConfig(SchemaConfig));