/* Text auf Englisch herunter */

Es gibt in der CWB ein Menge von "Hardlimits": fest im Sourcecode
verankerten Einschraenkungen, die sich nicht ohne weiteres anpassen
lassen. Im folgenden werden bekannte Hardlimits zusammen mit ihren
"Quellen" aufgefuehrt. 


* jedes CWB-Korpus muss ein p-Attribut mit dem Namen 'word' besitzen
! obwohl in cl/attributes.h DEFAULT_ATT_NAME definiert wird, ist der
! Name word an zahlreichen anderen Stellen fest verdrahtet, so dass 
! sich diese Beschraenkung nicht mit vertretbarem Aufwand umgehen
! laesst 

* maximal 1024 s-Attribute pro Korpus
- utils/encode.c: MAXRANGES
- utils/decode.c: MAX_ATTRS (implizit)
- cqp/concordance.c: MAX_S_ATTRS

* decode kann maximal 1024 Attribute gleichzeitig ausgeben
- utils/decode.c: MAX_ATTRS

* die maximale Zeilenlaenge in (vertikalisierten) Quelldateien fuer
encode betraegt 16383 Zeichen
- utils/encode.c: MAX_INPUT_LINE_LENGTH

* liefern builtin-Funktionen von CQP einen dynamisch erzeugten String
zurueck, so darf dieser maximal 2048 Zeichen lang sein
! liegt daran, dass hierfuer in DynCallResult-Objekten ein statischer
! Buffer bereitgestellt wird; dynamische Speicherverwaltung ist
! aufgrund der fehlerhaften Verwaltung von DynCallResult's in CQP 
! nicht moeglich
- cl/cl.h: CL_DYN_STRING_SIZE

* Dateinamen, Attributname, Labels, etc. duerfen maximal 1024 Zeichen
lang sein 
- cl/globals.h: MAX_IDENTIFIER_LENGTH

* Strings, die in statischen Buffern gespeichert werden, duerfen
maximal 4096 Zeichen lang sein; betroffen sind u.a. regulaere
Ausdruecke in CQP-Queries
- cl/globals.h: MAX_LINE_LENGTH

/**************************************************************/

In CWB, a number of "hard limits" are defined in the source code 
- built-in limitations which cannot easily be changed. Here, we list
the known hard limits, together with the source file where they are 
found.

* every CWB corpus must have a p-attribute with the name 'word'.
! Although DEFAULT_ATT_NAME is defined in  cl/attributes.h, the
! label 'word' is hard-coded in several other places; there is,
! therefore, no easy way round this restriction.

* maximum of 1024 s-attributes per corpus 
- utils/encode.c: MAXRANGES 
- utils/decode.c: MAX_ATTRS (implicitly) 
- cqp/concordance.c: MAX_S_ATTRS 

* decode can output a maximum of 1024 attributes simultaneously
- utils/decode.c: MAX_ATTRS

* maximum line-length in (verticalised) source files for encoding
is 16383 characters
- utils/encode.c: MAX_INPUT_LINE_LENGTH

* CQP's built-in functions return a dynamically generated
string; this can be no longer than 2048 characters in length
! This is due to the fact that DynCallResult objects are returned
! in a static buffer; dynamic memory is not possible in CQP due
! to faulty administration of DynCallResult
- cl/cl.h: CL_DYN_STRING_SIZE

* file names, attribute names, labels, etc. must not exceed 1024 
characters in length
- cl/globals.h: MAX_IDENTIFIER_LENGTH

* strings stored in static buffers must not exceed 4096 characters
in length; among other things, this affects regular expressions
in CQP queries.
- cl/globals.h: MAX_LINE_LENGTH
