From 007811a6dc1c41c75d2fc3ac86ecb35014856a72 Mon Sep 17 00:00:00 2001
From: Karl Berry <karl@freefriends.org>
Date: Thu, 20 Aug 2020 21:11:51 +0000
Subject: biblatex (20aug20)

git-svn-id: svn://tug.org/texlive/trunk@56143 c570f23f-e606-0410-a88d-b1316a301751
---
 Master/texmf-dist/tex/latex/biblatex/blx-dm.def | 150 ++++++++----------------
 1 file changed, 51 insertions(+), 99 deletions(-)

(limited to 'Master/texmf-dist/tex/latex/biblatex/blx-dm.def')

diff --git a/Master/texmf-dist/tex/latex/biblatex/blx-dm.def b/Master/texmf-dist/tex/latex/biblatex/blx-dm.def
index 4cbdfa5bb86..0667b577aec 100644
--- a/Master/texmf-dist/tex/latex/biblatex/blx-dm.def
+++ b/Master/texmf-dist/tex/latex/biblatex/blx-dm.def
@@ -106,11 +106,11 @@
       \blx@xml@datamodel@entrytype{\blx@tempa}{##1}}}%
   \ifblank{#1}
     {\docsvlist{#2}}
-    {\setkeys{blx@datamodel@entrytypes}{#1}
+    {\blx@kv@setkeys{blx@datamodel@entrytypes}{#1}
      \docsvlist{#2}}%
   \endgroup}
 
-\define@key{blx@datamodel@entrytypes}{skipout}[true]{% true|false
+\blx@kv@defkey{blx@datamodel@entrytypes}{skipout}[true]{% true|false
   \ifstrequal{#1}{true}
     {\appto\blx@tempa{ skip\string_output="true"}}
     {}}
@@ -128,7 +128,7 @@
   \boolfalse{dmskipout}%
   \boolfalse{dmlabelfield}%
   \let\blx@tempa\@empty
-  \setkeys{blx@datamodel@field}{#1}%
+  \blx@kv@setkeys{blx@datamodel@field}{#1}%
   \def\do##1{%
     % Generic lists of field/datatypes for testing bib fields
     \ifinlistcs{##1}{blx@datamodelfields@fieldtypes@\blx@dm@fieldtype}
@@ -240,7 +240,7 @@
          \xifinlistcs{\blx@datetype ####1}{blx@datamodel@fields}
            {}
            {\listcsxadd{blx@datamodel@fields}{\blx@datetype ####1}}%
-         \setkeys{blx@datamodel@field}{type=field,datatype=datepart,nullok}%
+         \blx@kv@setkeys{blx@datamodel@field}{type=field,datatype=datepart,nullok}%
          \xappto\blx@bcf@datamodel@fields{%
            \blx@xml@datamodel@field{\blx@tempa}{\blx@datetype ####1}}}%
        \expandafter\docsvlist\expandafter{\blx@nullokdateparts}%
@@ -252,7 +252,7 @@
          \xifinlistcs{\blx@datetype ####1}{blx@datamodel@fields}
            {}
            {\listcsxadd{blx@datamodel@fields}{\blx@datetype ####1}}%
-         \setkeys{blx@datamodel@field}{type=field,datatype=datepart}%
+         \blx@kv@setkeys{blx@datamodel@field}{type=field,datatype=datepart}%
          \xappto\blx@bcf@datamodel@fields{%
            \blx@xml@datamodel@field{\blx@tempa}{\blx@datetype ####1}}}%
        \expandafter\docsvlist\expandafter{\blx@notnulldateparts}%
@@ -261,25 +261,25 @@
    \docsvlist{#2}
    \endgroup}
 
-\define@key{blx@datamodel@field}{type}{% characters
+\blx@kv@defkey{blx@datamodel@field}{type}{% characters
   \eappto\blx@tempa{ fieldtype="#1"}%
   \def\blx@dm@fieldtype{#1}}
-\define@key{blx@datamodel@field}{datatype}{% characters
+\blx@kv@defkey{blx@datamodel@field}{datatype}{% characters
   \eappto\blx@tempa{ datatype="#1"}%
   \def\blx@dm@datatype{#1}}
-\define@key{blx@datamodel@field}{format}{% characters
+\blx@kv@defkey{blx@datamodel@field}{format}{% characters
   \eappto\blx@tempa{ format="#1"}%
   \def\blx@dm@format{#1}}
-\define@key{blx@datamodel@field}{nullok}[true]{% true|false
+\blx@kv@defkey{blx@datamodel@field}{nullok}[true]{% true|false
   \ifstrequal{#1}{true}
     {\appto\blx@tempa{ nullok="true"}}
     {}}
-\define@key{blx@datamodel@field}{skipout}[true]{% true|false
+\blx@kv@defkey{blx@datamodel@field}{skipout}[true]{% true|false
   \ifstrequal{#1}{true}
     {\appto\blx@tempa{ skip\string_output="true"}%
      \booltrue{dmskipout}}
     {}}
-\define@key{blx@datamodel@field}{label}[true]{% true|false
+\blx@kv@defkey{blx@datamodel@field}{label}[true]{% true|false
   \ifstrequal{#1}{true}
     {\appto\blx@tempa{ label="true"}%
      \booltrue{dmlabelfield}}
@@ -290,13 +290,13 @@
   \let\blx@tempa\@empty
   \ifblank{#1}
     {\def\blx@tempa{string}}
-    {\setkeys{blx@datamodel@constant}{#1}}%
+    {\blx@kv@setkeys{blx@datamodel@constant}{#1}}%
   \xappto\blx@bcf@datamodel@constants{\blx@xml@datamodel@constant{\blx@tempa}{#2}{#3}}%
   \csxdef{blx@datamodel@constant@#2}{#3}%
   \csxdef{blx@datamodel@constanttype@#2}{\blx@tempa}%
   \endgroup}
 
-\define@key{blx@datamodel@constant}{type}{%
+\blx@kv@defkey{blx@datamodel@constant}{type}{%
   \def\blx@tempa{#1}}
 
 \newrobustcmd*{\DeclareDatamodelMultiscriptEntryfields}[1]{%
@@ -340,7 +340,7 @@
 \newcommand*{\blx@datamodel@constraint}[2][]{%
   \let\blx@tempc\@empty
   \let\blx@tempd\@empty
-  \setkeys{blx@datamodel@constraint}{#1}%
+  \blx@kv@setkeys{blx@datamodel@constraint}{#1}%
   \let\constraintfieldsxor\blx@datamodel@constraintfieldsxor
   \let\constraintfieldsor\blx@datamodel@constraintfieldsor
   \let\constraintfield\blx@datamodel@constraintfield
@@ -349,22 +349,22 @@
   #2%
   \eappto\blx@tempb{\blx@xml@datamodel@constraint{\blx@tempc}{\blx@tempd}}}
 
-\define@key{blx@datamodel@constraint}{type}{% characters
+\blx@kv@defkey{blx@datamodel@constraint}{type}{% characters
   \eappto\blx@tempc{ type="#1"}}
-\define@key{blx@datamodel@constraint}{datatype}{% characters
+\blx@kv@defkey{blx@datamodel@constraint}{datatype}{% characters
   \eappto\blx@tempc{ datatype="#1"}}
-\define@key{blx@datamodel@constraint}{rangemin}{% integer
+\blx@kv@defkey{blx@datamodel@constraint}{rangemin}{% integer
   \eappto\blx@tempc{ rangemin="#1"}}
-\define@key{blx@datamodel@constraint}{rangemax}{% integer
+\blx@kv@defkey{blx@datamodel@constraint}{rangemax}{% integer
   \eappto\blx@tempc{ rangemax="#1"}}
-\define@key{blx@datamodel@constraint}{pattern}{% regexp
+\blx@kv@defkey{blx@datamodel@constraint}{pattern}{% regexp
   \eappto\blx@tempc{ pattern="#1"}}
 
 \newcommand*{\blx@datamodel@constraint@antecedent}[2][]{%
   \let\blx@tempe\@empty
   \let\blx@temph\@empty
   \let\constraintfield\blx@datamodel@constraintfieldsub
-  \setkeys{blx@datamodel@constraint@quant}{#1}%
+  \blx@kv@setkeys{blx@datamodel@constraint@quant}{#1}%
   #2%
   \let\constraintfield\blx@datamodel@constraintfield% back to default
   \eappto\blx@tempd{\blx@xml@datamodel@constraint@antecedent{\blx@tempe}{\blx@temph}}}
@@ -373,12 +373,12 @@
   \let\blx@tempe\@empty
   \let\blx@temph\@empty
   \let\constraintfield\blx@datamodel@constraintfieldsub
-  \setkeys{blx@datamodel@constraint@quant}{#1}%
+  \blx@kv@setkeys{blx@datamodel@constraint@quant}{#1}%
   #2%
   \let\constraintfield\blx@datamodel@constraintfield% back to default
   \eappto\blx@tempd{\blx@xml@datamodel@constraint@consequent{\blx@tempe}{\blx@temph}}}
 
-\define@key{blx@datamodel@constraint@quant}{quantifier}{% characters
+\blx@kv@defkey{blx@datamodel@constraint@quant}{quantifier}{% characters
   \eappto\blx@tempe{ quant="#1"}}
 
 \newcommand*{\blx@datamodel@constraintfieldsxor}[1]{%
@@ -496,9 +496,11 @@
   issue,
   issuesubtitle,
   issuetitle,
+  issuetitleaddon,
   iswc,
   journalsubtitle,
   journaltitle,
+  journaltitleaddon,
   label,
   langid,
   langidopts,
@@ -625,6 +627,7 @@
 
 \DeclareDatamodelFields[type=field, datatype=code]{execute}
 
+% fields for all entry types
 \DeclareDatamodelEntryfields{
   abstract,
   annotation,
@@ -632,6 +635,10 @@
   bookpagination,
   crossref,
   day,
+  doi,
+  eprint,
+  eprintclass,
+  eprinttype,
   endday,
   endhour,
   endminute,
@@ -665,6 +672,12 @@
   listf,
   minute,
   month,
+  namea,
+  nameb,
+  namec,
+  nameatype,
+  namebtype,
+  namectype,
   nameaddon,
   options,
   origday,
@@ -743,7 +756,6 @@
   annotator,
   author,
   commentator,
-  doi,
   editor,
   editora,
   editorb,
@@ -753,15 +765,14 @@
   editorbtype,
   editorctype,
   eid,
-  eprint,
-  eprintclass,
-  eprinttype,
   issn,
   issue,
   issuetitle,
   issuesubtitle,
+  issuetitleaddon,
   journalsubtitle,
   journaltitle,
+  journaltitleaddon,
   language,
   note,
   number,
@@ -785,7 +796,6 @@
   annotator,
   chapter,
   commentator,
-  doi,
   edition,
   editor,
   editora,
@@ -795,9 +805,7 @@
   editoratype,
   editorbtype,
   editorctype,
-  eprint,
-  eprintclass,
-  eprinttype,
+  eid,
   foreword,
   introduction,
   isbn,
@@ -828,7 +836,6 @@
   annotator,
   author,
   commentator,
-  doi,
   edition,
   editor,
   editora,
@@ -838,9 +845,6 @@
   editoratype,
   editorbtype,
   editorctype,
-  eprint,
-  eprintclass,
-  eprinttype,
   foreword,
   introduction,
   isbn,
@@ -871,7 +875,6 @@
   booktitleaddon,
   chapter,
   commentator,
-  doi,
   edition,
   editor,
   editora,
@@ -881,9 +884,7 @@
   editoratype,
   editorbtype,
   editorctype,
-  eprint,
-  eprintclass,
-  eprinttype,
+  eid,
   foreword,
   introduction,
   isbn,
@@ -911,12 +912,9 @@
   addendum,
   author,
   chapter,
-  doi,
   editor,
   editortype,
-  eprint,
-  eprintclass,
-  eprinttype,
+  eid,
   howpublished,
   language,
   location,
@@ -935,7 +933,6 @@
   annotator,
   chapter,
   commentator,
-  doi,
   edition,
   editor,
   editora,
@@ -945,9 +942,7 @@
   editoratype,
   editorbtype,
   editorctype,
-  eprint,
-  eprintclass,
-  eprinttype,
+  eid,
   foreword,
   introduction,
   isbn,
@@ -978,7 +973,6 @@
   annotator,
   author,
   commentator,
-  doi,
   edition,
   editor,
   editora,
@@ -988,9 +982,6 @@
   editoratype,
   editorbtype,
   editorctype,
-  eprint,
-  eprintclass,
-  eprinttype,
   foreword,
   introduction,
   isbn,
@@ -1018,7 +1009,6 @@
   booktitleaddon,
   chapter,
   commentator,
-  doi,
   edition,
   editor,
   editora,
@@ -1028,9 +1018,7 @@
   editoratype,
   editorbtype,
   editorctype,
-  eprint,
-  eprintclass,
-  eprinttype,
+  eid,
   foreword,
   introduction,
   isbn,
@@ -1057,13 +1045,9 @@
 \DeclareDatamodelEntryfields[dataset]{
   addendum,
   author,
-  doi,
   edition,
   editor,
   editortype,
-  eprint,
-  eprintclass,
-  eprinttype,
   language,
   location,
   note,
@@ -1082,13 +1066,10 @@
   addendum,
   author,
   chapter,
-  doi,
   edition,
   editor,
   editortype,
-  eprint,
-  eprintclass,
-  eprinttype,
+  eid,
   isbn,
   language,
   location,
@@ -1109,12 +1090,8 @@
 \DeclareDatamodelEntryfields[misc,software]{
   addendum,
   author,
-  doi,
   editor,
   editortype,
-  eprint,
-  eprintclass,
-  eprinttype,
   howpublished,
   language,
   location,
@@ -1130,12 +1107,8 @@
 \DeclareDatamodelEntryfields[online]{
   addendum,
   author,
-  doi,
   editor,
   editortype,
-  eprint,
-  eprintclass,
-  eprinttype,
   language,
   note,
   organization,
@@ -1148,10 +1121,6 @@
 \DeclareDatamodelEntryfields[patent]{
   addendum,
   author,
-  doi,
-  eprint,
-  eprintclass,
-  eprinttype,
   holder,
   location,
   note,
@@ -1165,7 +1134,6 @@
 
 \DeclareDatamodelEntryfields[periodical]{
   addendum,
-  doi,
   editor,
   editora,
   editorb,
@@ -1174,13 +1142,11 @@
   editoratype,
   editorbtype,
   editorctype,
-  eprint,
-  eprintclass,
-  eprinttype,
   issn,
   issue,
   issuesubtitle,
   issuetitle,
+  issuetitleaddon,
   language,
   note,
   number,
@@ -1189,16 +1155,13 @@
   series,
   subtitle,
   title,
+  titleaddon,
   volume}
 
 \DeclareDatamodelEntryfields[mvproceedings]{
   addendum,
-  doi,
   editor,
   editortype,
-  eprint,
-  eprintclass,
-  eprinttype,
   eventday,
   eventendday,
   eventendhour,
@@ -1236,12 +1199,9 @@
 \DeclareDatamodelEntryfields[proceedings]{
   addendum,
   chapter,
-  doi,
   editor,
   editortype,
-  eprint,
-  eprintclass,
-  eprinttype,
+  eid,
   eventday,
   eventendday,
   eventendhour,
@@ -1289,12 +1249,9 @@
   booktitle,
   booktitleaddon,
   chapter,
-  doi,
   editor,
   editortype,
-  eprint,
-  eprintclass,
-  eprinttype,
+  eid,
   eventday,
   eventendday,
   eventendhour,
@@ -1338,10 +1295,7 @@
   addendum,
   author,
   chapter,
-  doi,
-  eprint,
-  eprintclass,
-  eprinttype,
+  eid,
   institution,
   isrn,
   language,
@@ -1361,10 +1315,7 @@
   addendum,
   author,
   chapter,
-  doi,
-  eprint,
-  eprintclass,
-  eprinttype,
+  eid,
   institution,
   language,
   location,
@@ -1431,8 +1382,10 @@
   introduction,
   issuesubtitle,
   issuetitle,
+  issuetitleaddon,
   journalsubtitle,
   journaltitle,
+  journaltitleaddon,
   location,
   mainsubtitle,
   maintitle,
@@ -1598,7 +1551,6 @@
 
 \DeclareDatamodelConstraints[proceedings,mvproceedings]{
   \constraint[type=mandatory]{
-    \constraintfield{editor}
     \constraintfield{title}
   }
 }
-- 
cgit v1.2.3

