Performers (Исполнители)
Новое в версии 1.1
Источник данных исполнителей (Performers) добавлен в версии 1.1 для поддержки персон (дирижёры, солисты) и музыкальных коллективов (оркестры, хоры, ансамбли).
Введение
Источник данных Performers (исполнители) позволяет организациям предоставлять структурированную информацию об исполнителях — персонах и музыкальных коллективах, связанных с организацией.
Зачем нужны Performers?
- Связь с событиями — исполнители связываются с концертами через поле
performer - Профили артистов — создание полноценных профилей с биографией, наградами, фотографиями
- Навигация — пользователи могут увидеть все выступления конкретного исполнителя
- Поисковая оптимизация и ИИ — поисковые системы и ИИ-ассистенты лучше понимают структуру данных
- Интеграция — обмен данными между организациями и агрегаторами
Типы исполнителей
Спецификация поддерживает два основных типа исполнителей:
Person
Персона — дирижер, солист, композитор, музыкант
Schema.org тип: Person
Примеры: Главный дирижер, Солистка (сопрано), Композитор
MusicGroup
Музыкальный коллектив — оркестр, хор, ансамбль, группа
Schema.org тип: MusicGroup или PerformingGroup
Примеры: Симфонический оркестр, Камерный хор, Струнный квартет
Уточнение типа через additionalType
Для MusicGroup можно уточнить тип коллектива через поле additionalType:
| additionalType | Описание | Пример |
|---|---|---|
Orchestra |
Оркестр | Симфонический оркестр, Камерный оркестр |
Choir |
Хор | Камерный хор, Детский хор |
Ensemble |
Ансамбль | Струнный квартет, Духовой квинтет |
Band |
Группа, бэнд | Джаз-бэнд, Рок-группа |
Эндпоинты
GET /{base}/performers.jsonld
Назначение: Получить список всех исполнителей организации. Параметр {base} — настраиваемый базовый путь (например, /id/).
Параметры запроса (опционально):
| Параметр | Тип | Описание | Пример |
|---|---|---|---|
limit |
integer | Количество записей (default: 50, max: 100) | ?limit=20 |
offset |
integer | Смещение для пагинации (default: 0) | ?offset=50 |
type |
string | Фильтр по типу: person, group, orchestra, choir, ensemble | ?type=orchestra |
Пример запроса:
GET https://filarmonia.online/id/performers.jsonld?type=person&limit=10
GET /{base}/performers/{uuid}.jsonld
Назначение: Получить подробную информацию о конкретном исполнителе
Пример запроса:
GET https://filarmonia.online/id/performers/6ba7b810-9dad-11d1-80b4-00c04fd430c8.jsonld
Person (Персона)
Обязательные поля
| Поле | Тип | Описание |
|---|---|---|
@context |
array | Контекст JSON-LD (Schema.org + id.filarmonia) |
@type |
string | Всегда "Person" |
@id |
string (URI) | URI исполнителя |
uuid |
string (UUID v4) | Уникальный идентификатор |
name |
string | Полное имя (ФИО) |
links |
array | Навигационные ссылки (Hypermedia) |
Рекомендуемые поля
| Поле | Тип | Описание |
|---|---|---|
slug |
string | Человекопонятный идентификатор для URL |
givenName |
string | Имя |
familyName |
string | Фамилия |
additionalName |
string | Отчество |
jobTitle |
string | Должность/амплуа (Главный дирижер, Солистка) |
image |
string/array | Фотографии исполнителя |
description |
string | Биография |
birthDate |
date (ISO 8601) | Дата рождения |
worksFor |
object | Организация-работодатель |
memberOf |
array | Участник коллективов |
award |
array | Награды и звания |
performingRole |
string | Роль исполнителя в событии (дирижер, солист, концертмейстер, приглашенный артист) |
Пример: Дирижер (Person)
{
"@context": [
"https://schema.org",
"https://id.filarmonia.online/spec/1.1/context.jsonld"
],
"@type": "Person",
"@id": "https://filarmonia.online/performers/6ba7b810-9dad-11d1-80b4-00c04fd430c8",
"uuid": "6ba7b810-9dad-11d1-80b4-00c04fd430c8",
"slug": "ivanov-conductor",
"name": "Иван Иванов",
"givenName": "Иван",
"familyName": "Иванов",
"jobTitle": "Главный дирижер",
"image": "https://filarmonia.online/images/performers/ivanov.jpg",
"description": "Народный артист России. Окончил Московскую консерваторию по классу дирижирования...",
"birthDate": "1975-03-15",
"worksFor": {
"@type": "PerformingGroup",
"@id": "https://filarmonia.online/id/organization.jsonld",
"name": "Пермская краевая филармония"
},
"award": [
"Народный артист России",
"Лауреат международного конкурса дирижеров"
],
"links": [
{
"rel": "self",
"href": "https://filarmonia.online/id/performers/6ba7b810-9dad-11d1-80b4-00c04fd430c8.jsonld"
},
{
"rel": "upcoming-events",
"href": "https://filarmonia.online/id/events.jsonld?performer=6ba7b810-9dad-11d1-80b4-00c04fd430c8",
"title": "Предстоящие выступления"
}
]
}
MusicGroup (Музыкальный коллектив)
Обязательные поля
| Поле | Тип | Описание |
|---|---|---|
@context |
array | Контекст JSON-LD (Schema.org + id.filarmonia) |
@type |
string | "MusicGroup" или "PerformingGroup" |
@id |
string (URI) | URI коллектива |
uuid |
string (UUID v4) | Уникальный идентификатор |
name |
string | Название коллектива |
links |
array | Навигационные ссылки (Hypermedia) |
Рекомендуемые поля
| Поле | Тип | Описание |
|---|---|---|
slug |
string | Человекопонятный идентификатор для URL |
alternateName |
string | Сокращенное название |
additionalType |
string | Уточнение типа: Orchestra, Choir, Ensemble, Band |
image |
string/array | Фотографии коллектива |
description |
string | История и описание коллектива |
foundingDate |
date (ISO 8601) | Дата основания |
genre |
array | Музыкальные жанры |
memberOf |
object | Родительская организация |
numberOfMembers |
integer | Количество участников |
musicGroupMember |
array | Ключевые участники коллектива |
award |
array | Награды коллектива |
Пример: Оркестр (MusicGroup)
{
"@context": [
"https://schema.org",
"https://id.filarmonia.online/spec/1.1/context.jsonld"
],
"@type": "MusicGroup",
"@id": "https://filarmonia.online/performers/8f14e45f-ceea-467a-9062-682c449cd005",
"uuid": "8f14e45f-ceea-467a-9062-682c449cd005",
"slug": "symphony-orchestra",
"name": "Пермский академический симфонический оркестр",
"alternateName": "ПАСО",
"additionalType": "Orchestra",
"image": "https://filarmonia.online/images/performers/orchestra.jpg",
"description": "Академический симфонический оркестр основан в 1936 году...",
"foundingDate": "1936-07-01",
"numberOfMembers": 85,
"genre": [
"Classical Music",
"Symphony",
"Contemporary Classical"
],
"memberOf": {
"@type": "PerformingGroup",
"@id": "https://filarmonia.online/id/organization.jsonld",
"name": "Пермская краевая филармония"
},
"musicGroupMember": [
{
"@type": "Person",
"@id": "https://filarmonia.online/id/performers/6ba7b810-9dad-11d1-80b4-00c04fd430c8.jsonld",
"name": "Иван Иванов",
"roleName": "Главный дирижер"
}
],
"award": [
"Академический статус (2005)",
"Лауреат конкурса симфонических оркестров России"
],
"links": [
{
"rel": "self",
"href": "https://filarmonia.online/id/performers/8f14e45f-ceea-467a-9062-682c449cd005.jsonld"
},
{
"rel": "upcoming-events",
"href": "https://filarmonia.online/id/events.jsonld?performer=8f14e45f-ceea-467a-9062-682c449cd005",
"title": "Предстоящие концерты оркестра"
}
]
}
Интеграция с Events
Исполнители связываются с событиями через поле performer в MusicEvent:
{
"@context": [
"https://schema.org",
"https://id.filarmonia.online/spec/1.1/context.jsonld"
],
"@type": "MusicEvent",
"@id": "https://filarmonia.online/events/f47ac10b-58cc-4372-a567-0e02b2c3d479",
"uuid": "f47ac10b-58cc-4372-a567-0e02b2c3d479",
"slug": "2026-03-15-tchaikovsky",
"name": "П.И. Чайковский. Времена года",
"startDate": "2026-03-15T19:00:00+05:00",
"performer": [
{
"@type": "MusicGroup",
"@id": "https://filarmonia.online/performers/8f14e45f-ceea-467a-9062-682c449cd005",
"uuid": "8f14e45f-ceea-467a-9062-682c449cd005",
"name": "Пермский академический симфонический оркестр"
},
{
"@type": "Person",
"@id": "https://filarmonia.online/performers/6ba7b810-9dad-11d1-80b4-00c04fd430c8",
"uuid": "6ba7b810-9dad-11d1-80b4-00c04fd430c8",
"name": "Иван Иванов",
"jobTitle": "Главный дирижер",
"performingRole": "дирижер"
}
],
"location": {
"@type": "MusicVenue",
"@id": "https://filarmonia.online/places/7c9e6679-7425-40de-944b-e07fc1f90ae7",
"name": "Большой зал"
}
}
Навигация:
- От события к исполнителю:
event.performer→performer.@id - От исполнителя к событиям:
performer.links→rel="upcoming-events"
Примеры использования
Случай 1: Солист
Певица выступает на разных площадках
@type: PersonjobTitle: "Солистка (сопрано)"- Связана с несколькими событиями через
performer
Случай 2: Штатный оркестр
Оркестр является частью филармонии
@type: MusicGroupadditionalType: "Orchestra"memberOf→ организацияmusicGroupMember→ ключевые музыканты
Случай 3: Камерный ансамбль
Небольшой коллектив с составом
@type: MusicGroupadditionalType: "Ensemble"numberOfMembers: 5- Список участников в
musicGroupMember
Случай 4: Гастролер
Приглашенный исполнитель
@type: PersonworksFor→ другая организация- Связан только с одним событием
Рекомендации
Рекомендации:
- Всегда указывайте
uuid— это ключевой идентификатор - Используйте
slugдля удобных адресов страниц - Заполняйте
jobTitleдля персон — это помогает понять роль - Для коллективов указывайте
additionalType(Orchestra, Choir, etc.) - Используйте
linksдля навигации к событиям исполнителя - В событиях можно указывать кратко (
@id,uuid,name) — полные данные в источнике данных исполнителя