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.96) (envelope-from ) id 1w8Mgr-000Siw-1N for pgsql-hackers@arkaria.postgresql.org; Thu, 02 Apr 2026 18:22:49 +0000 Received: from localhost ([127.0.0.1] helo=malur.postgresql.org) by malur.postgresql.org with esmtp (Exim 4.96) (envelope-from ) id 1w8Mgq-007Sne-0v for pgsql-hackers@arkaria.postgresql.org; Thu, 02 Apr 2026 18:22:48 +0000 Received: from makus.postgresql.org ([2001:4800:3e1:1::229]) by malur.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.96) (envelope-from ) id 1w8Mgp-007SnV-2P for pgsql-hackers@lists.postgresql.org; Thu, 02 Apr 2026 18:22:48 +0000 Received: from mail-lf1-x133.google.com ([2a00:1450:4864:20::133]) by makus.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256 (Exim 4.98.2) (envelope-from ) id 1w8Mgn-00000000E6T-3az0 for pgsql-hackers@lists.postgresql.org; Thu, 02 Apr 2026 18:22:46 +0000 Received: by mail-lf1-x133.google.com with SMTP id 2adb3069b0e04-5a12cd0bcd8so1445579e87.3 for ; Thu, 02 Apr 2026 11:22:45 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1775154164; cv=none; d=google.com; s=arc-20240605; b=PfUWyxrlmC/MB7Z6UsD7UPWCK6uuTPrJViVRzDB0DOXByrsD+de6JLPJq89uo6JyN0 TS4uqz4BVJ3VpGVfXgmv+40dQWDHZ6v9Tr311K6R3YRkKOAJjw/Gpp79d6N9uzTuMawv qNISOJCAm4VaMcAghC+2qR2ilKwWFdlPGxsDr0VffTEcDw/WvrpNSoftQXAyThTERzi8 tIIsULOwl5NS2Bm9VOM5QQcR/Gcu/XFioyWH1k6z5RQb9e1/AqMrdGVCae66GIcMycRc HgeA38+iSuDuQ+/wGKi4vEFzxZ4XSzTF+oJgvGy465BU4IDcWz6nSBVgQCFBUeG+2boE FfWw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20240605; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:dkim-signature; bh=4IhyE+yMNe0U3MPmdktSwkDBJH0po9vKITReXEfVXgA=; fh=hVguG/8lImIvR/xO1bkFAnIXyfxMJRROBbsYkMDcn7Y=; b=G/mIgz6zDt4Db4FvURgmVKSnJiesyJVUMUoyeA8KFhKOwBKJobrDEdtxv+VK4xM/iU Kh1M82Brxq2hT/oFDVpdS8mjb55J+L4PaeH43qOUXXYDTPnMWUCaWF1WzPEugyNrgTg9 ZrQjrdc2lfqBawL5ByMV2bxIKi3+NyCoN0Qd/+nls1kNfIPWGOAy37nWYqB2cmz8GSC2 H0JeF8sa+yi4X5TM7CDgvI8eDIDd/3h0hndL6NyBjtraTtA6SrzBOky47BaH4U+PTa6N hV68X2+ESCFoaN8vb1Gkn/bKt9tHXNvZ1qtvOjtmQxS1TAJnTIa9PMcavHUjnuKwEBMU rbew==; darn=lists.postgresql.org ARC-Authentication-Results: i=1; mx.google.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20251104; t=1775154164; x=1775758964; 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=4IhyE+yMNe0U3MPmdktSwkDBJH0po9vKITReXEfVXgA=; b=AlRKzLGN+EY7RLBSEgknu88ANWoDRIVrXSD3n0H9A6lXbYA4eJqaCBzf/hqoY+6O8R Rok5/haRRQLJl0xldWpBBV2rx5WWW7/WVAIiA14FB4+sx89hSDxI++tLL3nLO0d1RsOT x0SSH3eF39IPMnVSV/gtRGW7bFLNeoSHKlxkp95n5t95rBL5DvntWo0LkK+N5ZA7Pd/9 Tz2GYcTlEhFZt7CWYFgyQ9pM0fDRXMcp3h0+HxpoWHuw52HkYirOQAksoo/CgVP4/+2x 2AYx2PXSEZ+LOxuhraMRWkSRt0Jqkrp6fgd7u1FuIwmANoV62FTW1sYiq/RF8oW8W8MX bw8Q== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1775154164; x=1775758964; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:x-gm-gg:x-gm-message-state:from:to:cc:subject:date :message-id:reply-to; bh=4IhyE+yMNe0U3MPmdktSwkDBJH0po9vKITReXEfVXgA=; b=axpTDT4EDTPtKVTX08tysUYOJ1d5YpVnodbqHxlej4W3HUNVSGngUhNe/VXbqY57zT VkTmVah83KVnSleTW8oUvoEqmx2NqIUpqaYt0kz/dhmJdGKJmga0WmSmchg7B8h4cpeD WENUpquWu5+oRBALKfVbpTtzGTheKg2H+AL+v6k/09VbdqRiXyShilJ8LX9IvWDCtdfO DiIF1157N2CY6UYlM4wd5tQrj2V3emPOEWGj0Pem+MOz2Y6HqK10NPi605T8CFIm3ADf oJoxuLQpUuKuI0+3jltSnudSLKr/zT3WiuJUnLN1HWu6xsZjRMYNj4cbc55qK4eIwkzY sn1w== X-Forwarded-Encrypted: i=1; AJvYcCVys1D53+EPFjhzAcGIi/u3NxgIKasM7Z7gxAjkl187z60VgcG+cY1xcubpN7Wkrk0oe0a5zGiQF+uLxxiN@lists.postgresql.org X-Gm-Message-State: AOJu0YyiyV7s4Af0HI+FuLinrbVhva2e1h3g+urV/PWSiarULmDsZ91o O/EBB1hv/0hAWvFQ4NLoiuij5k5WGo8LGPoD2q9CNXfr9GslJ+YfcR5kf2Ocqa8tC375YKiDjWT BQMthe3vWcdPKpYoqcWbmfvGlWnTjaEo= X-Gm-Gg: AeBDiesVYc1FvEXV+JVdwjDRDs/0F/78n6T9zs5gNkaOu+IHeGc6urg4r4C/zt2ciU0 90j8DL0uOGh7m7SLL59NJaVSCMJ+m7lNgDTClOPLw1SL8iFH/owKVc9EgONvjh2Djh583bQuKjw ixxSpZghZiBgFZBfsr4T/yV84kEbN2xc2zG687zkEO3D71lKhfbgan4vjN09shjitxzY+B/msMO zOZU3D8Jn5EGCxvArzQTkxu7zUpF9vpCUGhdXeRWKLj8hbGQMybExvn7WU7Aacx+yCxSU3AYJxm GCOQBzp9qXP5cfMlbWqbVA9fN+c7d+CKzYUBkmY= X-Received: by 2002:a05:6512:401f:b0:5a2:b845:85b4 with SMTP id 2adb3069b0e04-5a33757bdf0mr14532e87.20.1775154163896; Thu, 02 Apr 2026 11:22:43 -0700 (PDT) MIME-Version: 1.0 References: <2ba05acc-6392-42a4-b59e-61df086b2d4d@uni-muenster.de> <1d49e214-93bc-4928-945c-27e60251a6ad@uni-muenster.de> <9228b6dc-cfae-4a11-927a-209680f5507e@uni-muenster.de> <2f8ca841-0956-4e7d-8fa2-038b879c8f4d@uni-muenster.de> In-Reply-To: From: Marcos Magueta Date: Thu, 2 Apr 2026 15:22:32 -0300 X-Gm-Features: AQROBzCknMaZDZnfDbLq70EHhSoV0dNsRf7HWnecgVUK5uttg6qtHsHoO1udndM Message-ID: Subject: Re: WIP - xmlvalidate implementation from TODO list To: Pavel Stehule Cc: Jim Jones , Andrey Borodin , Kirill Reshke , PostgreSQL Hackers Content-Type: multipart/alternative; boundary="0000000000005c5438064e7e49a9" List-Id: List-Help: List-Subscribe: List-Post: List-Owner: List-Archive: Archived-At: Precedence: bulk --0000000000005c5438064e7e49a9 Content-Type: text/plain; charset="UTF-8" Hey Jim and Pavel, thanks for demonstrating interest. > XML is a little bit outdated - but the proposed infrastructure can be used for any documents, so it can theoretically supports json, jsonb too [...]. I expect something like XMLVALIDATE will be JSON standard in a few years. That doesn't sound like a bad idea to me. But I suspect I would need to almost completely revamp the implementation in the patch so far, so I would like to confirm a few things before committing to anything on that front. I am still unsure how the permissions would be managed properly with the API approach. It seems to me we could rely on the ACL like before, but I sense there's something more arcane around it when it comes to the extension. I didn't realize, but DB2 actually gives you decomposition over an xml hierarchy into tables, which is an insanely valuable feature. I wonder how we could go with that here using the current catalog approach. Is there anything else that might be troublesome with changing approaches? Regards, Marcos. --0000000000005c5438064e7e49a9 Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable
Hey Jim and Pavel, thanks for demonstrating inte= rest.

>=C2=A0XML is a little bit outdated=C2=A0- but the proposed= infrastructure=C2=A0can be used for any documents, so it can theoretically= supports json, jsonb too [...]. I expect something like XMLVALIDATE will b= e JSON standard in a few years.

That doesn't sound like a bad id= ea to me. But I suspect I would need to almost completely revamp the implem= entation in the patch so far, so I would like to confirm a few things befor= e committing to anything on that front.

I am still unsure how = the permissions would be managed properly with the API approach. It seems t= o me we could rely on the ACL like before, but I sense there's somethin= g more arcane around it when it comes to the extension.

I did= n't realize, but DB2 actually gives you decomposition over an xml hiera= rchy into tables, which is an insanely valuable feature. I wonder how we co= uld go with that here using the current catalog approach.

Is there anything else that might be troublesome with changing approaches?=

Regards, Marcos. --0000000000005c5438064e7e49a9--