API Reference Smee v0.1.0

Modules

Smee is a pragmatic library for handling SAML metadata with Elixir, Erlang or any other BEAM language.

Smee wraps up metadata for individual entities in %Entity{} structs, and the Smee.Entity module contains functions that may be useful when working with them.

Processes %Metadata{} structs to extract various information, usually using XSLT.

Downloads or loads the metadata specified in a %Smee.Source{} struct and returns a %Smee.Metadata{} struct.

Process a stream of entities to include or exclude entity structs matching the specified criteria.

Lint runs basic XML quality checks against XML strings

Smee.MDQ provides a client API to MDQ services, and also attempts to emulate MDQ-style behaviour with old-fashioned metadata aggregates. MDQ allows individual entities to be looked up when needed without downloading and processing an increasingly enormous metadata aggregate file.

The Metadata module wraps up Metadata XML into a struct and contains functions that may be helpful when working with them. The metadata is either an aggregate (as used by federations to contain many entity records) or a single entity.

Publish exports streams or lists of entity structs into various formats.

Defines sources for metadata, which can then be Fetched and prodoce Metadata structs. Source structs are the usual starting-place for Smee tasks.

A collection of simple statistics tools that use streams of entity structs (and maybe lists)

Tools for manipulating metadata XML.