module Codec.Epub.Opf.Package.Metadata
( MetaTitle (..)
, MetaCreator (..)
, MetaDate (..)
, MetaId (..)
, Metadata (..)
, emptyMetadata
)
where
data MetaTitle = MetaTitle (Maybe String) String
deriving (Eq, Show)
data MetaCreator = MetaCreator (Maybe String) (Maybe String) String
deriving (Eq, Show)
data MetaDate = MetaDate (Maybe String) String
deriving (Eq, Show)
data MetaId = MetaId String (Maybe String) String
deriving (Eq, Show)
data Metadata = Metadata
{ metaTitles :: [MetaTitle]
, metaCreators :: [MetaCreator]
, metaContributors :: [MetaCreator]
, metaSubjects :: [String]
, metaDescription :: Maybe String
, metaPublisher :: Maybe String
, metaDates :: [MetaDate]
, metaType :: Maybe String
, metaFormat :: Maybe String
, metaIds :: [MetaId]
, metaSource :: Maybe String
, metaLangs :: [String]
, metaRelation :: Maybe String
, metaCoverage :: Maybe String
, metaRights :: Maybe String
}
deriving (Eq, Show)
emptyMetadata :: Metadata
emptyMetadata = Metadata
{ metaTitles = []
, metaCreators = []
, metaContributors = []
, metaSubjects = []
, metaDescription = Nothing
, metaPublisher = Nothing
, metaDates = []
, metaType = Nothing
, metaFormat = Nothing
, metaIds = []
, metaSource = Nothing
, metaLangs = []
, metaRelation = Nothing
, metaCoverage = Nothing
, metaRights = Nothing
}