Skip to content

Commit 62af60a

Browse files
committed
Deprecate the min= and max= attrs of
the memberOf element, as they make no sense except when used in a sequence reference, which has been deprecated
1 parent 5d38bcf commit 62af60a

File tree

4 files changed

+141
-53
lines changed

4 files changed

+141
-53
lines changed

P5/Source/Specs/memberOf.xml

Lines changed: 45 additions & 37 deletions
Original file line numberDiff line numberDiff line change
@@ -6,76 +6,84 @@
66
<desc versionDate="2007-12-20" xml:lang="ko">부모 요소 또는 부류의 부류 원소 자격을 명시한다.</desc>
77
<desc versionDate="2007-05-02" xml:lang="zh-TW">標明父元素或元素集所屬的元素集。</desc>
88
<desc versionDate="2008-04-05" xml:lang="ja">親要素や親クラスを示す。</desc>
9-
<desc versionDate="2007-06-12" xml:lang="fr">précise à quelle classe appartiennent la classe ou
10-
l'élément parent.</desc>
11-
<desc versionDate="2007-05-04" xml:lang="es">especifica la pertenencia a una clase del elemento o
12-
clase padre.</desc>
13-
<desc versionDate="2007-01-21" xml:lang="it">specifica l'appartenenza a una classe dell'elemento o
14-
classe genitori</desc>
9+
<desc versionDate="2007-06-12" xml:lang="fr">précise à quelle classe appartiennent la classe ou l'élément parent.</desc>
10+
<desc versionDate="2007-05-04" xml:lang="es">especifica la pertenencia a una clase del elemento o clase padre.</desc>
11+
<desc versionDate="2007-01-21" xml:lang="it">specifica l'appartenenza a una classe dell'elemento o classe genitori</desc>
1512
<classes>
1613
<memberOf key="att.global"/>
17-
</classes>
14+
</classes>
1815
<content>
1916
<macroRef key="macro.xtext"/>
2017
</content>
2118
<attList>
2219
<attDef ident="key">
23-
<desc versionDate="2005-01-14" xml:lang="en">specifies the identifier for a class of which the documented element or class is a
24-
member or subclass.</desc>
20+
<desc versionDate="2005-01-14" xml:lang="en">specifies the identifier for a class of which the documented element or class is a member or subclass.</desc>
2521
<desc versionDate="2007-12-20" xml:lang="ko">기록된 요소 또는 부류가 원소 또는 하위부류인 부류의 확인소를 명시한다.</desc>
2622
<desc versionDate="2007-05-02" xml:lang="zh-TW">標明一元素集的識別名稱,該元素集為所紀錄元素或元素集之所屬或附屬元素集</desc>
2723
<desc versionDate="2008-04-05" xml:lang="ja">当該要素またはクラスが下位要素・下位クラスとなっているクラスの識 別子を示す。</desc>
28-
<desc versionDate="2007-06-12" xml:lang="fr">précise l’identifiant pour une classe pour laquelle
29-
l'élément documenté ou classe est un membre ou sous-classe.</desc>
30-
<desc versionDate="2007-05-04" xml:lang="es">especifica el identificador de una clase de la cual
31-
el elemento o clase indicados son un miembro o una subclase.</desc>
32-
<desc versionDate="2007-01-21" xml:lang="it">indica l'identificatore di una classe di cui
33-
l'elemento o classe indicati sono un membro o una sottoclasse</desc>
24+
<desc versionDate="2007-06-12" xml:lang="fr">précise l’identifiant pour une classe pour laquelle l'élément documenté ou classe est un membre ou sous-classe.</desc>
25+
<desc versionDate="2007-05-04" xml:lang="es">especifica el identificador de una clase de la cual el elemento o clase indicados son un miembro o una subclase.</desc>
26+
<desc versionDate="2007-01-21" xml:lang="it">indica l'identificatore di una classe di cui l'elemento o classe indicati sono un membro o una sottoclasse</desc>
3427
<datatype><dataRef key="teidata.name"/></datatype>
3528
</attDef>
3629
<attDef ident="mode" usage="opt">
3730
<desc versionDate="2007-09-15" xml:lang="en">specifies the effect of this declaration on its parent module.</desc>
3831
<desc versionDate="2007-12-20" xml:lang="ko">부모 모듈에 이 선언의 효과를 명시한다.</desc>
39-
<desc versionDate="2008-04-06" xml:lang="es">especifica el efecto de esta declaración en su módulo
40-
padre.</desc>
32+
<desc versionDate="2008-04-06" xml:lang="es">especifica el efecto de esta declaración en su módulo padre.</desc>
4133
<desc versionDate="2008-04-05" xml:lang="ja">当該宣言が親モジュールに与える影響を示す。</desc>
42-
<desc versionDate="2008-03-30" xml:lang="fr">indique l'effet de cette déclaration sur son module
43-
parent.</desc>
44-
<desc versionDate="2007-11-06" xml:lang="it">specifica l'effetto della dichiarazione sul modulo
45-
genitore</desc>
34+
<desc versionDate="2008-03-30" xml:lang="fr">indique l'effet de cette déclaration sur son module parent.</desc>
35+
<desc versionDate="2007-11-06" xml:lang="it">specifica l'effetto della dichiarazione sul modulo genitore</desc>
4636
<datatype><dataRef key="teidata.enumerated"/></datatype>
4737
<defaultVal>add</defaultVal>
4838
<valList type="closed">
4939
<valItem ident="add">
5040
<desc versionDate="2007-09-15" xml:lang="en">this declaration is added to the current definitions</desc>
5141
<desc versionDate="2007-12-20" xml:lang="ko">이 선언은 현 정의에 추가된다.</desc>
52-
<desc versionDate="2008-04-06" xml:lang="es">esta declaración se agrega a las definiciones
53-
actuales</desc>
42+
<desc versionDate="2008-04-06" xml:lang="es">esta declaración se agrega a las definiciones actuales</desc>
5443
<desc versionDate="2008-04-05" xml:lang="ja">当該宣言は、現行定義に追加される。</desc>
55-
<desc versionDate="2008-03-30" xml:lang="fr">cette déclaration s'ajoute aux définitions
56-
courantes.</desc>
57-
<desc versionDate="2007-11-06" xml:lang="it">la dichiarazione è aggiunta alle definizioni
58-
correnti</desc>
44+
<desc versionDate="2008-03-30" xml:lang="fr">cette déclaration s'ajoute aux définitions courantes.</desc>
45+
<desc versionDate="2007-11-06" xml:lang="it">la dichiarazione è aggiunta alle definizioni correnti</desc>
5946
</valItem>
6047
<valItem ident="delete">
6148
<desc versionDate="2007-09-15" xml:lang="en">this declaration and all of its children are removed from the current setup</desc>
6249
<desc versionDate="2007-12-20" xml:lang="ko">이 선언과 이 선언의 모든 자식은 현 구성에서 제거된다.</desc>
63-
<desc versionDate="2008-04-06" xml:lang="es">esta declaración y todos sus hijos se suprimen de
64-
la disposición actual</desc>
50+
<desc versionDate="2008-04-06" xml:lang="es">esta declaración y todos sus hijos se suprimen de la disposición actual</desc>
6551
<desc versionDate="2008-04-05" xml:lang="ja">当該宣言と全子要素は、現行定義から外される。</desc>
66-
<desc versionDate="2008-03-30" xml:lang="fr">cette déclaration et tous ses enfants sont
67-
retirés du système courant.</desc>
68-
<desc versionDate="2007-11-06" xml:lang="it">la dichiarazione e i suoi discendenti sono
69-
esclusi dall'impostazione corrente</desc>
52+
<desc versionDate="2008-03-30" xml:lang="fr">cette déclaration et tous ses enfants sont retirés du système courant.</desc>
53+
<desc versionDate="2007-11-06" xml:lang="it">la dichiarazione e i suoi discendenti sono esclusi dall'impostazione corrente</desc>
7054
</valItem>
7155
</valList>
7256
</attDef>
73-
<attDef ident="max">
74-
<desc versionDate="2011-12-01" xml:lang="en">supplies the maximum number of times the element can occur in elements which use this model class in their content model</desc>
57+
<attDef ident="max" validUntil="2027-03-02">
58+
<desc type="deprecationInfo" versionDate="2025-10-06"
59+
xml:lang="en">Specifying any number of times greater than 1 that
60+
an element may occur in a class reference only makes sense if
61+
the class is being referenced as a sequence. (It has no effect
62+
if the class is referenced as an alternation, and causes an
63+
error if the class is referneced as an interleave.) However, the
64+
capability to refer to a class as a sequence is being deprecated
65+
(because there is no good way to define the order of that
66+
sequence). Thus this attribute and <att>min</att> are also being
67+
deprecated.</desc>
68+
<desc versionDate="2011-12-01" xml:lang="en">supplies the
69+
maximum number of times the element can occur in elements which
70+
use this model class in their content model</desc>
7571
<datatype><dataRef key="teidata.numeric"/></datatype>
7672
</attDef>
77-
<attDef ident="min">
78-
<desc versionDate="2011-12-01" xml:lang="en">supplies the minumum number of times the element must occur in elements which use this model class in their content model</desc>
73+
<attDef ident="min" validUntil="2027-03-02">
74+
<desc type="deprecationInfo" versionDate="2025-10-06"
75+
xml:lang="en">Specifying any number of times greater than 1 that
76+
an element may occur in a class reference only makes sense if
77+
the class is being referenced as a sequence. (It has no effect
78+
if the class is referenced as an alternation, and causes an
79+
error if the class is referneced as an interleave.) However, the
80+
capability to refer to a class as a sequence is being deprecated
81+
(because there is no good way to define the order of that
82+
sequence). Thus this attribute and <att>max</att> are also being
83+
deprecated.</desc>
84+
<desc versionDate="2011-12-01" xml:lang="en">supplies
85+
the minumum number of times the element must occur in elements
86+
which use this model class in their content model</desc>
7987
<datatype><dataRef key="teidata.numeric"/></datatype>
8088
</attDef>
8189
</attList>

P5/Test/detest.odd

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -234,7 +234,7 @@
234234
<memberOf key="att.global"/>
235235
<memberOf key="att.metrical"/>
236236
<memberOf key="att.enjamb"/>
237-
<memberOf key="model.lLike" min="2" max="6"/>
237+
<memberOf key="model.lLike"/>
238238
</classes>
239239
</elementSpec>
240240
<elementSpec ident="blort" mode="add">

P5/Test/detest.xml

Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -240,6 +240,8 @@
240240
<div>
241241
<head>
242242
<lg>
243+
<!-- And error, because the detest.odd definition of <lg>
244+
requires 2 <l> or similar children. -->
243245
<l>Bent double, like old beggars under sacks, </l>
244246
</lg>
245247
</head>
@@ -464,6 +466,24 @@
464466
</floatingText>
465467
</div>
466468

469+
<div n="should_be_invalid">
470+
<sp>
471+
<speaker/><speaker/>
472+
</sp>
473+
<sp>
474+
<stage/><stage/>
475+
</sp>
476+
<sp>
477+
<speaker/><speaker/>
478+
<p/><p/>
479+
</sp>
480+
<sp>
481+
<stage/><stage/>
482+
<speaker/><speaker/>
483+
<p/><p/>
484+
</sp>
485+
</div>
486+
467487
</body>
468488
<back>
469489
<schemaSpec ident="detest_ODD_error_check">

P5/Test/expected-results/detest_xml_relaxng.log

Lines changed: 75 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -22,10 +22,7 @@ required:
2222
detest.xml:235:10: error: attribute ^name with invalid value "123"
2323
required:
2424
data http://www.w3.org/2001/XMLSchema-datatypes^Name
25-
detest.xml:244:10: error: unfinished content of element http://www.tei-c.org/ns/1.0^lg
26-
required:
27-
element http://www.tei-c.org/ns/1.0^l
28-
detest.xml:271:37: error: invalid data or text not allowed
25+
detest.xml:273:37: error: invalid data or text not allowed
2926
required:
3027
element http://www.tei-c.org/ns/1.0^add
3128
element http://www.tei-c.org/ns/1.0^surplus
@@ -37,34 +34,34 @@ required:
3734
element http://www.tei-c.org/ns/1.0^cb
3835
element http://www.tei-c.org/ns/1.0^fw
3936
element http://www.tei-c.org/ns/1.0^anchor
40-
detest.xml:291:11: error: attribute ^target with invalid value "#spanTest"
37+
detest.xml:293:11: error: attribute ^target with invalid value "#spanTest"
4138
required:
4239
data http://www.w3.org/2001/XMLSchema-datatypes^anyURI
43-
detest.xml:297:11: error: missing attributes of http://www.tei-c.org/ns/1.0^media
40+
detest.xml:299:11: error: missing attributes of http://www.tei-c.org/ns/1.0^media
4441
required:
4542
attribute ^url
46-
detest.xml:298:11: error: missing attributes of http://www.tei-c.org/ns/1.0^media
43+
detest.xml:300:11: error: missing attributes of http://www.tei-c.org/ns/1.0^media
4744
required:
4845
attribute ^mimeType
49-
detest.xml:304:51: error: invalid data or text not allowed
46+
detest.xml:306:51: error: invalid data or text not allowed
5047
required:
5148
after
52-
detest.xml:305:41: error: invalid data or text not allowed
49+
detest.xml:307:41: error: invalid data or text not allowed
5350
required:
5451
after
55-
detest.xml:306:61: error: invalid data or text not allowed
52+
detest.xml:308:61: error: invalid data or text not allowed
5653
required:
5754
after
58-
detest.xml:307:25: error: invalid data or text not allowed
55+
detest.xml:309:25: error: invalid data or text not allowed
5956
required:
6057
after
61-
detest.xml:371:12: error: element http://www.tei-c.org/ns/1.0^altIdentifier not allowed
58+
detest.xml:373:12: error: element http://www.tei-c.org/ns/1.0^altIdentifier not allowed
6259
required:
6360
element http://www.tei-c.org/ns/1.0^msIdentifier
64-
detest.xml:374:10: error: unfinished content of element http://www.tei-c.org/ns/1.0^msPart
61+
detest.xml:376:10: error: unfinished content of element http://www.tei-c.org/ns/1.0^msPart
6562
required:
6663
element http://www.tei-c.org/ns/1.0^msIdentifier
67-
detest.xml:403:10: error: element http://www.tei-c.org/ns/1.0^idno not allowed
64+
detest.xml:405:10: error: element http://www.tei-c.org/ns/1.0^idno not allowed
6865
required:
6966
after
7067
allowed:
@@ -77,7 +74,70 @@ allowed:
7774
element http://www.tei-c.org/ns/1.0^listRef
7875
element http://www.tei-c.org/ns/1.0^relatedItem
7976
element http://www.tei-c.org/ns/1.0^citedRange
80-
detest.xml:481:12: error: attribute ^target with invalid value ""
77+
detest.xml:471:20: error: element http://www.tei-c.org/ns/1.0^speaker not allowed
78+
required:
79+
element http://www.tei-c.org/ns/1.0^lg
80+
element http://www.tei-c.org/ns/1.0^l
81+
element http://www.tei-c.org/ns/1.0^ab
82+
element http://www.tei-c.org/ns/1.0^p
83+
element http://www.tei-c.org/ns/1.0^list
84+
element http://www.tei-c.org/ns/1.0^listApp
85+
element http://www.tei-c.org/ns/1.0^listWit
86+
element http://www.tei-c.org/ns/1.0^table
87+
element http://www.tei-c.org/ns/1.0^stage
88+
element http://www.tei-c.org/ns/1.0^quote
89+
element http://www.tei-c.org/ns/1.0^cit
90+
element http://www.tei-c.org/ns/1.0^said
91+
element http://www.tei-c.org/ns/1.0^floatingText
92+
detest.xml:472:8: error: unfinished content of element http://www.tei-c.org/ns/1.0^sp
93+
required:
94+
element http://www.tei-c.org/ns/1.0^lg
95+
element http://www.tei-c.org/ns/1.0^l
96+
element http://www.tei-c.org/ns/1.0^ab
97+
element http://www.tei-c.org/ns/1.0^p
98+
element http://www.tei-c.org/ns/1.0^list
99+
element http://www.tei-c.org/ns/1.0^listApp
100+
element http://www.tei-c.org/ns/1.0^listWit
101+
element http://www.tei-c.org/ns/1.0^table
102+
element http://www.tei-c.org/ns/1.0^stage
103+
element http://www.tei-c.org/ns/1.0^quote
104+
element http://www.tei-c.org/ns/1.0^cit
105+
element http://www.tei-c.org/ns/1.0^said
106+
element http://www.tei-c.org/ns/1.0^floatingText
107+
detest.xml:475:8: error: unfinished content of element http://www.tei-c.org/ns/1.0^sp
108+
required:
109+
element http://www.tei-c.org/ns/1.0^speaker
110+
detest.xml:477:20: error: element http://www.tei-c.org/ns/1.0^speaker not allowed
111+
required:
112+
element http://www.tei-c.org/ns/1.0^lg
113+
element http://www.tei-c.org/ns/1.0^l
114+
element http://www.tei-c.org/ns/1.0^ab
115+
element http://www.tei-c.org/ns/1.0^p
116+
element http://www.tei-c.org/ns/1.0^list
117+
element http://www.tei-c.org/ns/1.0^listApp
118+
element http://www.tei-c.org/ns/1.0^listWit
119+
element http://www.tei-c.org/ns/1.0^table
120+
element http://www.tei-c.org/ns/1.0^stage
121+
element http://www.tei-c.org/ns/1.0^quote
122+
element http://www.tei-c.org/ns/1.0^cit
123+
element http://www.tei-c.org/ns/1.0^said
124+
element http://www.tei-c.org/ns/1.0^floatingText
125+
detest.xml:482:20: error: element http://www.tei-c.org/ns/1.0^speaker not allowed
126+
required:
127+
element http://www.tei-c.org/ns/1.0^lg
128+
element http://www.tei-c.org/ns/1.0^l
129+
element http://www.tei-c.org/ns/1.0^ab
130+
element http://www.tei-c.org/ns/1.0^p
131+
element http://www.tei-c.org/ns/1.0^list
132+
element http://www.tei-c.org/ns/1.0^listApp
133+
element http://www.tei-c.org/ns/1.0^listWit
134+
element http://www.tei-c.org/ns/1.0^table
135+
element http://www.tei-c.org/ns/1.0^stage
136+
element http://www.tei-c.org/ns/1.0^quote
137+
element http://www.tei-c.org/ns/1.0^cit
138+
element http://www.tei-c.org/ns/1.0^said
139+
element http://www.tei-c.org/ns/1.0^floatingText
140+
detest.xml:501:12: error: attribute ^target with invalid value ""
81141
required:
82142
data http://www.w3.org/2001/XMLSchema-datatypes^anyURI
83143
error: some documents are invalid

0 commit comments

Comments
 (0)