
// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-

#ifndef __javax_xml_XMLConstants__
#define __javax_xml_XMLConstants__

#pragma interface

#include <java/lang/Object.h>
extern "Java"
{
  namespace javax
  {
    namespace xml
    {
        class XMLConstants;
    }
  }
}

class javax::xml::XMLConstants : public ::java::lang::Object
{

  XMLConstants();
public:
  static ::java::lang::String * NULL_NS_URI;
  static ::java::lang::String * DEFAULT_NS_PREFIX;
  static ::java::lang::String * XML_NS_URI;
  static ::java::lang::String * XML_NS_PREFIX;
  static ::java::lang::String * XMLNS_ATTRIBUTE_NS_URI;
  static ::java::lang::String * XMLNS_ATTRIBUTE;
  static ::java::lang::String * W3C_XML_SCHEMA_NS_URI;
  static ::java::lang::String * W3C_XML_SCHEMA_INSTANCE_NS_URI;
  static ::java::lang::String * W3C_XPATH_DATATYPE_NS_URI;
  static ::java::lang::String * XML_DTD_NS_URI;
  static ::java::lang::String * RELAXNG_NS_URI;
  static ::java::lang::String * FEATURE_SECURE_PROCESSING;
  static ::java::lang::Class class$;
};

#endif // __javax_xml_XMLConstants__
