Many hyperlinks are disabled.
Use anonymous login to enable hyperlinks.

History of generic/schema.c

2019-12-11
23:06
Fixed seg fault in case of UNKNOWN_ROOT_ELEMENT and reportCmd is set. file: [ab8c8dccf0] check-in: [3a3f58154d] user: rolf branch: schema, size: 203568
2019-12-07
01:59
Added the text constraint command setvar, which expects the name of a tcl var as argument and set this variable to the text to validate. file: [f724059fd8] check-in: [366ed3d250] user: rolf branch: schema, size: 203445
2019-12-06
01:52
Merged from schema. file: [7983ec0f8c] check-in: [022d8ade42] user: rolf branch: mixedoptimization, size: 204737
2019-12-05
14:47
Played around with a validatefile method which takes a file name and does parsing/validation in chunks. file: [4d9413bfa3] check-in: [efc9bce1b9] user: rolf branch: validatefile, size: 206891
13:31
Removed unused argument to pushToStack. file: [e1d3f7ba3f] check-in: [5fe79f9b36] user: rolf branch: schema, size: 202611
13:27
Try an O(n) approach for simple choice cases. file: [2ebf574909] check-in: [4b65eabd78] user: rolf branch: mixedoptimization, size: 204797
10:11
Exposed text constraint command isodate to be usable outside schema validation context. file: [ddefc1edcf] check-in: [8b2322acee] user: rolf branch: schema, size: 202667
00:23
Simplified text constraint commands sekeleton. file: [2d9ed16a1e] check-in: [5430bf6f10] user: rolf branch: schema, size: 202293
2019-11-30
00:07
Implemented the text constraint commands unsignedByte, unsignedShort, unsignedInt and unsignedLong, along the xsd counterparts. file: [09750ce5f7] check-in: [051ae451a2] user: rolf branch: schema, size: 202806
2019-11-29
16:42
Added text constraint command hexBinary (similar to the xsd type hexBinary). file: [d5ba9b53e9] check-in: [ea199fedb7] user: rolf branch: schema, size: 200965
00:29
Added the xsd data types negativeInteger, nonNegativeInteger, nonPositiveInteger and positiveInteger. file: [8677220c42] check-in: [d3fc207059] user: rolf branch: schema, size: 200053
2019-11-24
01:07
Added the xsd data types Name, NCName and QName as text constraint commands name, ncname and qname. file: [35a8949417] check-in: [3201b746cc] user: rolf branch: schema, size: 198066
2019-11-18
22:42
Removed slipped throu debuging instrumentalization. file: [3965d9f63a] check-in: [22b17ef648] user: rolf branch: schema, size: 196284
22:37
The attribute und nsattribute commands are only supported toplevel in the definition scripts of the defelement method and the element command. file: [51ea1de361] check-in: [b3b2ce77f0] user: rolf branch: schema, size: 196311
2019-11-15
23:46
Started check for ambiguity. file: [6677297ef5] check-in: [a2f83dea7e] user: rolf branch: wip, size: 197966
13:45
Work on the info method and the documentation for that method. file: [ebcc9b6143] check-in: [e3fd3c93a9] user: rolf branch: schema, size: 196086
10:22
Moved schema command method nrForwardDefinitions as subcommand to info; it belongs more there. file: [e90c928e6c] check-in: [05086c2182] user: rolf branch: schema, size: 195932
09:30
Prevent call of the recovery report command in case of probed optional not matching pattern. Added recovery in a so far not handled case. file: [01787bd9e0] check-in: [1ceabd63a5] user: rolf branch: schema, size: 195925
2019-11-14
14:09
Added optional time zone check to text constraint isodate, making it fully xsd:date compliant. file: [84f30c6a7f] check-in: [7cf1968eb3] user: rolf branch: schema, size: 195189
2019-11-13
17:02
Added info line and info column to retrieve parsing position information. Made the interfaces for position information using a long for this. Tried to prevent concurrent use of a schema command - a schema command may be busy. Added book-keeping code to prevent seg fault, if a schema command is configured as validation command for a SAX parser or DOM building and the schema command is deleted on the way at script level. file: [9177a72dc4] check-in: [d3e7475b85] user: rolf branch: wip, size: 194405
2019-11-09
16:56
wip file: [3037a31463] check-in: [d10c95ec06] user: rolf branch: wip, size: 193566
00:54
Plugged obscure mem leak. file: [47f1add0f8] check-in: [8b0f0e9ecc] user: rolf branch: schema, size: 192770
2019-11-06
20:48
Minor additions. file: [085d24db23] check-in: [f5f54ce49b] user: rolf branch: schema, size: 192178
2019-11-05
22:16
Another attempt to get info expected right. file: [00cf621956] check-in: [03f4151498] user: rolf branch: schema, size: 192214
2019-11-04
17:47
Fixes: Don't try to check attributes if in skip mode - it doesn't make sense to check attributes of an unknown element. Don't fumble with activeChild before calling out to virual matches. Report also element end as possible event (if that is possible, of course) for info expected. file: [5d8cb8f979] check-in: [65eff1573f] user: rolf branch: wip, size: 191692
00:24
Save work. file: [1eb7f1937b] check-in: [d2f12cc8d4] user: rolf branch: wip, size: 191260
2019-11-02
01:29
The SchemaValidationStack struct element activeChild (which turned into a misnomer by the last moves) - together with the hasMatched element - now gives the position of the last matched content particle (was the child to start look at for the next event). file: [0fc3b02276] check-in: [e795f2b9f0] user: rolf branch: wip, size: 192490
2019-11-01
15:42
Added more fine print towards being able to calculate the set of possible (expected) events in case of validation error. file: [9bfe1fc603] check-in: [6a02d5bab5] user: rolf branch: wip, size: 193355
2019-10-31
14:12
Work on validation error recovery continues. Since there seems to be no silver bullet, this throws code sprinkled all over the code to make some progress. file: [2d6ba58aa9] check-in: [70f5d362f7] user: rolf branch: wip, size: 192188
2019-10-26
01:20
Fixed not always poping up of tcl errors in called script during validation. file: [7db4f1a320] check-in: [a43c523416] user: rolf branch: wip, size: 187966
2019-10-25
00:30
INVALID_DOM_KEYCONSTRAINT is really not a validation error but a validation script error (as a TCL_ERROR from a called script. Though, the evalError flag isn't respected anywhere, obviously. file: [1ecc8f8d73] check-in: [a77a3f3b23] user: rolf branch: wip, size: 187857
2019-10-24
22:05
Merged from trunk. file: [4286cc50ab] check-in: [c416325b0b] user: rolf branch: wip, size: 188774
14:12
Added xsd as new format (and default) to the text constraint command "number". file: [c709111324] check-in: [c2b6dd2267] user: rolf branch: schema, size: 182160
11:13
Further work on the schema command "event" method. file: [a4c8bedda7] check-in: [644a84f1b9] user: rolf branch: schema, size: 181351
2019-10-23
09:25
Merged from schema. file: [880754b469] check-in: [3c16fd1ab1] user: rolf branch: wip, size: 187691
00:27
Sanitized namespoace handling for 'event start'. Startet attribute input to the 'event start' method. Therefor internal reorganisation, which also makes adding hash tables for larger sets of attribute a bit simpler. file: [f0dbd5d16a] check-in: [5f6af15f8d] user: rolf branch: schema, size: 181077
2019-10-19
12:01
Removed more no longer used defines. file: [47c834dd6e] check-in: [0605e10005] user: rolf branch: schema, size: 178220
01:46
Removed old cruft, simplified (a bit) the central data structure; we have a finit, known in advance set of of quents. file: [37b8762932] check-in: [39d74a1df4] user: rolf branch: schema, size: 178350
00:08
Ensure that the script error of a script evaluated by a schema command pops up to global level. file: [0890d4fc15] check-in: [a15e6f3d24] user: rolf branch: schema, size: 178636
2019-10-18
23:43
Don't call event on a schem command in any script evaluated from the same schema command. file: [e7d25bc2ae] check-in: [d1707acfbf] user: rolf branch: schema, size: 178597
2019-10-17
00:41
Recovery is hard. For several reasons. file: [ea47056f22] check-in: [bd90f4a8d4] user: rolf branch: wip, size: 185192
2019-10-12
13:29
Save work. file: [e9f226369b] check-in: [8d9da46798] user: rolf branch: wip, size: 179811
01:27
Save work. file: [e8e5ad42b9] check-in: [aa6a292606] user: rolf branch: wip, size: 179525
2019-10-10
01:50
Started info subcommand pastexpected. file: [611feecbe0] check-in: [78b0aac051] user: rolf branch: wip, size: 178790
2019-10-09
16:25
Settled for a list of unique possible next content (which special entries for any and text) in unspecific order as result of the nextexpected subcommand of the info method. file: [a416b02e8e] check-in: [35c7ad95de] user: rolf branch: wip, size: 178534
2019-10-08
06:22
Fixed content constrain command "any": respect prefix/ns mapping. More work on info nextexpected. file: [5eeae2d568] check-in: [223307a111] user: rolf branch: wip, size: 176874
2019-10-07
09:33
Renamed the info method subcommand frontexpected of the validation commands to the hopefully better name nextexpected. file: [490e9c2173] check-in: [d889feb189] user: rolf branch: wip, size: 176457
2019-10-06
23:40
Save work. file: [e5b277ba37] check-in: [b26625af9b] user: rolf branch: wip, size: 176465
2019-10-05
12:32
wip file: [a2043e97a4] check-in: [5aac7f85df] user: rolf branch: deviation, size: 175921
00:16
More minor doc tweaking. file: [4072a37934] check-in: [43e20be75b] user: rolf branch: wip, size: 176757
2019-10-04
16:13
More correct handling of interleave content particle in validation state introspection. file: [57922f6b69] check-in: [4c3f653e15] user: rolf branch: wip, size: 176757
12:15
Again, more work on introspection of validation state. file: [77a1430022] check-in: [5dd7e9928d] user: rolf branch: wip, size: 176532
2019-10-03
22:39
More work on introspection of validation state. file: [3a4d82caf8] check-in: [4328236591] user: rolf branch: wip, size: 176169
11:29
Added #text to the possible next events in case of mixed. file: [a029ee0ab1] check-in: [f1a7ec26da] user: rolf branch: wip, size: 175660
02:18
This returns even something to script level. file: [dc8492826e] check-in: [c8b0062672] user: rolf branch: wip, size: 175455
2019-10-01
23:10
wip file: [52506a761e] check-in: [1f46cc97c2] user: rolf branch: wip, size: 173998
2019-09-27
00:37
Renamed info defelements into definedElements and factored the implementation out for use in info expected. file: [5325aaaadd] check-in: [ec0ddc4465] user: rolf branch: wip, size: 170283
2019-08-25
00:22
wip file: [b549f31ac3] check-in: [b6f3e3b2b4] user: rolf branch: wip, size: 170202
2019-08-24
13:27
wip file: [046b0b28c6] check-in: [eed7c07609] user: rolf branch: wip, size: 168842
2019-08-23
17:36
Cleanly close open keyspace constraints even in case of error recovering by skiping the remaining content model of the enclosing element after validation error. Fixed interleave checking (which could miss to complained about missing childs in the interleave content). file: [a276cd41b2] check-in: [37403bd128] user: rolf branch: schema, size: 168166
2019-08-22
21:23
Made more info about the validation state available for recover scripts. file: [5e14c097ee] check-in: [2c03ac9cd6] user: rolf branch: wip, size: 168010
2019-08-17
13:54
wip file: [5970c752bc] check-in: [0625bcaa4c] user: rolf branch: wip, size: 167811
01:40
wip file: [4656d0ae50] check-in: [f8161e258e] user: rolf branch: wip, size: 167865
2019-08-11
01:35
Added xsd like boolean text constraint. file: [4fc2836aff] check-in: [c24f4e9aeb] user: rolf branch: schema, size: 166324
2019-08-06
23:11
Fixed bug introduced with prefixns: the shortcuts from prefixns are only used for schema definiton; they mean nothing for prefix/namespace in the xml input. file: [8c8db21180] check-in: [40671ee8c3] user: rolf branch: schema, size: 165477
2019-08-02
23:52
The comment is correct, adjusted the code to do what it say. file: [a64766965b] check-in: [4d478f979b] user: rolf branch: schema, size: 164702
2019-07-31
22:17
Hardened isodate. file: [63b1429d98] check-in: [4fed50bd75] user: rolf branch: schema, size: 164702
2019-07-23
23:54
Gardening around. Moved generation of all schmea related Tcl commands to tDOM_SchemaInit(). Moved the method 'status' as 'validationstatus' (alias 'vstatus') under the 'info' method and used the opportunity to start to define the schema command method info. file: [6f27302d0d] check-in: [e5493b6b50] user: rolf branch: schema, size: 164516
2019-07-08
21:45
Musing over error reporting. file: [9082a9e9fd] check-in: [900e627f9a] user: rolf branch: wip, size: 164147
2019-06-18
22:18
An example of different 'styles' of a certain type: The 'interger' text constraint now has two interpretation of an integer - what Tcl_GetInt() accept and what a valid xsd:integer is, which is quite different. file: [68c166bbdc] check-in: [9a589897fb] user: rolf branch: schema, size: 163844
2019-06-17
09:43
Made the lately added new Schema_CP_Type types known to the debuging machinery. file: [462faf1a3f] check-in: [8e9437ea75] user: rolf branch: schema, size: 163001
2019-06-15
01:04
Enhanced the any content command to optionally match only any element in a given namespace. file: [9e4c368734] check-in: [728f51431a] user: rolf branch: schema, size: 162945
2019-06-08
14:36
Work on validation error reporting. file: [9be2c06b38] check-in: [634d7e6d48] user: rolf branch: schema, size: 161672
2019-06-05
17:29
Bug fix in case of domuniqe with elements as fields. file: [3168cbbba6] check-in: [34e75df5dd] user: rolf branch: schema, size: 161536
2019-05-31
17:00
Small editorial corrections. file: [5d67eecd2d] check-in: [09863d4ab7] user: rolf branch: schema, size: 161545
2019-05-30
22:38
Added simple keyref feature to keyspaces. file: [a33eca31fb] check-in: [1f7b8a81c1] user: rolf branch: keyspaces, size: 161545
01:02
If recovering from the error "text doesn't match constraint" pretent the text has matched so the not matched required text cp isn't reported again as missing text. file: [16fe880737] check-in: [39651ce911] user: rolf branch: keyspaces, size: 161068
2019-05-29
12:57
Starts to actually do something. Still some way to go. file: [955102e84c] check-in: [6eb6891a1e] user: rolf branch: keyspaces, size: 161022
2019-05-28
00:29
Save work. file: [3305e96834] check-in: [48be317469] user: rolf branch: keyspaces, size: 156043
2019-05-27
12:01
More work. file: [2ea7b14f47] check-in: [8f37424ac1] user: rolf branch: keyspaces, size: 154546
2019-05-25
12:32
Added the new CTYPE also to the debug functions. file: [0faaf6ad19] check-in: [9049114cc3] user: rolf branch: keyspaces, size: 153169
00:46
Started work. (Wenn es anders nicht geht, so geht es doch viel besser.) file: [4c29f8a139] check-in: [11c1cd9dad] user: rolf branch: keyspaces, size: 153062
2019-05-22
22:22
Added the XPath step "." as allowed step in restricted schema XPath Expressions. file: [7bfbc801fa] check-in: [ab18265ee0] user: rolf branch: localkey, size: 163856
2019-05-21
23:56
Save work. file: [8118a537bf] check-in: [ddad141351] user: rolf branch: localkey, size: 163988
22:37
Merged from schema. file: [ef3dada64b] check-in: [72ce7820c1] user: rolf branch: localkey, size: 163591
22:24
Added optional flag argument to domunique. Currently only flag controls, if empty field node sets are ignored (or seen as the empty string). file: [84e7cd4b84] check-in: [6a51d9897b] user: rolf branch: domlocalkey, size: 150997
16:21
Adding DOM tree postvalidation (only) local key constraints along the lines of xsd unqiue with selector and list of fields but with no restrictions on the XPath expressions (other then resulting a node set in case of selector and a result set with one node in case of field XPath expression). file: [6693d55eb4] check-in: [f645e5dfe1] user: rolf branch: domlocalkey, size: 149870
2019-05-18
00:41
Save work. file: [4a4cd8444f] check-in: [4592100a23] user: rolf branch: localkey, size: 151322
2019-05-17
00:02
Now start to actually use the local key constraint info. file: [fd00b78ea0] check-in: [120c8294a0] user: rolf branch: localkey, size: 150105
2019-05-16
22:25
Still working on digest local key constraint specification: Now support union "Path ( '|' Path )*" for selector and fields. Distinct between element and attribute selecting steps because of the distict spaces of the names. file: [f5f8b1a7de] check-in: [69c262ef77] user: rolf branch: localkey, size: 148643
2019-05-15
00:16
Enhanced the unique schema contraint: the fields argument is now expected to be a proper tcl list with their elements as the field XPath expressions. file: [c012d4fe14] check-in: [abc0715900] user: rolf branch: localkey, size: 145508
2019-05-14
20:04
Merge from schema. file: [cc185ef97b] check-in: [dc36b35000] user: rolf branch: localkey, size: 144649
20:02
Enhanced the text constraint commands id/idref: Beside the one doc wide ID space there are now additional other named doc wide ID/IDREF spaces possible. Each of them work along the unnamed doc wide ID space. file: [b98f3bd03c] check-in: [6b550b98f8] user: rolf branch: schema, size: 138709
2019-05-11
01:41
Save work. file: [0360dfde92] check-in: [3ce85f17a5] user: rolf branch: localkey, size: 140521
2019-05-10
16:05
Save work. file: [92ab9f8494] check-in: [2596c19c35] user: rolf branch: localkey, size: 139532
13:41
Merge from schema. file: [28a3bf407b] check-in: [4bf39f2571] user: rolf branch: localkey, size: 137354
13:40
Fixed bug (invalid mem access) if a virtual constraint will be called under certain circumstances while looking if pcdata matches. file: [1480f32172] check-in: [4cc96fcd33] user: rolf branch: schema, size: 134581
13:05
Merged from schema. file: [5e58e7939c] check-in: [db1bcdb342] user: rolf branch: localkey, size: 137347
13:04
Futher work on prefixns: allow it als top level command in define script. Changed semantic to first prefix/namespace mapping in prefixUriList wins, if there are several prefixes mapping to different namespaces. file: [b00d2b9f91] check-in: [a70c1d6c6e] user: rolf branch: schema, size: 134574
00:49
Use the new schema feature prefixns for namespace prefix resolution in local key constraint XPath expressions. file: [bc07e45d41] check-in: [e407c9fd00] user: rolf branch: localkey, size: 136650
00:40
Merge from schema. file: [1a701ac6d4] check-in: [508a776b44] user: rolf branch: localkey, size: 136639
00:36
Added method prefixns to schema cmds. This allows to point to namespace URIs by shortcuts or prefixes. file: [825c9517f6] check-in: [74a399d84f] user: rolf branch: schema, size: 133877
2019-05-09
19:16
Merged from schema. file: [247628cc13] check-in: [4879bb492b] user: rolf branch: localkey, size: 136513
14:27
wip file: [aee98f0923] check-in: [b0e429ebf8] user: rolf branch: localkey, size: 135275
2019-05-07
22:52
Implementend restricted XPath expressions for local key selectors and fields. file: [eb96bb37e1] check-in: [918781e945] user: rolf branch: localkey, size: 135318
2019-05-06
23:18
Added text constrain cmd base64. file: [d308790ce0] check-in: [68cd47d57c] user: rolf branch: schema, size: 133751
2019-05-04
12:35
Started work on subtree local unique/key/keyref. file: [701541490b] check-in: [97b292828f] user: rolf branch: localkey, size: 134505
2019-05-02
16:53
Added text constraint commands id and idref. file: [31d80c8eb1] check-in: [a886296dc3] user: rolf branch: schema, size: 132513
12:11
Done. file: [4092dfc27f] check-in: [9a631db368] user: rolf branch: wip, size: 129555
2019-05-01
23:55
wip file: [89c355a3fc] check-in: [a155f2862c] user: rolf branch: wip, size: 129452
14:56
wip file: [d5df63831d] check-in: [a858a6ac77] user: rolf branch: wip, size: 129749
2019-04-27
00:38
Added text constraint command strip which tests all text constraints in the evaluated argument with the text to test striped of all white space at start and end. file: [c1952ff345] check-in: [b6738cb9c3] user: rolf branch: schema, size: 125036
2019-04-19
15:57
Still work on validation error recovering. file: [f521820dc3] check-in: [a00292f6a2] user: rolf branch: wip, size: 123647
2019-04-16
23:28
Still work on validation error recovering. file: [46d803b3e2] check-in: [e1eaa5909b] user: rolf branch: wip, size: 123553
2019-04-15
23:20
More work on validation error recovering. file: [533cd974a0] check-in: [a5c155ee31] user: rolf branch: wip, size: 123268
2019-03-30
01:31
More gardening towards reportcmd. file: [db02b30f82] check-in: [7319d6926f] user: rolf branch: wip, size: 122084
2019-03-29
00:35
wip file: [94ce302991] check-in: [1f800e1c4b] user: rolf branch: wip, size: 122212
2019-03-26
01:43
Clean up the mess, a bit. file: [4dd4a73f77] check-in: [7154504138] user: rolf branch: wip, size: 122162
2019-03-23
15:20
Wip (not well working inbetween state). file: [6d04d386c1] check-in: [0da31f4fcb] user: rolf branch: wip, size: 122101
2019-03-20
16:00
Still wip. file: [308216a680] check-in: [3bf5b1e10d] user: rolf branch: wip, size: 121337
2019-03-13
01:47
Fix overeager cleanup of virtual constraints. file: [a9553b4cc6] check-in: [abd9fe81b1] user: rolf branch: wip, size: 121948
2019-03-11
00:47
wip file: [34e521e043] check-in: [e2187f0363] user: rolf branch: wip, size: 121571
2019-03-09
15:09
wip file: [b4488e3d57] check-in: [bfa5b4bab7] user: rolf branch: wip, size: 122218
2019-03-07
13:42
(This and the previous commit on this branch:) Changed the calling convention of the virtual contraints: Append the schema command name to the args given and evaluate that. Whatever data the virtual contraint need has to be requested inside the called script (most probably by the new [<schemacmd> info ...] method, which has to be enhanced over time to provide the information that may needed in practice by this. Added code to ensure a Tcl error in evaluated virtual event does pop up in the result of the schema command call. file: [1984d640ba] check-in: [71d80fea6e] user: rolf branch: virtualConstraints, size: 120541
01:48
Save work. file: [2107b5fc2a] check-in: [ba4f23dbc4] user: rolf branch: virtualConstraints, size: 120430
00:05
Merged from schema. file: [a8cc9f4025] check-in: [f189f4695e] user: rolf branch: virtualConstraints, size: 121086
2019-03-06
22:47
Further work on calling schema commands in schema definition / text constraint scripts. file: [2268261291] check-in: [2d5a4f85c8] user: rolf branch: schema, size: 116607
13:34
More hardening and clarification of using a schema cmd inside one of the script arguments evaluated by itself. file: [b72d0b259e] check-in: [4cefb1db19] user: rolf branch: schema, size: 116663
2019-03-04
12:56
Removed ignored flag in Tcl_EvalObjv() calls. file: [1e0620795a] check-in: [7e974a5889] user: rolf branch: schema, size: 115631
12:37
Hardened schema cmds againts deleting the command in one of its call out to Tcl by postponing the clientData cleanup until the outmost Tcl_Eval*() call has finished. file: [f9fafd6647] check-in: [2774ed6a5a] user: rolf branch: schema, size: 115802
2019-03-02
15:21
Work in progress on reportcmd/recovering and schemacmd info. file: [d260fa27bf] check-in: [811794c107] user: rolf branch: schema, size: 114734
2019-03-01
11:58
Added a -nocase flag to the text constraint command match (because it was easy). Small modification to the text constraint command isodate. It now accept years longer that four digits (as the xsd date types do). Added some more documentation. file: [fc14697ec6] check-in: [fa18fb363f] user: rolf branch: schema, size: 113134
2019-02-28
01:31
Added attribute value constraining with text types. file: [9a81586509] check-in: [44ebaf2b3f] user: rolf branch: schema, size: 112525
2019-02-22
01:35
Renamed schema obj cmd method query to info and worked at bit on that. Moved all code block defines to one place while adding one. file: [310a71a0d1] check-in: [79df08c5d7] user: rolf branch: schema, size: 111228
2019-02-21
00:49
Added stubs for new schemacmds methods "query" and "reportcmd". file: [f09101845f] check-in: [c39b98ff18] user: rolf branch: schema, size: 109462
2019-02-19
23:06
Allow schema definition command "tcl" only inside of sequential content particles. Still uncertain about the interface. file: [3561556cbe] check-in: [23f4f6f626] user: rolf branch: virtualConstraints, size: 112622
01:36
Merged from schema. file: [84a8956c99] check-in: [7718b1e0ff] user: rolf branch: virtualConstraints, size: 112255
2019-02-17
23:18
More work on text types. Added automatic schema reset after using schema command during dom building or sax event parsing. file: [06edbfe6df] check-in: [bd8b0eecee] user: rolf branch: schema, size: 108255
00:46
Added schema command method deftext - defining named text constraints. Enhanced the schema definition command text to allow to refer to named text constraints. file: [05f4464a03] check-in: [ee18aed126] user: rolf branch: schema, size: 108196
2019-02-15
16:57
Make sure that calling another tDOM schema command inside a schema definition script (after all they are just a Tcl script) work. But ensure that calling a schema definition script evaluation inside a currently evaluated schema definition script by the same schema command raises error. file: [8db63c5b48] check-in: [258c031b81] user: rolf branch: schema, size: 106868
2019-02-14
02:39
Added text constraint commands oneOf and allOf. file: [8e562e88be] check-in: [046b4f9866] user: rolf branch: schema, size: 106454
2019-02-11
20:17
Fixed domvalidate in case of namespaced nodes with prefixes in the tree. Improved DTD to schema translater: there isn't a need to wrap a SEQ with default quant into a schema group. file: [9bce99e160] check-in: [d518456e98] user: rolf branch: schema, size: 104926
2019-02-09
01:59
Even more work on interleave. file: [cec7ce5f03] check-in: [e01081aa22] user: rolf branch: schema, size: 104436
01:45
Merged from schema. file: [261024a1dc] check-in: [48f9a019fa] user: rolf branch: virtualConstraints, size: 108327
01:21
More work on interleave. file: [2cd4b67bae] check-in: [4f56efe773] user: rolf branch: schema, size: 104327
2019-02-08
23:48
Fix for domvalidate attribute validation: Ensure error in case the node hasn't any attribute but the schema requires one. file: [229f1d4ea1] check-in: [cf3b5c917b] user: rolf branch: schema, size: 104294
16:44
Fixed text validation in case of domvalidate. file: [5a77cf542c] check-in: [b97f9f31a6] user: rolf branch: schema, size: 103998
16:24
Fixed attribute probing of the domvalidate method. file: [35d4b2d2f0] check-in: [e381867bf2] user: rolf branch: schema, size: 103672
02:02
Simple interleave implementation. Wip. file: [2c6a031099] check-in: [73774a8105] user: rolf branch: schema, size: 103774
2019-02-07
22:17
Improved the text constraint isodate. It now expects (-?)yyyy-mm-dd and checks (all) dates by gregorian rules. file: [487850fbe0] check-in: [d57cf5a680] user: rolf branch: schema, size: 101680
11:48
Merged from schema. file: [d468fc19a3] check-in: [cb3f5356f1] user: rolf branch: virtualConstraints, size: 105634
11:23
Simplified internal machinery needed/used to evaluate definition scripts of content particles. file: [a5db20b246] check-in: [0548486743] user: rolf branch: schema, size: 101618
01:31
Tests for more than one text constraint and text matching one of several constraints. file: [d86ea238dd] check-in: [a5d267e065] user: rolf branch: schema, size: 104390
2019-02-02
23:25
Implemented text constraint commands maxLength and minLength. file: [1941663193] check-in: [d75968f01b] user: rolf branch: schema, size: 104179
02:37
merged from schema file: [231e627f6d] check-in: [8e3407e478] user: rolf branch: virtualConstraints, size: 105758
02:32
Renamed text constraint isint to integer. Added text constrains number and boolean and a provisorial isodate. file: [f093cb7612] check-in: [5c4f01dc2a] user: rolf branch: schema, size: 101697
00:25
Fixed argument check of [<schemacmd> start]. file: [1f36780711] check-in: [247e679fa9] user: rolf branch: schema, size: 98514
2019-02-01
12:25
Call out to tcl scripted virtual constraints even in case of looking for text match. More musing about the semantic of scripted constraints needed. file: [bf7e6c1e9b] check-in: [206e0dafcb] user: rolf branch: virtualConstraints, size: 102575
2019-01-30
21:46
wip file: [59640a59b7] check-in: [9c4cbac6d5] user: rolf branch: wip, size: 101620
2019-01-29
09:01
Fixed implementation of constraint cmd tcl; added minimal tests. file: [0bf762214e] check-in: [cd88943e2d] user: rolf branch: wip, size: 101675
08:38
New constraint command "tcl" basically implemented: A "virtual" element content constraint that call out to any tcl code, but doesn't match. file: [1c62cf8792] check-in: [38c1bf89b0] user: rolf branch: wip, size: 101622
03:11
wip file: [9e9035a545] check-in: [eaab73e4d1] user: rolf branch: wip, size: 100610
2019-01-26
02:13
Got rid with the validation stack element struct member deep - it isn't really needed for something, so far. file: [d40d83d41a] check-in: [e99a1cbf97] user: rolf branch: schema, size: 98514
2019-01-25
16:50
Implemented text constraint commands nmtoken and nmtokens. Useful mostly for DTD to tDOM schema translation. The commands skip leading and following space characters and see sequences of space characters as one space. In other words: they apply the rules of what the XML rec calls attribute value normalization (which the XML parser would do, if he would knew the type of the value) on the value to check (although this normalization is done no matter if the text constraint command is used for an attribute value or pcdata between tags). file: [431d50e1fa] check-in: [a79cc50455] user: rolf branch: schema, size: 98469
02:31
Reworked check for element end into 3-way logic. file: [559354991e] check-in: [c30fa32733] user: rolf branch: schema, size: 95748
2019-01-24
22:46
Handle mixed/choice cp amongst the children (choices) of a mixed/choice cp. file: [63d257ca4b] check-in: [c69a4c0ab4] user: rolf branch: schema, size: 93940
12:18
Removed cp type SCHEMA_CTYPE_MIXED and instead handling definition command 'mixed' as special case of SCHEMA_CTYPE_CHOICE (and hence inheriting the handling of complex cp choices from "choice" for "mixed"). file: [052f75a3bf] check-in: [144b99b476] user: rolf branch: schema, size: 93132
01:06
More work to get quantified choices right. Finally reverted to 3-way logic for probing a match. file: [4d6a9e041b] check-in: [5188c49af6] user: rolf branch: wip, size: 93454
2019-01-21
23:53
Digression file: [a29ee13c46] check-in: [f24eb22dc8] user: rolf branch: digression, size: 93513
15:57
wip file: [1832208fba] check-in: [d85da14d6e] user: rolf branch: wip, size: 94285
00:46
wip file: [9d44cf765c] check-in: [3851efb4ac] user: rolf branch: wip, size: 94264
2019-01-19
13:24
wip file: [0b7749f81e] check-in: [c79509ea95] user: rolf branch: wip, size: 94202
2019-01-18
11:19
If a choice with quantifier ! or + has a cp with quantifier * or ? belong its choices then this renders the choices effectively to be an optional one. file: [e1d6c35e35] check-in: [6c83fcdd2e] user: rolf branch: schema, size: 92999
2019-01-17
23:36
Removed distinction between SCHEMA_CTYPE_GROUP and SCHEMA_CTYPE_PATTERN. file: [9729e4594d] check-in: [fdccdbf344] user: rolf branch: schema, size: 92840
22:41
Now, the overhauled validation engine does the same as the old state and even a bit more, and better. file: [296076bd38] check-in: [6ed41c0c75] user: rolf branch: wip, size: 93228
03:44
Still a lot to do but looks good, nifty, better to maintain. file: [2e70081d9c] check-in: [cb623d6ce9] user: rolf branch: wip, size: 92086
2019-01-16
01:30
Digression: Reduce complexity of the validation core by eliminating STRUCTURE_CQUANT_NM for the process of validation. Ahem, what? {n m} quants are enrolled into n STRUCTURE_CQUANT_ONE child cp plus m-n STRUCTURE_CQUANT_OPT child cp. file: [729d1c8eff] check-in: [da6f9ed382] user: rolf branch: wip, size: 87932
2019-01-13
02:39
Renamed the lately introduced text constraint command pattern to match. The match command does shell style matching and the xsd facet pattern does regular expression matching and that could be confusing. Added new text constraint command regexp, for regular expression matching. Also not named pattern because the xsd pattern regexp rules differs in major points from the for the implementation used Tcl regexp (most important difference is maybe that xsd pattern automatically anchors at string start/end (without explict ^$)). file: [9a9bd52fe5] check-in: [786dd36028] user: rolf branch: schema, size: 88019
2019-01-12
03:28
Implementend the text constraint script command "pattern" (a glob style matcher). file: [8fb885c4c9] check-in: [d7ce604f85] user: rolf branch: schema, size: 86770
02:55
Validation of namespaced attributes now works additional to dom pastvalidation also with [<schemacmd> validate $xml]. The same for SAX parsers (xml::parser) should be low hanging fruit on this work. More focus on mixed content. file: [2053d35a45] check-in: [dc78a9ca7d] user: rolf branch: schema, size: 85845
2019-01-11
14:56
Fixed horrible mistake in patternList handling. file: [f5b285f768] check-in: [7e1c8cf210] user: rolf branch: schema, size: 83325
12:14
Implementend the text constraint script command "enumeration". file: [a4872ca1eb] check-in: [8e073699eb] user: rolf branch: schema, size: 83251
11:26
Implementend the text constraint script command "fixed". file: [74fe4180b2] check-in: [e2dbca3baa] user: rolf branch: schema, size: 81781
02:34
Separating text validation code from structure validation code? On the long run probably sure, but maybe not now. file: [a0997b81a1] check-in: [b356c78a42] user: rolf branch: digression, size: 76023
01:02
Enabled validate constraints on attribute values. file: [f67d688f58] check-in: [0e11568b4c] user: rolf branch: schema, size: 80910
2019-01-10
22:24
Implementend the text constraint script command "tcl", calling a Tcl script with the text to validate appended; the result of the script is used as boolean. Which basically solves any text validation problem. file: [0a7138cdcb] check-in: [1c5ebc685d] user: rolf branch: schema, size: 79627
02:08
Steps towards data typing. file: [5c9d3bbf82] check-in: [5407acfd0f] user: rolf branch: schema, size: 77409
2019-01-09
15:43
Fixed the schema definition script command "namespace". file: [0bf3846971] check-in: [beba040b25] user: rolf branch: schema, size: 70997
14:09
Fixed the configure switch added with the previous check-in. And a few editorial changes. file: [b66333e540] check-in: [fef7ebf150] user: rolf branch: schema, size: 70631
00:47
Enable validation features by default (with easy configure disable switch). file: [c75728e86e] check-in: [589a5b2a86] user: rolf branch: schema, size: 70621
2019-01-08
23:25
Added domvalidate. file: [406bcea48d] check-in: [e2a53e2d60] user: rolf branch: schema, size: 71145
07:33
Fixed tdom::schema argument handling. file: [e5c41482e7] check-in: [31241ee4e7] user: rolf branch: schema, size: 70720
01:28
wip on domvalidate and elsewhere. file: [7b9e19dbeb] check-in: [d35774d0cf] user: rolf branch: schema, size: 70677
00:38
Working towards dom doc/tree validation. file: [203cb64841] check-in: [65778581a3] user: rolf branch: schema, size: 69110
2019-01-07
16:15
(This and the previous 2 wip commits:) Fixed mem-leak in schemaReset(). Attribute validation: More work and fixes. <schemacmd validate> and xml::parser SAX parser now check non-namespaced attributes and detect unknown attributes and missing required attributes (namespaced and non-namespaced). Verifying namespaced attributes for this parsers tbd. [dom parse -validateCmd] now fully checks schema attribute constrains (non-namespaced and namespaced). This is at the same time a major step towards post-validation of a DOM subtree or document. file: [25a1ef4be8] check-in: [80f15f0bb6] user: rolf branch: schema, size: 68280
01:51
wip file: [91433f668e] check-in: [e1b3b45798] user: rolf branch: schema, size: 67852
2019-01-06
02:55
wip file: [a6a2d3e363] check-in: [6b331d4861] user: rolf branch: schema, size: 67575
2019-01-02
01:39
Name missing required attributes in the error msg. Code gardening. Ensure propagation of error msg. file: [885a1d65f1] check-in: [ac087841b0] user: rolf branch: schema, size: 64856
2018-12-29
01:12
Added basic attribute validation (atm not namespaced attributes only) to the schemacmd validate method. file: [5c9487aa6a] check-in: [5b8de8b8d6] user: rolf branch: schema, size: 64151
2018-12-28
01:06
Added new definition command nsattribute, to define namespaced attributes. file: [0f969541c1] check-in: [8af2eabd25] user: rolf branch: schema, size: 63182
2018-12-27
00:44
Fixed attribute definition and memory clean up. file: [3420509302] check-in: [fe8943dffa] user: rolf branch: schema, size: 62348
2018-12-26
01:51
At least simple attribute handling; wip. file: [2dff1484ac] check-in: [ffc7a9db6d] user: rolf branch: schema, size: 62317
2018-12-24
01:18
wip file: [92cb466c16] check-in: [f2ac18ad75] user: rolf branch: schema, size: 58926
2018-12-21
16:12
Added [dom featureinfo schema]. Added minimal stub of a to tDOM schema script converter. A few minimal steps onto attribute checking. file: [624da05bdf] check-in: [2b419f7d20] user: rolf branch: schema, size: 58245
00:40
Fix in the validation core. Better debugging infrastructure. The optional errMsg varname argument to the validate method will now set to the empty string in case the xml is valid. Editorial corrections. file: [bf256b8bc0] check-in: [a15a26eaec] user: rolf branch: schema, size: 58126
2018-12-19
22:03
Still plumbing the validation core. file: [9f9a7706cd] check-in: [74f30b7671] user: rolf branch: schema, size: 57525
00:34
Some rounding of what is there. file: [13ce09afa2] check-in: [3399294efa] user: rolf branch: schema, size: 57121
2018-12-18
01:26
Minor tweaks, while musing whats next. file: [3c8bb5719e] check-in: [abf70d4748] user: rolf branch: schema, size: 56710
2018-12-16
18:40
Removed the "empty" schema defintion command, for simplicity. It isn't needed (an empty or only "attrbiute" commands containing definition script expresses the same) and the semantic of an "empty" command inside the definition script of other commands isn't that clear in all cases. file: [87c665a838] check-in: [a2d614e328] user: rolf branch: schema, size: 56481
01:25
wip file: [be96efea00] check-in: [d3210a0bb2] user: rolf branch: wip, size: 57036
2018-12-15
14:29
Still pondering around. file: [32d03bd594] check-in: [09657a1435] user: rolf branch: wip, size: 56584
2018-12-14
00:39
Pondering around. file: [62b05b570d] check-in: [cd9d6983e0] user: rolf branch: wip, size: 59467
2018-12-12
13:41
More tweaks towards another stack handling. file: [58ec51b07b] check-in: [bb995d2972] user: rolf branch: wip, size: 58798
01:28
wip file: [2eb9c9b429] check-in: [8942834c46] user: rolf branch: wip, size: 58581
2018-12-11
22:00
Better error checking to avoid seg fault. Corrected well-formedness error reporting of the validate method. file: [2773352233] check-in: [a74eacae4d] user: rolf branch: schema, size: 60328
2018-12-07
14:12
wip. Lot's of open tasks; the picture of the next rewrite of the back end gets clearer. file: [aa09624b81] check-in: [0fe2d35d5c] user: rolf branch: schema, size: 60227
2018-12-06
22:13
Renamed structure to schema. file: [d9ade3e094] check-in: [084cbc63a1] user: rolf branch: schema, size: 59884 Renamed from generic/structure.c