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 1siysy-00CANg-Ot for pgsql-sql@arkaria.postgresql.org; Tue, 27 Aug 2024 16:17:36 +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 1siysw-009Weq-P7 for pgsql-sql@arkaria.postgresql.org; Tue, 27 Aug 2024 16:17:35 +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 1siysw-009Wei-Fg for pgsql-sql@lists.postgresql.org; Tue, 27 Aug 2024 16:17:35 +0000 Received: from mail-oa1-x2c.google.com ([2001:4860:4864:20::2c]) by magus.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256 (Exim 4.94.2) (envelope-from ) id 1siyst-001mbX-Lq for pgsql-sql@lists.postgresql.org; Tue, 27 Aug 2024 16:17:34 +0000 Received: by mail-oa1-x2c.google.com with SMTP id 586e51a60fabf-2705d31a35cso4973015fac.0 for ; Tue, 27 Aug 2024 09:17:32 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1724775450; x=1725380250; darn=lists.postgresql.org; h=cc:to:subject:message-id:date:from:references:in-reply-to :mime-version:from:to:cc:subject:date:message-id:reply-to; bh=pD3avjVFrR4Ev9OFDZSnHl856bj/xgU40lydUzmleAQ=; b=N3PPwTF42lKGBaO/0i6jfE+lOvjt+yt+Sz9AiaQiFJv4jGlm9J/QmDPn+S7RPwVKW8 nx7W5uX2ufZ+1fdZDxSGxhoNRqpGiRV2c1Z+gMOFKXH6JwL3ZLJTAWbmFiKzgJh4ezK7 um6ztameJ5BLgQCTfriT7tJwgFCIrqlr5305LEplmP6EjMuWhB5TUF7LEG0Z4ju1ofS7 jo+Hne2zSmdG9vnhj04qQF1pzoaUH1HA4i5J8HChSZzceyNqP+KhqyXwgVKr0e+qRXWx HfrePuzMXUaEe26Yg7Gsyn/p3hmWga5e/EzkC2I0q5/dUEwbm1XJzYqJuNoHoZUEIbkP 4aJg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1724775450; x=1725380250; h=cc:to:subject:message-id:date:from:references:in-reply-to :mime-version:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=pD3avjVFrR4Ev9OFDZSnHl856bj/xgU40lydUzmleAQ=; b=A88OzVSrGLRJP/8DTjJ0RQ1ZZCFcT3PHSVNtxZ0uBUFGU7bDqJYJM8Ul2Q3gi95ibC QLaC/h4hl78u5MtbeUDRtzRTdALq52RKTBjIYwIoMkRIbBwtt/bn5Uy0xRRi63y0USFR PVU68wCrvxBKYNC+H0g66LQFvxKnj91URHuwirEdM9iGTUbeJUeeVV6rWPw0+bRel4Nn WI5+6GOa1tp66d+psiuNgiVsRlRvoNd5COKJvKF84WXHvTSGl75qzSLP0H4ZOWBT645W 3oUcpzqTQF/YEVslkwAtqZdYMYj1MVBAgLdTVpQF4iiiehROkvenkuK6beB4MjRTsD9F HVMg== X-Forwarded-Encrypted: i=1; AJvYcCUjb7qLSdVIPYvkc8j/JsSdyriFJ2ZgDnZR11GGPysxigKH+uI8rqHWP6SAaVbvSzWjEwBVN8zRXP4=@lists.postgresql.org X-Gm-Message-State: AOJu0Yyo3SWSTLmfcJF0DI7dNvtds4i3T2BBTFfDmwD8qm7vJcuP2beU InpICiDpomrKbUjBd5LSb8f/Zs1RDjXk8wYp0RMdSILDKPTAuMSYScTevp1dN4glq+PuIyzSspF AcpjXnjVz6uwCprGlAbJeX8Gnrtc= X-Google-Smtp-Source: AGHT+IGYtxlnF0E3XoKZkDPZ2GBsuzNKulVrF0DJJC45dU8ElHq9gWf32AmCihtWQ6QOhNwulEeq3KSm0aiQsOByemo= X-Received: by 2002:a05:6870:5690:b0:270:463e:4b72 with SMTP id 586e51a60fabf-27759e4ac6dmr3485020fac.20.1724775450444; Tue, 27 Aug 2024 09:17:30 -0700 (PDT) MIME-Version: 1.0 Received: by 2002:ac9:5e88:0:b0:557:c384:fb61 with HTTP; Tue, 27 Aug 2024 09:17:29 -0700 (PDT) In-Reply-To: References: From: "David G. Johnston" Date: Tue, 27 Aug 2024 09:17:29 -0700 Message-ID: Subject: object mapping for json/jsonb columns To: Jan Bernitt Cc: Steve Midgley , "pgsql-sql@lists.postgresql.org" Content-Type: multipart/alternative; boundary="0000000000000a8b140620ac947f" List-Id: List-Help: List-Subscribe: List-Post: List-Owner: List-Archive: Archived-At: Precedence: bulk --0000000000000a8b140620ac947f Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable On Tuesday, August 27, 2024, Jan Bernitt wrote: > > So if nothing like this exists in postgreSQL I highly suggest starting to > design JSON(B) functions that offer this flexibility :) > PostgreSQL is both extensible and open source. I highly suggest this seems like a perfect place for some enterprising people to leverage those aspects to improve things instead of burdening the core developers with more work. Given that pluggable procedural languages already have this kind of tooling I=E2=80=99d even hazard to say this is a solved issue for those that go aga= inst normalization of a relational model. David J. --0000000000000a8b140620ac947f Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable On Tuesday, August 27, 2024, Jan Bernitt <jaanbernitt@gmail.com> wrote:

So if nothing like this = exists in postgreSQL I highly suggest starting to design JSON(B) functions = that offer this flexibility :)

= PostgreSQL is both extensible and open source.=C2=A0 I highly suggest this = seems like a perfect place for some enterprising people to leverage those a= spects to improve things instead of burdening the core developers with more= work.=C2=A0 Given that pluggable procedural languages already have this ki= nd of tooling I=E2=80=99d even hazard to say this is a solved issue for tho= se that go against normalization of a relational model.

David J.

--0000000000000a8b140620ac947f--