Добавление поля 'license' в схему schema.org Place
У меня есть база данных мест, которые я хотел бы опубликовать как открытые данные. Каждая запись может иметь одну из нескольких лицензий в зависимости от того, откуда были получены данные, поэтому каждая запись должна иметь прикрепленную лицензию. Я публикую данные как json-ld
, Пример записи:
{
"@context": "http://schema.org",
"@type": "Place",
"name": "METROPOLITAN MUSEUM OF ART",
"address": {
"@type": "PostalAddress",
"streetAddress": "1000 5TH AVE",
"addressLocality": "NEW YORK",
"addressRegion": "NY",
"addressCountry": "United States",
"postalCode": "10028-0198"
},
"hasMap": "http://www.openstreetmap.org/?mlat=40.7784&mlon=-73.9627#map=15/40.7784/-73.9627",
"geo": {
"@type": "GeoCoordinates",
"latitude": 40.7784,
"longitude": -73.9627
},
"description": null,
"telephone": "+1 (212) 472-2764",
"url": "http://www.metmuseum.org",
"openingHours": null,
"photo": {
"@type": "ImageObject",
"contentUrl": "http://127.0.0.1:8888/fSunhLAJFSmnx55GNJee2-YKcgE=/1000x1000/museums/logos/000/149/449/original/NYC_-_Metropolitan_-_Temple_of_Dendur.JPG",
"creator": "Jean-Christophe BENOIST",
"license": "CC BY 3.0"
}
}
В модели места schema.org нет поля для "лицензии". Как правильно добавить поле типа лицензии в запись? По сути, я хочу вставить туда поле CreativeWork, если это возможно.
2 ответа
Похоже, что вы хотите предоставить лицензию на документ, который о Place
не для Place
сам.
Так что иди с CreativeWork
(или один из его подтипов, например WebPage
если документ является веб-страницей) и использовать его license
имущество.
Чтобы заявить, что это CreativeWork
о Place
Вы могли бы использовать about
собственность, и заявить, что Place
является основным объектом, описанным в этом документе, вы можете использовать mainEntity
имущество.
Если вы хотите сохранить Place
в качестве узла верхнего уровня вы можете использовать JSON-LD @reverse
для about
собственность и использование mainEntity
обратное свойство, mainEntityOfPage
,
Использование http://schema.org/Dataset (это тип CreativeWork
) позволит вам установить лицензию. Place
это поле внутри Dataset
поэтому они подходят друг другу. license
для тебя ImageObject
также должен быть URL лицензии, а не текст (который я узнал после проблем с ним).
Набор данных включает в себя datasetTimeinterval
, distribution
, includedDataCatalog
а также spatial
(а Place
). Набор данных был представлен только в мае