Received: from malur.postgresql.org ([217.196.149.56]) by arkaria.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.94.2) (envelope-from ) id 1vEfQF-00FIEL-SY for pgsql-docs@arkaria.postgresql.org; Fri, 31 Oct 2025 03:03:27 +0000 Received: from localhost ([127.0.0.1] helo=malur.postgresql.org) by malur.postgresql.org with esmtp (Exim 4.94.2) (envelope-from ) id 1vEfQE-00BgJY-QJ for pgsql-docs@arkaria.postgresql.org; Fri, 31 Oct 2025 03:03:25 +0000 Received: from magus.postgresql.org ([2a02:c0:301:0:ffff::29]) by malur.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.94.2) (envelope-from ) id 1vEfQE-00BgJP-IN for pgsql-docs@lists.postgresql.org; Fri, 31 Oct 2025 03:03:25 +0000 Received: from mail-lj1-x230.google.com ([2a00:1450:4864:20::230]) by magus.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256 (Exim 4.96) (envelope-from ) id 1vEfQB-005Api-19 for pgsql-docs@lists.postgresql.org; Fri, 31 Oct 2025 03:03:25 +0000 Received: by mail-lj1-x230.google.com with SMTP id 38308e7fff4ca-37a17d470dfso12295241fa.3 for ; Thu, 30 Oct 2025 20:03:22 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1761879800; x=1762484600; darn=lists.postgresql.org; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:from:to:cc:subject:date:message-id:reply-to; bh=Ml5cOuCUpplnCwoWJnRauAu+sfhyLHNOclTWxqOH+cw=; b=HU6hXXCnNMqJPFWJC8E5IxJixnqiE5ooI/uCCpO+LnLhh58+pXcC3MLKW+Na3RzZLS VmRMqAiEBmXIrBUXGNE66x9c2SStmGUVjLJWI/9k5Md9oag1+NaJfINrO8x0+dvjJIEZ ks13Zl4A3UN9CQCbKxnpumut6kd3gnr6CJu0HtvqSb6FW8hBCDIQlMNucP8hZZHvAJlT aA+Bcl5UF5eF6VhtRV5/3Lq8HBANctmsbfjNNSW4sT7tg1nl+v05iVWnkW+omprH0LKK fsARAVJ3rCYWkbdPO8ZLbhlmrUpf5+4l0BwuvofRMdICm3epwtSzzD+H3DX7NbQ6PbN6 n0Kw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1761879800; x=1762484600; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=Ml5cOuCUpplnCwoWJnRauAu+sfhyLHNOclTWxqOH+cw=; b=PCj0PQ/qdMin8NVulJFS23Al0z2jI0GUA+uTx2sSZEffbcu/fgQc1Kd7h2P92NLbVS IwkDvtR4rCRXDkuxAL7FMr0n2Sl7b9ejuZZVlycYGu1I7nv2nu6qlDMijGFGLFlybWqF 0fnAkY+G7PCVQCFlZBJ0zSiKt+p0U//1GDmvFwd9QlTRi8ywoJUqtcna73Sb2ChIAsre I0C/5EJ4JfUG0P/skKzdiKUQlMRBECCLoKRBikDm8PmvLroTLVxFQPGoko8+v4Z2riVw oyH4YntfqJJS/+BpLUzW9cL9nAELUcXLUbd9TswzD5XlfobQUVmXJWtBEfZ5fu1AQ4o/ ukTA== X-Forwarded-Encrypted: i=1; AJvYcCWDTsGdDYEkpHW3/XcE3EzL7oDIcl1DF1g+o/TMzlE8hWbMwRZ/jbJ7BevS6NUYCdS9u897aEFksqlQ@lists.postgresql.org X-Gm-Message-State: AOJu0YwuOCIvij50Dsp+ovA/gbVm05efaFvnnOTdXHLw0oc/Msg8Y3gf khLb5dPwC8dlQ1ogUAytot4nVgD0xxp0j2PjaQWU4UVoFaEPymIDZVw36V0MIdd9+4kqIk3WT/b BEXAGqTEbufQNadK6xhaUtKlkDJIofG0= X-Gm-Gg: ASbGncvBAkM6K9kbz3WpN06nfNWTKu0p08sNSjK5UqaNIQwL+ZSX9N+JQev6ggq3GEz LX366U4DlhkkIXfsn1+rP/wCLgMWSh4J+rpfARFInpqBQ2gxHGK797Skr/TsKctn44yFctlh9hy 1r5u1Ku2uIuhFL7P3B4u75J0k0cD58gzJ+Qu3kvM7cTo2csCPIVmChkH8jrmmotu5zAab1jdE9k Eljyxkv+7c7M0ZbNkjrh9QpjoGglE21QGwq2N8K2+2tP061qD0zl2OH0WeUJuLGxfsBCYjz+rpw TyyMlxgL1qnFbO7oxvWY8lNPWS/wIGKhJCZA4M+bR7+uGdoRUOE= X-Google-Smtp-Source: AGHT+IHlD0miahmZIWI+1cgOBcK+t9R1j0vA8cqZe+eqh1KVSw3IkXPtxQOHBKxIDR1rtqhY/O682olsK3BjoE9I6gU= X-Received: by 2002:a05:6512:39cf:b0:592:fbb1:c31b with SMTP id 2adb3069b0e04-5941d564c30mr623603e87.41.1761879800078; Thu, 30 Oct 2025 20:03:20 -0700 (PDT) MIME-Version: 1.0 References: <82eb512b-8ed2-46be-b311-54ffd26978c4@ewie.name> <0a9d7393-1cf2-4d38-a648-631c1f93e345@ewie.name> <2903384.1761770924@sss.pgh.pa.us> <0a68a965-4599-4af1-a1eb-bd8e1be75788@ewie.name> In-Reply-To: <0a68a965-4599-4af1-a1eb-bd8e1be75788@ewie.name> From: David Rowley Date: Fri, 31 Oct 2025 16:03:08 +1300 X-Gm-Features: AWmQ_bnn8R7XcnZwmPrDxnBNbFcdhQB2Mlx6t8JXIRjr1gcPHVzyG2iJzZ_6W9A Message-ID: Subject: Re: Use uppercase keywords in foreign key tutorial To: Erik Wienhold Cc: Tom Lane , Bruce Momjian , Nathan Bossart , Euler Taveira , pgsql-docs@lists.postgresql.org Content-Type: text/plain; charset="UTF-8" List-Id: List-Help: List-Subscribe: List-Post: List-Owner: List-Archive: Archived-At: Precedence: bulk On Fri, 31 Oct 2025 at 13:53, Erik Wienhold wrote: > But I also agree with Tom that keeping a consistent style is impossible > in the long run. But it also shows that the docs are still written by > humans. As long as we can keep a consistent style within a single > listing (or even an entire page) I'm satisfied as a reader. For me, I don't see this as a reason not to try. If we do get things to a consistent point, then anyone making changes that reference existing portions of the documentation for inspiration should maintain consistency. If we're entirely random, then there's no hope for anyone to figure out what the best practice or perfected casing is. > Besides that I've fixed a couple of more places that had lowercase > keywords or were missing some whitespace that I had missed before. A couple of things. 1) I see you've added a space after "INSERT INTO table" and before the column list, but not consistently, per: git grep -E "INSERT INTO \w+\(" 2) An identifier casing has been changed here: -SELECT sub_part, SUM(quantity) as total_quantity +SELECT sub_part, sum(quantity) AS total_quantity You could also look at the results of the SQL command that's returned by the following SQL to see if there's anything else. I do see some "ROLLUP(", "EXISTS(", "GROUPING(" and "VALUES(" in there. You have been changing "VALUES(" to "VALUES (", so I assume those ones have been missed: select 'git grep -E "\b(' || string_agg(UPPER(word),'|') || ')\("' from pg_get_keywords(); David