Re: [xml2rfc] Novice bad user on device, or Catch-22?
Henrik Levkowetz <henrik@levkowetz.com> Tue, 21 January 2020 08:26 UTC
Return-Path: <henrik@levkowetz.com>
X-Original-To: xml2rfc@ietfa.amsl.com
Delivered-To: xml2rfc@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 7D5C7120071 for <xml2rfc@ietfa.amsl.com>; Tue, 21 Jan 2020 00:26:40 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -6.899
X-Spam-Level:
X-Spam-Status: No, score=-6.899 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, RCVD_IN_DNSWL_HI=-5, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, URIBL_BLOCKED=0.001] autolearn=ham autolearn_force=no
Received: from mail.ietf.org ([4.31.198.44]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id yFi0RmRspBrZ for <xml2rfc@ietfa.amsl.com>; Tue, 21 Jan 2020 00:26:35 -0800 (PST)
Received: from zinfandel.tools.ietf.org (zinfandel.tools.ietf.org [64.170.98.42]) (using TLSv1.2 with cipher DHE-RSA-AES128-SHA (128/128 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 391B9120043 for <xml2rfc@ietf.org>; Tue, 21 Jan 2020 00:26:35 -0800 (PST)
Received: from h-202-242.a357.priv.bahnhof.se ([158.174.202.242]:60991 helo=tannat.localdomain) by zinfandel.tools.ietf.org with esmtpsa (TLS1.2:DHE_RSA_AES_128_CBC_SHA1:128) (Exim 4.80) (envelope-from <henrik@levkowetz.com>) id 1itorm-0006Uz-1t; Tue, 21 Jan 2020 00:26:34 -0800
To: "David R. Oran" <daveoran@orandom.net>
References: <87E86D51-F37A-4800-BC14-6AA7E5E7EA4A@orandom.net> <751dd301-a89b-13b2-27b4-16beaced5de3@levkowetz.com> <DA4F22F5-5A43-4671-B69B-EDF61F976623@orandom.net> <61971d80-1c1e-bdf7-a986-0cfe9de157e6@levkowetz.com> <6C8FDE4E-88F8-4862-A9CC-3D1E9B0DCD4C@orandom.net> <fe468ed5-3d9b-88b2-8403-f8482bb1f55b@levkowetz.com> <647a593e-8104-0a59-bd0b-fb377f49201e@levkowetz.com> <A6C1B0DF-EAE0-46DC-9539-F56A3192E336@orandom.net>
Cc: xml2rfc@ietf.org
From: Henrik Levkowetz <henrik@levkowetz.com>
Message-ID: <43f689a4-7bc5-5e8c-0ca6-0ca785a77c8e@levkowetz.com>
Date: Tue, 21 Jan 2020 09:26:22 +0100
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.11; rv:45.0) Gecko/20100101 Thunderbird/45.8.0
MIME-Version: 1.0
In-Reply-To: <A6C1B0DF-EAE0-46DC-9539-F56A3192E336@orandom.net>
Content-Type: multipart/signed; micalg="pgp-sha256"; protocol="application/pgp-signature"; boundary="mwuEH3AIg7RGBhXfqOxGCJU6pf4u2cO1r"
X-SA-Exim-Connect-IP: 158.174.202.242
X-SA-Exim-Rcpt-To: xml2rfc@ietf.org, daveoran@orandom.net
X-SA-Exim-Mail-From: henrik@levkowetz.com
X-SA-Exim-Version: 4.2.1 (built Mon, 26 Dec 2011 16:24:06 +0000)
X-SA-Exim-Scanned: Yes (on zinfandel.tools.ietf.org)
X-Clacks-Overhead: GNU Terry Pratchett
Archived-At: <https://mailarchive.ietf.org/arch/msg/xml2rfc/vXmNxD-AikyIDDuPtvh34sBM0ak>
Subject: Re: [xml2rfc] Novice bad user on device, or Catch-22?
X-BeenThere: xml2rfc@ietf.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: <xml2rfc.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/xml2rfc>, <mailto:xml2rfc-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/xml2rfc/>
List-Post: <mailto:xml2rfc@ietf.org>
List-Help: <mailto:xml2rfc-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/xml2rfc>, <mailto:xml2rfc-request@ietf.org?subject=subscribe>
X-List-Received-Date: Tue, 21 Jan 2020 08:26:40 -0000
Hi Dave, On 2020-01-21 06:51, David R. Oran wrote: > Thanks a ton for the help. I puzzled around some more in the FAQ and > RFC7991, getting rid of suspicious V2-ish stuff that used to be > adorning all my draft source files and replacing the essentials with > the right V3 constructs. However, among those was not the xmlns:ni, > which I had copied from one of the examples in > draft-hoffman-rfcexamples. Once that was gone the crash disappeared. > > One unsolicited piece of advice is that in addition to the FAQ and > RFC7991 itself, some templates in native V3 for people to start from > would have saved me the pain you see in this thread. The example in > Paul Hoffman’s draft (which I found googling “xml2rfc v3 examples” of > course) was generated using the converter and wound up being > extremely misleading for a “native” V3 source file. > > Best, DaveO. > > P.S. I did get another crash when I put my own <date> element in the > <front> element as per “<date month='January' year='2020' /> When I > let the converter insert the date in the output itself, no problem. Thanks for the data and traceback; will fix the issue in the next release :-) And yes, having v3 templates would be helpful. I'll see if I can fix that too. Where would you normally grab a template? Henrik > > xml2rfc draft-oran-icnrg-reflexive-forwarding.xml > draft-oran-icnrg-reflexive-forwarding.xml(63): Warning: The document date (2020-01-01) is more than 3 days away from today's date > Traceback (most recent call last): > File "/usr/local/bin/xml2rfc", line 8, in <module> > sys.exit(main()) > File "/usr/local/lib/python2.7/site-packages/xml2rfc/run.py", line 620, in main > xmlrfc.tree = prep.prep() > File "/usr/local/lib/python2.7/site-packages/xml2rfc/writers/preptool.py", line 342, in prep > func(e, e.getparent()) > File "/usr/local/lib/python2.7/site-packages/xml2rfc/writers/preptool.py", line 1123, in boilerplate_insert_status_of_memo > exp = datetime.date(year=year, month=month, day=day) + datetime.timedelta(days=185) > TypeError: an integer is required > > > On 20 Jan 2020, at 18:20, Henrik Levkowetz wrote: > >> Hi again David, >> >> The issue is triggered by the code trying to insert the XInclude namespace >> if it isn't defined, but your file defines the 'xi' namespace prefix not >> as the XInclude namespace (http://www.w3.org/2001/XInclude), but as something >> that's very close to it: (https://www.w3.org/2001/XInclude). The code >> then tries to insert xmlns:xi="http://www.w3.org/2001/XInclude" which fails. >> >> The code should handle this better. It's clearly a bug. Menawhile, if you >> change the https:// to http:// in the xmlns:xi attribute value, you should >> be able to get further. >> >> Once you've fixed that, you'll find that using XInclude doesn't permit >> any inaccuracies in the specification of the href, so you'll have to add >> https:// to the <xi:include/> entries around line 140. The v2 processor >> is much more forgiving about this, but the XInclude specification doesn't >> permit a processor to be lenient in the manner xml2rfc is for v2 input. >> >> Then you'll find that <tbody> isn't optional in v3 the way it is in html, >> and other issues that should be easier to sort out. >> >> >> Best, >> >> Henrik >> >> On 2020-01-20 23:59, Henrik Levkowetz wrote: >>> Hi David, >>> >>> On 2020-01-20 23:25, David R. Oran wrote: >>>> Thanks much. See below. >>> >>> Ack. Will reply further once I've looked at the xml. One point inline >>> now: >>> >>>> On 20 Jan 2020, at 16:25, Henrik Levkowetz wrote: >>>> >>>>> Hi David, >>>>> >>>>> On 2020-01-20 22:03, David R. Oran wrote: >>>>>> On 20 Jan 2020, at 15:10, Henrik Levkowetz wrote: >>>>>> >>>>>>> Hi David, >>>>>>> >>>>>>> You should simply remove "<!DOCTYPE rfc SYSTEM 'rfc2629.dtd'>" if your >>>>>>> <rfc/> element contains the "version='3'" attribute. >>>>>>> >>>>>> If I do that xml2rfc crashes (both the one on my machine and the web tool: >>>>> >>>>> Oh, wow. Ok, I'll fix that in the next release. Could you send the full >>>>> xml file, please? It's not obvious from your snippet where the superfluous >>>>> other definition of xmlns:xi is. >>>>> >>>> attached. >>>> >>>>> Now, you say that instead of trying the converter, you stared out right >>>>> away with v3 syntax, but neither the DOCTYPE above, nor the <?rfc ... ?> >>>>> PIs visible in your snippet are appropriate for a v3 document. Did you >>>>> grab a v2 template to start with? I think really going to lead you into >>>>> a number of problems if you start with a v2 template and declare it to be >>>>> v3. >>>>> >>>> No, I started from scratch…but cut a pasted a few things from an >>>> earlier draft after checking (I thought correctly) that I was >>>> following the strict V3 definitions. Possibly not… >>>> >>>> For yucks, I got rid of all that and started right off with the <rfc> >>>> element and xml2rfc still crashes. >>>> >>>>> Using the v2v3 converter on a v2 document, even on a v2 template, on the >>>>> other hand, should give you a proper v3 starting point, without the issues >>>>> you've run into so far. >>> >>>> I believe that. But the output of the converter on >>>> draft-hoffman-rfcexamples-latest left the DOCTYPE declaration in >>>> there… >>> >>> I think you'll find that the DOCTYPE doesn't mention a dtd in that case, >>> just a file which (if available) provides entity definitions. >>> >>> More in a moment. >>> >>> >>> Best regards, >>> >>> Henrik >>> >>>> >>>>> >>>>> >>>>> Regards, >>>>> >>>>> Henrik >>>>> >>>>>> >>>>>> xml2rfc draft-oran-icnrg-reflexive-forwarding.xml >>>>>> Traceback (most recent call last): >>>>>> File "/usr/local/bin/xml2rfc", line 8, in <module> >>>>>> sys.exit(main()) >>>>>> File "/usr/local/lib/python2.7/site-packages/xml2rfc/run.py", line 612, in main >>>>>> xmlrfc = parser.parse(remove_comments=False, quiet=True, add_xmlns=True) >>>>>> File "/usr/local/lib/python2.7/site-packages/xml2rfc/parser.py", line 548, in parse >>>>>> for action, element in context: >>>>>> File "src/lxml/iterparse.pxi", line 208, in lxml.etree.iterparse.__next__ (src/lxml/lxml.etree.c:148588) >>>>>> File "<string>", line 22 >>>>>> lxml.etree.XMLSyntaxError: Attribute xmlns:xi redefined, line 22, column 59 >>>>>> >>>>>>> Regards, >>>>>>> >>>>>>> Henrik >>>>>>> >>>>>>> On 2020-01-20 21:00, David R. Oran wrote: >>>>>>>> I have a new Internet Draft to write, so I decided to bite the bullet >>>>>>>> and do it in V3. Rather than write in V2 and try the converter, I >>>>>>>> started out right away with V3 syntax. I didn’t get very far. I tried >>>>>>>> both the most recent xml2rfc by installing it on my machine, and the web >>>>>>>> tool and got identical errors. >>>>>>>> >>>>>>>> If I follow the described syntax in RFC7991, the RFC Editor FAQ in >>>>>>>> https://ftp.ripe.net/rfc/v3test/FAQ-2019-02.html and the example in >>>>>>>> draft-hoffman-rfcexamples-latest as below: >>>>>>>> >>>>>>>> <?xml version="1.0" encoding="US-ASCII"?> >>>>>>>> <!DOCTYPE rfc SYSTEM 'rfc2629.dtd'> >>>>>>>> >>>>>>>> <?xml-stylesheet type='text/xsl' href='rfc2629.xslt' ?> >>>>>>>> <?rfc strict="yes" ?> >>>>>>>> <?rfc toc="yes"?> >>>>>>>> <?rfc tocdepth="4"?> >>>>>>>> <?rfc symrefs="yes" ?> >>>>>>>> <?rfc sortrefs="yes" ?> >>>>>>>> <?rfc compact="yes" ?> >>>>>>>> <?rfc subcompact="no" ?> >>>>>>>> <rfc >>>>>>>> version=‘3’ >>>>>>>> ipr='trust200902' >>>>>>>> category='exp' >>>>>>>> submissionType='IRTF' >>>>>>>> docName='draft-oran-icnrg-reflexive-forwarding-00' >>>>>>>> xml:lang='en' xmlns:xi="https://www.w3.org/2001/XInclude"> >>>>>>>> >>>>>>>> <front> >>>>>>>> <seriesInfo name='Internet-Draft' >>>>>>>> value='draft-oran-icnrg-reflexive-forwarding-00'/> >>>>>>>> <title abbrev='ICN Reflexive Forwarding'>Reflexive Forwarding for >>>>>>>> CCNx and NDN Protocols >>>>>>>> </title> >>>>>>>> >>>>>>>> >>>>>>>> >>>>>>>> I get >>>>>>>> >>>>>>>> % xml2rfc draft-oran-icnrg-reflexive-forwarding.xml >>>>>>>> Incompatible schema information: found "rfc2629.dtd" in <DOCTYPE> of a >>>>>>>> version 3 file. >>>>>>>> >>>>>>>> If I leave off the “version=‘3’, as below >>>>>>>> >>>>>>>> <?xml version="1.0" encoding="US-ASCII"?> >>>>>>>> <!DOCTYPE rfc SYSTEM 'rfc2629.dtd'> >>>>>>>> <?xml-stylesheet type='text/xsl' href='rfc2629.xslt' ?> >>>>>>>> <?rfc strict="yes" ?> >>>>>>>> <?rfc toc="yes"?> >>>>>>>> <?rfc tocdepth="4"?> >>>>>>>> <?rfc symrefs="yes" ?> >>>>>>>> <?rfc sortrefs="yes" ?> >>>>>>>> <?rfc compact="yes" ?> >>>>>>>> <?rfc subcompact="no" ?> >>>>>>>> >>>>>>>> <rfc >>>>>>>> ipr='trust200902' >>>>>>>> category='exp' >>>>>>>> submissionType='IRTF' >>>>>>>> docName='draft-oran-icnrg-reflexive-forwarding-00' >>>>>>>> xml:lang='en' xmlns:xi="https://www.w3.org/2001/XInclude"> >>>>>>>> >>>>>>>> <front> >>>>>>>> <seriesInfo name='Internet-Draft' >>>>>>>> value='draft-oran-icnrg-reflexive-forwarding-00'/> >>>>>>>> <title abbrev='ICN Reflexive Forwarding'>Reflexive Forwarding for >>>>>>>> CCNx and NDN Protocols >>>>>>>> </title> >>>>>>>> >>>>>>>> I get: >>>>>>>> >>>>>>>> xml2rfc draft-oran-icnrg-reflexive-forwarding.xml >>>>>>>> Error: Unable to validate the XML document: >>>>>>>> draft-oran-icnrg-reflexive-forwarding.xml >>>>>>>> <string>: Line 23: No declaration for attribute xmlns:xi of element >>>>>>>> rfc >>>>>>>> <string>: Line 25: Element front content does not follow the DTD, >>>>>>>> expecting (title , author+ , date , area* , workgroup* , keyword* , >>>>>>>> abstract? , note*), got (seriesInfo title author author date area >>>>>>>> workgroup keyword keyword abstract ) >>>>>>>> <string>: Line 81: Element section content does not follow the DTD, >>>>>>>> expecting ((t | figure | texttable | iref)* , section*), got (name t ) >>>>>>>> <string>: Line 81: Element section does not carry attribute title >>>>>>>> <string>: Line 81: No declaration for element name >>>>>>>> <string>: Line 85: Element section content does not follow the DTD, >>>>>>>> expecting ((t | figure | texttable | iref)* , section*), got (name t ) >>>>>>>> <string>: Line 85: Element section does not carry attribute title >>>>>>>> <string>: Line 85: No declaration for element name >>>>>>>> <string>: Line 94: Element section content does not follow the DTD, >>>>>>>> expecting ((t | figure | texttable | iref)* , section*), got (name t >>>>>>>> section section ) >>>>>>>> <string>: Line 94: Element section does not carry attribute title >>>>>>>> <string>: Line 94: No declaration for element name >>>>>>>> <string>: Line 97: Element section content does not follow the DTD, >>>>>>>> expecting ((t | figure | texttable | iref)* , section*), got (name t >>>>>>>> table ) >>>>>>>> <string>: Line 97: Element section does not carry attribute title >>>>>>>> <string>: Line 97: No declaration for element name >>>>>>>> <string>: Line 98: No declaration for attribute keepWithNext of >>>>>>>> element t >>>>>>>> <string>: Line 99: No declaration for element table >>>>>>>> <string>: Line 99: No declaration for attribute title of element >>>>>>>> table >>>>>>>> >>>>>>>> Clue bat please? >>>>>>>> >>>>>>>> DaveO >>>>>>>> >>>>>>>> >>>>>>>> >>>>>>>> _______________________________________________ >>>>>>>> xml2rfc mailing list >>>>>>>> xml2rfc@ietf.org >>>>>>>> https://www.ietf.org/mailman/listinfo/xml2rfc >>>>>>>> >>>>>> >>>>>> DaveO >>>>>> >>>> >>>> DaveO >>>> >>> > > DaveO >
- [xml2rfc] Novice bad user on device, or Catch-22? David R. Oran
- Re: [xml2rfc] Novice bad user on device, or Catch… Henrik Levkowetz
- Re: [xml2rfc] Novice bad user on device, or Catch… Julian Reschke
- Re: [xml2rfc] Novice bad user on device, or Catch… David R. Oran
- Re: [xml2rfc] Novice bad user on device, or Catch… Henrik Levkowetz
- Re: [xml2rfc] Novice bad user on device, or Catch… David R. Oran
- Re: [xml2rfc] Novice bad user on device, or Catch… David R. Oran
- Re: [xml2rfc] Novice bad user on device, or Catch… Julian Reschke
- Re: [xml2rfc] Novice bad user on device, or Catch… Julian Reschke
- Re: [xml2rfc] Novice bad user on device, or Catch… Henrik Levkowetz
- Re: [xml2rfc] Novice bad user on device, or Catch… Henrik Levkowetz
- Re: [xml2rfc] Novice bad user on device, or Catch… David R. Oran
- Re: [xml2rfc] Novice bad user on device, or Catch… David R. Oran
- Re: [xml2rfc] Novice bad user on device, or Catch… Paul Kyzivat
- Re: [xml2rfc] Novice bad user on device, or Catch… Sandy Ginoza
- Re: [xml2rfc] Novice bad user on device, or Catch… Henrik Levkowetz
- Re: [xml2rfc] Novice bad user on device, or Catch… Paul Kyzivat