REST Resource: projects.locations.collections.dataStores.schemas

Ressource: Schema

Definiert die Struktur und das Layout einer Art von Dokumentdaten.

JSON-Darstellung
{
  "name": string,
  "fieldConfigs": [
    {
      object (FieldConfig)
    }
  ],

  // Union field schema can be only one of the following:
  "structSchema": {
    object
  },
  "jsonSchema": string
  // End of list of possible types for union field schema.
}
Felder
name

string

Nicht veränderbar. Der vollständige Ressourcenname des Schemas im Format projects/{project}/locations/{location}/collections/{collection}/dataStores/{dataStore}/schemas/{schema}.

Dieses Feld muss ein UTF-8-codierter String mit einer Längenbeschränkung von 1.024 Zeichen sein.

fieldConfigs[]

object (FieldConfig)

Nur Ausgabe. Konfigurationen für Felder des Schemas.

Union-Feld schema. Schemadarstellung Du musst entweder struct_schema oder json_schema angeben. Andernfalls wird der Fehler INVALID_ARGUMENT ausgegeben. Für schema ist nur einer der folgenden Werte zulässig:
structSchema

object (Struct format)

Die strukturierte Darstellung des Schemas.

jsonSchema

string

Die JSON-Darstellung des Schemas.

FieldConfig

Konfigurationen für Felder eines Schemas. Sie können beispielsweise festlegen, ob ein Feld indexierbar oder durchsuchbar ist.

JSON-Darstellung
{
  "fieldPath": string,
  "fieldType": enum (FieldType),
  "indexableOption": enum (IndexableOption),
  "dynamicFacetableOption": enum (DynamicFacetableOption),
  "searchableOption": enum (SearchableOption),
  "retrievableOption": enum (RetrievableOption),
  "completableOption": enum (CompletableOption),
  "recsFilterableOption": enum (FilterableOption),
  "keyPropertyType": string,
  "advancedSiteSearchDataSources": [
    enum (AdvancedSiteSearchDataSource)
  ],
  "schemaOrgPaths": [
    string
  ],
  "metatagName": string
}
Felder
fieldPath

string

Erforderlich. Feldpfad des Schemafelds. Beispiel: title, description, release_info.release_year.

fieldType

enum (FieldType)

Nur Ausgabe. Der Rohdatentyp des Felds.

indexableOption

enum (IndexableOption)

Wenn indexableOption INDEXABLE_ENABLED ist, werden Feldwerte indexiert, sodass sie in SearchService.Search gefiltert oder aufgeschlüsselt werden können.

Wenn indexableOption nicht festgelegt ist, wird für Felder, die das Festlegen indexierbarer Optionen unterstützen, standardmäßig INDEXABLE_DISABLED verwendet. Bei Feldern, für die keine indexierbaren Optionen festgelegt werden können, z. B. object, boolean und Schlüsselattributen, wird die Einstellung indexableOption vom Server übersprungen. Wenn Sie indexableOption für diese Felder festlegen, wird der Fehler INVALID_ARGUMENT ausgegeben.

dynamicFacetableOption

enum (DynamicFacetableOption)

Wenn dynamicFacetableOption DYNAMIC_FACETABLE_ENABLED ist, sind Feldwerte für die dynamische Facette verfügbar. Kann nur DYNAMIC_FACETABLE_DISABLED sein, wenn FieldConfig.indexable_option INDEXABLE_DISABLED ist. Andernfalls wird der Fehler INVALID_ARGUMENT zurückgegeben.

Wenn dynamicFacetableOption nicht festgelegt ist, wird für Felder, die das Festlegen dynamischer facettierbarer Optionen unterstützen, standardmäßig das Serververhalten DYNAMIC_FACETABLE_DISABLED verwendet. Bei Feldern, für die keine dynamischen Attributoptionen festgelegt werden können, z. B. object und boolean, überspringt der Server die Festlegung dynamischer Attributoptionen. Wenn Sie dynamicFacetableOption für diese Felder festlegen, wird der Fehler INVALID_ARGUMENT ausgegeben.

searchableOption

enum (SearchableOption)

Wenn searchableOption gleich SEARCHABLE_ENABLED ist, können Feldwerte in SearchService.Search über Textanfragen durchsucht werden.

Wenn SEARCHABLE_ENABLED, der Feldtyp aber numerisch ist, können Feldwerte in SearchService.Search nicht über Textanfragen gesucht werden, da numerischen Feldern keine Textwerte zugeordnet sind.

Wenn searchableOption nicht festgelegt ist, wird für Felder, die das Festlegen von durchsuchbaren Optionen unterstützen, standardmäßig das Serververhalten SEARCHABLE_DISABLED verwendet. Die Einstellung searchableOption kann nur für string-Felder festgelegt werden, für die keine Schlüsselattributzuordnung vorhanden ist.

Bei Feldern, für die keine durchsuchbaren Optionen festgelegt werden können, überspringt der Server die Festlegung durchsuchbarer Optionen. Wenn Sie searchableOption für diese Felder festlegen, wird der Fehler INVALID_ARGUMENT ausgegeben.

retrievableOption

enum (RetrievableOption)

Wenn retrievableOption RETRIEVABLE_ENABLED ist, werden Feldwerte in die Suchergebnisse aufgenommen.

Wenn retrievableOption nicht festgelegt ist, wird das Serververhalten standardmäßig auf RETRIEVABLE_DISABLED für Felder gesetzt, die das Festlegen abrufbarer Optionen unterstützen. Bei Feldern, für die keine abrufbaren Optionen festgelegt werden können, z. B. object und boolean, wird die Festlegung abrufbarer Optionen vom Server übersprungen. Wenn Sie retrievableOption für diese Felder festlegen, wird der Fehler INVALID_ARGUMENT ausgegeben.

completableOption

enum (CompletableOption)

Wenn completableOption COMPLETABLE_ENABLED ist, werden die Feldwerte direkt verwendet und als Vorschläge für die automatische Vervollständigung in CompletionService.CompleteQuery zurückgegeben.

Wenn completableOption nicht festgelegt ist, wird für Felder, die das Festlegen von vervollständigbaren Optionen unterstützen, standardmäßig das Serververhalten COMPLETABLE_DISABLED verwendet. Das sind nur string-Felder. Bei Feldern, für die keine abschließbaren Optionen festgelegt werden können, überspringt der Server die Festlegung abschließbarer Optionen. Wenn Sie completableOption für diese Felder festlegen, wird der Fehler INVALID_ARGUMENT ausgegeben.

recsFilterableOption

enum (FilterableOption)

Wenn recsFilterableOption gleich FILTERABLE_ENABLED ist, können Feldwerte mit einem Filterausdruck in RecommendationService.Recommend gefiltert werden.

Wenn FILTERABLE_ENABLED, der Feldtyp aber numerisch ist, können Feldwerte in RecommendationService.Recommend nicht nach Textanfragen gefiltert werden. Es werden nur Textfelder unterstützt.

Wenn recsFilterableOption nicht festgelegt ist, ist die Standardeinstellung FILTERABLE_DISABLED für Felder, die das Festlegen filterbarer Optionen unterstützen.

Wenn ein Feld mit [FILTERABLE_DISABLED] gefiltert wird, wird eine Warnung generiert und ein leeres Ergebnis zurückgegeben.

keyPropertyType

string

Nur Ausgabe. Typ des Schlüsselattributs, dem dieses Feld zugeordnet ist. Leerstring, wenn dies nicht als einer Schlüssel-Property zugeordnet gekennzeichnet ist.

Beispiele: title, description. Die vollständige Liste wird durch keyPropertyMapping in der Anmerkung des Schemafelds definiert.

Wenn das Schemefeld die Annotation KeyPropertyMapping hat, können indexableOption und searchableOption dieses Felds nicht geändert werden.

advancedSiteSearchDataSources[]

enum (AdvancedSiteSearchDataSource)

Wenn dieses Feld festgelegt ist, wird nur die entsprechende Quelle für dieses Feld indexiert. Andernfalls werden die Werte aus verschiedenen Quellen zusammengeführt.

Angenommen, eine Seite hat <author, a> im Meta-Tag und <author, b> in der Seitenübersicht. Wenn dieser Enum auf METATAGS gesetzt ist, wird nur <author, a> indexiert. Wenn dieser Enum nicht gesetzt ist, werden die beiden Werte zusammengeführt und <author, [a, b]> wird indexiert.

schemaOrgPaths[]

string

Feldpfade zum Indexieren benutzerdefinierter Attribute aus schema.org-Daten. Weitere Informationen zu schema.org und den definierten Typen finden Sie unter schema.org.

Sie wird nur für das Schema der erweiterten Site Search verwendet.

Derzeit wird nur der vollständige Pfad ab dem Stammverzeichnis unterstützt. Der vollständige Pfad zu einem Feld wird durch Verketten von Feldnamen, beginnend mit _root, mit einem Punkt . als Trennzeichen erstellt. Beispiele:

  • Veröffentlichungsdatum des Stammelements: _root.datePublished
  • Veröffentlichungsdatum der Rezensionen: _root.review.datePublished
metatagName

string

Optional. Der Name des Metatags, der auf der HTML-Seite gefunden wurde. Wenn der Nutzer dieses Feld definiert, wird der Wert dieses Metatag-Namens verwendet, um das Metatag zu extrahieren. Wenn der Nutzer dieses Feld nicht definiert, wird FieldConfig.field_path verwendet, um das Metatag zu extrahieren.

FieldType

Typ des Feldwerts im Schema.

Enums
FIELD_TYPE_UNSPECIFIED Der Feldtyp ist nicht angegeben.
OBJECT Der Feldwerttyp ist „Object“.
STRING Der Feldwerttyp ist „String“.
NUMBER Der Feldwerttyp ist „Number“.
INTEGER Der Feldwerttyp ist „Ganzzahl“.
BOOLEAN Der Feldwerttyp ist „Boolesch“.
GEOLOCATION

Der Feldwerttyp ist „Geografischer Standort“. Die geografische Position wird als Objekt mit den folgenden Schlüsseln ausgedrückt:

  • id: ein String, der die Standort-ID darstellt
  • longitude: eine Zahl, die den Längengrad des Standorts darstellt
  • latitude: Eine Zahl, die den Breitengrad des Standorts darstellt.
  • address: Ein String, der die vollständige Adresse des Standorts darstellt.

latitude und longitude müssen immer zusammen angegeben werden. Es muss mindestens a) address oder b) das Paar latitudelongitude angegeben werden.

DATETIME

Der Feldwerttyp ist „Datetime“. „Datetime“ kann so ausgedrückt werden:

  • Eine Zahl, die Millisekunden seit der Epoche darstellt
  • Ein String, der Millisekunden seit der Epochzeit darstellt, z. B."1420070400001".
  • Ein String, der das Datum oder Datum und die Uhrzeit im ISO 8601-Format darstellt, z. B."2015-01-01" oder "2015-01-01T12:10:30Z".

IndexableOption

Die Einstellung von indexierbaren Optionen im Schema.

Enums
INDEXABLE_OPTION_UNSPECIFIED Wert, der verwendet wird, wenn er nicht festgelegt ist.
INDEXABLE_ENABLED Die indexierbare Option ist für ein Schemabereich aktiviert.
INDEXABLE_DISABLED Die indexierbare Option ist für ein Schemafeld deaktiviert.

DynamicFacetableOption

Der Status der Option „Als dynamisches Attribut verwendbar“ eines Schemafelds.

Enums
DYNAMIC_FACETABLE_OPTION_UNSPECIFIED Wert, der verwendet wird, wenn er nicht festgelegt ist.
DYNAMIC_FACETABLE_ENABLED Die Option „Als dynamisches Attribut verwendbar“ ist für ein Schemefeld aktiviert.
DYNAMIC_FACETABLE_DISABLED Die Option „Als dynamisches Attribut verwendbar“ ist für ein Schemefeld deaktiviert.

SearchableOption

Die Einstellung der durchsuchbaren Optionen im Schema.

Enums
SEARCHABLE_OPTION_UNSPECIFIED Wert, der verwendet wird, wenn er nicht festgelegt ist.
SEARCHABLE_ENABLED Die Option „Suchbar“ ist für ein Schemefeld aktiviert.
SEARCHABLE_DISABLED Die Option „Suchbar“ ist für ein Schemefeld deaktiviert.

RetrievableOption

Die Einstellung der abrufbaren Optionen im Schema.

Enums
RETRIEVABLE_OPTION_UNSPECIFIED Wert, der verwendet wird, wenn er nicht festgelegt ist.
RETRIEVABLE_ENABLED Die Option „Abrufbar“ ist für ein Schemefeld aktiviert.
RETRIEVABLE_DISABLED Die abrufbare Option ist für ein Schemefeld deaktiviert.

CompletableOption

Die Einstellung von vervollständigbaren Optionen im Schema.

Enums
COMPLETABLE_OPTION_UNSPECIFIED Wert, der verwendet wird, wenn er nicht festgelegt ist.
COMPLETABLE_ENABLED Die Option „Vervollständigbar“ ist für ein Schemabereich aktiviert.
COMPLETABLE_DISABLED Die Option „Vervollständigbar“ ist für ein Schemefeld deaktiviert.

FilterableOption

Legt die filterbare Option für Schemafelder fest.

Enums
FILTERABLE_OPTION_UNSPECIFIED Wert, der verwendet wird, wenn er nicht festgelegt ist.
FILTERABLE_ENABLED Für ein Schemefeld ist die filterbare Option aktiviert.
FILTERABLE_DISABLED Die filterbare Option ist für ein Schemafeld deaktiviert.

AdvancedSiteSearchDataSource

Optionale Quelle des erweiterten Site Search-Felds.

Enums
ADVANCED_SITE_SEARCH_DATA_SOURCE_UNSPECIFIED Wert, der verwendet wird, wenn er nicht festgelegt ist.
METATAGS Wert aus Meta-Tag abrufen.
PAGEMAP Wert aus der Seitenübersicht abrufen.
URI_PATTERN_MAPPING Wert aus den Attributen abrufen, die von der SiteSearchEngineService.SetUriPatternDocumentData API festgelegt wurden.
SCHEMA_ORG Wert aus schema.org-Daten abrufen

Methoden

create

Erstellt einen Schema.

delete

Löscht ein Schema.

get

Erstellt einen Schema.

list

Ruft eine Liste von Schema ab.

patch

Aktualisiert ein Schema.