Dear Dave - I should say Dear Master Dave!

Sorry for my late reply but I was travelling and I could only try it again
tonight.

And the result is: You did it! It is working now and I was able to generate
the models, the admin and the forms from my xsd!
It is so fast... Thank you again fro your help. I will now try to upload
those files in a test instance just to see how django is displaying it.

If you come to France and clearly to Nantes: let me know and I will be so
happy to meet with you and to share a glass of wine (or whatever you would
like to drink)!!!!

Best regards,

*Nicolas de Saint Jorre*
1 Rue Chanoine Durville, 44000 Nantes

*Quanticsoft - The Webtrial Solution*
*Mob.* +33 603342228
*Tél.* +33 972212461




On Thu, Jan 18, 2018 at 12:08 AM, Dave Kuhlman <dkuhl...@davekuhlman.org>
wrote:

> Nicolas,
>
> My tests show that I've fixed that infinite recursion.  And, this fix
> does not cause a problem with generating the code to validate simple
> types (as my previous attempt at fixing it did).
>
> You can find the fixed code here:
>
>     https://bitbucket.org/dkuhlman/generateds
>
> The only relevant change, I believe, is in generateDS.py.
>
> Please let me know whether this fixes the issue for you.  And, of
> course, let me know about any other issues.
>
> Thanks for your help with fixing this.
>
> Dave
>
> On Tue, Jan 16, 2018 at 10:55:00PM +0100, Nicolas de Saint Jorre wrote:
> >    Thanks for the feedback!
> >    I am so happy to read you here. We are living in a magic world! I
> woke up
> >    this morning with that problem, and 8 hours later, I am reading the
> writer
> >    of this amazing tool, and the code has been updated!!! So crasy.
> >    So of course you can take of the time you need. I wish I was able to
> help
> >    you here but I am not.
> >    So good luck and let me know if you need anything else here!
> >    Best regards and very pleased to be in touch with you!
> >    Nicolas
> >    On Jan 16, 2018 9:28 PM, "Dave Kuhlman" <dkuhl...@davekuhlman.org>
> wrote:
> >
> >      Nicolas,
> >
> >      Thanks for this report.  And, thank you for providing the schema to
> >      test against.  With your schema, I was able to reproduce the error.
> >
> >      I believe the problem occurs because you have things like the
> >      following in your schema:
> >
> >          <xs:simpleType name="string">
> >              <xs:restriction base="xs:string"/>
> >          </xs:simpleType>
> >
> >      Because generateDS.py ignores the namespace prefix ("xs:"), that
> >      definition effectively (1) redefines a primitive type and (2)
> >      defines a type as a restriction of itself.  The schema does
> >      something similar with the primitive type xs:integer and several
> >      others.
> >
> >      generateDS.py should be able to protect itself against this.
> >
> >      I made a change, and that change eliminated the infinite recursion
> >      error that we're seeing.  But, with that change, I believe that
> >      generateDS.py is not handling simpleType validation quite correctly.
> >
> >      So, give me a little more time.
> >
> >      Dave
> >
> >      On Tue, Jan 16, 2018 at 09:26:21AM +0100, Nicolas de Saint Jorre
> wrote:
> >      >    Dear Mister Kuhlman,
> >      >    I am trying to use your XML converter but I am having trouble
> >      using it.
> >      >    I am not a Pro with Python but I try to learn and to improve
> >      everyday.
> >      >    So here I am trying to convert into a Django Models and Forms
> >      from the
> >      >    attached XSD specification.
> >      >    I have the following error:
> >      >    (dev)
> >      >
> >      nicolas@nicolas-XPS-13-9343:~/Downloads/dkuhlman-generateds-
> cba0ef052d1e$
> >      >    python generateDS.py -o odm1-3-2.py -s odm1-3-2subs.py
> >      >    Demos/People/ODM1-3-2.xsd
> >      >    *** warning.  Removing child with duplicate name: "KeySet"
> >      >    *** warning.  Removing child with duplicate name: "Signature"
> >      >    *** warning.  Removing child with duplicate name:
> "PGPKeyPacket"
> >      >    *** warning.  Removing child with duplicate name: ""
> >      >    File odm1-3-2.py exists.  Overwrite? (y/n): y
> >      >    Traceback (most recent call last):
> >      >      File "generateDS.py", line 7417, in <module>
> >      >        main()
> >      >      File "generateDS.py", line 7405, in main
> >      >        superModule=superModule)
> >      >      File "generateDS.py", line 6893, in parseAndGenerate
> >      >        prefix, root, options, args, superModule)
> >      >      File "generateDS.py", line 6704, in generate
> >      >        generateFromTree(wrt, prefix, elements, processed)
> >      >      File "generateDS.py", line 6619, in generateFromTree
> >      >        generateClasses(wrt, prefix, element, 0, nameSpacesDef)
> >      >      File "generateDS.py", line 4979, in generateClasses
> >      >        generateValidatorDefs(wrt, element)
> >      >      File "generateDS.py", line 4736, in generateValidatorDefs
> >      >        typeName, stObj.getBase(), None, None)
> >      >      File "generateDS.py", line 4580, in getValidatorBody
> >      >        patterns1)
> >      >      File "generateDS.py", line 4552, in
> >      processValidatorBodyRestrictions
> >      >        base1, patterns1)
> >      >      File "generateDS.py", line 4552, in
> >      processValidatorBodyRestrictions
> >      >        base1, patterns1)
> >      >      File "generateDS.py", line 4552, in
> >      processValidatorBodyRestrictions
> >      >        base1, patterns1)
> >      >      [Previous line repeated 979 more times]
> >      >      File "generateDS.py", line 4544, in
> >      processValidatorBodyRestrictions
> >      >        st1 = find_simple_type_def(tree, base1, None, None, ns,
> >      base)
> >      >      File "generateDS.py", line 4269, in find_simple_type_def
> >      >        namespaces=ns, n=stName)
> >      >      File "src/lxml/etree.pyx", line 1586, in
> >      lxml.etree._Element.xpath
> >      >    (src/lxml/etree.c:61218)
> >      >      File "src/lxml/xpath.pxi", line 261, in
> >      >    lxml.etree.XPathElementEvaluator.__init__
> >      (src/lxml/etree.c:178111)
> >      >      File "src/lxml/xpath.pxi", line 133, in
> >      >    lxml.etree._XPathEvaluatorBase.__init__
> (src/lxml/etree.c:176304)
> >      >      File "src/lxml/xpath.pxi", line 57, in
> >      >    lxml.etree._XPathContext.__init__ (src/lxml/etree.c:175253)
> >      >      File "src/lxml/extensions.pxi", line 76, in
> >      >    lxml.etree._BaseContext.__init__ (src/lxml/etree.c:164013)
> >      >    RecursionError: maximum recursion depth exceeded while calling
> a
> >      Python
> >      >    object
> >      >    Do you think you could help me here?
> >      >    I would love to see how your code is going to convert this
> >      complex XSD
> >      >    into an easy to use Django models...
> >      >    Thank you in advance for your help.
> >      >    Best regards from France,
> >      >
> >      >    Nicolas de Saint Jorre
> >      >    1 Rue Chanoine Durville, 44000 Nantes
> >      >    Quanticsoft - The Webtrial Solution
> >      >    Mob. +33 603342228
> >      >    Tél. +33 972212461
> >
> >      --
> >
> >      Dave Kuhlman
> >      http://www.davekuhlman.org
>
> --
>
> Dave Kuhlman
> http://www.davekuhlman.org
>
------------------------------------------------------------------------------
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

Reply via email to