/* -*- c++ -*- */
#ifndef AKAXISO_CLASSES_ANY_H__
#define AKAXISO_CLASSES_ANY_H__

#include <akaxiso/classes/qname.h>
#include <vector>

namespace aka2 {

  /** any attribute class */
  struct any_attribute {
    any_attribute(){}
    any_attribute(const qname &name, const std::string &value) 
      : name_(name), value_(value) {}
    qname name_;
    std::string value_;
  };
  typedef std::vector<any_attribute> any_attributes;

  struct any {
    qname name_;
    any_attributes attributes_;
    std::string value_;
    std::vector<any> children_; 
  };

  typedef std::vector<any> any_array; 

}

#endif
