void IfcOrganizationRelationship::getAttributes( std::vector<std::pair<std::string, shared_ptr<IfcPPObject> > >& vec_attributes )
{
	IfcResourceLevelRelationship::getAttributes( vec_attributes );
	vec_attributes.push_back( std::make_pair( "RelatingOrganization", m_RelatingOrganization ) );
	if( m_RelatedOrganizations.size() > 0 )
	{
		shared_ptr<IfcPPAttributeObjectVector> RelatedOrganizations_vec_object( new  IfcPPAttributeObjectVector() );
		std::copy( m_RelatedOrganizations.begin(), m_RelatedOrganizations.end(), std::back_inserter( RelatedOrganizations_vec_object->m_vec ) );
		vec_attributes.push_back( std::make_pair( "RelatedOrganizations", RelatedOrganizations_vec_object ) );
	}
}
void IfcOrganizationRelationship::getAttributes( std::vector<std::pair<std::string, shared_ptr<BuildingObject> > >& vec_attributes ) const
{
	IfcResourceLevelRelationship::getAttributes( vec_attributes );
	vec_attributes.emplace_back( std::make_pair( "RelatingOrganization", m_RelatingOrganization ) );
	if( !m_RelatedOrganizations.empty() )
	{
		shared_ptr<AttributeObjectVector> RelatedOrganizations_vec_object( new AttributeObjectVector() );
		std::copy( m_RelatedOrganizations.begin(), m_RelatedOrganizations.end(), std::back_inserter( RelatedOrganizations_vec_object->m_vec ) );
		vec_attributes.emplace_back( std::make_pair( "RelatedOrganizations", RelatedOrganizations_vec_object ) );
	}
}