Compatible with Concerto versions . Has 7 declarations.
Concerto JSON AST UML JSON Schema XML Schema GraphQL TypeScript CSharp Java Go OData
import org.accordproject.creativework.BookGenre from https://models.accordproject.org/creative/creativeWork.cto
import org.accordproject.creativework.Medium from https://models.accordproject.org/creative/creativeWork.cto
import org.accordproject.creativework.CreativeWork from https://models.accordproject.org/creative/creativeWork.cto
import org.accordproject.creativework.Album from https://models.accordproject.org/creative/creativeWork.cto
import org.accordproject.creativework.Book from https://models.accordproject.org/creative/creativeWork.cto
import org.accordproject.creativework.MusicGenre from https://models.accordproject.org/creative/creativeWork.cto
import org.accordproject.creativework.Song from https://models.accordproject.org/creative/creativeWork.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.
*/
namespace org.accordproject.creativework
import org.accordproject.time.Duration from https://models.accordproject.org/time@0.2.0.cto
import org.accordproject.person.Person from https://models.accordproject.org/person.cto
import org.accordproject.organization.Organization from https://models.accordproject.org/organization.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
}