/* * search-doc-service * Copyright (C) 2020 Memoriav * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU Affero General Public License as published by * the Free Software Foundation, either version 3 of the License, or * (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU Affero General Public License for more details. * * You should have received a copy of the GNU Affero General Public License * along with this program. If not, see . */ package org.memobase.model import com.fasterxml.jackson.annotation.JsonInclude @JsonInclude(JsonInclude.Include.NON_EMPTY) data class SearchDoc( // Titles val title: List, val seriesTitle: List, val broadcastTitle: List, // Datatype properties val type: String, val sourceID: String, val id: String, val abstract: List, val descriptiveNote: List, val scopeAndContent: List, val source: List, val relatedMaterial: List, val rightsHolder: List, val sameAs: List, // Concepts val genre: List, val keywords: List, val languageContent: List, val languageCaption: List, val language: List, // Agents val personSubject: List, val personCreator: List, val personContributor: List, val personPublisher: List, val personProducer: List, val personsFacet: List, val corporateBodySubject: List, val corporateBodyCreator: List, val corporateBodyContributor: List, val corporateBodyPublisher: List, val corporateBodyProducer: List, val agentSubject: List, val agentCreator: List, val agentContributor: List, val agentPublisher: List, val agentProducer: List, // Places val placeRelated: List, val placeCapture: List, val placeFacet: List, // Dates val temporal: List, val dateCreated: List, val dateIssued: List, val institution: List, val recordSet: FacettedContainer, val memoriavClaim: Boolean, // Digital Object val durationDigital: List, val colourDigital: List, val locator: List, val accessDigital: List, val usageDigital: List, val usageDigitalGroup: List, val digitalObjectNote: List, val usageConditionsDigital: List, // Physical Object val durationPhysical: List, val callNumber: List, val accessPhysical: List, val usagePhysical: List, val physicalCharacteristics: List, val colourPhysical: List, val usageConditionsPhysical: List, val physicalObjectNote: List, val format: List, // Combined val access: List )