Hello Dave,
very great stuff you've done with generateDS, works like a charm but only after
a resolving a few little things.
First on, this might be a bug:
XSD Pattern:
<xsd:simpleType name="GeneralizedTime">
<xsd:restriction base="xsd:string">
<xsd:pattern
value="\d{4}(0[1-9]|1[012])(0[1-9]|[12][0-9]|3[01])([01][0-9]|2[0-3])([0-5][0-9])([0-5][0-9])(.[0-9][0-9]*)?(Z|[\+|\-][0-9]{4})"/>
</xsd:restriction>
</xsd:simpleType>
results in:
validate_GeneralizedTime_patterns_ =
[['^\\d{4}(0[1-9]$|^1[012])(0[1-9]$|^[12][0-9]$|^3[01])([01][0-9]$|^2[0-3])([0-5][0-9])([0-5][0-9])(.[0-9][0-9]*)?(Z$|^[\\+$|^\\-][0-9]{4})$']]
which give the warning:
/var/etsi/work/V1.18.1/Natparas2V18.py:7644: UserWarning: Value
"b'20180719123801+0200'" does not match xsd pattern
restrictions:
[['^\\d{4}(0[1-9]$|^1[012])(0[1-9]$|^[12][0-9]$|^3[01])([01][0-9]$|^2[0-3])([0-5][0-9])([0-5][0-9])(.[0-9][0-9]*)?(Z$|^[\\+$|^\\-][0-9]{4})$']]
warnings_.warn('Value "%s" does not match xsd pattern restrictions: %s' %
(value.encode('utf-8'), self.validate_GeneralizedTime_patterns_, ))
Adjusting to:
validate_GeneralizedTime_patterns_ =
[['^\\d{4}(0[1-9]|1[012])(0[1-9]|[12][0-9]|3[01])([01][0-9]|2[0-3])([0-5][0-9])([0-5][0-9])(.[0-9][0-9]*)?(Z|[\\+|\\-][0-9]{4})$']]
gives no warning.
So it might be a problem with the separator | which results in a wrong ^|$
pattern?
Second one, discovering a problem with:
testxml.export(sys.stdout, 0, '', 'retainedDataMessage')
at:
outfile.write('<%s%s%s' % (namespace_, name_, namespacedef_ and ' ' +
namespacedef_ or '', ))
This works correct, printing out <retainedDataMessage> or with a
generatednamespaces.py with GenerateDSNamespaceDefs the <retainedDataMessage
NSGIVEN>
But:
testxml.export(sys.stdout, 0, 'NSDATA', 'retainedDataMessage')
gives: <NSDATAretainedDataMessage> which is not correct, it should be
<retainedDataMessage NSDATA>,
so it's printed in the wrong order and a space is missing between the two
arguments.
Perhaps a:
outfile.write('<%s%s%s' % (name_, namespace_ and ' ' + namespace_ or '',
namespacedef_ and ' ' + namespacedef_ or '', ))
could fix this. Note: the closing tag must be adjusted too.
Perhaps the export could also be adjusted to overwrite the namespacedef_ if a
namespace_ is given or vice versa ...
I am using the latest version 2.29.17 installed via pip under Python 3.7
Hope you could fix it.
Again, great work!
Best regards,
Bernd
------------------------------------------------------------------------------
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot
_______________________________________________
generateds-users mailing list
generateds-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/generateds-users