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

Resource: Schema

Menentukan struktur dan tata letak jenis data dokumen.

Representasi JSON
{
  "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.
}
Kolom
name

string

Tidak dapat diubah. Nama lengkap resource skema, dalam format projects/{project}/locations/{location}/collections/{collection}/dataStores/{dataStore}/schemas/{schema}.

Kolom ini harus berupa string berenkode UTF-8 dengan batas panjang 1.024 karakter.

fieldConfigs[]

object (FieldConfig)

Hanya output. Konfigurasi untuk kolom skema.

Kolom union schema. Representasi skema. Salah satu dari struct_schema atau json_schema harus diberikan. Jika tidak, error INVALID_ARGUMENT akan ditampilkan. schema hanya dapat berupa salah satu dari hal berikut:
structSchema

object (Struct format)

Representasi terstruktur dari skema.

jsonSchema

string

Representasi JSON skema.

FieldConfig

Konfigurasi untuk kolom skema. Misalnya, mengonfigurasi kolom agar dapat diindeks atau ditelusuri.

Representasi JSON
{
  "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
}
Kolom
fieldPath

string

Wajib. Jalur kolom dari kolom skema. Misalnya: title, description, release_info.release_year.

fieldType

enum (FieldType)

Hanya output. Jenis mentah kolom.

indexableOption

enum (IndexableOption)

Jika indexableOption adalah INDEXABLE_ENABLED, nilai kolom diindeks sehingga dapat difilter atau dikelompokkan dalam SearchService.Search.

Jika indexableOption tidak disetel, perilaku server akan ditetapkan secara default ke INDEXABLE_DISABLED untuk kolom yang mendukung setelan opsi yang dapat diindeks. Untuk kolom yang tidak mendukung penetapan opsi yang dapat diindeks, seperti object dan boolean serta properti utama, server akan melewati penetapan indexableOption, dan penetapan indexableOption untuk kolom tersebut akan memunculkan error INVALID_ARGUMENT.

dynamicFacetableOption

enum (DynamicFacetableOption)

Jika dynamicFacetableOption adalah DYNAMIC_FACETABLE_ENABLED, nilai kolom tersedia untuk aspek dinamis. Hanya dapat berupa DYNAMIC_FACETABLE_DISABLED jika FieldConfig.indexable_option adalah INDEXABLE_DISABLED. Jika tidak, error INVALID_ARGUMENT akan ditampilkan.

Jika dynamicFacetableOption tidak disetel, perilaku server secara default adalah DYNAMIC_FACETABLE_DISABLED untuk kolom yang mendukung penetapan opsi berfacet dinamis. Untuk kolom yang tidak mendukung setelan opsi yang dapat difasilitasi secara dinamis, seperti object dan boolean, server akan melewati setelan opsi yang dapat difasilitasi secara dinamis, dan setelan dynamicFacetableOption untuk kolom tersebut akan memunculkan error INVALID_ARGUMENT.

searchableOption

enum (SearchableOption)

Jika searchableOption adalah SEARCHABLE_ENABLED, nilai kolom dapat ditelusuri dengan kueri teks di SearchService.Search.

Jika SEARCHABLE_ENABLED, tetapi jenis kolomnya numerik, nilai kolom tidak akan dapat ditelusuri berdasarkan kueri teks di SearchService.Search, karena tidak ada nilai teks yang terkait dengan kolom numerik.

Jika searchableOption tidak disetel, perilaku server akan ditetapkan secara default ke SEARCHABLE_DISABLED untuk kolom yang mendukung penetapan opsi yang dapat ditelusuri. Hanya kolom string yang tidak memiliki pemetaan properti kunci yang mendukung penetapan searchableOption.

Untuk kolom yang tidak mendukung penetapan opsi yang dapat ditelusuri, server akan melewati penetapan opsi yang dapat ditelusuri, dan penetapan searchableOption untuk kolom tersebut akan memunculkan error INVALID_ARGUMENT.

retrievableOption

enum (RetrievableOption)

Jika retrievableOption adalah RETRIEVABLE_ENABLED, nilai kolom disertakan dalam hasil penelusuran.

Jika retrievableOption tidak disetel, perilaku server akan ditetapkan secara default ke RETRIEVABLE_DISABLED untuk kolom yang mendukung penetapan opsi yang dapat diambil. Untuk kolom yang tidak mendukung setelan opsi yang dapat diambil, seperti object dan boolean, server akan melewati setelan opsi yang dapat diambil, dan menyetel retrievableOption untuk kolom tersebut akan memunculkan error INVALID_ARGUMENT.

completableOption

enum (CompletableOption)

Jika completableOption adalah COMPLETABLE_ENABLED, nilai kolom akan langsung digunakan dan ditampilkan sebagai saran untuk Pelengkapan Otomatis di CompletionService.CompleteQuery.

Jika completableOption tidak disetel, perilaku server secara default adalah COMPLETABLE_DISABLED untuk kolom yang mendukung penetapan opsi yang dapat diselesaikan, yaitu hanya kolom string. Untuk kolom yang tidak mendukung penetapan opsi yang dapat diselesaikan, server akan melewati penetapan opsi yang dapat diselesaikan, dan penetapan completableOption untuk kolom tersebut akan memunculkan error INVALID_ARGUMENT.

recsFilterableOption

enum (FilterableOption)

Jika recsFilterableOption adalah FILTERABLE_ENABLED, nilai kolom dapat difilter menurut ekspresi filter di RecommendationService.Recommend.

Jika FILTERABLE_ENABLED, tetapi jenis kolomnya numerik, nilai kolom tidak dapat difilter menurut kueri teks di RecommendationService.Recommend. Hanya kolom tekstual yang didukung.

Jika recsFilterableOption tidak disetel, setelan defaultnya adalah FILTERABLE_DISABLED untuk kolom yang mendukung setelan opsi yang dapat difilter.

Jika kolom yang disetel ke [FILTERABLE_DISABLED] difilter, peringatan akan dibuat dan hasil kosong akan ditampilkan.

keyPropertyType

string

Hanya output. Jenis properti kunci yang dipetakan ke kolom ini. String kosong jika ini tidak dianotasi sebagai dipetakan ke properti kunci.

Jenis contohnya adalah title, description. Daftar lengkap ditentukan oleh keyPropertyMapping dalam anotasi kolom skema.

Jika kolom skema memiliki anotasi KeyPropertyMapping, indexableOption dan searchableOption kolom ini tidak dapat diubah.

advancedSiteSearchDataSources[]

enum (AdvancedSiteSearchDataSource)

Jika kolom ini ditetapkan, hanya sumber yang sesuai yang akan diindeks untuk kolom ini. Jika tidak, nilai dari sumber yang berbeda akan digabungkan.

Dengan asumsi halaman dengan <author, a> di tag meta, dan <author, b> di peta halaman: jika enum ini disetel ke METATAGS, kami hanya akan mengindeks <author, a>; jika enum ini tidak disetel, kami akan menggabungkannya dan mengindeks <author, [a, b]>.

schemaOrgPaths[]

string

Jalur kolom untuk mengindeks atribut kustom dari data schema.org. Detail selengkapnya tentang schema.org dan jenis yang ditentukan dapat ditemukan di schema.org.

Hanya digunakan pada skema penelusuran situs lanjutan.

Saat ini hanya mendukung jalur lengkap dari root. Jalur lengkap ke kolom dibuat dengan menggabungkan nama kolom, dimulai dari _root, dengan titik . sebagai pemisah. Contoh:

  • Tanggal publikasi root: _root.datePublished
  • Tanggal publikasi ulasan: _root.review.datePublished
metatagName

string

Opsional. Nama metatag yang ditemukan di halaman HTML. Jika pengguna menentukan kolom ini, nilai nama metatag ini akan digunakan untuk mengekstrak metatag. Jika pengguna tidak menentukan kolom ini, FieldConfig.field_path akan digunakan untuk mengekstrak metatag.

FieldType

Jenis nilai kolom dalam Skema.

Enum
FIELD_TYPE_UNSPECIFIED Jenis kolom tidak ditentukan.
OBJECT Jenis nilai kolom adalah Objek.
STRING Jenis nilai kolom adalah String.
NUMBER Jenis nilai kolom adalah Angka.
INTEGER Jenis nilai kolom adalah Bilangan Bulat.
BOOLEAN Jenis nilai kolom adalah Boolean.
GEOLOCATION

Jenis nilai kolom adalah Geolocation. Geolokasi dinyatakan sebagai objek dengan kunci berikut:

  • id: string yang merepresentasikan ID lokasi
  • longitude: angka yang merepresentasikan koordinat bujur lokasi
  • latitude: angka yang merepresentasikan koordinat garis lintang lokasi
  • address: string yang mewakili alamat lengkap lokasi

latitude dan longitude harus selalu diberikan bersama-sama. Setidaknya salah satu dari a) address atau b) pasangan latitude-longitude harus diberikan.

DATETIME

Jenis nilai kolom adalah Datetime. Datetime dapat dinyatakan sebagai:

  • angka yang merepresentasikan milidetik sejak epoch
  • string yang mewakili milidetik sejak epoch. misalnya, "1420070400001"
  • string yang mewakili tanggal atau tanggal dan waktu ISO 8601. Misalnya, "2015-01-01" atau "2015-01-01T12:10:30Z"

IndexableOption

Setelan opsi Dapat diindeks dalam skema.

Enum
INDEXABLE_OPTION_UNSPECIFIED Nilai yang digunakan saat tidak disetel.
INDEXABLE_ENABLED Opsi yang dapat diindeks diaktifkan untuk kolom skema.
INDEXABLE_DISABLED Opsi yang dapat diindeks dinonaktifkan untuk kolom skema.

DynamicFacetableOption

Status opsi dapat difaset dinamis dari kolom skema.

Enum
DYNAMIC_FACETABLE_OPTION_UNSPECIFIED Nilai yang digunakan saat tidak disetel.
DYNAMIC_FACETABLE_ENABLED Opsi dapat difasilitasi dinamis diaktifkan untuk kolom skema.
DYNAMIC_FACETABLE_DISABLED Opsi dapat difasilitasi dinamis dinonaktifkan untuk kolom skema.

SearchableOption

Setelan opsi Dapat ditelusuri dalam skema.

Enum
SEARCHABLE_OPTION_UNSPECIFIED Nilai yang digunakan saat tidak disetel.
SEARCHABLE_ENABLED Opsi yang dapat ditelusuri diaktifkan untuk kolom skema.
SEARCHABLE_DISABLED Opsi dapat ditelusuri dinonaktifkan untuk kolom skema.

RetrievableOption

Setelan opsi Dapat Diambil di skema.

Enum
RETRIEVABLE_OPTION_UNSPECIFIED Nilai yang digunakan saat tidak disetel.
RETRIEVABLE_ENABLED Opsi dapat diambil diaktifkan untuk kolom skema.
RETRIEVABLE_DISABLED Opsi dapat diambil dinonaktifkan untuk kolom skema.

CompletableOption

Setelan opsi Dapat Diselesaikan dalam skema.

Enum
COMPLETABLE_OPTION_UNSPECIFIED Nilai yang digunakan saat tidak disetel.
COMPLETABLE_ENABLED Opsi yang dapat diselesaikan diaktifkan untuk kolom skema.
COMPLETABLE_DISABLED Opsi dapat diselesaikan dinonaktifkan untuk kolom skema.

FilterableOption

Menetapkan opsi yang dapat difilter untuk kolom skema.

Enum
FILTERABLE_OPTION_UNSPECIFIED Nilai yang digunakan saat tidak disetel.
FILTERABLE_ENABLED Opsi yang dapat difilter diaktifkan untuk kolom skema.
FILTERABLE_DISABLED Opsi yang dapat difilter dinonaktifkan untuk kolom skema.

AdvancedSiteSearchDataSource

Sumber opsional untuk kolom penelusuran situs lanjutan.

Enum
ADVANCED_SITE_SEARCH_DATA_SOURCE_UNSPECIFIED Nilai yang digunakan saat tidak disetel.
METATAGS Mengambil nilai dari tag meta.
PAGEMAP Mengambil nilai dari peta halaman.
URI_PATTERN_MAPPING Mengambil nilai dari atribut yang ditetapkan oleh SiteSearchEngineService.SetUriPatternDocumentData API.
SCHEMA_ORG Mengambil nilai dari data schema.org.

Metode

create

Membuat Schema.

delete

Menghapus Schema.

get

Mendapatkan Schema.

list

Mendapatkan daftar Schema.

patch

Memperbarui Schema.