Как указать несколько параметров (Car) в schema.org Json-LD? - PullRequest
1 голос
/ 25 сентября 2019

Я пытаюсь описать объект Car, который имеет несколько опций, касающихся двигателя или коробки передач, на который ссылается aggregateOffer как itemOffered.

Я хочу указать, что указанный автомобиль может иметь либомеханическая или автоматическая коробка передач, может быть новой или бывшей в употреблении, принимать дизельное или другое топливо и т. д. Я вижу следующие два варианта:

1) Составьте список возможных коробок передач и других вариантов

"itemOffered" : {

    "vehicleTransmission": ["Automatic","Manual"],
    "fuelType": ["Diesel", "Essence"]

}

Будет ли это интерпретироваться следующим образом: у автомобиля есть либо механическая, либо автоматическая коробка передач?Я боюсь, что семантика позади этого предполагает, что у упомянутой машины есть оба.

2) Составьте список автомобилей со всеми возможностями

"itemOffered": [

{
        "@type": "Car1",
        "fuelType": "Essence",
        "vehicleTransmission": "Automatic" },
{
        "@type": "Car2",
        "fuelType": "Essence",
        "vehicleTransmission": "Manual" }
]

Но это будет потенциально очень большой, так как у меня есть несколько предложений автомобилей с несколькими различными вариантами, я бы в итоге перечислил свойвся база данных.Чтобы уточнить, смысл этого объекта Car должен быть присоединен к aggregateOffer на странице, где отображается только aggregateOffer, а не каждое доступное предложение.

1 Ответ

1 голос
/ 25 сентября 2019

Вторая интерпретация верна.Если у вас есть один Car с несколькими значениями fuelType, все эти значения применяются к этому Car;они не представляют альтернативы.

В любом случае, AggregateOffer не подходит для вашего случая.Этот тип предназначен для нескольких предложений одного и того же продукта, а не для нескольких предложений различных (хотя и схожих) продуктов:

Когда один продукт связан с несколькими предложениями (например, одна и та же параобувь предлагается разными продавцами), тогда можно использовать AggregateOffer.

Если вы не хотите перечислять / повторять столько свойств для каждого Car, вы можете использовать ProductModel тип.Вы можете связать элементы ProductModel с помощью свойства isVariantOf.Каждая модель варианта будет наследовать функции от своей базовой модели продукта, если вы не «перезапишете» их в модели варианта.Затем каждый Car будет использовать свойство model для ссылки на свою модель продукта.
Однако, если вы имеете в виду конкретного потребителя структурированных данных, они могут не поддерживать эту более сложную структуру.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...