A.2 JSON-based representation
26.5173GPP5G Multicast-Broadcast User ServicesProtocols and FormatsRelease 17TS
A.2.1 MBS User Service Announcement schema
The following schema shall have the filename "TS26517_MBSUserServiceAnnouncement.yaml".
openapi: 3.0.0 info: title: ‘MBS User Service Announcement Element units’ definition’ version: 1.1.0 description: | MBS User Service Announcement Element units. © 2022, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). All rights reserved. externalDocs: description: 3GPP TS 26.517 V17.1.0; 5G System; 5G MBSF; Stage 3. url: http://www.3gpp.org/ftp/Specs/archive/26_series/26.517/ paths: {} components: schemas: BundleDescription: type: array items: $ref: ‘#/components/schemas/UserServiceDescription’ minItems: 1 UserServiceDescription: type: object properties: name: type: array items: type: string serviceLanguage: type: array items: type: string serviceId: type: string distributionSessionDescription: $ref: ‘#/components/schemas/DistributionSessionDescription’ appServiceDescription: $ref: ‘#/components/schemas/AppServiceDescription’ scheduleDescription: $ref: ‘#/components/schemas/ScheduleDescription’ availabilityInfo: $ref: ‘#/components/schemas/AvailabilityInformation’ required: – distributionMethod – serviceId DistributionSessionDescription: type: object properties: conformanceProfile: type: string sessionDescriptionURI: $ref: ‘TS29571_CommonData.yaml#/components/schemas/Uri’ objectRepairParameters: $ref: ‘#/components/schemas/AssociatedProcedureDescription’ dataNetworkName: type: string mbsAppService: type: array items: $ref: ‘#/components/schemas/ApplicationService’ unicastAppServices: type: array items: type: object properties: unicastAppService: type: array items: $ref: ‘#/components/schemas/ApplicationService’ required: – sessionDescriptionURI AppServiceDescription: type: object properties: mediaManifestDescriptionURI: $ref: ‘TS29571_CommonData.yaml#/components/schemas/Uri’ mimeType: type: string identicalContents: type: array items: type: object properties: unicastAppService: type: array items: $ref: ‘#/components/schemas/ApplicationService’ minItems: 2 alternativeContents: type: array items: type: array items: $ref: ‘#/components/schemas/ApplicationService’ ApplicationService: type: object properties: basePattern: type: string required: – basePattern AvailabilityInformation: type: array items: $ref: ‘#/components/schemas/AvailabilityInformationBinding’ AvailabilityInformationBinding: type: object properties: mbsServiceArea: type: array items: $ref: ‘TS29571_CommonData.yaml#/components/schemas/MbsServiceArea’ mbsFSAId: $ref: ‘TS29571_CommonData.yaml#/components/schemas/MbsFsaId’ radioFrequency: type: array items: type: integer minimum: 0 AssociatedProcedureDescription: type: object properties: postObjectRepair: $ref: ‘#/components/schemas/PostObjectRepair’ mbsObjectRepair: $ref: ‘#/components/schemas/MbsObjectRepair’ PostObjectRepair: type: object properties: serviceURIs: type: array items: $ref: ‘TS29571_CommonData.yaml#/components/schemas/Uri’ offsetTime: $ref: ‘TS29571_CommonData.yaml#/components/schemas/DurationSec’ randomTimePeriod: $ref: ‘TS29571_CommonData.yaml#/components/schemas/DurationSec’ MbsObjectRepair: type: object properties: sessionDescriptionURI: type: string ScheduleDescription: type: array items: $ref: ‘#/components/schemas/ServiceSchedule’ ServiceSchedule: type: object properties: sessionSchedule: $ref: ‘#/components/schemas/SessionSchedule’ sessionScheduleOverride: $ref: ‘#/components/schemas/SessionScheduleOverride’ objectSchedule: $ref: ‘#/components/schemas/ObjectSchedule’ serviceId: type: string serviceClass: $ref: ‘TS29571_CommonData.yaml#/components/schemas/Uri’ required: – serviceId – serviceClass – serviceSchedule SessionSchedule: type: array items: type: object properties: start: $ref: ‘TS29571_CommonData.yaml#/components/schemas/DateTime’ stop: $ref: ‘TS29571_CommonData.yaml#/components/schemas/DateTime’ reoccurencePattern: type: string numberOfTimes: type: integer minimum: 1 reoccurenceStopTime: type: string index: type: integer FDTInstanceURI: $ref: ‘TS29571_CommonData.yaml#/components/schemas/Uri’ required: – start – stop SessionScheduleOverride: type: array items: type: object properties: start: $ref: ‘TS29571_CommonData.yaml#/components/schemas/DateTime’ stop: $ref: ‘TS29571_CommonData.yaml#/components/schemas/DateTime’ index: type: integer cancelled: type: boolean sessionDescriptionURI: $ref: ‘TS29571_CommonData.yaml#/components/schemas/Uri’ ObjectSchedule: type: array items: type: object properties: objectURI: $ref: ‘TS29571_CommonData.yaml#/components/schemas/Uri’ sessionId: type: string objectEtag: type: string unicastOnly: type: boolean deliveryInfo: type: array items: type: object properties: start: $ref: ‘TS29571_CommonData.yaml#/components/schemas/DateTime’ stop: $ref: ‘TS29571_CommonData.yaml#/components/schemas/DateTime’ |
Annex B (informative):
Service Announcement examples