## Struct schema_creator

zeep::xml::schema_creator — schema_creator is used by zeep::dispatcher to create schema files.

## Synopsis

    // In header: <zeep/xml/serialize.hpp>

    struct schema_creator {
      // construct/copy/destruct
      schema_creator(type_map &, element &);

      // public member functions
      template<typename T>
        schema_creator & operator&(const name_value_pair< T > &);
      template<typename T> schema_creator & operator&(const element_nvp< T > &);
      template<typename T> schema_creator & operator&(const attribute_nvp< T > &);
      template<typename T> schema_creator & add_element(const char *, const T &);
      template<typename T> schema_creator & add_attribute(const char *, const T &);

      // public data members
      element & m_node;
      type_map & m_types;
      std::string m_prefix;
    };

## Description

### `schema_creator` public construct/copy/destruct

1.     schema_creator(type_map & types, element & node);

### `schema_creator` public member functions

1.     template<typename T>
         schema_creator & operator&(const name_value_pair< T > & rhs);

2.     template<typename T> schema_creator & operator&(const element_nvp< T > & rhs);

3.     template<typename T>
         schema_creator & operator&(const attribute_nvp< T > & rhs);

4.     template<typename T>
         schema_creator & add_element(const char * name, const T & value);

5.     template<typename T>
         schema_creator & add_attribute(const char * name, const T & value);