diff --git a/toardb/timeseries/crud.py b/toardb/timeseries/crud.py
index f8dc8369fc2f2316621df35d02444bbfcf695d31..08131dd9aabeecedeb4b5063c5ad858b6b9e7a87 100644
--- a/toardb/timeseries/crud.py
+++ b/toardb/timeseries/crud.py
@@ -4,10 +4,11 @@ Create, Read, Update, Delete functionality
 
 """
 
+from sqlalchemy import insert
 from sqlalchemy.orm import Session
 from fastapi.responses import JSONResponse
 from . import models
-from .models import RS_enum, RC_enum
+from .models import RS_enum, RC_enum, timeseries_timeseries_roles_table
 from .schemas import TimeseriesCreate
 
 
@@ -24,11 +25,6 @@ def get_all_timeseries(db: Session, skip : int = 0, limit: int = None):
     for db_object in db_objects:
         # there is a mismatch with additional_metadata
         db_object.additional_metadata = str(db_object.additional_metadata)
-        # add roles (model does not have them!)
-        # do I need a second model?! (not related to the real database?!)
-        roles = get_role_ids_of_timeseries(db, int(db_object.id))
-        print("====================roles ==================", db_object.id, roles)
-    # now return for schema TimeseriesCore (model.Timeseries has no roles!)
     return db_objects
 
 
@@ -84,7 +80,7 @@ def create_timeseries(db: Session, timeseries: TimeseriesCreate):
     db.refresh(db_timeseries)
     # get timeseries_id
     timeseries_id = db_timeseries.id
-    # store roles and update associaton table
+    # store roles (and update associaton table?!)
     for r in roles_data:
         # try which format is used
         try:
@@ -100,11 +96,7 @@ def create_timeseries(db: Session, timeseries: TimeseriesCreate):
             db.commit()
             db.refresh(db_role)
             role_id = db_role.id
-        r['id'] = role_id
-        # now into associaton table!
-        db_assoc = models.TimeseriesTimeseriesRoles(timeseries_id=timeseries_id, role_id=role_id)
-        db.add(db_assoc)
+        # now into associaton table! --> This should be done automatically?!
+        db.execute(insert(timeseries_timeseries_roles_table).values(timeseries_id=timeseries_id, role_id=role_id))
         db.commit()
-        db.refresh(db_assoc)
-    setattr(db_timeseries,'roles',roles_data)
     return db_timeseries
diff --git a/toardb/timeseries/models.py b/toardb/timeseries/models.py
index 400dbd8a02c85a70313169d8fd8c891a12ad7170..956351353f397c20677b9ef995975a72eee2abb7 100644
--- a/toardb/timeseries/models.py
+++ b/toardb/timeseries/models.py
@@ -4,7 +4,7 @@ from sqlalchemy.ext.declarative import declarative_base
 from .models_core import (
         Timeseries,
         TimeseriesRole,
-        TimeseriesTimeseriesRoles,
+        timeseries_timeseries_roles_table,
         Base as TimeseriesBase)
 from .models_annotation import (
         TimeseriesAnnotation,
@@ -28,72 +28,6 @@ for declarative_base in [TimeseriesBase, TimeseriesAnnotationBase, TimeseriesPro
 
 Base.metadata = metadata
 
-"""
-Table "public.timeseries_timeseries_annotations"
-+---------------+---------+-----------+----------+---------+
-|    Column     |  Type   | Collation | Nullable | Default |
-+===============+=========+===========+==========+=========+
-| timeseries_id | integer |           | not null |         |
-+---------------+---------+-----------+----------+---------+
-| annotation_id | integer |           | not null |         |
-+---------------+---------+-----------+----------+---------+
-Indexes:
-    "timeseries_timeseries_annotations_pkey" PRIMARY KEY, btree (timeseries_id, annotation_id)
-Foreign-key constraints:
-    "timeseries_timeseries_annotations_annotation_id_fkey" FOREIGN KEY (annotation_id) REFERENCES timeseries_annotations(id)
-    "timeseries_timeseries_annotations_timeseries_id_fkey" FOREIGN KEY (timeseries_id) REFERENCES timeseries(id)
-"""
-##t_timeseries_timeseries_annotations = Table(
-##    'timeseries_timeseries_annotations', metadata,
-##    Column('timeseries_id', ForeignKey('timeseries.id'), primary_key=True, nullable=False),
-##    Column('annotation_id', ForeignKey('timeseries_annotations.id'), primary_key=True, nullable=False)
-##)
-
-"""
-Table "public.timeseries_timeseries_programmes"
-+---------------+---------+-----------+----------+---------+
-|    Column     |  Type   | Collation | Nullable | Default |
-+===============+=========+===========+==========+=========+
-| timeseries_id | integer |           | not null |         |
-+---------------+---------+-----------+----------+---------+
-| programme_id  | integer |           | not null |         |
-+---------------+---------+-----------+----------+---------+
-Indexes:
-    "timeseries_timeseries_programmes_pkey" PRIMARY KEY, btree (timeseries_id, programme_id)
-Foreign-key constraints:
-    "timeseries_timeseries_programmes_programme_id_fkey" FOREIGN KEY (programme_id) REFERENCES timeseries_programmes(id)
-    "timeseries_timeseries_programmes_timeseries_id_fkey" FOREIGN KEY (timeseries_id) REFERENCES timeseries(id)
-"""
-
-##t_timeseries_timeseries_programmes = Table(
-##    'timeseries_timeseries_programmes', metadata,
-##    Column('timeseries_id', ForeignKey('timeseries.id'), primary_key=True, nullable=False),
-##    Column('programme_id', ForeignKey('timeseries_programmes.id'), primary_key=True, nullable=False)
-##)
-
-## class TimeseriesTimeseriesRoles(Base):
-##     """
-##     Table "public.timeseries_timeseries_roles"
-##     +---------------+---------+-----------+----------+---------+
-##     |    Column     |  Type   | Collation | Nullable | Default |
-##     +===============+=========+===========+==========+=========+
-##     | timeseries_id | integer |           | not null |         |
-##     +---------------+---------+-----------+----------+---------+
-##     | role_id       | integer |           | not null |         |
-##     +---------------+---------+-----------+----------+---------+
-##     Indexes:
-##         "timeseries_timeseries_roles_pkey" PRIMARY KEY, btree (timeseries_id, role_id)
-##     Foreign-key constraints:
-##         "timeseries_timeseries_roles_role_id_fkey" FOREIGN KEY (role_id) REFERENCES timeseries_roles(id)
-##         "timeseries_timeseries_roles_timeseries_id_fkey" FOREIGN KEY (timeseries_id) REFERENCES timeseries(id)
-##    """
-
-##     __tablename__ = 'timeseries_timeseries_roles'
-
-##     timeseries_id = Column(Integer, ForeignKey(Timeseries.id), primary_key=True, nullable=False)
-##     role_id = Column(Integer, ForeignKey(TimeseriesRole.id), primary_key=True, nullable=False)
-
-
 # controlled vocabulary
 RS_enum = Table("rs_vocabulary",
                 metadata,
diff --git a/toardb/timeseries/models_core.py b/toardb/timeseries/models_core.py
index 1ac610f18169e7407d7e2a75202e95ce01ba2d25..cfac0b61713c96a7fbbeff16ef758187cfc567b8 100644
--- a/toardb/timeseries/models_core.py
+++ b/toardb/timeseries/models_core.py
@@ -20,53 +20,24 @@ metadata = Base.metadata
 # pytest does not accept strings within ForeignKey, relationship, ...
 # forward declarations
 # (because of now commented line with relationship
-class TimeseriesRole(Base):
-    __tablename__ = 'timeseries_roles'
-    id = Column(Integer, primary_key=True, server_default=text("nextval('timeseries_roles_id_seq'::regclass)"))
+#class TimeseriesRole(Base):
+#    __tablename__ = 'timeseries_roles'
+#    id = Column(Integer, primary_key=True, server_default=text("nextval('timeseries_roles_id_seq'::regclass)"))
 
-class Timeseries(Base):
-    __tablename__ = 'timeseries'
-    id = Column(Integer, primary_key=True, server_default=text("nextval('timeseries_id_seq'::regclass)"))
+#class Timeseries(Base):
+#    __tablename__ = 'timeseries'
+#    id = Column(Integer, primary_key=True, server_default=text("nextval('timeseries_id_seq'::regclass)"))
 
-##timeseries_timeseries_roles = Table('timeseries_timeseries_roles', Base.metadata,
-##    Column('timeseries_id', Integer, ForeignKey('public.timeseries.id')),
-##    Column('role_id', Integer, ForeignKey('public.timeseries_roles.id'))
-##)
+timeseries_timeseries_roles_table = Table('timeseries_timeseries_roles', Base.metadata,
+    Column('timeseries_id', Integer, ForeignKey('timeseries.id')),
+    Column('role_id', Integer, ForeignKey('timeseries_roles.id'))
+)
 
 #timeseries_timeseries_roles = Table('timeseries_timeseries_roles', Base.metadata,
 #    Column('timeseries_id', Integer, ForeignKey(Timeseries.id)),
 #    Column('role_id', Integer, ForeignKey(TimeseriesRole.id))
 #)
 
-class TimeseriesTimeseriesRoles(Base):
-   """
-   Table "public.timeseries_timeseries_roles"
-   +---------------+---------+-----------+----------+---------+
-   |    Column     |  Type   | Collation | Nullable | Default |
-   +===============+=========+===========+==========+=========+
-   | timeseries_id | integer |           | not null |         |
-   +---------------+---------+-----------+----------+---------+
-   | role_id       | integer |           | not null |         |
-   +---------------+---------+-----------+----------+---------+
-   Indexes:
-       "timeseries_timeseries_roles_pkey" PRIMARY KEY, btree (timeseries_id, role_id)
-   Foreign-key constraints:
-       "timeseries_timeseries_roles_role_id_fkey" FOREIGN KEY (role_id) REFERENCES timeseries_roles(id)
-       "timeseries_timeseries_roles_timeseries_id_fkey" FOREIGN KEY (timeseries_id) REFERENCES timeseries(id)
-   """
-
-   __tablename__ = 'timeseries_timeseries_roles'
-   __table_args__ = (
-       PrimaryKeyConstraint('timeseries_id', 'role_id'),
-   )
-#  timeseries_id = Column(ForeignKey(Timeseries.id, deferrable=True, initially='DEFERRED'))
-#  role_id = Column(ForeignKey(TimeseriesRole.id, deferrable=True, initially='DEFERRED'))
-   timeseries_id = Column(ForeignKey('timeseries.id', deferrable=True, initially='DEFERRED'))
-   role_id = Column(ForeignKey('timeseries_roles.id', deferrable=True, initially='DEFERRED'))
-##   timeseries = relationship(Timeseries, back_populates = 'roles')
-##   roles = relationship(TimeseriesRole, back_populates = 'timeseries')
-
-
 class TimeseriesRole(Base):
     """ Table "public.timeseries_roles"
 
@@ -113,7 +84,9 @@ class TimeseriesRole(Base):
 # how to reactivate the following line?!
 #   timeseries_id = Column(Integer, ForeignKey(Timeseries.id), nullable=False)
 #   timeseries = relationship(Timeseries, secondary=timeseries_timeseries_roles, backref="timeseries")
-    timeseries = relationship(Timeseries, secondary=TimeseriesTimeseriesRoles.__table__, backref="timeseries")
+    timeseries = relationship("Timeseries",
+        secondary=timeseries_timeseries_roles_table,
+        backref="roles")
 
 
 
@@ -180,8 +153,6 @@ class Timeseries(Base):
         CheckConstraint('aggregation >= 0'),
         CheckConstraint('sampling_frequency >= 0'),
         UniqueConstraint('station_id', 'variable_id', 'label'),
-        {'schema': 'public',
-         'extend_existing': True}
     )
 
     id = Column(Integer, primary_key=True, server_default=text("nextval('timeseries_id_seq'::regclass)"))
diff --git a/toardb/timeseries/timeseries.py b/toardb/timeseries/timeseries.py
index 52d6b1cc6cba49545836ae25cb92c4279739f565..8c0fa82db69367c7fd4cd96b86545eb82f0ed1ba 100644
--- a/toardb/timeseries/timeseries.py
+++ b/toardb/timeseries/timeseries.py
@@ -23,7 +23,7 @@ def get_db():
 # plain views to post and get timeseries
 
 #get all entries of table timeseries
-@router.get('/timeseries/', response_model=List[schemas.TimeseriesCore])
+@router.get('/timeseries/', response_model=List[schemas.Timeseries])
 def get_all_timeseries(skip: int = 0, limit: int = None, db: Session = Depends(get_db)):
     timeseries = crud.get_all_timeseries(db, skip=skip, limit=limit)
     return timeseries