HaXml-1.25.5: Utilities for manipulating XML documents

Safe Haskell | Safe
Language | Haskell98

Text.XML.HaXml.Schema.Environment

Synopsis

- data Environment = Environment {
  - env_type :: Map QName (Either SimpleType ComplexType)
  - env_allTypes :: Map QName (Either SimpleType ComplexType)
  - env_element :: Map QName ElementDecl
  - env_attribute :: Map QName AttributeDecl
  - env_group :: Map QName Group
  - env_attrgroup :: Map QName AttrGroup
  - env_namespace :: Map String String
  - env_extendty :: Map QName [(QName, FilePath)]
  - env_substGrp :: Map QName [(QName, FilePath)]
  - env_typeloc :: Map QName FilePath
  }
- emptyEnv :: Environment
- combineEnv :: Environment -> Environment -> Environment
- mkEnvironment :: FilePath -> Schema -> Environment -> Environment
- gatherImports :: Schema -> [(FilePath, Maybe String)]

# Documentation

data Environment #

Constructors

Environment |

Fields

- env_type :: Map QName (Either SimpleType ComplexType)

  type definitions in scope

- env_allTypes :: Map QName (Either SimpleType ComplexType)

  all type definitions, regardless of scope

- env_element :: Map QName ElementDecl
- env_attribute :: Map QName AttributeDecl
- env_group :: Map QName Group
- env_attrgroup :: Map QName AttrGroup
- env_namespace :: Map String String
- env_extendty :: Map QName [(QName, FilePath)]

  supertype -> subtypes

- env_substGrp :: Map QName [(QName, FilePath)]

  substitution groups

- env_typeloc :: Map QName FilePath

  where type is defined

emptyEnv :: Environment #

An empty environment of XSD type mappings.

combineEnv :: Environment -> Environment -> Environment #

Combine two environments (e.g. read from different interface files)

mkEnvironment :: FilePath -> Schema -> Environment -> Environment #

Build an environment of XSD type mappings from a schema module.

gatherImports :: Schema -> [(FilePath, Maybe String)] #

Find all direct module dependencies.