Re: explain root element for auto-explain
| От | Andrew Dunstan | 
|---|---|
| Тема | Re: explain root element for auto-explain | 
| Дата | |
| Msg-id | 4A8D6D5A.9070701@dunslane.net обсуждение исходный текст  | 
		
| Ответ на | Re: explain root element for auto-explain (Andrew Dunstan <andrew@dunslane.net>) | 
| Ответы | 
                	
            		Re: explain root element for auto-explain
            		
            		 | 
		
| Список | pgsql-hackers | 
I wrote: > > > Andrew Dunstan wrote: >> Bruce Momjian wrote: >>> Are we going to publish an XML DTD for EXPLAIN, or have we already? >> >> Not a DTD, but I am working on an XML Schema (DTDs are a bit yesterday). >> >> > > Here is a RelaxNG spec which people might find a bit easier to read. > It has been autocreated by a little tool called trang, that I used on > a very large body of explain output that I produced by mangling the > regression tests (and, incidentally, crashing the server in the result > - I still have to chase that up). Updated version with more complete information (regression crash was due to my bad script). cheers andrew default namespace = "http://www.postgresql.org/2009/explain" start = element explain { element Query { Plan, Triggers, element Total-Runtime { xsd:decimal } }+ } Plan = element Plan { (element Actual-Loops { xsd:integer } | element Actual-Rows { xsd:integer } | element Actual-Startup-Time{ xsd:decimal } | element Actual-Total-Time { xsd:decimal } | element Alias { text } | elementCTE-Name { text } | element Command { text } | element Filter { text } | element Function-Name { text } | element Hash-Cond { text } | element Index-Cond { text } | element Index-Name { text } | element Join-Filter{ text } | element Join-Type { text } | element Merge-Cond { text } | element Node-Type { text } |element One-Time-Filter { text } | element Output { Item* } | element Parent-Relationship { text } | element Plan-Rows{ xsd:integer } | element Plan-Width { xsd:integer } | element Plans { Plan* } | element Recheck-Cond {text } | element Relation-Name { text } | element Scan-Direction { text } | element Schema { text } | elementSort-Key { Item+ } | element Sort-Method { text } | element Sort-Space-Type { text } | element Sort-Space-Used{ xsd:integer } | element Startup-Cost { xsd:decimal } | element Strategy { text } | element Subplan-Name{ text } | element Total-Cost { xsd:decimal }, | element TID-Cond { text } )* } Triggers = element Triggers { element Trigger { element Trigger-Name { text }, element Constraint-Name { text }?, element Relation { text }, element Time { xsd:decimal }, element Calls { xsd:integer } }* } Item = element Item { text }
В списке pgsql-hackers по дате отправления: