citeproc-hs-0.3.2: A Citation Style Language implementation in Haskell

Portabilityunportable
Stabilityunstable
MaintainerAndrea Rossato <andrea.rossato@unitn.it>

Text.CSL.Style

Description

The Style types

Synopsis

Documentation

data Style Source

The representation of a parsed CSL style.

mergeLocales :: String -> Locale -> [Locale] -> [Locale]Source

With the defaultLocale, the locales-xx-XX.xml loaded file and the parsed Style cs:locale elements, produce the final Locale as the only element of a list, taking into account CSL locale prioritization.

data Citation Source

Constructors

Citation 

Fields

citOptions :: [Option]
 
citSort :: [Sort]
 
citLayout :: Layout
 

data Bibliography Source

Constructors

Bibliography 

Fields

bibOptions :: [Option]
 
bibSort :: [Sort]
 
bibLayout :: Layout
 

data Layout Source

Constructors

Layout 

data Match Source

Constructors

Any 
All 
None 

data Plural Source

Constructors

Contextual 
Always 
Never 

data FormattedOutput Source

The formatted output, produced after post-processing the evaluated citations.

data Output Source

The Output generated by the evaluation of a style. Must be further processed for disambiguation and collapsing.

Constructors

ONull 
OSpace 
OPan [Inline] 
ODel String

A delimiter string.

OStr String Formatting

A simple String

ONum Int Formatting

A number (used to count contributors)

OCitNum Int Formatting

The citation number

OYear String String Formatting

The year and the citeId

OYearSuf String String [Output] Formatting

The year suffix, the citeId and a holder for collision data

OName String [Output] [[Output]] Formatting

A (family) name with the list of given names.

OContrib String String [Output] [Output] [[Output]]

The citation key, the role (author, editor, etc.), the contributor(s), the output needed for year suf. disambiguation, and everything used for name disambiguation.

Output [Output] Formatting

Some nested Output

data CitationGroup Source

A citation group: a list of evaluated citations, the Formatting to be applied to them, and the Delimiter between individual citations.

Constructors

CG [(Cite, Output)] Formatting Delimiter [(Cite, Output)] 

data BiblioData Source

Constructors

BD 

data CiteData Source

A record with all the data to produce the FormattedOutput of a citation: the citation key, the part of the citation that may be colliding with other citations (the list of contributors for the same year), the data to disambiguate it (all possible contributors and all possible given names), and the disambiguated citation and its year.

Constructors

CD 

formatOutput :: Output -> FormattedOutputSource

Convert evaluated Output into FormattedOutput, ready for the output filters.

mapGroupOutput :: (Output -> [a]) -> CitationGroup -> [a]Source

Map the evaluated output of a citation group.

proc :: (Typeable a, Data b) => (a -> a) -> b -> bSource

A generic processing function.

proc' :: (Typeable a, Data b) => (a -> a) -> b -> bSource

A generic processing function: process a data structure in top-down manner.

query :: (Typeable a, Data b) => (a -> [c]) -> b -> [c]Source

A generic query function.

rmGivenNames :: Output -> OutputSource

Removes all given names form a OName element with proc.

rmContribs :: Output -> OutputSource

Removes all contributors' names.

addGivenNames :: [Output] -> [Output]Source

Add, with proc, a give name to the family name. Needed for disambiguation.

addYearSuffix :: Output -> OutputSource

Add the year suffix to the year. Needed for disambiguation.

betterThen :: Eq a => [a] -> [a] -> [a]Source