Compatible with Concerto versions ^3.0.0. Has 7 declarations.
Concerto JSON AST PlantUML XML Schema Typescript C# OData JSON Schema GraphQL Java Go Avro Markdown OpenAPI Protobuf Mermaid
import org.accordproject.creativework@0.2.0.BookGenre from https://models.accordproject.org/creative/creativeWork@0.2.0.cto
import org.accordproject.creativework@0.2.0.Medium from https://models.accordproject.org/creative/creativeWork@0.2.0.cto
import org.accordproject.creativework@0.2.0.CreativeWork from https://models.accordproject.org/creative/creativeWork@0.2.0.cto
import org.accordproject.creativework@0.2.0.Album from https://models.accordproject.org/creative/creativeWork@0.2.0.cto
import org.accordproject.creativework@0.2.0.Book from https://models.accordproject.org/creative/creativeWork@0.2.0.cto
import org.accordproject.creativework@0.2.0.MusicGenre from https://models.accordproject.org/creative/creativeWork@0.2.0.cto
import org.accordproject.creativework@0.2.0.Song from https://models.accordproject.org/creative/creativeWork@0.2.0.cto
/*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
concerto version "^3.0.0"
namespace org.accordproject.creativework@0.2.0
import org.accordproject.time@0.3.0.Duration from https://models.accordproject.org/time@0.3.0.cto
import org.accordproject.person@0.2.0.Person from https://models.accordproject.org/person@0.2.0.cto
import org.accordproject.organization@0.2.0.Organization from https://models.accordproject.org/organization@0.2.0.cto
/**
* Based on https://schema.org/CreativeWork
*/
enum BookGenre {
o Fantasy
o Romance
}
enum Medium {
o Audio
o Print
o Video
}
concept CreativeWork {
o Person[] creators
o DateTime dateCreated
o Medium medium
o String title optional
}
concept Album extends CreativeWork {
o Song[] songs
}
concept Book extends CreativeWork {
o Organization publisher
o BookGenre genre
}
enum MusicGenre {
o Rock
o Rap
o Country
o Pop
o Jazz
o Grime
o ThrashMetal
}
concept Song extends CreativeWork {
o Duration duration
o MusicGenre genre
o Person[] performers
}