atom-conduit-0.9.0.1: Streaming parser/renderer for the Atom 1.0 standard (RFC 4287).
Safe HaskellNone
LanguageHaskell2010

Text.Atom.Types

Description

Atom is an XML-based Web content and metadata syndication format.

Example:

<?xml version="1.0" encoding="utf-8"?>
<feed xmlns="http://www.w3.org/2005/Atom">

  <title>Example Feed</title>
  <link href="http://example.org/"/>
  <updated>2003-12-13T18:30:02Z</updated>
  <author>
    <name>John Doe</name>
  </author>
  <id>urn:uuid:60a76c80-d399-11d9-b93C-0003939e0af6</id>

  <entry>
    <title>Atom-Powered Robots Run Amok</title>
    <link href="http://example.org/2003/12/13/atom03"/>
    <id>urn:uuid:1225c695-cfb8-4ebb-aaaa-80da344efa6a</id>
    <updated>2003-12-13T18:30:02Z</updated>
    <summary>Some text.</summary>
  </entry>

</feed>
Synopsis

Documentation

data AtomFeed Source #

The atom:feed element.

Instances

Instances details
Eq AtomFeed Source # 
Instance details

Defined in Text.Atom.Types

Ord AtomFeed Source # 
Instance details

Defined in Text.Atom.Types

Show AtomFeed Source # 
Instance details

Defined in Text.Atom.Types

Generic AtomFeed Source # 
Instance details

Defined in Text.Atom.Types

Associated Types

type Rep AtomFeed :: Type -> Type #

Methods

from :: AtomFeed -> Rep AtomFeed x #

to :: Rep AtomFeed x -> AtomFeed #

type Rep AtomFeed Source # 
Instance details

Defined in Text.Atom.Types

type Rep AtomFeed = D1 ('MetaData "AtomFeed" "Text.Atom.Types" "atom-conduit-0.9.0.1-DzczPgipuiZGSxOaZnzvCe" 'False) (C1 ('MetaCons "AtomFeed" 'PrefixI 'True) (((S1 ('MetaSel ('Just "feedAuthors") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 [AtomPerson]) :*: (S1 ('MetaSel ('Just "feedCategories") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 [AtomCategory]) :*: S1 ('MetaSel ('Just "feedContributors") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 [AtomPerson]))) :*: (S1 ('MetaSel ('Just "feedEntries") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 [AtomEntry]) :*: (S1 ('MetaSel ('Just "feedGenerator") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe AtomGenerator)) :*: S1 ('MetaSel ('Just "feedIcon") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe AtomURI))))) :*: ((S1 ('MetaSel ('Just "feedId") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Text) :*: (S1 ('MetaSel ('Just "feedLinks") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 [AtomLink]) :*: S1 ('MetaSel ('Just "feedLogo") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe AtomURI)))) :*: ((S1 ('MetaSel ('Just "feedRights") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe AtomText)) :*: S1 ('MetaSel ('Just "feedSubtitle") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe AtomText))) :*: (S1 ('MetaSel ('Just "feedTitle") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 AtomText) :*: S1 ('MetaSel ('Just "feedUpdated") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 UTCTime))))))

data AtomEntry Source #

The atom:entry element.

Instances

Instances details
Eq AtomEntry Source # 
Instance details

Defined in Text.Atom.Types

Ord AtomEntry Source # 
Instance details

Defined in Text.Atom.Types

Show AtomEntry Source # 
Instance details

Defined in Text.Atom.Types

Generic AtomEntry Source # 
Instance details

Defined in Text.Atom.Types

Associated Types

type Rep AtomEntry :: Type -> Type #

type Rep AtomEntry Source # 
Instance details

Defined in Text.Atom.Types

type Rep AtomEntry = D1 ('MetaData "AtomEntry" "Text.Atom.Types" "atom-conduit-0.9.0.1-DzczPgipuiZGSxOaZnzvCe" 'False) (C1 ('MetaCons "AtomEntry" 'PrefixI 'True) (((S1 ('MetaSel ('Just "entryAuthors") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 [AtomPerson]) :*: (S1 ('MetaSel ('Just "entryCategories") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 [AtomCategory]) :*: S1 ('MetaSel ('Just "entryContent") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe AtomContent)))) :*: (S1 ('MetaSel ('Just "entryContributors") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 [AtomPerson]) :*: (S1 ('MetaSel ('Just "entryId") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Text) :*: S1 ('MetaSel ('Just "entryLinks") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 [AtomLink])))) :*: ((S1 ('MetaSel ('Just "entryPublished") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe UTCTime)) :*: (S1 ('MetaSel ('Just "entryRights") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe AtomText)) :*: S1 ('MetaSel ('Just "entrySource") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe AtomSource)))) :*: (S1 ('MetaSel ('Just "entrySummary") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe AtomText)) :*: (S1 ('MetaSel ('Just "entryTitle") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 AtomText) :*: S1 ('MetaSel ('Just "entryUpdated") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 UTCTime))))))

data AtomContent Source #

The atom:content element.

Instances

Instances details
Eq AtomContent Source # 
Instance details

Defined in Text.Atom.Types

Ord AtomContent Source # 
Instance details

Defined in Text.Atom.Types

Show AtomContent Source # 
Instance details

Defined in Text.Atom.Types

Generic AtomContent Source # 
Instance details

Defined in Text.Atom.Types

Associated Types

type Rep AtomContent :: Type -> Type #

type Rep AtomContent Source # 
Instance details

Defined in Text.Atom.Types

data AtomSource Source #

The atom:source element.

Instances

Instances details
Eq AtomSource Source # 
Instance details

Defined in Text.Atom.Types

Ord AtomSource Source # 
Instance details

Defined in Text.Atom.Types

Show AtomSource Source # 
Instance details

Defined in Text.Atom.Types

Generic AtomSource Source # 
Instance details

Defined in Text.Atom.Types

Associated Types

type Rep AtomSource :: Type -> Type #

type Rep AtomSource Source # 
Instance details

Defined in Text.Atom.Types

type Rep AtomSource = D1 ('MetaData "AtomSource" "Text.Atom.Types" "atom-conduit-0.9.0.1-DzczPgipuiZGSxOaZnzvCe" 'False) (C1 ('MetaCons "AtomSource" 'PrefixI 'True) (((S1 ('MetaSel ('Just "sourceAuthors") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 [AtomPerson]) :*: (S1 ('MetaSel ('Just "sourceCategories") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 [AtomCategory]) :*: S1 ('MetaSel ('Just "sourceContributors") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 [AtomPerson]))) :*: (S1 ('MetaSel ('Just "sourceGenerator") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe AtomGenerator)) :*: (S1 ('MetaSel ('Just "sourceIcon") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe AtomURI)) :*: S1 ('MetaSel ('Just "sourceId") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Text)))) :*: ((S1 ('MetaSel ('Just "sourceLinks") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 [AtomLink]) :*: (S1 ('MetaSel ('Just "sourceLogo") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe AtomURI)) :*: S1 ('MetaSel ('Just "sourceRights") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe AtomText)))) :*: (S1 ('MetaSel ('Just "sourceSubtitle") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe AtomText)) :*: (S1 ('MetaSel ('Just "sourceTitle") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe AtomText)) :*: S1 ('MetaSel ('Just "sourceUpdated") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe UTCTime)))))))

data AtomGenerator Source #

The atom:generator element.

Instances

Instances details
Eq AtomGenerator Source # 
Instance details

Defined in Text.Atom.Types

Ord AtomGenerator Source # 
Instance details

Defined in Text.Atom.Types

Show AtomGenerator Source # 
Instance details

Defined in Text.Atom.Types

Generic AtomGenerator Source # 
Instance details

Defined in Text.Atom.Types

Associated Types

type Rep AtomGenerator :: Type -> Type #

type Rep AtomGenerator Source # 
Instance details

Defined in Text.Atom.Types

type Rep AtomGenerator = D1 ('MetaData "AtomGenerator" "Text.Atom.Types" "atom-conduit-0.9.0.1-DzczPgipuiZGSxOaZnzvCe" 'False) (C1 ('MetaCons "AtomGenerator" 'PrefixI 'True) (S1 ('MetaSel ('Just "generatorUri") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe AtomURI)) :*: (S1 ('MetaSel ('Just "generatorVersion") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Text) :*: S1 ('MetaSel ('Just "generatorContent") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Refined (Not Null) Text)))))

data AtomLink Source #

The atom:link element.

Instances

data AtomCategory Source #

The atom:category element.

Instances

Instances details
Eq AtomCategory Source # 
Instance details

Defined in Text.Atom.Types

Ord AtomCategory Source # 
Instance details

Defined in Text.Atom.Types

Show AtomCategory Source # 
Instance details

Defined in Text.Atom.Types

Generic AtomCategory Source # 
Instance details

Defined in Text.Atom.Types

Associated Types

type Rep AtomCategory :: Type -> Type #

type Rep AtomCategory Source # 
Instance details

Defined in Text.Atom.Types

type Rep AtomCategory = D1 ('MetaData "AtomCategory" "Text.Atom.Types" "atom-conduit-0.9.0.1-DzczPgipuiZGSxOaZnzvCe" 'False) (C1 ('MetaCons "AtomCategory" 'PrefixI 'True) (S1 ('MetaSel ('Just "categoryTerm") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Refined (Not Null) Text)) :*: (S1 ('MetaSel ('Just "categoryScheme") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Text) :*: S1 ('MetaSel ('Just "categoryLabel") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Text))))

data AtomPerson Source #

An atom person construct.

Instances

Instances details
Eq AtomPerson Source # 
Instance details

Defined in Text.Atom.Types

Ord AtomPerson Source # 
Instance details

Defined in Text.Atom.Types

Show AtomPerson Source # 
Instance details

Defined in Text.Atom.Types

Generic AtomPerson Source # 
Instance details

Defined in Text.Atom.Types

Associated Types

type Rep AtomPerson :: Type -> Type #

type Rep AtomPerson Source # 
Instance details

Defined in Text.Atom.Types

type Rep AtomPerson = D1 ('MetaData "AtomPerson" "Text.Atom.Types" "atom-conduit-0.9.0.1-DzczPgipuiZGSxOaZnzvCe" 'False) (C1 ('MetaCons "AtomPerson" 'PrefixI 'True) (S1 ('MetaSel ('Just "personName") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Refined (Not Null) Text)) :*: (S1 ('MetaSel ('Just "personEmail") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Text) :*: S1 ('MetaSel ('Just "personUri") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe AtomURI)))))

data AtomText Source #

An atom text construct.

Instances

Instances details
Eq AtomText Source # 
Instance details

Defined in Text.Atom.Types

Ord AtomText Source # 
Instance details

Defined in Text.Atom.Types

Show AtomText Source # 
Instance details

Defined in Text.Atom.Types

Generic AtomText Source # 
Instance details

Defined in Text.Atom.Types

Associated Types

type Rep AtomText :: Type -> Type #

Methods

from :: AtomText -> Rep AtomText x #

to :: Rep AtomText x -> AtomText #

type Rep AtomText Source # 
Instance details

Defined in Text.Atom.Types

data TextType Source #

Constructors

TypeText 
TypeHTML 

Instances

Instances details
Eq TextType Source # 
Instance details

Defined in Text.Atom.Types

Ord TextType Source # 
Instance details

Defined in Text.Atom.Types

Show TextType Source # 
Instance details

Defined in Text.Atom.Types

Generic TextType Source # 
Instance details

Defined in Text.Atom.Types

Associated Types

type Rep TextType :: Type -> Type #

Methods

from :: TextType -> Rep TextType x #

to :: Rep TextType x -> TextType #

type Rep TextType Source # 
Instance details

Defined in Text.Atom.Types

type Rep TextType = D1 ('MetaData "TextType" "Text.Atom.Types" "atom-conduit-0.9.0.1-DzczPgipuiZGSxOaZnzvCe" 'False) (C1 ('MetaCons "TypeText" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "TypeHTML" 'PrefixI 'False) (U1 :: Type -> Type))

data AtomURI Source #

Constructors

forall a. AtomURI (URIRef a) 

Instances

Instances details
Eq AtomURI Source # 
Instance details

Defined in Text.Atom.Types

Methods

(==) :: AtomURI -> AtomURI -> Bool #

(/=) :: AtomURI -> AtomURI -> Bool #

Ord AtomURI Source # 
Instance details

Defined in Text.Atom.Types

Show AtomURI Source # 
Instance details

Defined in Text.Atom.Types

data Null Source #

Predicate on Text, true iff text is null.

Instances

Instances details
Predicate Null Text Source # 
Instance details

Defined in Text.Atom.Types

withAtomURI :: (forall a. URIRef a -> b) -> AtomURI -> b Source #