Skip to content

Commit a6c5f1b

Browse files
committed
Fixes to IPR templates, view and model, and acceptable diffs.
- Legacy-Id: 485
1 parent 56aae66 commit a6c5f1b

7 files changed

Lines changed: 253 additions & 41 deletions

File tree

ietf/ipr/models.py

Lines changed: 9 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -7,12 +7,15 @@
77
# Models
88

99
LICENSE_CHOICES = (
10-
(1, 'No License Required for Implementers.'),
11-
(2, 'Royalty-Free, Reasonable and Non-Discriminatory License to All Implementers.'),
12-
(3, 'Reasonable and Non-Discriminatory License to All Implementers with Possible Royalty/Fee.'),
13-
(4, 'Licensing Declaration to be Provided Later.'),
14-
(5, 'Unwilling to Commit to the Provisions of a), b), or c) Above..'),
15-
(6, 'See Text Below for Licensing Declaration.'),
10+
(1, 'a) No License Required for Implementers.'),
11+
(2, 'b) Royalty-Free, Reasonable and Non-Discriminatory License to All Implementers.'),
12+
(3, 'c) Reasonable and Non-Discriminatory License to All Implementers with Possible Royalty/Fee.'),
13+
(4, 'd) Licensing Declaration to be Provided Later (implies a willingness'
14+
' to commit to the provisions of a), b), or c) above to all implementers;'
15+
' otherwise, the next option "Unwilling to Commit to the Provisions of'
16+
' a), b), or c) Above". - must be selected).'),
17+
(5, 'e) Unwilling to Commit to the Provisions of a), b), or c) Above.'),
18+
(6, 'f) See Text Below for Licensing Declaration.'),
1619
)
1720
STDONLY_CHOICES = (
1821
(0, ""),

ietf/ipr/views.py

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -63,7 +63,13 @@ def show(request, ipr_id=None):
6363
ipr.other_notes = linebreaks(escape(ipr.other_notes))
6464

6565
if ipr.licensing_option:
66-
ipr.licensing_option = dict(LICENSE_CHOICES)[ipr.licensing_option]
66+
text = dict(LICENSE_CHOICES)[ipr.licensing_option]
67+
# Very hacky way to get rid of the last part of option 'd':
68+
cut = text.find(" (")
69+
if cut > 0:
70+
text = text[cut:] + "."
71+
# get rid of the "a) ", "b) ", etc.
72+
ipr.licensing_option = text[3:]
6773
if ipr.is_pending:
6874
ipr.is_pending = dict(SELECT_CHOICES)[ipr.is_pending]
6975
if ipr.applies_to_all:

ietf/templates/ipr/details.html

Lines changed: 85 additions & 29 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,11 @@
1+
{% if section_list.generic %}
2+
{% endif %}
3+
{% if section_list.specific %}
4+
{% endif %}
5+
{% if section_list.third_party %}
6+
{% endif %}
7+
8+
19
{% extends "base.html" %}
210
{% block title %}IPR Details{% endblock %}
311
{% block body_attributes %}
@@ -111,52 +119,46 @@ <h3>{{ ipr.title }}</h3>
111119
{% if section_list.form_intro %}
112120
<h4 class="ipr">The Patent Disclosure and Licensing Declaration Template for {{ section_list.disclosure_type }}</h4>
113121
<p class="ipr">
114-
115-
{% if section_list.generic %}
116-
This document is an IETF IPR Disclosure and Licensing Declaration
117-
Template and is submitted to inform the IETF of a) patent or patent
118-
application information regarding the IETF document or contribution
119-
listed in Section IV, and b) an IPR Holder's intention with respect to
120-
the licensing of its necessary patent claims. No actual license is
121-
implied by submission of this template.
122-
{% endif %}
123-
{% if section_list.specific %}
122+
{% if section_list.generic %}
123+
This document is an IETF IPR Patent Disclosure and Licensing Declaration
124+
Template and is submitted to inform the IETF of a) patent
125+
or patent application information that is not related to a specific
126+
IETF document or contribution, and b) an IPR Holder's intention with
127+
respect to the licensing of its necessary patent claims. No actual
128+
license is implied by submission of this template.
129+
{% endif %}
130+
{% if section_list.specific %}
124131
This document is an IETF IPR Disclosure and Licensing Declaration
125132
Template and is submitted to inform the IETF of a) patent or patent
126133
application information regarding the IETF document or contribution
127134
listed in Section IV, and b) an IPR Holder's intention with respect to
128135
the licensing of its necessary patent claims. No actual license is
129-
implied by submission of this template.
130-
{% endif %}
131-
{% if section_list.third_party %}
136+
implied by submission of this template. Please complete and submit a
137+
separate template for each IETF document or contribution to which the
138+
disclosed patent information relates.
139+
{% endif %}
140+
{% if section_list.third_party %}
132141
This form is used to let the IETF know about patent information
133142
regarding an IETF document or contribution when the person letting the
134143
IETF know about the patent has no relationship with the patent owners.
135144
Click here if you want to disclose information about patents or patent
136145
applications where you do have a relationship to the patent owners or
137146
patent applicants.
138-
{% endif %}
147+
{% endif %}
139148
</p>
140149

141150
{% if section_list.also_specific %}
142151
<p class="ipr">
143152

144-
Note: According to Section 6.4.3 of<a
145-
href="http://www.ietf.org/rfc/rfc3979.txt?number=3979"> RFC
146-
3979</a>, "Intellectual Property Rights in IETF Technology," you
153+
Note: According to Section 6.4.3 of
154+
<a href="http://www.ietf.org/rfc/rfc3979.txt?number=3979">RFC 3979</a>,
155+
"Intellectual Property Rights in IETF Technology," you
147156
are still required to file specific disclosures on IPR unless your
148157
generic disclosure satisfies certain conditions. Please see the
149158
RFC for details.
150159
</p>
151160
{% endif %}
152161

153-
{% if section_list.per_rfc_disclosure %}
154-
<p class="ipr">
155-
Please complete and submit a
156-
separate template for each IETF document or contribution to which the
157-
disclosed patent information relates.
158-
</p>
159-
{% endif %}
160162

161163
<p class="ipr">
162164

@@ -165,8 +167,9 @@ <h4 class="ipr">The Patent Disclosure and Licensing Declaration Template for {{
165167
Submissions made by e-mail that do not comply with the formal
166168
requirements of Section 6, "IPR Disclosures," of <a
167169
href="http://www.ietf.org/rfc/rfc3979.txt?number=3979">RFC 3979</a>,
168-
"Intellectual Property Rights in IETF Technology," will be posted, but
169-
will be marked as "non-compliant".
170+
<!-- The following line isn't present on all three .cgi versions. Bah. -->
171+
"Intellectual Property Rights in IETF Technology",
172+
will be posted, but will be marked as "non-compliant".
170173

171174
</p>
172175
<hr />
@@ -292,6 +295,14 @@ <h4 class="ipr">The Patent Disclosure and Licensing Declaration Template for {{
292295
<th colspan="2" >
293296
{% cycle section %}.
294297
{% if section_list.form_legend %}
298+
{% if section_list.generic %}
299+
Disclosure of Patent Information (i.e., patents or patent
300+
applications required to be disclosed by Section 6 of RFC3979)
301+
{% endif %}
302+
{% if section_list.specific %}
303+
Disclosure of Patent Information (i.e., patents or patent
304+
applications required to be disclosed by Section 6 of RFC3979)
305+
{% endif %}
295306
{% if section_list.third_party %}
296307
Disclosure of Patent Information, if known (i.e., patents or
297308
patent applications required to be disclosed by Section 6 of RFC3979)
@@ -318,8 +329,11 @@ <h4 class="ipr">The Patent Disclosure and Licensing Declaration Template for {{
318329
<tr class="{% cycle row_parity %}">
319330
<td colspan="2">
320331
<i>
321-
B. Does this disclosure relate to an unpublished pending patent
322-
application?:
332+
{% if section_list.form_legend %}
333+
B. Does your disclosure relate to an unpublished pending patent application?:
334+
{% else %}
335+
B. Does this disclosure relate to an unpublished pending patent application?:
336+
{% endif %}
323337
</i>
324338
<b>{{ ipr.is_pending }}</b>
325339
</td>
@@ -373,12 +387,41 @@ <h4 class="ipr">The Patent Disclosure and Licensing Declaration Template for {{
373387
</tr>
374388
<tbody class="{% cycle row_parity %}">
375389
<tr>
376-
<td colspan="2"><i> The Patent Holder states that its position with respect
390+
<td colspan="2"><i>
391+
{% if section_list.form_legend %}
392+
{% if section_list.generic %}
393+
The Patent Holder states that its position with respect
394+
to licensing any patent claims contained in the patent(s) or patent
395+
application(s) disclosed above that would necessarily be infringed by
396+
implementation of a technology required by a relevant IETF specification
397+
("Necessary Patent Claims"), for the purpose of implementing such
398+
specification, is as follows(select one licensing declaration option only):</i>
399+
{% endif %}
400+
{% if section_list.specific %}
401+
The Patent Holder states that its position with respect
402+
to licensing any patent claims contained in the patent(s) or patent
403+
application(s) disclosed above that would necessarily be infringed by
404+
implementation of the technology required by the relevant IETF specification
405+
("Necessary Patent Claims"), for the purpose of implementing such
406+
specification, is as follows(select one licensing declaration option only):</i>
407+
{% endif %}
408+
{% if section_list.third_party %}
409+
The Patent Holder states that its position with respect
410+
to licensing any patent claims contained in the patent(s) or patent
411+
application(s) disclosed above that would necessarily be infringed by
412+
implementation of the technology required by the relevant IETF specification
413+
("Necessary Patent Claims"), for the purpose of implementing such
414+
specification, is as follows(select one licensing declaration option only):</i>
415+
{% endif %}
416+
{% else %}
417+
The Patent Holder states that its position with respect
377418
to licensing any patent claims contained in the patent(s) or patent
378419
application(s) disclosed above that would necessarily be infringed by
379420
implementation of the technology required by the relevant IETF specification
380421
("Necessary Patent Claims"), for the purpose of implementing such
381422
specification, is as follows(select one licensing declaration option only):</i>
423+
{% endif %}
424+
382425
</td>
383426
</tr>
384427
<tr>
@@ -410,12 +453,25 @@ <h4 class="ipr">The Patent Disclosure and Licensing Declaration Template for {{
410453
{% if ipr.lic_checkbox %}
411454
<tr class="{% cycle row_parity %}">
412455
<td colspan="2">
456+
<p>
413457
{% ifnotequal ipr.lic_checkbox 1 %}{{ ipr.lic_checkbox }}{% endifnotequal %}
414458
The individual submitting this template represents and warrants that all
415459
terms and conditions that must be satisfied for implementers of any
416460
covered IETF specification to obtain a license have been disclosed in this
417461
IPR disclosure statement.
462+
</p>
463+
{% if section_list.generic %}
464+
<p>
465+
Note: According to
466+
<a href="http://www.ietf.org/rfc/rfc3979.txt?number=3979">RFC 3979</a>,
467+
Section 6.4.3, unless you check the box
468+
above, and choose either option a) or b), you must still file specific
469+
IPR disclosures as appropriate.
470+
</p>
471+
{% endif %}
418472
</td>
473+
474+
419475
</tr>
420476
{% endif %}
421477
<tr class="{% cycle row_parity %}">

test/diff/_ipr_new-generic_

Lines changed: 75 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,75 @@
1+
--- https://datatracker.ietf.org/public/ipr_generic.cgi
2+
+++ /ipr/new-generic/
3+
@@ -9,1 +9,1 @@
4+
-Note: According to Section 6.4.3 ofRFC3979, "Intellectual Property
5+
+Note: According to Section 6.4.3 of RFC3979, "Intellectual Property
6+
@@ -16,1 +16,3 @@
7+
-RFC3979 will be posted, but will be marked as "non-compliant".
8+
+RFC3979, "Intellectual Property Rights in IETF Technology", will be
9+
+posted, but will be marked as "non-compliant".
10+
+Fields marked with * are required.
11+
@@ -18,2 +20,2 @@
12+
-Legal Name:
13+
-II. Patent Holder's Contact for License Application (Required field* )
14+
+Legal Name: *
15+
+II. Patent Holder's Contact for License Application
16+
@@ -31,5 +33,6 @@
17+
-please provide the following information: Patent, Serial, Publication,
18+
-Registration, or Application/File number(s):
19+
-Date(s) granted or applied for:
20+
-Country:
21+
-Additional Note(s):
22+
+please provide the following information:
23+
+Patent, Serial, Publication, Registration, or Application/File
24+
+number(s): *
25+
+Date(s) granted or applied for: *
26+
+Country: *
27+
+Additional Notes:
28+
@@ -37,4 +40,6 @@
29+
-application?
30+
-Select one: Yes No
31+
-C. Does this disclosure apply to all IPR owned by the submitter?
32+
-Select one: Yes No
33+
+application?:
34+
+YES
35+
+NO
36+
+C. Does this disclosure apply to all IPR owned by the submitter?:
37+
+YES
38+
+NO
39+
@@ -48,2 +53,2 @@
40+
-a) No License Required for Implementers. This licensing declaration is
41+
-limited solely to standards-track IETF documents.
42+
+*
43+
+a) No License Required for Implementers.
44+
@@ -51,2 +56,1 @@
45+
-Implementers. This licensing declaration is limited solely to
46+
-standards-track IETF documents.
47+
+Implementers.
48+
@@ -54,2 +58,1 @@
49+
-Possible Royalty/Fee. This licensing declaration is limited solely to
50+
-standards-track IETF documents.
51+
+Possible Royalty/Fee.
52+
@@ -61,3 +64,5 @@
53+
-f ) See Text Box Below for Licensing Declaration.
54+
-Licensing information, comments, notes, or URL for further information
55+
-:
56+
+f) See Text Below for Licensing Declaration.
57+
+Above licensing declaration is limited solely to standards-track IETF
58+
+documents.
59+
+Licensing information, comments, notes, or URL for further
60+
+information:
61+
@@ -68,1 +73,1 @@
62+
-NOTE: According to RFC3979, Section 6.4.3, unless you check the box
63+
+Note: According to RFC3979, Section 6.4.3, unless you check the box
64+
@@ -71,1 +76,1 @@
65+
-NOTE: The individual submitting this template represents and warrants
66+
+Note: The individual submitting this template represents and warrants
67+
@@ -75,3 +80,2 @@
68+
-the Patent Holder's Contact for License Application in Section II
69+
-above) (Required field* )
70+
-Same as Section II above
71+
+the Contact Information above)
72+
+Same as in Section II above:
73+
@@ -86,1 +90,1 @@
74+
-VI. Other Note(s):
75+
+VI. Other Notes:

test/diff/_ipr_new-specific_

Lines changed: 73 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,73 @@
1+
--- https://datatracker.ietf.org/public/ipr.cgi
2+
+++ /ipr/new-specific/
3+
@@ -16,0 +16,1 @@
4+
+Fields marked with * are required.
5+
@@ -17,2 +18,2 @@
6+
-Legal Name:
7+
-II. Patent Holder's Contact for License Application (Required field* )
8+
+Legal Name: *
9+
+II. Patent Holder's Contact for License Application
10+
@@ -28,1 +29,1 @@
11+
-Belief Triggered this Disclosure (Optional) (Required field* )
12+
+Belief Triggered this Disclosure:
13+
@@ -37,4 +38,4 @@
14+
-IV. IETF Document or Other Contribution to Which this IPR Disclosure
15+
-Relates ( Please fill in one of the boxes below )
16+
-RFC Number (Numeric value only):
17+
-I-D Filename (draft-...):
18+
+* IV. IETF Document or Other Contribution to Which this IPR Disclosure
19+
+Relates:
20+
+RFC Numbers:
21+
+I-D Filenames (draft-...):
22+
@@ -47,4 +48,4 @@
23+
-number(s):
24+
-Date(s) granted or applied for:
25+
-Country:
26+
-Additional Note(s):
27+
+number(s): *
28+
+Date(s) granted or applied for: *
29+
+Country: *
30+
+Additional Notes:
31+
@@ -52,2 +53,3 @@
32+
-application?
33+
-Select one: Yes No
34+
+application?:
35+
+YES
36+
+NO
37+
@@ -59,1 +61,1 @@
38+
-covered.
39+
+covered:
40+
@@ -68,2 +70,2 @@
41+
-a) No License Required for Implementers. This licensing declaration is
42+
-limited solely to standards-track IETF documents.
43+
+*
44+
+a) No License Required for Implementers.
45+
@@ -71,2 +73,1 @@
46+
-Implementers. This licensing declaration is limited solely to
47+
-standards-track IETF documents.
48+
+Implementers.
49+
@@ -74,2 +75,1 @@
50+
-Possible Royalty/Fee. This licensing declaration is limited solely to
51+
-standards-track IETF documents.
52+
+Possible Royalty/Fee.
53+
@@ -81,3 +81,5 @@
54+
-f ) See Text Box Below for Licensing Declaration.
55+
-Licensing information, comments, notes, or URL for further information
56+
-:
57+
+f) See Text Below for Licensing Declaration.
58+
+Above licensing declaration is limited solely to standards-track IETF
59+
+documents.
60+
+Licensing information, comments, notes, or URL for further
61+
+information:
62+
@@ -88,1 +90,1 @@
63+
-NOTE: The individual submitting this template represents and warrants
64+
+Note: The individual submitting this template represents and warrants
65+
@@ -92,2 +94,3 @@
66+
-IETF Participant in Section III above) (Required field* )
67+
-Same as Section III above
68+
+the Contact Information above)
69+
+Same as in Section II above:
70+
+Same as in Section III above:
71+
@@ -102,1 +105,1 @@
72+
-VIII. Other Note(s):
73+
+VIII. Other Notes:

0 commit comments

Comments
 (0)