#ifndef  ENTITY_SDAIADDRESS_H
#define  ENTITY_SDAIADDRESS_H

// This file was generated by exp2cxx,
// 0.8.1.
// You probably don't want to edit it since your modifications
// will be lost if exp2cxx is used to regenerate it.

class SC_SCHEMA_EXPORT SdaiAddress : public SDAI_Application_instance {
    protected:
        SDAI_String _internal_location;    //  OPTIONAL
        SDAI_String _street_number;    //  OPTIONAL
        SDAI_String _street;    //  OPTIONAL
        SDAI_String _postal_box;    //  OPTIONAL
        SDAI_String _town;    //  OPTIONAL
        SDAI_String _region;    //  OPTIONAL
        SDAI_String _postal_code;    //  OPTIONAL
        SDAI_String _country;    //  OPTIONAL
        SDAI_String _facsimile_number;    //  OPTIONAL
        SDAI_String _telephone_number;    //  OPTIONAL
        SDAI_String _electronic_mail_address;    //  OPTIONAL
        SDAI_String _telex_number;    //  OPTIONAL
    public: 
        SdaiAddress();
        SdaiAddress( SDAI_Application_instance *se, bool addAttrs = true );
        SdaiAddress( SdaiAddress & e );
        ~SdaiAddress();
        int opcode() {
            return 290;
        }
  const SdaiLabel   internal_location_() const;
        SdaiLabel   internal_location_();
        void internal_location_( const SdaiLabel x );

  const SdaiLabel   street_number_() const;
        SdaiLabel   street_number_();
        void street_number_( const SdaiLabel x );

  const SdaiLabel   street_() const;
        SdaiLabel   street_();
        void street_( const SdaiLabel x );

  const SdaiLabel   postal_box_() const;
        SdaiLabel   postal_box_();
        void postal_box_( const SdaiLabel x );

  const SdaiLabel   town_() const;
        SdaiLabel   town_();
        void town_( const SdaiLabel x );

  const SdaiLabel   region_() const;
        SdaiLabel   region_();
        void region_( const SdaiLabel x );

  const SdaiLabel   postal_code_() const;
        SdaiLabel   postal_code_();
        void postal_code_( const SdaiLabel x );

  const SdaiLabel   country_() const;
        SdaiLabel   country_();
        void country_( const SdaiLabel x );

  const SdaiLabel   facsimile_number_() const;
        SdaiLabel   facsimile_number_();
        void facsimile_number_( const SdaiLabel x );

  const SdaiLabel   telephone_number_() const;
        SdaiLabel   telephone_number_();
        void telephone_number_( const SdaiLabel x );

  const SdaiLabel   electronic_mail_address_() const;
        SdaiLabel   electronic_mail_address_();
        void electronic_mail_address_( const SdaiLabel x );

  const SdaiLabel   telex_number_() const;
        SdaiLabel   telex_number_();
        void telex_number_( const SdaiLabel x );

};

inline SdaiAddress * create_SdaiAddress() {
    return new SdaiAddress;
}

void init_SdaiAddress(Registry& reg);

namespace ap210_electronic_assembly_interconnect_and_packaging_design_mim_lf {
    extern EntityDescriptor *e_address;
    extern AttrDescriptor *a_338internal_location;
    extern AttrDescriptor *a_339street_number;
    extern AttrDescriptor *a_340street;
    extern AttrDescriptor *a_341postal_box;
    extern AttrDescriptor *a_342town;
    extern AttrDescriptor *a_343region;
    extern AttrDescriptor *a_344postal_code;
    extern AttrDescriptor *a_345country;
    extern AttrDescriptor *a_346facsimile_number;
    extern AttrDescriptor *a_347telephone_number;
    extern AttrDescriptor *a_348electronic_mail_address;
    extern AttrDescriptor *a_349telex_number;
    extern Derived_attribute *a_350Dname;
    extern Derived_attribute *a_351Durl;
}

#endif
