summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/tex/latex/hyperxmp
diff options
context:
space:
mode:
authorKarl Berry <karl@freefriends.org>2020-09-25 20:57:39 +0000
committerKarl Berry <karl@freefriends.org>2020-09-25 20:57:39 +0000
commitbb1b3f8e561d48962c52f7d5aa057cd674520007 (patch)
tree59322dad418e751adcca7fe8b2ac55fa4ea6563c /Master/texmf-dist/tex/latex/hyperxmp
parentb74bf845fb4e0db3d055ac4b2955e90db0fcbb74 (diff)
hyperxmp (25sep20)
git-svn-id: svn://tug.org/texlive/trunk@56432 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist/tex/latex/hyperxmp')
-rw-r--r--Master/texmf-dist/tex/latex/hyperxmp/hyperxmp.sty369
1 files changed, 249 insertions, 120 deletions
diff --git a/Master/texmf-dist/tex/latex/hyperxmp/hyperxmp.sty b/Master/texmf-dist/tex/latex/hyperxmp/hyperxmp.sty
index 33e7335e848..87a0f265a8b 100644
--- a/Master/texmf-dist/tex/latex/hyperxmp/hyperxmp.sty
+++ b/Master/texmf-dist/tex/latex/hyperxmp/hyperxmp.sty
@@ -22,7 +22,7 @@
%%
\NeedsTeXFormat{LaTeX2e}[1999/12/01]
\ProvidesPackage{hyperxmp}
- [2020/06/19 v5.4 Store hyperref metadata in XMP format]
+ [2020/09/24 v5.5 Store hyperref metadata in XMP format]
\edef\hyxmp@dq@code{\the\catcode`\"}
\catcode`\"=12
\@ifundefined{AtEndDocument}{%
@@ -31,6 +31,13 @@
}{%
\let\hyxmp@at@end=\AtEndDocument
}
+\def\hyxmp@set@jobname#1\relax{%
+ \@ifnextchar"{\hyxmp@set@jobname@dbl}{\hyxmp@set@jobname@plain}#1\relax
+}
+\def\hyxmp@set@jobname@dbl"#1"\relax{\xdef\hyxmp@jobname{#1}}
+\def\hyxmp@set@jobname@plain#1\relax{\xdef\hyxmp@jobname{#1}}
+\expandafter\hyxmp@set@jobname\jobname\relax
+\newtoks{\hyxmp@aep@toks}
\RequirePackage{kvoptions}
\RequirePackage{pdfescape}
\RequirePackage{stringenc}
@@ -39,6 +46,9 @@
\RequirePackage{ifmtarg}
\RequirePackage{etoolbox}
\RequirePackage{ifthen}
+\ifLuaTeX
+ \RequirePackage{luacode}
+\fi
\def\@ifmtargexp#1{\expandafter\@ifmtarg\expandafter{#1}}
\def\@ifnotmtargexp#1{\expandafter\@ifnotmtarg\expandafter{#1}}
\newcommand*{\@if@def@and@nonempty}[3]{%
@@ -137,7 +147,7 @@
\next
\hyxmp@set@pdfx@major{#1}%
}
-\edef\@pdfsource{\jobname.tex}
+\edef\@pdfsource{\hyxmp@jobname.tex}
\define@key{Hyp}{pdfsource}{\hyxmp@pdfstringdef\@pdfsource{#1}}
\def\hyxmp@DocumentID{}
\define@key{Hyp}{pdfdocumentid}{\hyxmp@pdfstringdef\hyxmp@DocumentID{#1}}
@@ -187,6 +197,8 @@
\define@key{Hyp}{pdfidentifier}{\hyxmp@pdfstringdef\@pdfidentifier{#1}}
\def\@pdfsubtitle{}
\define@key{Hyp}{pdfsubtitle}{\hyxmp@pdfstringdef\@pdfsubtitle{#1}}
+\def\@pdfpubstatus{}
+\define@key{Hyp}{pdfpubstatus}{\hyxmp@pdfstringdef\@pdfpubstatus{#1}}
\def\@pdfcontactaddress{}
\define@key{Hyp}{pdfcontactaddress}{%
\let\xmpcomma=\hyxmp@comma
@@ -288,17 +300,20 @@
\hyxmp@hypersetup
}
\edef\hyxmp@concated@metadata{}
-\AtEndPreamble{%
- \@ifpackageloaded{babel}{%
- \edef\hyxmp@concated@metadata{babel}%
- }{%
- \@ifpackageloaded{polyglossia}{%
- \edef\hyxmp@concated@metadata{polyglossia}%
+\expandafter\hyxmp@aep@toks\expandafter=\expandafter{%
+ \the\hyxmp@aep@toks
+ \AtEndPreamble{%
+ \@ifpackageloaded{babel}{%
+ \edef\hyxmp@concated@metadata{babel}%
}{%
+ \@ifpackageloaded{polyglossia}{%
+ \edef\hyxmp@concated@metadata{polyglossia}%
+ }{%
+ }%
}%
}%
}
-\newcommand*{\hyxmp@find@metadata}{%
+\newcommand*{\hyxmp@warn@if@no@metadata}{%
\edef\hyxmp@concated@metadata{%
\hyxmp@concated@metadata
\@baseurl
@@ -343,7 +358,7 @@
}%
\ifx\hyxmp@concated@metadata\@empty
\PackageWarningNoLine{hyperxmp}{%
- \jobname.tex did not specify any metadata to\MessageBreak
+ \hyxmp@jobname.tex did not specify any metadata to\MessageBreak
include in the XMP packet.\space\space Please see the\MessageBreak
hyperxmp documentation for instructions on how to\MessageBreak
provide metadata values to hyperxmp}%
@@ -377,59 +392,46 @@
{}%
}%
}
-\AtEndPreamble{%
- \@ifpackageloaded{hyperref}{%
- \@if@def@and@nonempty{@pdflang}{%
- }{%
- \hyxmp@detect@langs
- }%
- \hyxmp@auto@assign@data
- \@ifundefined{XeTeXversion}{}{%
- \@ifmtargexp{\@pdfcreationdate}{%
- \let\@pdfcreationdate=\hyxmp@today@pdf
- }%
- {}%
- }%
- \hyxmp@check@standards
+\expandafter\hyxmp@aep@toks\expandafter=\expandafter{%
+ \the\hyxmp@aep@toks
+ \AtEndPreamble{%
+ \RequirePackage{hyperref}%
\hyxmp@no@info@lists
- \hyxmp@at@end{%
- \hyxmp@find@metadata
- \hyxmp@embed@packet
- }%
- }{%
- \PackageWarningNoLine{hyperxmp}{%
- \jobname.tex failed to include a\MessageBreak
- \string\usepackage\string{hyperref\string}
- in the preamble.\MessageBreak
- Consequently, all hyperxmp functionality will be\MessageBreak
- disabled}%
+ \begingroup
+ \let\@latex@warning@no@line=\@gobble
+ \hyxmp@use@first@valid{pdftitle}{\@pdftitle}{%
+ \scr@subject@var,%
+ \@title
+ }%
+ \hyxmp@use@first@valid{pdfauthor}{\@pdfauthor}{%
+ \scr@fromname@var,%
+ \@author
+ }%
+ \endgroup
}%
}
\hyxmp@at@end{%
- \hyxmp@set@dc@lang
- \ifx\@pdfmetalang\@empty
- \ifx\@pdflang\@empty
- \let\@pdfmetalang=\hyxmp@x@default
- \else
- \edef\@pdfmetalang{\@pdflang}%
- \fi
- \fi
- \hyxmp@xmlify\@pdfmetalang
\hyxmp@auto@assign@data
+ \hyxmp@check@standards
+ \hyxmp@warn@if@no@metadata
+ \hyxmp@embed@packet
}
\newcommand*{\hyxmp@set@koma@phones}{%
- \@if@def@and@nonempty{scr@frommobilephone@var}{%
- \@if@def@and@nonempty{scr@fromphone@var}{%
- \edef\hyxmp@koma@phones{\scr@frommobilephone@var,\scr@fromphone@var}%
- }{%
- \edef\hyxmp@koma@phones{\scr@frommobilephone@var}%
- }%
- }{%
- \@if@def@and@nonempty{scr@fromphone@var}{%
- \edef\hyxmp@koma@phones{\scr@fromphone@var}%
+ \begingroup
+ \Hy@unicodefalse
+ \@if@def@and@nonempty{scr@frommobilephone@var}{%
+ \@if@def@and@nonempty{scr@fromphone@var}{%
+ \hyxmp@pdfstringdef\hyxmp@koma@phones{\scr@frommobilephone@var,\scr@fromphone@var}%
+ }{%
+ \hyxmp@pdfstringdef\hyxmp@koma@phones{\scr@frommobilephone@var}%
+ }%
}{%
+ \@if@def@and@nonempty{scr@fromphone@var}{%
+ \hyxmp@pdfstringdef\hyxmp@koma@phones{\scr@fromphone@var}%
+ }{%
+ }%
}%
- }%
+ \endgroup
}
\newcommand*{\hyxmp@use@first@valid}[3]{%
\@ifmtargexp{#2}{%
@@ -453,14 +455,18 @@
\next
}
\newcommand*{\hyxmp@auto@assign@data}{%
- \hyxmp@use@first@valid{pdftitle}{\@pdftitle}{%
- \scr@subject@var,%
- \@title
- }%
- \hyxmp@use@first@valid{pdfauthor}{\@pdfauthor}{%
- \scr@fromname@var,%
- \@author
+ \@if@def@and@nonempty{@pdflang}{%
+ \let\hyxmp@dc@lang=\@pdflang
+ }{%
+ \hyxmp@detect@langs
}%
+ \ifx\@pdfmetalang\@empty
+ \ifx\@pdflang\@empty
+ \let\@pdfmetalang=\hyxmp@x@default
+ \else
+ \edef\@pdfmetalang{\@pdflang}%
+ \fi
+ \fi
\hyxmp@use@first@valid{pdfcontactemail}{\@pdfcontactemail}{%
\scr@fromemail@var
}%
@@ -478,6 +484,45 @@
\@publishers
}%
\hyxmp@parse@acmart
+ \@ifundefined{XeTeXversion}{}{%
+ \@ifmtargexp{\@pdfcreationdate}{%
+ \let\@pdfcreationdate=\hyxmp@today@pdf
+ }%
+ {}%
+ }%
+ \hyxmp@query@self
+}
+\ifLuaTeX
+\else
+ \RequirePackage{totpages}
+\fi
+\ifLuaTeX
+ \edef\hyxmp@prev@pdf@size{%
+ \luadirect{%
+local nbytes = lfs.attributes("\hyxmp@jobname.pdf", "size")
+if nbytes then
+ tex.write(nbytes)
+end
+ }%
+ }%
+\else
+ \ifPDFTeX
+ \edef\hyxmp@prev@pdf@size{\pdffilesize{\hyxmp@jobname.pdf}}%
+ \fi
+\fi
+\newcommand*{\hyxmp@query@self}{%
+ \ifLuaTeX
+ \@if@def@and@nonempty{@pdfnumpages}{%
+ }{%
+ \clearpage
+ \xdef\@pdfnumpages{\luadirect{tex.print(status.total_pages)}}%
+ }%
+ \else
+ \pdfstringdef\@pdfnumpages{\ref*{TotPages}}%
+ \fi
+ \hyxmp@use@first@valid{pdfbytes}{\@pdfbytes}{%
+ \hyxmp@prev@pdf@size
+ }%
}
\newcommand*{\hyxmp@parse@acmart}{%
\begingroup
@@ -573,55 +618,29 @@
}%
}
\@ifclassloaded{acmart}{}{\let\hyxmp@parse@acmart=\relax}
-\newcommand*{\hyxmp@set@dc@lang}{%
- \let\hyxmp@dc@lang=\@pdflang
-}
+\let\hyxmp@dc@lang=\@empty
\newcommand*{\hyxmp@detect@langs}{%
\@ifundefined{mainbcp47id}{%
\@ifundefined{LocaleForEach}{%
\let\@pdflang=\@empty
}{%
\BabelEnsureInfo
- \renewcommand*{\hyxmp@set@dc@lang}{%
- \getlocaleproperty\@pdflang{\bbl@main@language}{identification/tag.bcp47}%
- \hyxmp@write@pdflang
- \let\hyxmp@dc@lang=\relax
- \LocaleForEach{%
- \getlocaleproperty\hyxmp@lang@tag{####1}{identification/tag.bcp47}%
- \ifx\hyxmp@dc@lang\relax
- \edef\hyxmp@dc@lang{\hyxmp@lang@tag}%
- \else
- \edef\hyxmp@dc@lang{\hyxmp@dc@lang,\hyxmp@lang@tag}%
- \fi
- }%
+ \LocaleForEach{%
+ \getlocaleproperty\hyxmp@lang@tag{##1}{identification/tag.bcp47}%
+ \ifx\hyxmp@dc@lang\@empty
+ \xdef\hyxmp@dc@lang{\hyxmp@lang@tag}%
+ \else
+ \xdef\hyxmp@dc@lang{\hyxmp@dc@lang,\hyxmp@lang@tag}%
+ \fi
+ \def\hyxmp@lang@name{##1}%
+ \ifx\hyxmp@lang@name\bbl@main@language
+ \edef\@pdflang{\hyxmp@lang@tag}%
+ \fi
}%
}%
}{%
\xdef\@pdflang{\csname mainbcp47id\endcsname}%
- \renewcommand*{\hyxmp@set@dc@lang}{%
- \edef\hyxmp@dc@lang{\xpg@bcp@loaded}%
- }%
- }%
-}
-\newcommand*{\hyxmp@write@pdflang}{%
- \@ifundefined{pdfmark}{%
- \@ifundefined{@pdfm@mark}{%
- \@ifundefined{pdfcatalog}{%
- \PackageWarning{hyperxmp}{Unknown PDF generator; not setting the language (\@pdflang) in the PDF catalog}%
- }{%
- \pdfcatalog{/Lang (\@pdflang)}%
- }%
- }{%
- \@pdfm@mark{docview << /Lang (\@pdflang) >>}%
- }%
-}{%
- \pdfmark{%
- pdfmark=/PUT,Raw={%
- \string{Catalog\string} <<
- /Lang (\@pdflang)
- >>
- }%
- }%
+ \edef\hyxmp@dc@lang{\xpg@bcp@loaded}%
}%
}
\newcommand*{\hyxmp@commas@to@list}[2]{%
@@ -805,7 +824,7 @@
\edef\hyxmp@today@xmp{\expandafter\hyxmp@pdf@to@xmp@date\pdffeedback creationdate}%
}
\hyxmp@try@today{filemoddate}{%
- \edef\hyxmp@today@xmp{\filemoddate{\jobname.log}}%
+ \edef\hyxmp@today@xmp{\filemoddate{\hyxmp@jobname.log}}%
\edef\next{%
\edef\noexpand\hyxmp@today@xmp{\noexpand\hyxmp@as@xmp@date{\hyxmp@today@xmp}}%
}%
@@ -1051,7 +1070,7 @@
}%
}
\newcommand*{\hyxmp@add@simple@lang@i}{%
- \@ifnextchar[\hyxmp@add@simple@lang@ii{\hyxmp@add@simple@lang@ii[]}%
+ \@ifnextchar[\hyxmp@add@simple@lang@ii{\hyxmp@add@simple@lang@ii[\@pdfmetalang]}%
}
\def\hyxmp@add@simple@lang@ii[#1]#2\relax#3{%
\@ifnotmtarg{#2}{%
@@ -1180,7 +1199,7 @@ ______<#3 xml:lang="#1">\hyxmp@xmlified</#3>^^J%
\hyxmp@append@hex@iv#1%
}
\newcommand*{\hyxmp@def@DocumentID}{%
- \edef\hyxmp@seed@string{\jobname:\@pdftitle:\@pdfauthor:}%
+ \edef\hyxmp@seed@string{\hyxmp@jobname:\@pdftitle:\@pdfauthor:}%
\expandafter\hyxmp@seed@rng\expandafter{\hyxmp@seed@string}%
\edef\hyxmp@rand@num{\the\@tempcnta}%
\hyxmp@create@uuid\hyxmp@DocumentID
@@ -1188,7 +1207,7 @@ ______<#3 xml:lang="#1">\hyxmp@xmlified</#3>^^J%
\newcommand*{\hyxmp@def@InstanceID}{%
\hyxmp@today@xmp@define{\hyxmp@seed@string}%
\edef\hyxmp@seed@string{%
- \jobname:\@pdftitle:\@pdfauthor:\hyxmp@today@xmp:\hyxmp@seed@string
+ \hyxmp@jobname:\@pdftitle:\@pdfauthor:\hyxmp@today@xmp:\hyxmp@seed@string
}%
\expandafter\hyxmp@seed@rng\expandafter{\hyxmp@seed@string}%
\edef\hyxmp@rand@num{\the\@tempcnta}%
@@ -1280,6 +1299,7 @@ _______________________________________________________________^^J%
\hyxmp@assign@major@minor
\hyxmp@add@simple@var{pdf:PDFVersion}{hyxmp@major@minor}%
}
+\newif\ifhyxmp@multi@langs
\newcommand*{\hyxmp@rdf@dc}[3][\iffalse]{%
\@ifmtargexp{#3}{\@tempswafalse}{\@tempswatrue}%
#1
@@ -1292,24 +1312,47 @@ _______________________________________________________________^^J%
______<dc:#2>^^J%
________<rdf:Alt>^^J%
}%
+ \@if@def@and@nonempty{hyxmp@alt@#2}{%
+ \hyxmp@multi@langstrue
+ }{%
+ \hyxmp@multi@langsfalse
+ }%
\ifx\@pdfmetalang\hyxmp@x@default
+ \ifhyxmp@multi@langs
+ \PackageError{hyperxmp}%
+ {\string\XMPLangAlt\space was used without specifying
+ pdfmetalang\MessageBreak
+ or pdflang}%
+ {Be sure to assign a language code to the pdfmetalang key and/or a
+ document\MessageBreak
+ language to the pdflang key (e.g., \string\hypersetup{pdfmetalang={en}}).}%
+ \else
+ \hyxmp@add@to@xml{%
+__________<rdf:li xml:lang="\hyxmp@x@default">\hyxmp@value</rdf:li>^^J%
+ }%
+ \fi
\else
- \hyxmp@xmlify{\@pdfmetalang}%
- \hyxmp@add@to@xml{%
+ \ifhyxmp@multi@langs
+ \hyxmp@xmlify{\@pdfmetalang}%
+ \hyxmp@add@to@xml{%
+__________<rdf:li xml:lang="\hyxmp@x@default">\hyxmp@value</rdf:li>^^J%
__________<rdf:li xml:lang="\hyxmp@xmlified">\hyxmp@value</rdf:li>^^J%
- }%
+ }%
+ \def\do##1##2{
+ \hyxmp@xmlify{##2}%
+ \hyxmp@add@to@xml{%
+ __________<rdf:li xml:lang="##1">\hyxmp@xmlified</rdf:li>^^J%
+ }%
+ }%
+ \csname hyxmp@alt@#2\endcsname
+ \else
+ \hyxmp@xmlify{\@pdfmetalang}%
+ \hyxmp@add@to@xml{%
+__________<rdf:li xml:lang="\hyxmp@xmlified">\hyxmp@value</rdf:li>^^J%
+ }%
+ \fi
\fi
\hyxmp@add@to@xml{%
-__________<rdf:li xml:lang="\hyxmp@x@default">\hyxmp@value</rdf:li>^^J%
- }%
- \def\do##1##2{
- \hyxmp@xmlify{##2}%
- \hyxmp@add@to@xml{%
-__________<rdf:li xml:lang="##1">\hyxmp@xmlified</rdf:li>^^J%
- }%
- }%
- \csname hyxmp@alt@#2\endcsname
- \hyxmp@add@to@xml{%
________</rdf:Alt>^^J%
______</dc:#2>^^J%
}%
@@ -1416,6 +1459,7 @@ ______</dc:#2>^^J%
\hyxmp@add@simple{xmpMM:VersionID}{\@pdfversionid}%
\hyxmp@add@simple{xmpMM:RenditionClass}{\@pdfrendition}%
}
+
\newcommand*{\hyxmp@xmp@basic@schema}{%
\@ifmtargexp{\@pdfcreationdate}{%
\hyxmp@add@simple{xmp:CreateDate}{\hyxmp@today@xmp}%
@@ -1536,6 +1580,62 @@ ______</Iptc4xmpCore:CreatorContactInfo>^^J%
\hyxmp@add@simple{prism:byteCount}{\@pdfbytes}%
\hyxmp@add@simple{prism:pageCount}{\@pdfnumpages}%
}
+\newcommand*{\hyxmp@jav@schema}{%
+ \hyxmp@add@simple{jav:journal_article_version}{\@pdfpubstatus}%
+}
+\newcommand*{\hyxmp@xmptpg@schema}{%
+ \ifLuaTeX
+ \luadirect{write_xmp_font_list(\the\hyxmp@cct)}%
+ \fi
+ \hyxmp@add@simple{xmpTPg:NPages}{\@pdfnumpages}%
+}
+\ifLuaTeX
+ \newcatcodetable\hyxmp@cct
+ \savecatcodetable\hyxmp@cct
+\fi
+\ifLuaTeX
+ \begin{luacode*}
+function write_xmp_font_list (cct)
+ local function show_field(name, ...)
+ for i = 1, select("#", ...) do
+ local val = select(i, ...)
+ if val then
+ local xml = string.gsub(val, "&", "&amp;")
+ xml = string.gsub(xml, "<", "&lt;")
+ xml = string.gsub(xml, ">", "&gt;")
+ tex.print(cct, "____________<stFnt:" .. name .. ">" ..
+ val .. "</stFnt:" .. name .. ">^^J%")
+ return
+ end
+ end
+ end
+ tex.print(cct, "\\hyxmp@add@to@xml{%")
+ tex.print(cct, "______<xmpTPg:Fonts>^^J%")
+ tex.print(cct, "________<rdf:Bag>^^J%")
+ for i, f in font.each() do
+ tex.print(cct, "__________<rdf:li rdf:parseType=\"Resource\">^^J%")
+ if f.filename then
+ local info = fontloader.info(f.filename)
+ show_field("fontFace", info.fullname)
+ show_field("fontFamily", info.familyname)
+ show_field("fontName", info.fontname)
+ show_field("versionString", info.version)
+ local baseName = string.gsub(f.filename, ".*[/\\](.*)", "%1")
+ show_field("fontFileName", baseName)
+ else
+ show_field("fontName", f.psname, f.fullname, f.name)
+ end
+ if f.format and f.format ~= "unknown" then
+ show_field("fontType", f.format)
+ end
+ tex.print(cct, "__________</rdf:li>^^J%")
+ end
+ tex.print(cct, "________</rdf:Bag>^^J%")
+ tex.print(cct, "______</xmpTPg:Fonts>^^J%")
+ tex.print(cct, "}")
+end
+ \end{luacode*}
+\fi
\newcommand*{\hyxmp@check@iptc@data}{%
\edef\hyxmp@iptc@data{%
\@pdfcontactaddress
@@ -1566,6 +1666,11 @@ ______</Iptc4xmpCore:CreatorContactInfo>^^J%
\@pdfvolumenum
}%
}%
+\newcommand*{\hyxmp@check@jav@data}{%
+ \edef\hyxmp@jav@data{%
+ \@pdfpubstatus
+ }%
+}
\newcommand*{\hyxmp@begin@extension@decls}{%
\hyxmp@add@to@xml{%
______<pdfaExtension:schemas>^^J%
@@ -1647,6 +1752,7 @@ ______________________</rdf:li>^^J%
{internal}%
{Document version identifier}%
\hyxmp@declare@property
+ [RenditionClass]%
{RenditionClass}%
{internal}%
{The manner in which a document is rendered}%
@@ -1772,7 +1878,7 @@ __________</rdf:li>^^J%
\hyxmp@begin@ext@decl
{PRISM Basic Metadata}%
{prism}%
- {http://prismstandard.org/namespaces/basic/2.1/}%
+ {http://prismstandard.org/namespaces/basic/3.0/}%
\hyxmp@declare@property
{complianceProfile}%
{internal}%
@@ -1838,6 +1944,18 @@ __________</rdf:li>^^J%
{Document's subtitle}%
\hyxmp@end@ext@decl
}%
+\newcommand*{\hyxmp@jav@extensions}{%
+ \hyxmp@begin@ext@decl
+ {NISO/ALPSP Journal Article Versions}%
+ {jav}%
+ {http://www.niso.org/schemas/jav/1.0/}%
+ \hyxmp@declare@property
+ [Closed Choice of Text]%
+ {journal_article_version}%
+ {external}%
+ {Article status, one of "AO", "SMUR", "AM", "P", "VoR", "CVoR", or "EVoR"}%
+ \hyxmp@end@ext@decl
+}%
\newcommand*{\hyxmp@declare@extensions}{%
\hyxmp@begin@extension@decls
\hyxmp@pdf@extensions
@@ -1861,6 +1979,10 @@ __________</rdf:li>^^J%
\else
\hyxmp@prism@extensions
\fi
+ \ifx\hyxmp@jav@data\@empty
+ \else
+ \hyxmp@jav@extensions
+ \fi
\hyxmp@end@extension@decls
}
\begingroup
@@ -1895,7 +2017,10 @@ _____________________xmlns:pdfaid="http://www.aiim.org/pdfa/ns/id/"^^J%
_____________________xmlns:pdfuaid="http://www.aiim.org/pdfua/ns/id/"^^J%
_____________________xmlns:pdfx="http://ns.adobe.com/pdfx/1.3/"^^J%
_____________________xmlns:pdfxid="http://www.npes.org/pdfx/ns/id/"^^J%
-_____________________xmlns:prism="http://prismstandard.org/namespaces/basic/2.1/"^^J%
+_____________________xmlns:prism="http://prismstandard.org/namespaces/basic/3.0/"^^J%
+_____________________xmlns:jav="http://www.niso.org/schemas/jav/1.0/"^^J%
+_____________________xmlns:xmpTPg="http://ns.adobe.com/xap/1.0/t/pg/"^^J%
+_____________________xmlns:stFnt="http://ns.adobe.com/xap/1.0/sType/Font\hyxmp@hash"^^J%
_____________________xmlns:Iptc4xmpCore="http://iptc.org/std/Iptc4xmpCore/1.0/xmlns/"^^J%
_____________________xmlns:pdfaExtension="http://www.aiim.org/pdfa/ns/extension/"^^J%
_____________________xmlns:pdfaSchema="http://www.aiim.org/pdfa/ns/schema\hyxmp@hash"^^J%
@@ -1905,6 +2030,7 @@ _____________________xmlns:pdfaField="http://www.aiim.org/pdfa/ns/field\hyxmp@ha
}%
\hyxmp@check@iptc@data
\hyxmp@check@prism@data
+ \hyxmp@check@jav@data
\hyxmp@declare@extensions
\hyxmp@pdf@schema
\hyxmp@xmpRights@schema
@@ -1917,6 +2043,8 @@ _____________________xmlns:pdfaField="http://www.aiim.org/pdfa/ns/field\hyxmp@ha
\hyxmp@mm@schema
\hyxmp@iptc@schema
\hyxmp@prism@schema
+ \hyxmp@jav@schema
+ \hyxmp@xmptpg@schema
\hyxmp@add@to@xml{%
____</rdf:Description>^^J%
__</rdf:RDF>^^J%
@@ -1946,7 +2074,7 @@ __</rdf:RDF>^^J%
\@ifundefined{pdfmark}{%
\PackageWarningNoLine{hyperxmp}{%
Unrecognized hyperref driver `\Hy@driver'.\MessageBreak
- \jobname.tex's XMP metadata will *not* be\MessageBreak
+ \hyxmp@jobname.tex's XMP metadata will *not* be\MessageBreak
embedded in the resulting file}%
}{%
\hyxmp@embed@packet@pdfmark
@@ -2058,6 +2186,7 @@ __</rdf:RDF>^^J%
>>
}%
}
+\the\hyxmp@aep@toks
\catcode`\"=\hyxmp@dq@code
\endinput
%%