1 Project PostgreSQL @ DbSchema.com Layout Default Column comments as mouse-over tooltips. current_nodes_ways_relations gpx_file_tags users nodes_ways_relations schema_migrations changes Fk client_applications_user_id_fkey client_applications ref users ( user_id -> id ) user_id Fk current_node_tags_id_fkey current_node_tags ref current_nodes ( node_id -> id ) node_id Fk current_nodes_changeset_id_fkey current_nodes ref changesets ( changeset_id -> id ) changeset_id Fk current_relation_members_id_fkey current_relation_members ref current_relations ( relation_id -> id ) relation_id Fk current_way_nodes_node_id_fkey current_way_nodes ref current_nodes ( node_id -> id ) node_id Fk current_way_nodes_id_fkey current_way_nodes ref current_ways ( way_id -> id ) way_id Fk current_way_tags_id_fkey current_way_tags ref current_ways ( way_id -> id ) way_id Fk current_ways_changeset_id_fkey current_ways ref changesets ( changeset_id -> id ) changeset_id Fk diary_comments_diary_entry_id_fkey diary_comments ref diary_entries ( diary_entry_id -> id ) diary_entry_id Fk diary_comments_user_id_fkey diary_comments ref users ( user_id -> id ) user_id Fk diary_entries_language_code_fkey diary_entries ref languages ( language_code -> code ) language_code Fk diary_entries_user_id_fkey diary_entries ref users ( user_id -> id ) user_id Fk friends_friend_user_id_fkey friends ref users ( friend_user_id -> id ) friend_user_id Fk friends_user_id_fkey friends ref users ( user_id -> id ) user_id Fk gps_points_gpx_id_fkey gps_points ref gpx_files ( gpx_id -> id ) gpx_id Fk gpx_file_tags_gpx_id_fkey gpx_file_tags ref gpx_files ( gpx_id -> id ) gpx_id Fk gpx_files_user_id_fkey gpx_files ref users ( user_id -> id ) user_id Fk messages_from_user_id_fkey messages ref users ( from_user_id -> id ) from_user_id Fk messages_to_user_id_fkey messages ref users ( to_user_id -> id ) to_user_id Fk node_tags_id_fkey node_tags ref nodes ( node_id, version ) node_id,version Fk nodes_changeset_id_fkey nodes ref changesets ( changeset_id -> id ) changeset_id Fk nodes_redaction_id_fkey nodes ref redactions ( redaction_id -> id ) redaction_id Fk note_comments_note_id_fkey note_comments ref notes ( note_id -> id ) note_id Fk note_comments_author_id_fkey note_comments ref users ( author_id -> id ) author_id Fk relation_members_id_fkey relation_members ref relations ( relation_id, version ) relation_id,version Fk relation_tags_id_fkey relation_tags ref relations ( relation_id, version ) relation_id,version Fk relations_changeset_id_fkey relations ref changesets ( changeset_id -> id ) changeset_id Fk relations_redaction_id_fkey relations ref redactions ( redaction_id -> id ) redaction_id Fk user_preferences_user_id_fkey user_preferences ref users ( user_id -> id ) user_id Fk way_tags_id_fkey way_tags ref ways ( way_id, version ) way_id,version Fk user_roles_granter_id_fkey user_roles ref users ( granter_id -> id ) granter_id Fk user_blocks_moderator_id_fkey user_blocks ref users ( creator_id -> id ) creator_id Fk user_blocks_revoker_id_fkey user_blocks ref users ( revoker_id -> id ) revoker_id Fk user_blocks_user_id_fkey user_blocks ref users ( user_id -> id ) user_id Fk way_nodes_id_fkey way_nodes ref ways ( way_id, version ) way_id,version Fk changesets_user_id_fkey changesets ref users ( user_id -> id ) user_id Fk changeset_tags_id_fkey changeset_tags ref changesets ( changeset_id -> id ) changeset_id Fk redactions_user_id_fkey redactions ref users ( user_id -> id ) user_id Fk oauth_tokens_client_application_id_fkey oauth_tokens ref client_applications ( client_application_id -> id ) client_application_id Fk oauth_tokens_user_id_fkey oauth_tokens ref users ( user_id -> id ) user_id Fk current_relation_tags_id_fkey current_relation_tags ref current_relations ( relation_id -> id ) relation_id Fk ways_changeset_id_fkey ways ref changesets ( changeset_id -> id ) changeset_id Fk ways_redaction_id_fkey ways ref redactions ( redaction_id -> id ) redaction_id client_applicationsTable public.client_applications Pk client_applications_pkey ( id ) idid * serial Referred by oauth_tokens ( client_application_id -> id ) namename varchar(255) urlurl varchar(255) support_urlsupport_url varchar(255) callback_urlcallback_url varchar(255) Unq index_client_applications_on_key ( key ) keykey varchar(50) secretsecret varchar(50) user_iduser_id integer References users ( user_id -> id ) created_atcreated_at timestamp updated_atupdated_at timestamp allow_read_prefsallow_read_prefs * bool default false allow_write_prefsallow_write_prefs * bool default false allow_write_diaryallow_write_diary * bool default false allow_write_apiallow_write_api * bool default false allow_read_gpxallow_read_gpx * bool default false allow_write_gpxallow_write_gpx * bool default false allow_write_notesallow_write_notes * bool default false current_node_tagsTable public.current_node_tags Pk current_node_tags_pkey ( node_id, k ) node_idnode_id * bigint References current_nodes ( node_id -> id ) Pk current_node_tags_pkey ( node_id, k ) kk * varchar(255) default ''::character varying vv * varchar(255) default ''::character varying current_nodesTable public.current_nodes Pk current_nodes_pkey1 ( id ) idid * bigserial Referred by current_node_tags ( node_id -> id ) Referred by current_way_nodes ( node_id -> id ) latitudelatitude * integer longitudelongitude * integer changeset_idchangeset_id * bigint References changesets ( changeset_id -> id ) visiblevisible * bool current_nodes_timestamp_idx ( timestamp ) timestamptimestamp * timestamp current_nodes_tile_idx ( tile ) tiletile * bigint versionversion * bigint current_relation_membersTable public.current_relation_members Pk current_relation_members_pkey ( relation_id, member_type, member_id, member_role, sequence_id ) relation_idrelation_id * bigint References current_relations ( relation_id -> id ) Pk current_relation_members_pkey ( relation_id, member_type, member_id, member_role, sequence_id ) current_relation_members_member_idx ( member_type, member_id ) member_typemember_type * nwr_enum Pk current_relation_members_pkey ( relation_id, member_type, member_id, member_role, sequence_id ) current_relation_members_member_idx ( member_type, member_id ) member_idmember_id * bigint Pk current_relation_members_pkey ( relation_id, member_type, member_id, member_role, sequence_id ) member_rolemember_role * varchar(255) Pk current_relation_members_pkey ( relation_id, member_type, member_id, member_role, sequence_id ) sequence_idsequence_id * integer default 0 current_relationsTable public.current_relations Pk current_relations_pkey ( id ) idid * bigserial Referred by current_relation_members ( relation_id -> id ) Referred by current_relation_tags ( relation_id -> id ) changeset_idchangeset_id * bigint References changesets ( changeset_id -> id ) current_relations_timestamp_idx ( timestamp ) timestamptimestamp * timestamp visiblevisible * bool versionversion * bigint current_way_nodesTable public.current_way_nodes Pk current_way_nodes_pkey ( way_id, sequence_id ) way_idway_id * bigint References current_ways ( way_id -> id ) Pk current_way_nodes_pkey ( way_id, sequence_id ) sequence_idsequence_id * bigint current_way_nodes_node_idx ( node_id ) node_idnode_id * bigint References current_nodes ( node_id -> id ) current_way_tagsTable public.current_way_tags Pk current_way_tags_pkey ( way_id, k ) way_idway_id * bigint References current_ways ( way_id -> id ) Pk current_way_tags_pkey ( way_id, k ) kk * varchar(255) default ''::character varying vv * varchar(255) default ''::character varying current_waysTable public.current_ways Pk current_ways_pkey ( id ) idid * bigserial Referred by current_way_nodes ( way_id -> id ) Referred by current_way_tags ( way_id -> id ) changeset_idchangeset_id * bigint References changesets ( changeset_id -> id ) current_ways_timestamp_idx ( timestamp ) timestamptimestamp * timestamp visiblevisible * bool versionversion * bigint diary_commentsTable public.diary_comments Pk diary_comments_pkey ( id ) Unq diary_comments_entry_id_idx ( diary_entry_id, id ) idid * bigserial Unq diary_comments_entry_id_idx ( diary_entry_id, id ) diary_entry_iddiary_entry_id * bigint References diary_entries ( diary_entry_id -> id ) diary_comment_user_id_created_at_index ( user_id, created_at ) user_iduser_id * bigint References users ( user_id -> id ) bodybody * text diary_comment_user_id_created_at_index ( user_id, created_at ) created_atcreated_at * timestamp updated_atupdated_at * timestamp visiblevisible * bool default true body_formatbody_format * format_enum default 'html'::format_enum diary_entriesTable public.diary_entries Pk diary_entries_pkey ( id ) idid * bigserial Referred by diary_comments ( diary_entry_id -> id ) diary_entry_user_id_created_at_index ( user_id, created_at ) user_iduser_id * bigint References users ( user_id -> id ) titletitle * varchar(255) bodybody * text diary_entry_created_at_index ( created_at ) diary_entry_language_code_created_at_index ( language_code, created_at ) diary_entry_user_id_created_at_index ( user_id, created_at ) created_atcreated_at * timestamp updated_atupdated_at * timestamp latitudelatitude float8 longitudelongitude float8 diary_entry_language_code_created_at_index ( language_code, created_at ) language_codelanguage_code * varchar(255) default 'en'::character varying References languages ( language_code -> code ) visiblevisible * bool default true body_formatbody_format * format_enum default 'html'::format_enum friendsTable public.friends Pk friends_pkey ( id ) idid * bigserial friends_user_id_idx ( user_id ) user_iduser_id * bigint References users ( user_id -> id ) user_id_idx ( friend_user_id ) friend_user_idfriend_user_id * bigint References users ( friend_user_id -> id ) gps_pointsTable public.gps_points altitudealtitude float8 trackidtrackid * integer latitudelatitude * integer longitudelongitude * integer points_gpxid_idx ( gpx_id ) gpx_idgpx_id * bigint References gpx_files ( gpx_id -> id ) timestamptimestamp timestamp points_tile_idx ( tile ) tiletile bigint gpx_file_tagsTable public.gpx_file_tags Pk gpx_file_tags_pkey ( id ) idid * bigserial gpx_file_tags_gpxid_idx ( gpx_id ) gpx_idgpx_id * bigint default 0 References gpx_files ( gpx_id -> id ) gpx_file_tags_tag_idx ( tag ) tagtag * varchar(255) gpx_filesTable public.gpx_files Pk gpx_files_pkey ( id ) idid * bigserial Referred by gps_points ( gpx_id -> id ) Referred by gpx_file_tags ( gpx_id -> id ) gpx_files_user_id_idx ( user_id ) user_iduser_id * bigint References users ( user_id -> id ) gpx_files_visible_visibility_idx ( visible, visibility ) visiblevisible * bool default true namename * varchar(255) default ''::character varying sizesize bigint latitudelatitude float8 longitudelongitude float8 gpx_files_timestamp_idx ( timestamp ) timestamptimestamp * timestamp descriptiondescription * varchar(255) default ''::character varying insertedinserted * bool gpx_files_visible_visibility_idx ( visible, visibility ) visibilityvisibility * gpx_visibility_enum default 'public'::gpx_visibility_enum languagesTable public.languages Pk languages_pkey ( code ) codecode * varchar(255) Referred by diary_entries ( language_code -> code ) english_nameenglish_name * varchar(255) native_namenative_name varchar(255) messagesTable public.messages Pk messages_pkey ( id ) idid * bigserial messages_from_user_id_idx ( from_user_id ) from_user_idfrom_user_id * bigint References users ( from_user_id -> id ) titletitle * varchar(255) bodybody * text sent_onsent_on * timestamp message_readmessage_read * bool default false messages_to_user_id_idx ( to_user_id ) to_user_idto_user_id * bigint References users ( to_user_id -> id ) to_user_visibleto_user_visible * bool default true from_user_visiblefrom_user_visible * bool default true body_formatbody_format * format_enum default 'html'::format_enum node_tagsTable public.node_tags Pk node_tags_pkey ( node_id, version, k ) node_idnode_id * bigint References nodes ( node_id, version ) Pk node_tags_pkey ( node_id, version, k ) versionversion * bigint References nodes ( node_id, version ) Pk node_tags_pkey ( node_id, version, k ) kk * varchar(255) default ''::character varying vv * varchar(255) default ''::character varying nodesTable public.nodes Pk nodes_pkey ( node_id, version ) node_idnode_id * bigint Referred by node_tags ( node_id, version ) Pk nodes_pkey ( node_id, version ) versionversion * bigint Referred by node_tags ( node_id, version ) latitudelatitude * integer longitudelongitude * integer nodes_changeset_id_idx ( changeset_id ) changeset_idchangeset_id * bigint References changesets ( changeset_id -> id ) visiblevisible * bool nodes_timestamp_idx ( timestamp ) timestamptimestamp * timestamp nodes_tile_idx ( tile ) tiletile * bigint redaction_idredaction_id integer References redactions ( redaction_id -> id ) note_commentsTable public.note_comments Pk note_comments_pkey ( id ) idid * bigserial note_comments_note_id_idx ( note_id ) note_idnote_id * bigint References notes ( note_id -> id ) visiblevisible * bool index_note_comments_on_created_at ( created_at ) created_atcreated_at * timestamp author_ipauthor_ip inet author_idauthor_id bigint References users ( author_id -> id ) bodybody text eventevent note_event_enum notesTable public.notes Pk notes_pkey ( id ) idid * bigserial Referred by note_comments ( note_id -> id ) latitudelatitude * integer longitudelongitude * integer notes_tile_status_idx ( tile, status ) tiletile * bigint notes_updated_at_idx ( updated_at ) updated_atupdated_at * timestamp notes_created_at_idx ( created_at ) created_atcreated_at * timestamp notes_tile_status_idx ( tile, status ) statusstatus * note_status_enum closed_atclosed_at timestamp relation_membersTable public.relation_members Pk relation_members_pkey ( relation_id, version, member_type, member_id, member_role, sequence_id ) relation_idrelation_id * bigint default 0 References relations ( relation_id, version ) Pk relation_members_pkey ( relation_id, version, member_type, member_id, member_role, sequence_id ) versionversion * bigint default 0 References relations ( relation_id, version ) Pk relation_members_pkey ( relation_id, version, member_type, member_id, member_role, sequence_id ) relation_members_member_idx ( member_type, member_id ) member_typemember_type * nwr_enum Pk relation_members_pkey ( relation_id, version, member_type, member_id, member_role, sequence_id ) relation_members_member_idx ( member_type, member_id ) member_idmember_id * bigint Pk relation_members_pkey ( relation_id, version, member_type, member_id, member_role, sequence_id ) member_rolemember_role * varchar(255) Pk relation_members_pkey ( relation_id, version, member_type, member_id, member_role, sequence_id ) sequence_idsequence_id * integer default 0 relation_tagsTable public.relation_tags Pk relation_tags_pkey ( relation_id, version, k ) relation_idrelation_id * bigint default 0 References relations ( relation_id, version ) Pk relation_tags_pkey ( relation_id, version, k ) versionversion * bigint References relations ( relation_id, version ) Pk relation_tags_pkey ( relation_id, version, k ) kk * varchar(255) default ''::character varying vv * varchar(255) default ''::character varying relationsTable public.relations Pk relations_pkey ( relation_id, version ) relation_idrelation_id * bigint default 0 Referred by relation_members ( relation_id, version ) Referred by relation_tags ( relation_id, version ) Pk relations_pkey ( relation_id, version ) versionversion * bigint Referred by relation_members ( relation_id, version ) Referred by relation_tags ( relation_id, version ) relations_changeset_id_idx ( changeset_id ) changeset_idchangeset_id * bigint References changesets ( changeset_id -> id ) relations_timestamp_idx ( timestamp ) timestamptimestamp * timestamp visiblevisible * bool default true redaction_idredaction_id integer References redactions ( redaction_id -> id ) schema_migrationsTable public.schema_migrations Unq unique_schema_migrations ( version ) versionversion * varchar(255) user_preferencesTable public.user_preferences Pk user_preferences_pkey ( user_id, k ) user_iduser_id * bigint References users ( user_id -> id ) Pk user_preferences_pkey ( user_id, k ) kk * varchar(255) vv * varchar(255) user_tokensTable public.user_tokens Pk user_tokens_pkey ( id ) idid * bigserial user_tokens_user_id_idx ( user_id ) user_iduser_id * bigint References users ( user_id -> id ) Unq user_tokens_token_idx ( token ) tokentoken * varchar(255) expiryexpiry * timestamp refererreferer text way_tagsTable public.way_tags Pk way_tags_pkey ( way_id, version, k ) way_idway_id * bigint default 0 References ways ( way_id, version ) Pk way_tags_pkey ( way_id, version, k ) versionversion * bigint References ways ( way_id, version ) Pk way_tags_pkey ( way_id, version, k ) kk * varchar(255) vv * varchar(255) user_rolesTable public.user_roles Pk user_roles_pkey ( id ) idid * serial Unq user_roles_id_role_unique ( user_id, role ) user_iduser_id * bigint References users ( user_id -> id ) created_atcreated_at timestamp updated_atupdated_at timestamp Unq user_roles_id_role_unique ( user_id, role ) rolerole * user_role_enum granter_idgranter_id * bigint References users ( granter_id -> id ) user_blocksTable public.user_blocks Pk user_blocks_pkey ( id ) idid * serial index_user_blocks_on_user_id ( user_id ) user_iduser_id * bigint References users ( user_id -> id ) creator_idcreator_id * bigint References users ( creator_id -> id ) reasonreason * text ends_atends_at * timestamp needs_viewneeds_view * bool default false revoker_idrevoker_id bigint References users ( revoker_id -> id ) created_atcreated_at timestamp updated_atupdated_at timestamp reason_formatreason_format * format_enum default 'html'::format_enum aclsTable public.acls Pk acls_pkey ( id ) idid * serial addressaddress inet acls_k_idx ( k ) kk * varchar(255) vv varchar(255) domaindomain varchar(255) way_nodesTable public.way_nodes Pk way_nodes_pkey ( way_id, version, sequence_id ) way_idway_id * bigint References ways ( way_id, version ) Pk way_nodes_pkey ( way_id, version, sequence_id ) versionversion * bigint References ways ( way_id, version ) Pk way_nodes_pkey ( way_id, version, sequence_id ) sequence_idsequence_id * bigint way_nodes_node_idx ( node_id ) node_idnode_id * bigint oauth_noncesTable public.oauth_nonces Pk oauth_nonces_pkey ( id ) idid * serial Unq index_oauth_nonces_on_nonce_and_timestamp ( nonce, timestamp ) noncenonce varchar(255) Unq index_oauth_nonces_on_nonce_and_timestamp ( nonce, timestamp ) timestamptimestamp integer created_atcreated_at timestamp updated_atupdated_at timestamp changesetsTable public.changesets Pk changesets_pkey ( id ) changesets_user_id_id_idx ( user_id, id ) idid * bigserial Referred by changeset_tags ( changeset_id -> id ) Referred by current_nodes ( changeset_id -> id ) Referred by current_relations ( changeset_id -> id ) Referred by current_ways ( changeset_id -> id ) Referred by nodes ( changeset_id -> id ) Referred by relations ( changeset_id -> id ) Referred by ways ( changeset_id -> id ) changesets_user_id_created_at_idx ( user_id, created_at ) changesets_user_id_id_idx ( user_id, id ) user_iduser_id * bigint References users ( user_id -> id ) changesets_created_at_idx ( created_at ) changesets_user_id_created_at_idx ( user_id, created_at ) created_atcreated_at * timestamp changesets_bbox_idx ( min_lat, max_lat, min_lon, max_lon ) min_latmin_lat integer changesets_bbox_idx ( min_lat, max_lat, min_lon, max_lon ) max_latmax_lat integer changesets_bbox_idx ( min_lat, max_lat, min_lon, max_lon ) min_lonmin_lon integer changesets_bbox_idx ( min_lat, max_lat, min_lon, max_lon ) max_lonmax_lon integer changesets_closed_at_idx ( closed_at ) closed_atclosed_at * timestamp num_changesnum_changes * integer default 0 changeset_tagsTable public.changeset_tags changeset_tags_id_idx ( changeset_id ) changeset_idchangeset_id * bigint References changesets ( changeset_id -> id ) kk * varchar(255) default ''::character varying vv * varchar(255) default ''::character varying redactionsTable public.redactions Pk redactions_pkey ( id ) idid * serial Referred by nodes ( redaction_id -> id ) Referred by relations ( redaction_id -> id ) Referred by ways ( redaction_id -> id ) titletitle varchar(255) descriptiondescription text created_atcreated_at timestamp updated_atupdated_at timestamp user_iduser_id * bigint References users ( user_id -> id ) description_formatdescription_format * format_enum default 'markdown'::format_enum usersTable public.users Pk users_pkey ( id ) idid * bigserial Referred by changesets ( user_id -> id ) Referred by client_applications ( user_id -> id ) Referred by diary_comments ( user_id -> id ) Referred by diary_entries ( user_id -> id ) Referred by friends ( friend_user_id -> id ) Referred by friends ( user_id -> id ) Referred by gpx_files ( user_id -> id ) Referred by messages ( from_user_id -> id ) Referred by messages ( to_user_id -> id ) Referred by note_comments ( author_id -> id ) Referred by oauth_tokens ( user_id -> id ) Referred by redactions ( user_id -> id ) Referred by user_blocks ( creator_id -> id ) Referred by user_blocks ( revoker_id -> id ) Referred by user_blocks ( user_id -> id ) Referred by user_preferences ( user_id -> id ) Referred by user_roles ( granter_id -> id ) Referred by user_roles ( user_id -> id ) Referred by user_tokens ( user_id -> id ) Unq users_email_idx ( email ) emailemail * varchar(255) pass_cryptpass_crypt * varchar(255) creation_timecreation_time * timestamp Unq users_display_name_idx ( display_name ) display_namedisplay_name * varchar(255) default ''::character varying data_publicdata_public * bool default false descriptiondescription * text default ''::text home_lathome_lat float8 home_lonhome_lon float8 home_zoomhome_zoom smallint default 3 nearbynearby integer default 50 pass_saltpass_salt varchar(255) image_file_nameimage_file_name text email_validemail_valid * bool default false new_emailnew_email varchar(255) creation_ipcreation_ip varchar(255) languageslanguages varchar(255) statusstatus * user_status_enum default 'pending'::user_status_enum terms_agreedterms_agreed timestamp consider_pdconsider_pd * bool default false Unq user_openid_url_idx ( openid_url ) openid_urlopenid_url varchar(255) preferred_editorpreferred_editor varchar(255) terms_seenterms_seen * bool default false description_formatdescription_format * format_enum default 'html'::format_enum image_fingerprintimage_fingerprint varchar(255) changesets_countchangesets_count * integer default 0 traces_counttraces_count * integer default 0 diary_entries_countdiary_entries_count * integer default 0 image_use_gravatarimage_use_gravatar * bool default true image_content_typeimage_content_type varchar(255) oauth_tokensTable public.oauth_tokens Pk oauth_tokens_pkey ( id ) idid * serial user_iduser_id integer References users ( user_id -> id ) typetype varchar(20) client_application_idclient_application_id integer References client_applications ( client_application_id -> id ) Unq index_oauth_tokens_on_token ( token ) tokentoken varchar(50) secretsecret varchar(50) authorized_atauthorized_at timestamp invalidated_atinvalidated_at timestamp created_atcreated_at timestamp updated_atupdated_at timestamp allow_read_prefsallow_read_prefs * bool default false allow_write_prefsallow_write_prefs * bool default false allow_write_diaryallow_write_diary * bool default false allow_write_apiallow_write_api * bool default false allow_read_gpxallow_read_gpx * bool default false allow_write_gpxallow_write_gpx * bool default false callback_urlcallback_url varchar(255) verifierverifier varchar(20) scopescope varchar(255) valid_tovalid_to timestamp allow_write_notesallow_write_notes * bool default false current_relation_tagsTable public.current_relation_tags Pk current_relation_tags_pkey ( relation_id, k ) relation_idrelation_id * bigint References current_relations ( relation_id -> id ) Pk current_relation_tags_pkey ( relation_id, k ) kk * varchar(255) default ''::character varying vv * varchar(255) default ''::character varying waysTable public.ways Pk ways_pkey ( way_id, version ) way_idway_id * bigint default 0 Referred by way_nodes ( way_id, version ) Referred by way_tags ( way_id, version ) Pk ways_pkey ( way_id, version ) versionversion * bigint Referred by way_nodes ( way_id, version ) Referred by way_tags ( way_id, version ) ways_changeset_id_idx ( changeset_id ) changeset_idchangeset_id * bigint References changesets ( changeset_id -> id ) ways_timestamp_idx ( timestamp ) timestamptimestamp * timestamp visiblevisible * bool default true redaction_idredaction_id integer References redactions ( redaction_id -> id )

Table client_applications
* id serial
  name varchar( 255 )
  url varchar( 255 )
  support_url varchar( 255 )
  callback_url varchar( 255 )
  key varchar( 50 )
  secret varchar( 50 )
  user_id integer
  created_at timestamp
  updated_at timestamp
* allow_read_prefs bool DEFO false
* allow_write_prefs bool DEFO false
* allow_write_diary bool DEFO false
* allow_write_api bool DEFO false
* allow_read_gpx bool DEFO false
* allow_write_gpx bool DEFO false
* allow_write_notes bool DEFO false
Indexes
Pkclient_applications_pkey ON id
Uindex_client_applications_on_key ON key
Foreign Keys
 client_applications_user_id_fkey ( user_id ) ref users (id)


Table current_node_tags
* node_id bigint
* k varchar( 255 ) DEFO ''::character varying
* v varchar( 255 ) DEFO ''::character varying
Indexes
Pkcurrent_node_tags_pkey ON node_id, k
Foreign Keys
 current_node_tags_id_fkey ( node_id ) ref current_nodes (id)


Table current_nodes
* id bigserial
* latitude integer
* longitude integer
* changeset_id bigint
* visible bool
* timestamp timestamp
* tile bigint
* version bigint
Indexes
Pkcurrent_nodes_pkey1 ON id
 current_nodes_tile_idx ON tile
 current_nodes_timestamp_idx ON timestamp
Foreign Keys
 current_nodes_changeset_id_fkey ( changeset_id ) ref changesets (id)


Table current_relation_members
* relation_id bigint
* member_type nwr_enum
* member_id bigint
* member_role varchar( 255 )
* sequence_id integer DEFO 0
Indexes
Pkcurrent_relation_members_pkey ON relation_id, member_type, member_id, member_role, sequence_id
 current_relation_members_member_idx ON member_type, member_id
Foreign Keys
 current_relation_members_id_fkey ( relation_id ) ref current_relations (id)


Table current_relations
* id bigserial
* changeset_id bigint
* timestamp timestamp
* visible bool
* version bigint
Indexes
Pkcurrent_relations_pkey ON id
 current_relations_timestamp_idx ON timestamp
Foreign Keys
 current_relations_changeset_id_fkey ( changeset_id ) ref changesets (id)


Table current_way_nodes
* way_id bigint
* sequence_id bigint
* node_id bigint
Indexes
Pkcurrent_way_nodes_pkey ON way_id, sequence_id
 current_way_nodes_node_idx ON node_id
Foreign Keys
 current_way_nodes_node_id_fkey ( node_id ) ref current_nodes (id)
 current_way_nodes_id_fkey ( way_id ) ref current_ways (id)


Table current_way_tags
* way_id bigint
* k varchar( 255 ) DEFO ''::character varying
* v varchar( 255 ) DEFO ''::character varying
Indexes
Pkcurrent_way_tags_pkey ON way_id, k
Foreign Keys
 current_way_tags_id_fkey ( way_id ) ref current_ways (id)


Table current_ways
* id bigserial
* changeset_id bigint
* timestamp timestamp
* visible bool
* version bigint
Indexes
Pkcurrent_ways_pkey ON id
 current_ways_timestamp_idx ON timestamp
Foreign Keys
 current_ways_changeset_id_fkey ( changeset_id ) ref changesets (id)


Table diary_comments
* id bigserial
* diary_entry_id bigint
* user_id bigint
* body text
* created_at timestamp
* updated_at timestamp
* visible bool DEFO true
* body_format format_enum DEFO 'html'::format_enum
Indexes
Pkdiary_comments_pkey ON id
Udiary_comments_entry_id_idx ON diary_entry_id, id
 diary_comment_user_id_created_at_index ON user_id, created_at
Foreign Keys
 diary_comments_diary_entry_id_fkey ( diary_entry_id ) ref diary_entries (id)
 diary_comments_user_id_fkey ( user_id ) ref users (id)


Table diary_entries
* id bigserial
* user_id bigint
* title varchar( 255 )
* body text
* created_at timestamp
* updated_at timestamp
  latitude float8
  longitude float8
* language_code varchar( 255 ) DEFO 'en'::character varying
* visible bool DEFO true
* body_format format_enum DEFO 'html'::format_enum
Indexes
Pkdiary_entries_pkey ON id
 diary_entry_created_at_index ON created_at
 diary_entry_language_code_created_at_index ON language_code, created_at
 diary_entry_user_id_created_at_index ON user_id, created_at
Foreign Keys
 diary_entries_language_code_fkey ( language_code ) ref languages (code)
 diary_entries_user_id_fkey ( user_id ) ref users (id)


Table friends
* id bigserial
* user_id bigint
* friend_user_id bigint
Indexes
Pkfriends_pkey ON id
 friends_user_id_idx ON user_id
 user_id_idx ON friend_user_id
Foreign Keys
 friends_friend_user_id_fkey ( friend_user_id ) ref users (id)
 friends_user_id_fkey ( user_id ) ref users (id)


Table gps_points
  altitude float8
* trackid integer
* latitude integer
* longitude integer
* gpx_id bigint
  timestamp timestamp
  tile bigint
Indexes
 points_gpxid_idx ON gpx_id
 points_tile_idx ON tile
Foreign Keys
 gps_points_gpx_id_fkey ( gpx_id ) ref gpx_files (id)


Table gpx_file_tags
* id bigserial
* gpx_id bigint DEFO 0
* tag varchar( 255 )
Indexes
Pkgpx_file_tags_pkey ON id
 gpx_file_tags_gpxid_idx ON gpx_id
 gpx_file_tags_tag_idx ON tag
Foreign Keys
 gpx_file_tags_gpx_id_fkey ( gpx_id ) ref gpx_files (id)


Table gpx_files
* id bigserial
* user_id bigint
* visible bool DEFO true
* name varchar( 255 ) DEFO ''::character varying
  size bigint
  latitude float8
  longitude float8
* timestamp timestamp
* description varchar( 255 ) DEFO ''::character varying
* inserted bool
* visibility gpx_visibility_enum DEFO 'public'::gpx_visibility_enum
Indexes
Pkgpx_files_pkey ON id
 gpx_files_timestamp_idx ON timestamp
 gpx_files_user_id_idx ON user_id
 gpx_files_visible_visibility_idx ON visible, visibility
Foreign Keys
 gpx_files_user_id_fkey ( user_id ) ref users (id)


Table languages
* code varchar( 255 )
* english_name varchar( 255 )
  native_name varchar( 255 )
Indexes
Pklanguages_pkey ON code


Table messages
* id bigserial
* from_user_id bigint
* title varchar( 255 )
* body text
* sent_on timestamp
* message_read bool DEFO false
* to_user_id bigint
* to_user_visible bool DEFO true
* from_user_visible bool DEFO true
* body_format format_enum DEFO 'html'::format_enum
Indexes
Pkmessages_pkey ON id
 messages_from_user_id_idx ON from_user_id
 messages_to_user_id_idx ON to_user_id
Foreign Keys
 messages_from_user_id_fkey ( from_user_id ) ref users (id)
 messages_to_user_id_fkey ( to_user_id ) ref users (id)


Table node_tags
* node_id bigint
* version bigint
* k varchar( 255 ) DEFO ''::character varying
* v varchar( 255 ) DEFO ''::character varying
Indexes
Pknode_tags_pkey ON node_id, version, k
Foreign Keys
 node_tags_id_fkey ( node_id, version ) ref nodes (node_id, version)


Table nodes
* node_id bigint
* version bigint
* latitude integer
* longitude integer
* changeset_id bigint
* visible bool
* timestamp timestamp
* tile bigint
  redaction_id integer
Indexes
Pknodes_pkey ON node_id, version
 nodes_changeset_id_idx ON changeset_id
 nodes_tile_idx ON tile
 nodes_timestamp_idx ON timestamp
Foreign Keys
 nodes_changeset_id_fkey ( changeset_id ) ref changesets (id)
 nodes_redaction_id_fkey ( redaction_id ) ref redactions (id)


Table note_comments
* id bigserial
* note_id bigint
* visible bool
* created_at timestamp
  author_ip inet
  author_id bigint
  body text
  event note_event_enum
Indexes
Pknote_comments_pkey ON id
 index_note_comments_on_created_at ON created_at
 note_comments_note_id_idx ON note_id
Foreign Keys
 note_comments_note_id_fkey ( note_id ) ref notes (id)
 note_comments_author_id_fkey ( author_id ) ref users (id)


Table notes
* id bigserial
* latitude integer
* longitude integer
* tile bigint
* updated_at timestamp
* created_at timestamp
* status note_status_enum
  closed_at timestamp
Indexes
Pknotes_pkey ON id
 notes_created_at_idx ON created_at
 notes_tile_status_idx ON tile, status
 notes_updated_at_idx ON updated_at


Table relation_members
* relation_id bigint DEFO 0
* version bigint DEFO 0
* member_type nwr_enum
* member_id bigint
* member_role varchar( 255 )
* sequence_id integer DEFO 0
Indexes
Pkrelation_members_pkey ON relation_id, version, member_type, member_id, member_role, sequence_id
 relation_members_member_idx ON member_type, member_id
Foreign Keys
 relation_members_id_fkey ( relation_id, version ) ref relations (relation_id, version)


Table relation_tags
* relation_id bigint DEFO 0
* version bigint
* k varchar( 255 ) DEFO ''::character varying
* v varchar( 255 ) DEFO ''::character varying
Indexes
Pkrelation_tags_pkey ON relation_id, version, k
Foreign Keys
 relation_tags_id_fkey ( relation_id, version ) ref relations (relation_id, version)


Table relations
* relation_id bigint DEFO 0
* version bigint
* changeset_id bigint
* timestamp timestamp
* visible bool DEFO true
  redaction_id integer
Indexes
Pkrelations_pkey ON relation_id, version
 relations_changeset_id_idx ON changeset_id
 relations_timestamp_idx ON timestamp
Foreign Keys
 relations_changeset_id_fkey ( changeset_id ) ref changesets (id)
 relations_redaction_id_fkey ( redaction_id ) ref redactions (id)


Table schema_migrations
* version varchar( 255 )
Indexes
Uunique_schema_migrations ON version


Table user_preferences
* user_id bigint
* k varchar( 255 )
* v varchar( 255 )
Indexes
Pkuser_preferences_pkey ON user_id, k
Foreign Keys
 user_preferences_user_id_fkey ( user_id ) ref users (id)


Table user_tokens
* id bigserial
* user_id bigint
* token varchar( 255 )
* expiry timestamp
  referer text
Indexes
Pkuser_tokens_pkey ON id
Uuser_tokens_token_idx ON token
 user_tokens_user_id_idx ON user_id
Foreign Keys
 user_tokens_user_id_fkey ( user_id ) ref users (id)


Table way_tags
* way_id bigint DEFO 0
* version bigint
* k varchar( 255 )
* v varchar( 255 )
Indexes
Pkway_tags_pkey ON way_id, version, k
Foreign Keys
 way_tags_id_fkey ( way_id, version ) ref ways (way_id, version)


Table user_roles
* id serial
* user_id bigint
  created_at timestamp
  updated_at timestamp
* role user_role_enum
* granter_id bigint
Indexes
Pkuser_roles_pkey ON id
Uuser_roles_id_role_unique ON user_id, role
Foreign Keys
 user_roles_granter_id_fkey ( granter_id ) ref users (id)
 user_roles_user_id_fkey ( user_id ) ref users (id)


Table user_blocks
* id serial
* user_id bigint
* creator_id bigint
* reason text
* ends_at timestamp
* needs_view bool DEFO false
  revoker_id bigint
  created_at timestamp
  updated_at timestamp
* reason_format format_enum DEFO 'html'::format_enum
Indexes
Pkuser_blocks_pkey ON id
 index_user_blocks_on_user_id ON user_id
Foreign Keys
 user_blocks_moderator_id_fkey ( creator_id ) ref users (id)
 user_blocks_revoker_id_fkey ( revoker_id ) ref users (id)
 user_blocks_user_id_fkey ( user_id ) ref users (id)


Table acls
* id serial
  address inet
* k varchar( 255 )
  v varchar( 255 )
  domain varchar( 255 )
Indexes
Pkacls_pkey ON id
 acls_k_idx ON k


Table way_nodes
* way_id bigint
* version bigint
* sequence_id bigint
* node_id bigint
Indexes
Pkway_nodes_pkey ON way_id, version, sequence_id
 way_nodes_node_idx ON node_id
Foreign Keys
 way_nodes_id_fkey ( way_id, version ) ref ways (way_id, version)


Table oauth_nonces
* id serial
  nonce varchar( 255 )
  timestamp integer
  created_at timestamp
  updated_at timestamp
Indexes
Pkoauth_nonces_pkey ON id
Uindex_oauth_nonces_on_nonce_and_timestamp ON nonce, timestamp


Table changesets
* id bigserial
* user_id bigint
* created_at timestamp
  min_lat integer
  max_lat integer
  min_lon integer
  max_lon integer
* closed_at timestamp
* num_changes integer DEFO 0
Indexes
Pkchangesets_pkey ON id
 changesets_bbox_idx ON min_lat, max_lat, min_lon, max_lon
 changesets_closed_at_idx ON closed_at
 changesets_created_at_idx ON created_at
 changesets_user_id_created_at_idx ON user_id, created_at
 changesets_user_id_id_idx ON user_id, id
Foreign Keys
 changesets_user_id_fkey ( user_id ) ref users (id)


Table changeset_tags
* changeset_id bigint
* k varchar( 255 ) DEFO ''::character varying
* v varchar( 255 ) DEFO ''::character varying
Indexes
 changeset_tags_id_idx ON changeset_id
Foreign Keys
 changeset_tags_id_fkey ( changeset_id ) ref changesets (id)


Table redactions
* id serial
  title varchar( 255 )
  description text
  created_at timestamp
  updated_at timestamp
* user_id bigint
* description_format format_enum DEFO 'markdown'::format_enum
Indexes
Pkredactions_pkey ON id
Foreign Keys
 redactions_user_id_fkey ( user_id ) ref users (id)


Table users
* id bigserial
* email varchar( 255 )
* pass_crypt varchar( 255 )
* creation_time timestamp
* display_name varchar( 255 ) DEFO ''::character varying
* data_public bool DEFO false
* description text DEFO ''::text
  home_lat float8
  home_lon float8
  home_zoom smallint DEFO 3
  nearby integer DEFO 50
  pass_salt varchar( 255 )
  image_file_name text
* email_valid bool DEFO false
  new_email varchar( 255 )
  creation_ip varchar( 255 )
  languages varchar( 255 )
* status user_status_enum DEFO 'pending'::user_status_enum
  terms_agreed timestamp
* consider_pd bool DEFO false
  openid_url varchar( 255 )
  preferred_editor varchar( 255 )
* terms_seen bool DEFO false
* description_format format_enum DEFO 'html'::format_enum
  image_fingerprint varchar( 255 )
* changesets_count integer DEFO 0
* traces_count integer DEFO 0
* diary_entries_count integer DEFO 0
* image_use_gravatar bool DEFO true
  image_content_type varchar( 255 )
Indexes
Pkusers_pkey ON id
Uuser_openid_url_idx ON openid_url
Uusers_display_name_idx ON display_name
Uusers_email_idx ON email


Table oauth_tokens
* id serial
  user_id integer
  type varchar( 20 )
  client_application_id integer
  token varchar( 50 )
  secret varchar( 50 )
  authorized_at timestamp
  invalidated_at timestamp
  created_at timestamp
  updated_at timestamp
* allow_read_prefs bool DEFO false
* allow_write_prefs bool DEFO false
* allow_write_diary bool DEFO false
* allow_write_api bool DEFO false
* allow_read_gpx bool DEFO false
* allow_write_gpx bool DEFO false
  callback_url varchar( 255 )
  verifier varchar( 20 )
  scope varchar( 255 )
  valid_to timestamp
* allow_write_notes bool DEFO false
Indexes
Pkoauth_tokens_pkey ON id
Uindex_oauth_tokens_on_token ON token
Foreign Keys
 oauth_tokens_client_application_id_fkey ( client_application_id ) ref client_applications (id)
 oauth_tokens_user_id_fkey ( user_id ) ref users (id)


Table current_relation_tags
* relation_id bigint
* k varchar( 255 ) DEFO ''::character varying
* v varchar( 255 ) DEFO ''::character varying
Indexes
Pkcurrent_relation_tags_pkey ON relation_id, k
Foreign Keys
 current_relation_tags_id_fkey ( relation_id ) ref current_relations (id)


Table ways
* way_id bigint DEFO 0
* version bigint
* changeset_id bigint
* timestamp timestamp
* visible bool DEFO true
  redaction_id integer
Indexes
Pkways_pkey ON way_id, version
 ways_changeset_id_idx ON changeset_id
 ways_timestamp_idx ON timestamp
Foreign Keys
 ways_changeset_id_fkey ( changeset_id ) ref changesets (id)
 ways_redaction_id_fkey ( redaction_id ) ref redactions (id)