Re: Patch: Improve Boolean Predicate JSON Path Docs
От | David E. Wheeler |
---|---|
Тема | Re: Patch: Improve Boolean Predicate JSON Path Docs |
Дата | |
Msg-id | 37B1EB9E-E44F-4B20-89E9-AFAC37B62BC6@justatheory.com обсуждение исходный текст |
Ответ на | Re: Patch: Improve Boolean Predicate JSON Path Docs (Erik Wienhold <ewie@ewie.name>) |
Ответы |
Re: Patch: Improve Boolean Predicate JSON Path Docs
|
Список | pgsql-hackers |
On Oct 15, 2023, at 23:03, Erik Wienhold <ewie@ewie.name> wrote: > Your call but I'm not against including it in this patch because it > already touches the modes section. Okay, added, let’s just put all our cards on the table. :-) >> Agreed. Would be good if we could teach these functions and operators >> to reject path expressions they don’t support. > > Right, you mentioned that idea in [1] (separate types). Not sure what > the best strategy here is but it's likely to break existing queries. > Maybe deprecating unsupported path expressions in the next major release > and changing that to an error in the major release after that. Well if the functions have a JsonPathItem struct, they can check its type attribute and reject those with a root type that’sa predicate in @? and reject it if it’s not a predicate in @@. Example of checking type here: https://github.com/postgres/postgres/blob/54b208f90963cb8b48b9794a5392b2fae4b40a98/src/backend/utils/adt/jsonpath_exec.c#L622 >>> This can be checked with `make -C doc/src/sgml check`. >> >> Thanks. That produces a bunch of warnings for postgres.sgml and >> legal.sgml (and a failure to load the docbook DTD), but func.sgml is >> clean now. > > Hmm... I get no warnings on 1f89b73c4e. Did you install all tools as > described in [2]? The DTD needs to be installed as well. Thanks, got it down to one: postgres.sgml:112: element sect4: validity error : Element sect4 content does not follow the DTD, expecting (sect4info? ,(title , subtitle? , titleabbrev?) , (toc | lot | index | glossary | bibliography)* , (((calloutlist | glosslist | bibliolist| itemizedlist | orderedlist | segmentedlist | simplelist | variablelist | caution | important | note | tip | warning| literallayout | programlisting | programlistingco | screen | screenco | screenshot | synopsis | cmdsynopsis | funcsynopsis| classsynopsis | fieldsynopsis | constructorsynopsis | destructorsynopsis | methodsynopsis | formalpara | para| simpara | address | blockquote | graphic | graphicco | mediaobject | mediaobjectco | informalequation | informalexample| informalfigure | informaltable | equation | example | figure | table | msgset | procedure | sidebar | qandaset| task | anchor | bridgehead | remark | highlights | abstract | authorblurb | epigraph | indexterm | beginpage)+, (refentry* | sect5* | simplesect*)) | refentry+ | sect5+ | simplesect+) , (toc | lot | index | glossary | bibliography)*),got (para para ) &func; David
Вложения
В списке pgsql-hackers по дате отправления: