module Codec.Epub2.Opf.Package.Metadata
( Creator (..)
, Date (..)
, Description (..)
, Identifier (..)
, Metadata (..)
, Title (..)
, emptyMetadata
)
where
data Creator = Creator (Maybe String) (Maybe String) String
deriving (Eq, Show)
data Date = Date (Maybe String) String
deriving (Eq, Show)
data Description = Description (Maybe String) String
deriving (Eq, Show)
data Identifier = Identifier String (Maybe String) String
deriving (Eq, Show)
data Title = Title (Maybe String) String
deriving (Eq, Show)
data Metadata = Metadata
{ metaTitles :: [Title]
, metaCreators :: [Creator]
, metaContributors :: [Creator]
, metaSubjects :: [String]
, metaDescriptions :: [Description]
, metaPublishers :: [String]
, metaDates :: [Date]
, metaTypes :: [String]
, metaFormats :: [String]
, metaIds :: [Identifier]
, metaSources :: [String]
, metaLangs :: [String]
, metaRelations :: [String]
, metaCoverages :: [String]
, metaRights :: [String]
}
deriving (Eq, Show)
emptyMetadata :: Metadata
emptyMetadata = Metadata
{ metaTitles = []
, metaCreators = []
, metaContributors = []
, metaSubjects = []
, metaDescriptions = []
, metaPublishers = []
, metaDates = []
, metaTypes = []
, metaFormats = []
, metaIds = []
, metaSources = []
, metaLangs = []
, metaRelations = []
, metaCoverages = []
, metaRights = []
}