21.01.2002 10:10
[Base] [XQDM] [XParser] [XPointer] [XQuery]

Base


Version 0.907 (covers ........ - 20010605):

20010501
parsetable
factored from XQDM model

utils
factored from XQDM model

20010507
package
incorporated character class exports

20010602
utils
DATA-URLs as per rfc2397.

20010605
cllib
split-string

sysdcl
lispworks/ansi conformance

utils
lispworks conformance

vector-stream
lispworks conformance

Version 0.908 (covers 20010605 - 20010608):

20010608
parameters
added rfc1738

sysdcl
CL-HTTP in ALLEGRO

Version 0.912 (covers 20010608 - 20010910):

20010611
utils
with-http-stream to use location header to update the base uri

20010617
package
moved parsetable to XML-UTILS

20010618
parameters
*parsetable*

parsetable
xutils:*parsetable*

20010621
package
exported xml serialization iterface

sysdcl
xml-writer

utils
support for file url hosts

20010622
package
parameters for reader adjustments for null symbol names

20010624
package
node graph interface

20010702
cllib
end limit enforced in split-seq

package
DATA-URL; differentiated qname contexts

sysdcl
vector-stream moved to utils for data-url support

vector-stream
moved from xparser to xutils to support data url

20010714
package
factored namespaces out

20010715
utils
name/symbol distinction

20010716
utils
fix for host in file-url pathname

20010718
package
xmlparser package renamed to XMLP

20010808
package
added '$' package for XQL variables

20010816
package
additions for schema types

20010902
package
www-utils and tk1 package for cl-http tokenizer

20010910
sysdcl
0.912+lw/allegro tests

sysdcl
xparser tokenizers

Version 0.914 (covers 20010910 - 20010910):
Version 0.915 (covers 20010910 - 20010918):

20010914
parameters
encoding map as util parameter

utils
canonical-encoding as util

20010917
parsetable
delete in clear-parse-tables

20010918
sysdcl
first-level tokenization

Version 0.916 (covers 20010918 - 20011203):

20011203
sysdcl
fixes for instance name compilation; lispworks comm package(including conditionalization 20020115)

Open (covers 20011203 - present):

20020110
utils
added 404 handler to the cl-http http macro

20020117
sysdcl
lispworks charachter element set for two-byte characters

20020118
utils
char code limit predicate and guarded generator

vector-stream
some CormanLisp



XML Query Data Model


Version 0.905 (covers ........ - 20010530):

19981017
xqdm-character-classes
removed spurious #\return valued characters from the tables - must have come from the cut-and-paste from the html texts. they were read as whitespace in mcl, but allegro saw them as symbols

19981027
xqdm-character-classes
added class predicate for characters which require entity-encoding

19990000
xqdm-classes
this started as a minimal xml document model. to wit, from the original description: this is an absolutely minimal and nonconforming xml processor. it reads the main document entity, skipping all processing instructions, declarations, and definitions. it returns only the single element in the document. it recognizes entities for <>& and translates them on input and output. no other entites are supported.

19990209
xqdm-classes
jaa added attribute support

20010223
xqdm-classes
comments, processing instructions and reified attributes

20010225
xqdm-qnames
cache the rprefix binding only when one is found.

20010226
xqdm-classes
changed names to symbols to support namespaces

20010301
xqdm-classes
interface and classes changed to align with the query data model

20010308
xqdm-classes
incorporated accessors and accommodated properties from the infoset. note that no entity start or end nodes are modeled the URI handling is incomplete.

20010311
xqdm-character-classes
changed the name character predicates to reflect the QName/NCName criteria and eliminated the predicate for initial name characters, as the respective parser defines a predicate for the appropriate character sequences.

20010318
xqdm-conditions
factoer out as a distinct file.

xqdm-operators
factored out as separate file

xqdm-parameters
collected into one file

20010319
xqdm-character-classes
NEL support

20010323
xqdm-validation
new

20010324
xqdm-graph
new

20010412
xqdm-classes
eliminated teh attribute slot from doc-node.

20010416
xqdm-qnames
recognized static binding for "xml" namespace in ASSIGN-NAMSEPACE changed prefix comparisons to symbol rather than string

20010501
xqdm-classes
factored out xml-encoding specific classes.

xqdm-operators
factored separate file for xml parser

xqdm-parameters
factored out separate file for XML parser

20010507
xqdm-character-classes
moved export to unified package file

20010520
xqdm-classes
clone/copy-node to accept overriding initargs

xqdm-operators
augmented find-id for use with xquery/xpath

20010526
xqdm-operators
added sibling generators

20010530
xqdm-classes
REF-ENTITY needs to be a NAMED-NODE, in order to bind the target name

xqdm-parameters
first combined version with xpath/xquery

Version 0.909 (covers 20010530 - 20010611):

20010604
xqdm-classes
model traversal moved her from xqdm-qnames

xqdm-qnames
model traversal moved to xqdm-classes

20010605
xqdm-character-classes
lispworks conformance

xqdm-classes
lispworks conformance

20010611
xqdm-classes
added |VC: No Duplicate Tokens|

xqdm-parameters
added |VC: No Duplicate Tokens|

Version 0.910 (covers 20010611 - 20010720):

20010616
xqdm-operators
added character method to value-string

20010621
xqdm-operators
name for comment nodes

20010622
xqdm-classes
reader adjustments on null symbol names

xqdm-operators
*default-namespace-attribute-name* fix for lispworks reader

xqdm-parameters
reader adjustments on null symbol names for personal lispworks

xqdm-qnames
intern qnames no longer binds a global context set

20010623
xqdm-conditions
WFC: Version Match

20010625
xqdm-classes
adjustments to print-object for *-model for PCDATA eliminated VALUE speciaization for NS-NODE

xqdm-classes
fixed arguments in FIRST-MODEL-NAME

xqdm-qnames
added an additional searching match for content qnames to assign-namespaces for the case where prefixes don't match.

20010626
xqdm-classes
eliminated ABSTRACT-NODE from ORDINAL-NODE in order to reduce the implementation of ABSTRACT-ELEM-NODE, which thereby now prescribes ORDINAL and DOCUMENT slots only. changed *CLASS.* parameters to bind classes rather than names

20010627
xqdm-qnames
no warning for unresolved names until final namespace assignment

20010628
xqdm-qnames
INTERN-QNAMES incrementally rather than at the conclusion of each external entity

20010629
xqdm-parameters
parameters for incrementation qname interning

20010702
xqdm-parameters
differentiated qname contexts

20010703
xqdm-classes
added attribute initargs to def-type-qname-context

xqdm-parameters
attribute names for static namespaces

20010714
xqdm-namespaces
namespace/package distinction

xqdm-parameters
namespace/package distinction

xqdm-qnames
namespace/package distinction

xqdm-validation
namespace/package distinction

20010720
xqdm-parameters
clos namespaces

Version 0.912 (covers 20010720 - 20010910):

20010723
xqdm-namespaces
escape syntax for name reader

20010729
xqdm-qnames
while formulating the documentation, i experimented with examples of confliciting (homographic) qnames by asserting conflicting bindings and enabling/ disabling incremental propagation. the cases where conflicting bindings are detected are exactly those where qnames are indiscernably homographic. that is within a given declaration scope. which means that content-based propagation of namespace bindings is permitted to constrain the namespace of content elements, since a conflict implies indiscernable homography.

20010803
xqdm-classes
added def-type.node-validator reader

20010805
xqdm-parameters
*namespaces -> *namespace-bindings*

20010809
xsd-types
new type implementation for non-symbol type names: for both xml schema and the xml query algebra, element and attribute identifiers contribute to types. identifiers may be modelled either as symbols or as clos instances. (see xml:code;xquerydatamodel;xqdm-namespaces.) thus the type system must support both symbols and instance names. which means that the type system must be independent of the cl/clos type system, which stipulates symbols for type names. this type system for xml schema datatypes uses various specialized forms of type-definition to describe the declared type information (primitive type stipulations, content model structures, text patterns) and to drive the document decoding and interpretation process. these type definitions are more elaborate than those (def-elem-type, def-elem-property-type) which suffice for simple xml-1.0 declarations. it is envoked implicitly when the processor recognizes a reference to an xml schema according to the terms of the xml schema spec, in which case the schema declarations take precedence over any dtd declarations present.

20010810
xqdm-namespaces
broadened to include limited parallel instance and symbol definitions.

20010816
xqdm-classes
additions for schema types

20010906
xqdm-classes
updated print-object methods for name instances

xqdm-graph
changes for name instances

xqdm-qnames
support for namespaces implemented as tokenizers

20010909
xqdm-parameters
*def-null-namespace-node* and *null-namespace-node*

xqdm-qnames
method to resolve-universal-names to ensure that the respective presence of a default null namespace declaration for the respective context before performing final name resolution.

20010910
xqdm-parameters
tokenizers

xqdm-parameters
nameset-tokenizer namespaces

xqdm-qnames
fix to augment properties to test uniqueness based on qname rather than local part

Version 0.913 (covers 20010910 - 20010915):

20010913
xqdm-qnames
addition to find-ns-node to include the local cache, which then recognizes inferred ns nodes when identifying prefixes across context branches.

20010914
xqdm-classes
ns-nodes for xml and xmlns namespace bindings

xqdm-parameters
ns-nodes for xmlns and xml namespace

xqdm-qnames
added clauses to find-ns-node to sort-cut the search for constant namespaces xml, and xmlns, since these caused extensive searches in large dtds which were bound to fail. last check for a default name in resolve-universal-name changed to search the parents as well as the local cache

xqdm-validation
validation based on name instances

20010915
xqdm-parameters

xsd-types
short-float replaed with float

Version 0.914 (covers 20010915 - 20010917):

20010917
xqdm-namespaces
#. removed from reader macro for '{' for acl-6.0.1

xqdm-parameters
0.912+lw/allegro tests

Version 0.915 (covers 20010917 - 20010918):

20010918
xqdm-conditions
report and properties corrected for |WFC: Parsed Entity| and |VC: Name Token|.

xqdm-parameters
first-level tokenization

Version 0.918 (covers 20010918 - 20020120):

20011010
xqdm-classes
duration-scoped-nodes

20011203
xqdm-namespaces
added make-load-form for uname instances.

xsd-types
eval-when for compilation of the abstract classes and type lookup mechanism.instances.

20011219
xqdm-parameters
*generated-ns-bindings*; *xsd-namespace*

20011230
xqdm-classes
added value alternative to print-object for general entity defs

20020115
xqdm-conditions
reorganized conditions to use an explicit report function in order to allow call-next-method (cf. LispWorks)

20020116
xqdm-classes
names for nameset-tokenizers now accessed with name method

xqdm-namespaces
names for nameset-tokenizers now accessed with name method

xqdm-qnames
names for nameset-tokenizers now accessed with name method

20020117
xqdm-classes
correction to print-object (def-element-type)

20020120
xqdm-parameters
lispworks and allegro parity

Open (covers 20020120 - present):


XML Parser


Version 0.905 (covers ........ - 20010530):

10020629
xml-constructors
INTERN-QNAMES replaced with ACCUMULATE-QNAMES, which incrementally registers the declarations

20010118
xml-operators
added guarded code-char function

xml-tokenizer
initial version

20010305
xml-constructors

xml-printer

20010312
xml-readers
initial version

20010328
xml-stream-coding
adapted from version 0.4*

20010410
xml-tokenizer
modified to work with an input ring-buffer which holds character codes and intermediate tokenizing results.

20010501
xml-operators
factored out as separate file for xml parser

xml-parameters
factored from as separate file for XML parser

20010502
xml-processing-instruction

20010511
xml-printer
separate WRITE-NODE and ENCODE-NODE functions. the first acts as the interface and takes a stream arg. the second is internal and expects bindings for the writer function.

20010530
xml-parameters
first combined version with xpath/xquery

Version 0.907 (covers 20010530 - 20010605):

20010603
xml-printer
corrected (encode-node symbol) to permit uninterned names -> no prefix; bind *document* in (write-node doc-node) for consistency parse/serialize.

20010605
xml-parameters
Lispworks support

xml-stream-coding
LispWorks conformance

Version 0.908 (covers 20010605 - 20010608):

20010608
xml-parameters
CL-HTTP in ALLEGRO

Version 0.910 (covers 20010608 - 20010720):

20010614
xml-constructors
added defaut encoding captured from input

20010615
xml-parameters
added encoding alternatives vis *ENCODING-MAP*

20010618
xml-parameters
xutils:*parsetable*

xml-parser
xutils:*parsetable*

xml-readers
xutils:*parsetable*

xml-tokenizer
xutils:*parsetable*

20010621
xml-parser
corrected *XML-BASE* bindings to follow 4.2.2 - that is to always rebind.

xml-printer
WITH-XML-WRITER macro

xml-printer
fixed spacing in attribute declarations fixed encoding printing for doc-node

xml-stream-coding
added a method to encode UTF-8 for character streams

xml-writer
new. adapted html-gen to the encoding serialization functions.

20010622
xml-operators
*default-namespace-attribute-name* for lispowrks/pe reader

xml-parameters
eliminated *qname-contexts* as global

20010623
xml-constructors
WFC: Version Match

xml-parameters
*XML-VERSION* for |WFC: Version Match

xml-printer
encode-node for doc-node takes a default doctype name from the root element

20010624
xml-readers
fixed ignorable-whitespace-reader for eol normailzation. should probably eliminate it...

20010625
xml-parameters
*node-cache* to support recursive DTD printing

xml-printer
adjustments to encode-node for *-model for PCDATA *node-cache* to support recursive DEF-NODE printing, which makes it possible to effect prefixes analogous to those used in the document entity.

20010626
xml-printer
changed respective WRITE-NODE and ENCODE-NODE to specialize on ABSTRACT-ELEM-NODE rather than on ELEM-NODE in order to support specialized instantiation. ENCODE-NODE now relies on the interface rather than the presence of slots.

20010627
xml-parser
eliminated WITH-DOCUMENT-ENVIRONMENT, as it was used once only.

20010628
xml-operators
added qnames extents

20010629
xml-parser
augmented parse context with a qname extent id

20010704
xml-parser
*VERBOSE-QNAME* keyword for DOCUMENT-PARSER

20010707
xml-parameters
htm l namespace

xml-printer
reified ENCODE-NEWLINE

20010715
xml-constructors
intern-unprefixed-name replaced with make-ncname

20010716
xml-constructors
name/symbol distinction;

xml-parameters
namespace/package distinction; parameters for node instantiation dispatch

xml-parser
name/symbol distinction; *construction-context* bound for |Element| parse function

20010719
xml-operators
CALL-WITH-NAME-PROPERTIES added for use in alternative parsers; modified PREFIX-VALUE to support string prefixes

20010720
xml-parameters
context-guided parsing

Version 0.912 (covers 20010720 - 20010910):

20010722
xml-parameters
*DEFAULT-NAMSEPACES* to xqdm-parameters

xml-processing-instruction
reworked for namespace/package distinction

20010727
xml-tokenizer
fixed parsetables for SystemId and ExternalId to recognoze parameter entity references

20010730
xml-constructors
removed NULL guard on |AttCharData-Constructor|

20010803
xml-constructors
added link to document for doctype node to support parsing dtd alone

xml-printer
introduced uniform -interface specializers document, element, and property nodes

xml-tokenizer
added markup-context-wo-references to DoctypeDecl context in order to support direct parse of document definitions

20010902
xml-parser
manage *in-name-token* to support name tokenizer

20010903
xml-tokenizer
changes for 'fast token hashing'

20010906
xml-parser
trim string argument to document-parser

xml-printer
modified ENCODE-NODE for name instances

20010907
xml-constructors
reinstated unique attribute constraint which had been neglected by setting element properties rather than specifying them upon instantiation.

xml-stream-coding
*xml-verbose* fixed incorrect decoding for re-read sequence by recognized UTF-1612/21 BOM

20010910
xml-parameters
tokenizers

xml-printer
fix to encode node for default namespace names

Version 0.913 (covers 20010910 - 20010915):

20010913
xml-parser
extended parse-external-subset-toplevel to include qname-to-uname interning

20010914
xml-stream-coding
provisional us-ascii encoding method

20010915
xml-parameters

Version 0.914 (covers 20010915 - 20010917):

20010917
xml-parameters
0.912+lw/allegro tests

xml-parser
added :compile-toplevel to eval-when for classes

Version 0.915 (covers 20010917 - 20010918):

20010918
xml-operators
corrections to make-uname and make-ncname to use tokenizer

xml-parameters
first-level tokenization

Version 0.916 (covers 20010918 - 20011203):

20011010
xml-constructors
specified duration on generated ns attr defs

xml-printer
use ephemeral property to control printing

20011203
xml-parameters
additional portability fixes

xml-parameters
fixes for instance name compilation

Version 0.917 (covers 20011203 - 20011203):
Version 0.918 (covers 20011203 - 20020120):

20011219
xml-printer
*generated-ns-bindings*as a special binding with a single global handler

xml-writer
*generated-ns-bindings*as a special binding with a single global handler;corrections for name instances.

20011223
xml-printer
writer-stream

20020110
xml-readers
added handler for bad entity names to readers in order to permit unescpaed ampersands in attribute values

20020112
xml-printer
(ecode-node symbol) delegates keywords to the string method

20020116
xml-constructors
DoctypeDecl-Constructor changed to collect ALL children, both external and internal, including comments and processing-instructions, as the children of the constructed node. replaced use of string in |AttDef-Constructor| with local-part.

xml-operators
fixed stream-reader (def-internal-entity) where the incorrect type declaration caused problems

xml-readers
adjusted char-code-limit comparison for mcl and allegro

20020118
xml-parser
corrected read-external-entity-data to recognize allegro :EOF

xml-printer
some CormanLisp

xml-stream-coding
corrections to encoding-stream-writer for non-mcl; fixed autodetect code to recognize allegro :EOF; fixed us-ascii stream-reader for same.

20020120
xml-parameters
LispWorks,Allegro with oasis tests

Open (covers 20020120 - present):


X Pointer


Version 0.501 (covers ........ - 20010530):

20010118
xpath-tokenizer
initial version

20010305
xpath-printer
as yet no serialization

20010318
xpath-parameters
initial version

20010530
xpath-parameters
first version of the parser / compiler combination

Version 0.502 (covers 20010530 - 20010610):

20010602
xpath-operators
added support for count to step generators. count is generated incrementally, rather than collecting the set or traversing it in advance. (with the exception of the parent axis.)

20010609
xpath-operators
typo in root generator

20010610
xpath-operators
clos root and child generator, name test

xpath-parameters
clos access

Version 0.503 (covers 20010610 - 20010910):

20010622
xpath-operators
*default-namespace-attribute-name* for LispWorks/pe reader

20010716
xpath-library
name/symbol distinction;

20010910
xpath-parameters
parallel to xparser tokenizers

Open (covers 20010910 - present):

20011211
xpath-operators
corrections to xpa::intern, compute-child-generator for name instances

20011220
xpath-parser
fix to compile pathname



X Query


Version 0.501 (covers ........ - 20010530):

20010227
xql-tokenizer
initial version, from the xpath tokenizer

20010305
xq-printer

20010306
xql-parser
inline reduction reader macro function

xql-tokenizer
consolidated XQDM,XQ,XP

20010318
xq-parameters

20010511
xql-tokenizer
literals now eturned as quoted list to distinguish them from names

20010515
xql-constructors

20010530
xq-parameters
first version of the parser / compiler combination

Version 0.503 (covers 20010530 - 20010910):

20010605
xql-constructors
provisional results for FunctionLibrary

20010612
xq-parameters
token variations for 20010607 version

xql-parser
parser recursion controls now per term

xql-tokenizer
WD-xquery-20010607: metasymbol variations WD-xquery-20010607: context-dependent tokenization

20010618
xq-parameters
xutils:*parsetable*

xql-parser
xutils:*parsetable*

xql-tokenizer
xutils:*parsetable*

20010805
xq-printer
*namespaces* -> *namespace-bindings*

20010910
xq-parameters
successfully parses WD-xmlquery-use-cases-20010608

xq-parameters
parallel to xparser tokenizers

Version 0.503 (covers 20010910 - 20010913):

20010913
xql-parser
added parsetable for string literal data

xql-tokenizer
changed colon and star readers to not extend the token to include star or colon, respectively. this together with grammar changes to the nametest.

xql-tokenizer
|..-reader| made non-terminating |//-reader| added to model-content context for bare path expressions

Version 0.504 (covers 20010913 - 20010910):
Open (covers 20010910 - present):

20011220
xqa-library
fix to spefcialization for xqa:|namespace|

xql-tokenizer
replaced without-interrupts with a lock