[fpc-pascal] XML_XSD export was: Timezone information in adatasetdatetimefield?

Reinier Olislagers reinierolislagers at gmail.com
Tue Jul 26 10:32:41 CEST 2011


You don't even let me sleep... ;)

Thanks, Ludo. Applied in mercurial commit 48  2af395d3102c

Some questions:
1: newb alert: if I do patch -i xmlxsd.diff.txt fpxmlxsdexport.pp
I get
patching file `fpxmlxsdexport.pp'
patch: **** `<' expected at line 12 of patch
Maybe some kind of line ending issue?
(I applied the patch manually)

2. UTF8Decode('idx' + UTF8Decode(StringReplace(Index.Fields, ';', '_',
[rfReplaceAll, rfIgnoreCase])) + IntToStr(Index.ID)));

Why are you doing an extra UTF8Decode of the StringReplace part? The
entire string will get UTF8Decoded anyway?

On 26-7-2011 9:14, Ludo Brands wrote:
> Attached the patch with the changes against git.
> 
> Ludo
> 
>> I'm getting an "http://www.w3.org/2001/XMLSchema:element not 
>> taken into account in this context" (freely translated from 
>> French) error. Fixed this by adding <xs:sequence> between 
>> <xs:complexType> and <xs:choice maxOccurs="unbounded" minOccurs="0"/>
>>
>> One other comment on indices:
>>
>> Line 244:
>>             if Index.Name = '' then
>>             begin
>>               TDOMElement(FANode).SetAttribute('index-name',
>>                 UTF8Decode('idx' + Index.Fields + 
>> IntToStr(Index.ID)));
>>               //Avoids risk for name collision by adding 
>> collection id.
>>             End
>>
>> Index.Fields contains ; as a field delimiter. AFAIAK ; is an 
>> invalid character in index names. Better do a 
>> StringReplace(Index.Fields, ';', '_', [rfReplaceAll, rfIgnoreCase])
>>
>> Ludo



More information about the fpc-pascal mailing list