/src/exiv2/src/properties.cpp
Line | Count | Source (jump to first uncovered line) |
1 | | // SPDX-License-Identifier: GPL-2.0-or-later |
2 | | |
3 | | #include "config.h" |
4 | | |
5 | | // included header files |
6 | | #include "properties.hpp" |
7 | | |
8 | | #include "error.hpp" |
9 | | #include "i18n.h" // NLS support. |
10 | | #include "image_int.hpp" |
11 | | #include "tags_int.hpp" |
12 | | #include "types.hpp" |
13 | | #include "value.hpp" |
14 | | #include "xmp_exiv2.hpp" |
15 | | |
16 | | #include <iostream> |
17 | | |
18 | | namespace { |
19 | | //! Struct used in the lookup table for pretty print functions |
20 | | struct XmpPrintInfo { |
21 | | //! Comparison operator for key |
22 | 1.56M | bool operator==(const std::string& key) const { |
23 | 1.56M | return key == key_; |
24 | 1.56M | } |
25 | | |
26 | | std::string_view key_; //!< XMP key |
27 | | Exiv2::PrintFct printFct_; //!< Print function |
28 | | }; |
29 | | |
30 | | } // namespace |
31 | | |
32 | | // ***************************************************************************** |
33 | | // class member definitions |
34 | | namespace Exiv2 { |
35 | | using namespace Internal; |
36 | | |
37 | | //! @cond IGNORE |
38 | | extern const XmpPropertyInfo xmpDcInfo[]; |
39 | | extern const XmpPropertyInfo xmpDigikamInfo[]; |
40 | | extern const XmpPropertyInfo xmpKipiInfo[]; |
41 | | extern const XmpPropertyInfo xmpXmpInfo[]; |
42 | | extern const XmpPropertyInfo xmpXmpRightsInfo[]; |
43 | | extern const XmpPropertyInfo xmpXmpMMInfo[]; |
44 | | extern const XmpPropertyInfo xmpXmpBJInfo[]; |
45 | | extern const XmpPropertyInfo xmpXmpTPgInfo[]; |
46 | | extern const XmpPropertyInfo xmpXmpDMInfo[]; |
47 | | extern const XmpPropertyInfo xmpMicrosoftInfo[]; |
48 | | extern const XmpPropertyInfo xmpPdfInfo[]; |
49 | | extern const XmpPropertyInfo xmpPhotoshopInfo[]; |
50 | | extern const XmpPropertyInfo xmpCrsInfo[]; |
51 | | extern const XmpPropertyInfo xmpCrssInfo[]; |
52 | | extern const XmpPropertyInfo xmpTiffInfo[]; |
53 | | extern const XmpPropertyInfo xmpExifInfo[]; |
54 | | extern const XmpPropertyInfo xmpExifEXInfo[]; |
55 | | extern const XmpPropertyInfo xmpAuxInfo[]; |
56 | | extern const XmpPropertyInfo xmpIptcInfo[]; |
57 | | extern const XmpPropertyInfo xmpIptcExtInfo[]; |
58 | | extern const XmpPropertyInfo xmpPlusInfo[]; |
59 | | extern const XmpPropertyInfo xmpMediaProInfo[]; |
60 | | extern const XmpPropertyInfo xmpExpressionMediaInfo[]; |
61 | | extern const XmpPropertyInfo xmpMicrosoftPhotoInfo[]; |
62 | | extern const XmpPropertyInfo xmpMicrosoftPhotoRegionInfoInfo[]; |
63 | | extern const XmpPropertyInfo xmpMicrosoftPhotoRegionInfo[]; |
64 | | extern const XmpPropertyInfo xmpMWGRegionsInfo[]; |
65 | | extern const XmpPropertyInfo xmpMWGKeywordInfo[]; |
66 | | extern const XmpPropertyInfo xmpVideoInfo[]; |
67 | | extern const XmpPropertyInfo xmpAudioInfo[]; |
68 | | extern const XmpPropertyInfo xmpDwCInfo[]; |
69 | | extern const XmpPropertyInfo xmpDctermsInfo[]; |
70 | | extern const XmpPropertyInfo xmpLrInfo[]; |
71 | | extern const XmpPropertyInfo xmpAcdseeInfo[]; |
72 | | extern const XmpPropertyInfo xmpGPanoInfo[]; |
73 | | |
74 | | constexpr XmpNsInfo xmpNsInfo[] = { |
75 | | // Schemas - NOTE: Schemas which the XMP-SDK doesn't know must be registered in XmpParser::initialize - |
76 | | // Todo: Automate this |
77 | | {"http://purl.org/dc/elements/1.1/", "dc", xmpDcInfo, N_("Dublin Core schema")}, |
78 | | {"http://www.digikam.org/ns/1.0/", "digiKam", xmpDigikamInfo, N_("digiKam Photo Management schema")}, |
79 | | {"http://www.digikam.org/ns/kipi/1.0/", "kipi", xmpKipiInfo, N_("KDE Image Program Interface schema")}, |
80 | | {"http://ns.adobe.com/xap/1.0/", "xmp", xmpXmpInfo, N_("XMP Basic schema")}, |
81 | | {"http://ns.adobe.com/xap/1.0/rights/", "xmpRights", xmpXmpRightsInfo, N_("XMP Rights Management schema")}, |
82 | | {"http://ns.adobe.com/xap/1.0/mm/", "xmpMM", xmpXmpMMInfo, N_("XMP Media Management schema")}, |
83 | | {"http://ns.adobe.com/xap/1.0/bj/", "xmpBJ", xmpXmpBJInfo, N_("XMP Basic Job Ticket schema")}, |
84 | | {"http://ns.adobe.com/xap/1.0/t/pg/", "xmpTPg", xmpXmpTPgInfo, N_("XMP Paged-Text schema")}, |
85 | | {"http://ns.adobe.com/xmp/1.0/DynamicMedia/", "xmpDM", xmpXmpDMInfo, N_("XMP Dynamic Media schema")}, |
86 | | {"http://ns.microsoft.com/photo/1.0/", "MicrosoftPhoto", xmpMicrosoftInfo, N_("Microsoft Photo schema")}, |
87 | | {"http://ns.adobe.com/lightroom/1.0/", "lr", xmpLrInfo, N_("Adobe Lightroom schema")}, |
88 | | {"http://ns.adobe.com/pdf/1.3/", "pdf", xmpPdfInfo, N_("Adobe PDF schema")}, |
89 | | {"http://ns.adobe.com/photoshop/1.0/", "photoshop", xmpPhotoshopInfo, N_("Adobe photoshop schema")}, |
90 | | {"http://ns.adobe.com/camera-raw-settings/1.0/", "crs", xmpCrsInfo, N_("Camera Raw schema")}, |
91 | | {"http://ns.adobe.com/camera-raw-saved-settings/1.0/", "crss", xmpCrssInfo, N_("Camera Raw Saved Settings")}, |
92 | | {"http://ns.adobe.com/tiff/1.0/", "tiff", xmpTiffInfo, N_("Exif Schema for TIFF Properties")}, |
93 | | {"http://ns.adobe.com/exif/1.0/", "exif", xmpExifInfo, N_("Exif schema for Exif-specific Properties")}, |
94 | | {"http://cipa.jp/exif/1.0/", "exifEX", xmpExifEXInfo, N_("Exif 2.3 metadata for XMP")}, |
95 | | {"http://ns.adobe.com/exif/1.0/aux/", "aux", xmpAuxInfo, N_("Exif schema for Additional Exif Properties")}, |
96 | | {"http://iptc.org/std/Iptc4xmpCore/1.0/xmlns/", "iptc", xmpIptcInfo, |
97 | | N_("IPTC Core schema")}, // NOTE: 'Iptc4xmpCore' is just too long, so make 'iptc' |
98 | | {"http://iptc.org/std/Iptc4xmpCore/1.0/xmlns/", "Iptc4xmpCore", xmpIptcInfo, |
99 | | N_("IPTC Core schema")}, // the default prefix. But provide the official one too. |
100 | | {"http://iptc.org/std/Iptc4xmpExt/2008-02-29/", "iptcExt", xmpIptcExtInfo, |
101 | | N_("IPTC Extension schema")}, // NOTE: It really should be 'Iptc4xmpExt' but following |
102 | | {"http://iptc.org/std/Iptc4xmpExt/2008-02-29/", "Iptc4xmpExt", xmpIptcExtInfo, |
103 | | N_("IPTC Extension schema")}, // example above, 'iptcExt' is the default, Iptc4xmpExt works too. |
104 | | {"http://ns.useplus.org/ldf/xmp/1.0/", "plus", xmpPlusInfo, N_("PLUS License Data Format schema")}, |
105 | | {"http://ns.iview-multimedia.com/mediapro/1.0/", "mediapro", xmpMediaProInfo, N_("iView Media Pro schema")}, |
106 | | {"http://ns.microsoft.com/expressionmedia/1.0/", "expressionmedia", xmpExpressionMediaInfo, |
107 | | N_("Expression Media schema")}, |
108 | | {"http://ns.microsoft.com/photo/1.2/", "MP", xmpMicrosoftPhotoInfo, N_("Microsoft Photo 1.2 schema")}, |
109 | | {"http://ns.microsoft.com/photo/1.2/t/RegionInfo#", "MPRI", xmpMicrosoftPhotoRegionInfoInfo, |
110 | | N_("Microsoft Photo RegionInfo schema")}, |
111 | | {"http://ns.microsoft.com/photo/1.2/t/Region#", "MPReg", xmpMicrosoftPhotoRegionInfo, |
112 | | N_("Microsoft Photo Region schema")}, |
113 | | {"http://www.metadataworkinggroup.com/schemas/regions/", "mwg-rs", xmpMWGRegionsInfo, |
114 | | N_("Metadata Working Group Regions schema")}, |
115 | | {"http://www.metadataworkinggroup.com/schemas/keywords/", "mwg-kw", xmpMWGKeywordInfo, |
116 | | N_("Metadata Working Group Keywords schema")}, |
117 | | {"http://www.video/", "video", xmpVideoInfo, N_("XMP Extended Video schema")}, |
118 | | {"http://www.audio/", "audio", xmpAudioInfo, N_("XMP Extended Audio schema")}, |
119 | | {"http://rs.tdwg.org/dwc/index.htm", "dwc", xmpDwCInfo, N_("XMP Darwin Core schema")}, |
120 | | {"http://purl.org/dc/terms/", "dcterms", xmpDctermsInfo, |
121 | | N_("Qualified Dublin Core schema")}, // Note: used as properties under dwc:record |
122 | | {"http://ns.acdsee.com/iptc/1.0/", "acdsee", xmpAcdseeInfo, N_("ACDSee XMP schema")}, |
123 | | {"http://ns.google.com/photos/1.0/panorama/", "GPano", xmpGPanoInfo, N_("Google Photo Sphere XMP schema")}, |
124 | | |
125 | | // Structures |
126 | | {"http://ns.adobe.com/xap/1.0/g/", "xmpG", nullptr, N_("Colorant structure")}, |
127 | | {"http://ns.adobe.com/xap/1.0/g/img/", "xmpGImg", nullptr, N_("Thumbnail structure")}, |
128 | | {"http://ns.adobe.com/xap/1.0/sType/Dimensions#", "stDim", nullptr, N_("Dimensions structure")}, |
129 | | {"http://ns.adobe.com/xap/1.0/sType/Font#", "stFnt", nullptr, N_("Font structure")}, |
130 | | {"http://ns.adobe.com/xap/1.0/sType/ResourceEvent#", "stEvt", nullptr, N_("Resource Event structure")}, |
131 | | {"http://ns.adobe.com/xap/1.0/sType/ResourceRef#", "stRef", nullptr, N_("ResourceRef structure")}, |
132 | | {"http://ns.adobe.com/xap/1.0/sType/Version#", "stVer", nullptr, N_("Version structure")}, |
133 | | {"http://ns.adobe.com/xap/1.0/sType/Job#", "stJob", nullptr, N_("Basic Job/Workflow structure")}, |
134 | | {"http://ns.adobe.com/xmp/sType/Area#", "stArea", nullptr, N_("Area structure")}, |
135 | | |
136 | | // Qualifiers |
137 | | {"http://ns.adobe.com/xmp/Identifier/qual/1.0/", "xmpidq", nullptr, N_("Qualifier for xmp:Identifier")}, |
138 | | }; |
139 | | |
140 | | const XmpPropertyInfo xmpDcInfo[] = { |
141 | | {"contributor", N_("Contributor"), "bag ProperName", xmpBag, xmpExternal, |
142 | | N_("Contributors to the resource (other than the authors).")}, |
143 | | {"coverage", N_("Coverage"), "Text", xmpText, xmpExternal, |
144 | | N_("The spatial or temporal topic of the resource, the spatial applicability of the " |
145 | | "resource, or the jurisdiction under which the resource is relevant.")}, |
146 | | {"creator", N_("Creator"), "seq ProperName", xmpSeq, xmpExternal, |
147 | | N_("The authors of the resource (listed in order of precedence, if significant).")}, |
148 | | {"date", N_("Date"), "seq Date", xmpSeq, xmpExternal, |
149 | | N_("Date(s) that something interesting happened to the resource.")}, |
150 | | {"description", N_("Description"), "Lang Alt", langAlt, xmpExternal, |
151 | | N_("A textual description of the content of the resource. Multiple values may be " |
152 | | "present for different languages.")}, |
153 | | {"format", N_("Format"), "MIMEType", xmpText, xmpInternal, |
154 | | N_("The file format used when saving the resource. Tools and applications should set " |
155 | | "this property to the save format of the data. It may include appropriate qualifiers.")}, |
156 | | {"identifier", N_("Identifier"), "Text", xmpText, xmpExternal, |
157 | | N_("Unique identifier of the resource. Recommended best practice is to identify the " |
158 | | "resource by means of a string conforming to a formal identification system.")}, |
159 | | {"language", N_("Language"), "bag Locale", xmpBag, xmpInternal, |
160 | | N_("An unordered array specifying the languages used in the resource.")}, |
161 | | {"publisher", N_("Publisher"), "bag ProperName", xmpBag, xmpExternal, |
162 | | N_("An entity responsible for making the resource available. Examples of a Publisher " |
163 | | "include a person, an organization, or a service. Typically, the name of a Publisher " |
164 | | "should be used to indicate the entity.")}, |
165 | | {"relation", N_("Relation"), "bag Text", xmpBag, xmpInternal, |
166 | | N_("Relationships to other documents. Recommended best practice is to identify the " |
167 | | "related resource by means of a string conforming to a formal identification system.")}, |
168 | | {"rights", N_("Rights"), "Lang Alt", langAlt, xmpExternal, |
169 | | N_("Informal rights statement, selected by language. Typically, rights information " |
170 | | "includes a statement about various property rights associated with the resource, " |
171 | | "including intellectual property rights.")}, |
172 | | {"source", N_("Source"), "Text", xmpText, xmpExternal, |
173 | | N_("Unique identifier of the work from which this resource was derived.")}, |
174 | | {"subject", N_("Subject"), "bag Text", xmpBag, xmpExternal, |
175 | | N_("An unordered array of descriptive phrases or keywords that specify the topic of the " |
176 | | "content of the resource.")}, |
177 | | {"title", N_("Title"), "Lang Alt", langAlt, xmpExternal, |
178 | | N_("The title of the document, or the name given to the resource. Typically, it will be " |
179 | | "a name by which the resource is formally known.")}, |
180 | | {"type", N_("Type"), "bag open Choice", xmpBag, xmpExternal, |
181 | | N_("A document type; for example, novel, poem, or working paper.")}, |
182 | | // End of list marker |
183 | | {nullptr, nullptr, nullptr, invalidTypeId, xmpInternal, nullptr}, |
184 | | }; |
185 | | |
186 | | const XmpPropertyInfo xmpDigikamInfo[] = { |
187 | | {"TagsList", N_("Tags List"), "seq Text", xmpSeq, xmpExternal, |
188 | | N_("The list of complete tags path as string. The path hierarchy is separated by '/' character (ex.: " |
189 | | "\"City/Paris/Monument/Eiffel Tower\".")}, |
190 | | {"CaptionsAuthorNames", N_("Captions Author Names"), "Lang Alt", langAlt, xmpExternal, |
191 | | N_("The list of all captions author names for each language alternative captions set in standard XMP tags.")}, |
192 | | {"CaptionsDateTimeStamps", N_("Captions Date Time Stamps"), "Lang Alt", langAlt, xmpExternal, |
193 | | N_("The list of all captions date time stamps for each language alternative captions set in standard XMP " |
194 | | "tags.")}, |
195 | | {"ImageHistory", N_("Image History"), "Text", xmpText, xmpExternal, |
196 | | N_("An XML based content to list all action processed on this image with image editor (as crop, rotate, color " |
197 | | "corrections, adjustments, etc.).")}, |
198 | | {"LensCorrectionSettings", N_("Lens Correction Settings"), "Text", xmpText, xmpExternal, |
199 | | N_("The list of Lens Correction tools settings used to fix lens distortion. This include Batch Queue Manager " |
200 | | "and Image editor tools based on LensFun library.")}, |
201 | | {"ColorLabel", N_("Color Label"), "Text", xmpText, xmpExternal, |
202 | | N_("The color label assigned to this item. Possible values are \"0\": no label; \"1\": Red; \"2\": Orange; " |
203 | | "\"3\": Yellow; \"4\": Green; \"5\": Blue; \"6\": Magenta; \"7\": Gray; \"8\": Black; \"9\": White.")}, |
204 | | {"PickLabel", N_("Pick Label"), "Text", xmpText, xmpExternal, |
205 | | N_("The pick label assigned to this item. Possible values are \"0\": no label; \"1\": item rejected; \"2\": " |
206 | | "item in pending validation; \"3\": item accepted.")}, |
207 | | {"Preview", N_("JPEG preview"), "Text", xmpText, xmpExternal, |
208 | | N_("Reduced size JPEG preview image encoded as base64 for a fast screen rendering.")}, |
209 | | // End of list marker |
210 | | {nullptr, nullptr, nullptr, invalidTypeId, xmpInternal, nullptr}, |
211 | | }; |
212 | | |
213 | | const XmpPropertyInfo xmpKipiInfo[] = { |
214 | | {"PanoramaInputFiles", N_("Panorama Input Files"), "Text", xmpText, xmpExternal, |
215 | | N_("The list of files processed with Hugin program through Panorama tool.")}, |
216 | | {"EnfuseInputFiles", N_("Enfuse Input Files"), "Text", xmpText, xmpExternal, |
217 | | N_("The list of files processed with Enfuse program through ExpoBlending tool.")}, |
218 | | {"EnfuseSettings", N_("Enfuse Settings"), "Text", xmpText, xmpExternal, |
219 | | N_("The list of Enfuse settings used to blend image stack with ExpoBlending tool.")}, |
220 | | {"picasawebGPhotoId", N_("PicasaWeb Item ID"), "Text", xmpText, xmpExternal, |
221 | | N_("Item ID from PicasaWeb web service.")}, |
222 | | {"yandexGPhotoId", N_("Yandex Fotki Item ID"), "Text", xmpText, xmpExternal, |
223 | | N_("Item ID from Yandex Fotki web service.")}, |
224 | | // End of list marker |
225 | | {nullptr, nullptr, nullptr, invalidTypeId, xmpInternal, nullptr}, |
226 | | }; |
227 | | |
228 | | const XmpPropertyInfo xmpXmpInfo[] = { |
229 | | {"Advisory", N_("Advisory"), "bag XPath", xmpBag, xmpExternal, |
230 | | N_("An unordered array specifying properties that were edited outside the authoring " |
231 | | "application. Each item should contain a single namespace and XPath separated by " |
232 | | "one ASCII space (U+0020).")}, |
233 | | {"BaseURL", N_("Base URL"), "URL", xmpText, xmpInternal, |
234 | | N_("The base URL for relative URLs in the document content. If this document contains " |
235 | | "Internet links, and those links are relative, they are relative to this base URL. " |
236 | | "This property provides a standard way for embedded relative URLs to be interpreted " |
237 | | "by tools. Web authoring tools should set the value based on their notion of where " |
238 | | "URLs will be interpreted.")}, |
239 | | {"CreateDate", N_("Create Date"), "Date", xmpText, xmpExternal, |
240 | | N_("The date and time the resource was originally created.")}, |
241 | | {"CreatorTool", N_("Creator Tool"), "AgentName", xmpText, xmpInternal, |
242 | | N_("The name of the first known tool used to create the resource. If history is " |
243 | | "present in the metadata, this value should be equivalent to that of " |
244 | | "xmpMM:History's softwareAgent property.")}, |
245 | | {"Identifier", N_("Identifier"), "bag Text", xmpBag, xmpExternal, |
246 | | N_("An unordered array of text strings that unambiguously identify the resource within " |
247 | | "a given context. An array item may be qualified with xmpidq:Scheme to denote the " |
248 | | "formal identification system to which that identifier conforms. Note: The " |
249 | | "dc:identifier property is not used because it lacks a defined scheme qualifier and " |
250 | | "has been defined in the XMP Specification as a simple (single-valued) property.")}, |
251 | | {"Label", N_("Label"), "Text", xmpText, xmpExternal, |
252 | | N_("A word or short phrase that identifies a document as a member of a user-defined " |
253 | | "collection. Used to organize documents in a file browser.")}, |
254 | | {"MetadataDate", N_("Metadata Date"), "Date", xmpText, xmpInternal, |
255 | | N_("The date and time that any metadata for this resource was last changed. It should " |
256 | | "be the same as or more recent than xmp:ModifyDate.")}, |
257 | | {"ModifyDate", N_("Modify Date"), "Date", xmpText, xmpInternal, |
258 | | N_("The date and time the resource was last modified. Note: The value of this property " |
259 | | "is not necessarily the same as the file's system modification date because it is " |
260 | | "set before the file is saved.")}, |
261 | | {"Nickname", N_("Nickname"), "Text", xmpText, xmpExternal, N_("A short informal name for the resource.")}, |
262 | | {"Rating", N_("Rating"), "Closed Choice of Real", xmpText, xmpExternal, |
263 | | N_("A number that indicates a document's status relative to other documents, " |
264 | | "used to organize documents in a file browser. Values are user-defined within an " |
265 | | "application-defined range.")}, |
266 | | {"Thumbnails", N_("Thumbnails"), "alt Thumbnail", xmpText, xmpInternal, |
267 | | N_("An alternative array of thumbnail images for a file, which can differ in " |
268 | | "characteristics such as size or image encoding.")}, |
269 | | // End of list marker |
270 | | {nullptr, nullptr, nullptr, invalidTypeId, xmpInternal, nullptr}, |
271 | | }; |
272 | | |
273 | | const XmpPropertyInfo xmpXmpRightsInfo[] = { |
274 | | {"Certificate", N_("Certificate"), "URL", xmpText, xmpExternal, N_("Online rights management certificate.")}, |
275 | | {"Marked", N_("Marked"), "Boolean", xmpText, xmpExternal, N_("Indicates that this is a rights-managed resource.")}, |
276 | | {"Owner", N_("Owner"), "bag ProperName", xmpBag, xmpExternal, |
277 | | N_("An unordered array specifying the legal owner(s) of a resource.")}, |
278 | | {"UsageTerms", N_("Usage Terms"), "Lang Alt", langAlt, xmpExternal, |
279 | | N_("Text instructions on how a resource can be legally used.")}, |
280 | | {"WebStatement", N_("Web Statement"), "URL", xmpText, xmpExternal, |
281 | | N_("The location of a web page describing the owner and/or rights statement for this resource.")}, |
282 | | // End of list marker |
283 | | {nullptr, nullptr, nullptr, invalidTypeId, xmpInternal, nullptr}, |
284 | | }; |
285 | | |
286 | | const XmpPropertyInfo xmpXmpMMInfo[] = { |
287 | | {"DerivedFrom", N_("Derived From"), "ResourceRef", xmpText, xmpInternal, |
288 | | N_("A reference to the original document from which this one is derived. It is a " |
289 | | "minimal reference; missing components can be assumed to be unchanged. For example, " |
290 | | "a new version might only need to specify the instance ID and version number of the " |
291 | | "previous version, or a rendition might only need to specify the instance ID and " |
292 | | "rendition class of the original.")}, |
293 | | {"DocumentID", N_("Document ID"), "URI", xmpText, xmpInternal, |
294 | | N_("The common identifier for all versions and renditions of a document. It should be " |
295 | | "based on a UUID; see Document and Instance IDs below.")}, |
296 | | {"History", N_("History"), "seq ResourceEvent", xmpSeq, xmpInternal, |
297 | | N_("An ordered array of high-level user actions that resulted in this resource. It is " |
298 | | "intended to give human readers a general indication of the steps taken to make the " |
299 | | "changes from the previous version to this one. The list should be at an abstract " |
300 | | "level; it is not intended to be an exhaustive keystroke or other detailed history.")}, |
301 | | {"Ingredients", N_("Ingredients"), "bag ResourceRef", xmpBag, xmpInternal, |
302 | | N_("References to resources that were incorporated, by inclusion or reference, into this resource.")}, |
303 | | {"InstanceID", N_("Instance ID"), "URI", xmpText, xmpInternal, |
304 | | N_("An identifier for a specific incarnation of a document, updated each time a file " |
305 | | "is saved. It should be based on a UUID; see Document and Instance IDs below.")}, |
306 | | {"ManagedFrom", N_("Managed From"), "ResourceRef", xmpText, xmpInternal, |
307 | | N_("A reference to the document as it was prior to becoming managed. It is set when a " |
308 | | "managed document is introduced to an asset management system that does not " |
309 | | "currently own it. It may or may not include references to different management systems.")}, |
310 | | {"Manager", N_("Manager"), "AgentName", xmpText, xmpInternal, |
311 | | N_("The name of the asset management system that manages this resource. Along with " |
312 | | "xmpMM: ManagerVariant, it tells applications which asset management system to " |
313 | | "contact concerning this document.")}, |
314 | | {"ManageTo", N_("Manage To"), "URI", xmpText, xmpInternal, |
315 | | N_("A URI identifying the managed resource to the asset management system; the presence " |
316 | | "of this property is the formal indication that this resource is managed. The form " |
317 | | "and content of this URI is private to the asset management system.")}, |
318 | | {"ManageUI", N_("Manage UI"), "URI", xmpText, xmpInternal, |
319 | | N_("A URI that can be used to access information about the managed resource through a " |
320 | | "web browser. It might require a custom browser plug-in.")}, |
321 | | {"ManagerVariant", N_("Manager Variant"), "Text", xmpText, xmpInternal, |
322 | | N_("Specifies a particular variant of the asset management system. The format of this " |
323 | | "property is private to the specific asset management system.")}, |
324 | | {"OriginalDocumentID", N_("Original Document ID"), "URI", xmpText, xmpInternal, |
325 | | N_("Refer to Part 1, Data Model, Serialization, and Core " |
326 | | "Properties, for definition.")}, |
327 | | {"Pantry", N_("Pantry"), "bag struct", xmpText, xmpInternal, |
328 | | N_("Each array item has a structure value with a potentially " |
329 | | "unique set of fields, containing extracted XMP from a " |
330 | | "component. Each field is a property from the XMP of a " |
331 | | "contained resource component, with all substructure " |
332 | | "preserved. " |
333 | | "Each pantry entry shall contain an xmpMM:InstanceID. " |
334 | | "Only one copy of the pantry entry for any given " |
335 | | "xmpMM:InstanceID shall be retained in the pantry. " |
336 | | "Nested pantry items shall be removed from the individual " |
337 | | "pantry item and promoted to the top level of the pantry.")}, |
338 | | {"RenditionClass", N_("Rendition Class"), "RenditionClass", xmpText, xmpInternal, |
339 | | N_("The rendition class name for this resource. This property should be absent or set " |
340 | | "to default for a document version that is not a derived rendition.")}, |
341 | | {"RenditionParams", N_("Rendition Params"), "Text", xmpText, xmpInternal, |
342 | | N_("Can be used to provide additional rendition parameters that are too complex or " |
343 | | "verbose to encode in xmpMM: RenditionClass.")}, |
344 | | {"VersionID", N_("Version ID"), "Text", xmpText, xmpInternal, |
345 | | N_("The document version identifier for this resource. Each version of a document gets " |
346 | | "a new identifier, usually simply by incrementing integers 1, 2, 3 . . . and so on. " |
347 | | "Media management systems can have other conventions or support branching which " |
348 | | "requires a more complex scheme.")}, |
349 | | {"Versions", N_("Versions"), "seq Version", xmpText, xmpInternal, |
350 | | N_("The version history associated with this resource. Entry [1] is the oldest known " |
351 | | "version for this document, entry [last()] is the most recent version. Typically, a " |
352 | | "media management system would fill in the version information in the metadata on " |
353 | | "check-in. It is not guaranteed that a complete history versions from the first to " |
354 | | "this one will be present in the xmpMM:Versions property. Interior version information " |
355 | | "can be compressed or eliminated and the version history can be truncated at some point.")}, |
356 | | {"LastURL", N_("Last URL"), "URL", xmpText, xmpInternal, N_("Deprecated for privacy protection.")}, |
357 | | {"RenditionOf", N_("Rendition Of"), "ResourceRef", xmpText, xmpInternal, |
358 | | N_("Deprecated in favor of xmpMM:DerivedFrom. A reference to the document of which this is " |
359 | | "a rendition.")}, |
360 | | {"SaveID", N_("Save ID"), "Integer", xmpText, xmpInternal, |
361 | | N_("Deprecated. Previously used only to support the xmpMM:LastURL property.")}, |
362 | | // End of list marker |
363 | | {nullptr, nullptr, nullptr, invalidTypeId, xmpInternal, nullptr}, |
364 | | }; |
365 | | |
366 | | const XmpPropertyInfo xmpXmpBJInfo[] = { |
367 | | {"JobRef", N_("Job Reference"), "bag Job", xmpText, xmpExternal, |
368 | | N_("References an external job management file for a job process in which the document is being used. Use of " |
369 | | "job " |
370 | | "names is under user control. Typical use would be to identify all documents that are part of a particular " |
371 | | "job or contract. " |
372 | | "There are multiple values because there can be more than one job using a particular document at any time, " |
373 | | "and it can " |
374 | | "also be useful to keep historical information about what jobs a document was part of previously.")}, |
375 | | // End of list marker |
376 | | {nullptr, nullptr, nullptr, invalidTypeId, xmpInternal, nullptr}, |
377 | | }; |
378 | | |
379 | | const XmpPropertyInfo xmpXmpTPgInfo[] = { |
380 | | {"MaxPageSize", N_("Maximum Page Size"), "Dimensions", xmpText, xmpInternal, |
381 | | N_("The size of the largest page in the document (including any in contained documents).")}, |
382 | | {"NPages", N_("Number of Pages"), "Integer", xmpText, xmpInternal, |
383 | | N_("The number of pages in the document (including any in contained documents).")}, |
384 | | {"Fonts", N_("Fonts"), "bag Font", xmpText, xmpInternal, |
385 | | N_("An unordered array of fonts that are used in the document (including any in contained documents).")}, |
386 | | {"Colorants", N_("Colorants"), "seq Colorant", xmpText, xmpInternal, |
387 | | N_("An ordered array of colorants (swatches) that are used in the document (including any in contained " |
388 | | "documents).")}, |
389 | | {"PlateNames", N_("Plate Names"), "seq Text", xmpSeq, xmpInternal, |
390 | | N_("An ordered array of plate names that are needed to print the document (including any in contained " |
391 | | "documents).")}, |
392 | | // End of list marker |
393 | | {nullptr, nullptr, nullptr, invalidTypeId, xmpInternal, nullptr}, |
394 | | }; |
395 | | |
396 | | const XmpPropertyInfo xmpXmpDMInfo[] = { |
397 | | {"absPeakAudioFilePath", N_("Absolute Peak Audio File Path"), "URI", xmpText, xmpInternal, |
398 | | N_("The absolute path to the file's peak audio file. If empty, no peak file exists.")}, |
399 | | {"album", N_("Album"), "Text", xmpText, xmpExternal, N_("The name of the album.")}, |
400 | | {"altTapeName", N_("Alternative Tape Name"), "Text", xmpText, xmpExternal, |
401 | | N_("An alternative tape name, set via the project window or timecode dialog in Premiere. " |
402 | | "If an alternative name has been set and has not been reverted, that name is displayed.")}, |
403 | | {"altTimecode", N_("Alternative Time code"), "Timecode", xmpText, xmpExternal, |
404 | | N_("A timecode set by the user. When specified, it is used instead of the startTimecode.")}, |
405 | | {"artist", N_("Artist"), "Text", xmpText, xmpExternal, N_("The name of the artist or artists.")}, |
406 | | {"audioModDate", N_("Audio Modified Date"), "Date", xmpText, xmpInternal, |
407 | | N_("(deprecated) The date and time when the audio was last modified.")}, |
408 | | {"audioChannelType", N_("Audio Channel Type"), "closed Choice of Text", xmpText, xmpInternal, |
409 | | N_("The audio channel type. One of: Mono, Stereo, 5.1, 7.1, 16 Channel, Other.")}, |
410 | | {"audioCompressor", N_("Audio Compressor"), "Text", xmpText, xmpInternal, |
411 | | N_("The audio compression used. For example, MP3.")}, |
412 | | {"audioSampleRate", N_("Audio Sample Rate"), "Integer", xmpText, xmpInternal, |
413 | | N_("The audio sample rate. Can be any value, but commonly 32000, 44100, or 48000.")}, |
414 | | {"audioSampleType", N_("Audio Sample Type"), "closed Choice of Text", xmpText, xmpInternal, |
415 | | N_("The audio sample type. One of: 8Int, 16Int, 24Int, 32Int, 32Float, Compressed, Packed, Other.")}, |
416 | | {"beatSpliceParams", N_("Beat Splice Parameters"), "beatSpliceStretch", xmpText, xmpInternal, |
417 | | N_("Additional parameters for Beat Splice stretch mode.")}, |
418 | | {"cameraAngle", N_("Camera Angle"), "open Choice of Text", xmpText, xmpExternal, |
419 | | N_("The orientation of the camera to the subject in a static shot, from a fixed set of industry standard " |
420 | | "terminology. Predefined values include:Low Angle, Eye Level, High Angle, Overhead Shot, Birds Eye Shot, " |
421 | | "Dutch Angle, POV, Over the Shoulder, Reaction Shot.")}, |
422 | | {"cameraLabel", N_("Camera Label"), "Text", xmpText, xmpExternal, |
423 | | N_("A description of the camera used for a shoot. Can be any string, but is usually simply a number, for " |
424 | | "example \"1\", \"2\", or more explicitly \"Camera 1\".")}, |
425 | | {"cameraModel", N_("Camera Model"), "Text", xmpText, xmpExternal, |
426 | | N_("The make and model of the camera used for a shoot.")}, |
427 | | {"cameraMove", N_("Camera Move"), "open Choice of Text", xmpText, xmpExternal, |
428 | | N_("The movement of the camera during the shot, from a fixed set of industry standard terminology. Predefined " |
429 | | "values include: Aerial, Boom Up, Boom Down, Crane Up, Crane Down, Dolly In, Dolly Out, Pan Left, Pan " |
430 | | "Right, Pedestal Up, Pedestal Down, Tilt Up, Tilt Down, Tracking, Truck Left, Truck Right, Zoom In, Zoom " |
431 | | "Out.")}, |
432 | | {"client", N_("Client"), "Text", xmpText, xmpExternal, |
433 | | N_("The client for the job of which this shot or take is a part.")}, |
434 | | {"comment", N_("Comment"), "Text", xmpText, xmpExternal, N_("A user's comments.")}, |
435 | | {"composer", N_("Composer"), "Text", xmpText, xmpExternal, N_("The composer's name.")}, |
436 | | {"contributedMedia", N_("Contributed Media"), "bag Media", xmpBag, xmpInternal, |
437 | | N_("An unordered list of all media used to create this media.")}, |
438 | | {"copyright", N_("Copyright"), "Text", xmpText, xmpExternal, |
439 | | N_("(Deprecated in favour of dc:rights.) The copyright information.")}, |
440 | | {"director", N_("Director"), "Text", xmpText, xmpExternal, N_("The director of the scene.")}, |
441 | | {"directorPhotography", N_("Director Photography"), "Text", xmpText, xmpExternal, |
442 | | N_("The director of photography for the scene.")}, |
443 | | {"duration", N_("Duration"), "Time", xmpText, xmpInternal, N_("The duration of the media file.")}, |
444 | | {"engineer", N_("Engineer"), "Text", xmpText, xmpExternal, N_("The engineer's name.")}, |
445 | | {"fileDataRate", N_("File Data Rate"), "Rational", xmpText, xmpInternal, |
446 | | N_("The file data rate in megabytes per second. For example: \"36/10\" = 3.6 MB/sec")}, |
447 | | {"genre", N_("Genre"), "Text", xmpText, xmpExternal, N_("The name of the genre.")}, |
448 | | {"good", N_("Good"), "Boolean", xmpText, xmpExternal, N_("A checkbox for tracking whether a shot is a keeper.")}, |
449 | | {"instrument", N_("Instrument"), "Text", xmpText, xmpExternal, N_("The musical instrument.")}, |
450 | | {"introTime", N_("Intro Time"), "Time", xmpText, xmpInternal, N_("The duration of lead time for queuing music.")}, |
451 | | {"key", N_("Key"), "closed Choice of Text", xmpText, xmpInternal, |
452 | | N_("The audio's musical key. One of: C, C#, D, D#, E, F, F#, G, G#, A, A#, B.")}, |
453 | | {"logComment", N_("Log Comment"), "Text", xmpText, xmpExternal, N_("User's log comments.")}, |
454 | | {"loop", N_("Loop"), "Boolean", xmpText, xmpInternal, N_("When true, the clip can be looped seamlessly.")}, |
455 | | {"numberOfBeats", N_("Number Of Beats"), "Real", xmpText, xmpInternal, N_("The number of beats.")}, |
456 | | {"markers", N_("Markers"), "seq Marker", xmpSeq, xmpInternal, N_("An ordered list of markers")}, |
457 | | {"metadataModDate", N_("Metadata Modified Date"), "Date", xmpText, xmpInternal, |
458 | | N_("(deprecated) The date and time when the metadata was last modified.")}, |
459 | | {"outCue", N_("Out Cue"), "Time", xmpText, xmpInternal, N_("The time at which to fade out.")}, |
460 | | {"projectName", N_("Project Name"), "Text", xmpText, xmpExternal, |
461 | | N_("The name of the project of which this file is a part.")}, |
462 | | {"projectRef", N_("Project Reference"), "ProjectLink", xmpText, xmpInternal, |
463 | | N_("A reference to the project that created this file.")}, |
464 | | {"pullDown", N_("Pull Down"), "closed Choice of Text", xmpText, xmpInternal, |
465 | | N_("The sampling phase of film to be converted to video (pull-down). One of: " |
466 | | "WSSWW, SSWWW, SWWWS, WWWSS, WWSSW, WSSWW_24p, SSWWW_24p, SWWWS_24p, WWWSS_24p, WWSSW_24p.")}, |
467 | | {"relativePeakAudioFilePath", N_("Relative Peak Audio File Path"), "URI", xmpText, xmpInternal, |
468 | | N_("The relative path to the file's peak audio file. If empty, no peak file exists.")}, |
469 | | {"relativeTimestamp", N_("Relative Timestamp"), "Time", xmpText, xmpInternal, |
470 | | N_("The start time of the media inside the audio project.")}, |
471 | | {"releaseDate", N_("Release Date"), "Date", xmpText, xmpExternal, N_("The date the title was released.")}, |
472 | | {"resampleParams", N_("Resample Parameters"), "resampleStretch", xmpText, xmpInternal, |
473 | | N_("Additional parameters for Resample stretch mode.")}, |
474 | | {"scaleType", N_("Scale Type"), "closed Choice of Text", xmpText, xmpInternal, |
475 | | N_("The musical scale used in the music. One of: Major, Minor, Both, Neither.")}, |
476 | | {"scene", N_("Scene"), "Text", xmpText, xmpExternal, N_("The name of the scene.")}, |
477 | | {"shotDate", N_("Shot Date"), "Date", xmpText, xmpExternal, N_("The date and time when the video was shot.")}, |
478 | | {"shotDay", N_("Shot Day"), "Text", xmpText, xmpExternal, |
479 | | N_("The day in a multiday shoot. For example: \"Day 2\", \"Friday\".")}, |
480 | | {"shotLocation", N_("Shot Location"), "Text", xmpText, xmpExternal, |
481 | | N_("The name of the location where the video was shot. For example: \"Oktoberfest, Munich Germany\" " |
482 | | "For more accurate positioning, use the EXIF GPS values.")}, |
483 | | {"shotName", N_("Shot Name"), "Text", xmpText, xmpExternal, N_("The name of the shot or take.")}, |
484 | | {"shotNumber", N_("Shot Number"), "Text", xmpText, xmpExternal, |
485 | | N_("The position of the shot in a script or production, relative to other shots. For example: 1, 2, 1a, 1b, " |
486 | | "1.1, 1.2.")}, |
487 | | {"shotSize", N_("Shot Size"), "open Choice of Text", xmpText, xmpExternal, |
488 | | N_("The size or scale of the shot framing, from a fixed set of industry standard terminology. Predefined " |
489 | | "values include: " |
490 | | "ECU --extreme close-up, MCU -- medium close-up. CU -- close-up, MS -- medium shot, " |
491 | | "WS -- wide shot, MWS -- medium wide shot, EWS -- extreme wide shot.")}, |
492 | | {"speakerPlacement", N_("Speaker Placement"), "Text", xmpText, xmpExternal, |
493 | | N_("A description of the speaker angles from center front in degrees. For example: " |
494 | | "\"Left = -30, Right = 30, Center = 0, LFE = 45, Left Surround = -110, Right Surround = 110\"")}, |
495 | | {"startTimecode", N_("Start Time Code"), "Timecode", xmpText, xmpInternal, |
496 | | N_("The timecode of the first frame of video in the file, as obtained from the device control.")}, |
497 | | {"stretchMode", N_("Stretch Mode"), "closed Choice of Text", xmpText, xmpInternal, |
498 | | N_("The audio stretch mode. One of: Fixed length, Time-Scale, Resample, Beat Splice, Hybrid.")}, |
499 | | {"takeNumber", N_("Take Number"), "Integer", xmpText, xmpExternal, |
500 | | N_("A numeric value indicating the absolute number of a take.")}, |
501 | | {"tapeName", N_("Tape Name"), "Text", xmpText, xmpExternal, |
502 | | N_("The name of the tape from which the clip was captured, as set during the capture process.")}, |
503 | | {"tempo", N_("Tempo"), "Real", xmpText, xmpInternal, N_("The audio's tempo.")}, |
504 | | {"timeScaleParams", N_("Time Scale Parameters"), "timeScaleStretch", xmpText, xmpInternal, |
505 | | N_("Additional parameters for Time-Scale stretch mode.")}, |
506 | | {"timeSignature", N_("Time Signature"), "closed Choice of Text", xmpText, xmpInternal, |
507 | | N_("The time signature of the music. One of: 2/4, 3/4, 4/4, 5/4, 7/4, 6/8, 9/8, 12/8, other.")}, |
508 | | {"trackNumber", N_("Track Number"), "Integer", xmpText, xmpExternal, |
509 | | N_("A numeric value indicating the order of the audio file within its original recording.")}, |
510 | | {"tracks", N_("Tracks"), "bag Track", xmpBag, xmpInternal, |
511 | | N_("An unordered list of tracks. A track is a named set of markers, which can specify a frame rate for all " |
512 | | "markers in the set. See also xmpDM:markers.")}, |
513 | | {"videoAlphaMode", N_("Video Alpha Mode"), "closed Choice of Text", xmpText, xmpExternal, |
514 | | N_("The alpha mode. One of: straight, pre-multiplied.")}, |
515 | | {"videoAlphaPremultipleColor", N_("Video Alpha Premultiple Color"), "Colorant", xmpText, xmpExternal, |
516 | | N_("A color in CMYK or RGB to be used as the pre-multiple color when " |
517 | | "alpha mode is pre-multiplied.")}, |
518 | | {"videoAlphaUnityIsTransparent", N_("Video Alpha Unity Is Transparent"), "Boolean", xmpText, xmpInternal, |
519 | | N_("When true, unity is clear, when false, it is opaque.")}, |
520 | | {"videoColorSpace", N_("Video Color Space"), "closed Choice of Text", xmpText, xmpInternal, |
521 | | N_("The color space. One of: sRGB (used by Photoshop), CCIR-601 (used for NTSC), " |
522 | | "CCIR-709 (used for HD).")}, |
523 | | {"videoCompressor", N_("Video Compressor"), "Text", xmpText, xmpInternal, |
524 | | N_("Video compression used. For example, jpeg.")}, |
525 | | {"videoFieldOrder", N_("Video Field Order"), "closed Choice of Text", xmpText, xmpInternal, |
526 | | N_("The field order for video. One of: Upper, Lower, Progressive.")}, |
527 | | {"videoFrameRate", N_("Video Frame Rate"), "open Choice of Text", xmpText, xmpInternal, |
528 | | N_("The video frame rate. One of: 24, NTSC, PAL.")}, |
529 | | {"videoFrameSize", N_("Video Frame Size"), "Dimensions", xmpText, xmpInternal, |
530 | | N_("The frame size. For example: w:720, h: 480, unit:pixels")}, |
531 | | {"videoModDate", N_("Video Modified Date"), "Date", xmpText, xmpInternal, |
532 | | N_("(deprecated) The date and time when the video was last modified.")}, |
533 | | {"videoPixelDepth", N_("Video Pixel Depth"), "closed Choice of Text", xmpText, xmpInternal, |
534 | | N_("The size in bits of each color component of a pixel. Standard Windows 32-bit " |
535 | | "pixels have 8 bits per component. One of: 8Int, 16Int, 32Int, 32Float.")}, |
536 | | {"videoPixelAspectRatio", N_("Video Pixel Aspect Ratio"), "Rational", xmpText, xmpInternal, |
537 | | N_("The aspect ratio, expressed as ht/wd. For example: \"648/720\" = 0.9")}, |
538 | | {"partOfCompilation", N_("Part Of Compilation"), "Boolean", xmpText, xmpExternal, N_("Part of compilation.")}, |
539 | | {"lyrics", N_("Lyrics"), "Text", xmpText, xmpExternal, N_("Lyrics text. No association with timecode.")}, |
540 | | {"discNumber", N_("Disc Number"), "Text", xmpText, xmpExternal, |
541 | | N_("If in a multi-disc set, might contain total number of discs. For example: 2/3.")}, |
542 | | |
543 | | // End of list marker |
544 | | {nullptr, nullptr, nullptr, invalidTypeId, xmpInternal, nullptr}, |
545 | | }; |
546 | | |
547 | | const XmpPropertyInfo xmpMicrosoftInfo[] = { |
548 | | {"CameraSerialNumber", N_("Camera Serial Number"), "Text", xmpText, xmpExternal, N_("Camera Serial Number.")}, |
549 | | {"DateAcquired", N_("Date Acquired"), "Date", xmpText, xmpExternal, N_("Date Acquired.")}, |
550 | | {"FlashManufacturer", N_("Flash Manufacturer"), "Text", xmpText, xmpExternal, N_("Flash Manufacturer.")}, |
551 | | {"FlashModel", N_("Flash Model"), "Text", xmpText, xmpExternal, N_("Flash Model.")}, |
552 | | {"LastKeywordIPTC", N_("Last Keyword IPTC"), "bag Text", xmpBag, xmpExternal, N_("Last Keyword IPTC.")}, |
553 | | {"LastKeywordXMP", N_("Last Keyword XMP"), "bag Text", xmpBag, xmpExternal, N_("Last Keyword XMP.")}, |
554 | | {"LensManufacturer", N_("Lens Manufacturer"), "Text", xmpText, xmpExternal, N_("Lens Manufacturer.")}, |
555 | | {"LensModel", N_("Lens Model"), "Text", xmpText, xmpExternal, N_("Lens Model.")}, |
556 | | {"Rating", N_("Rating Percent"), "Text", xmpText, xmpExternal, N_("Rating Percent.")}, |
557 | | // End of list marker |
558 | | {nullptr, nullptr, nullptr, invalidTypeId, xmpInternal, nullptr}, |
559 | | }; |
560 | | |
561 | | const XmpPropertyInfo xmpLrInfo[] = { |
562 | | {"hierarchicalSubject", N_("Hierarchical Subject"), "bag Text", xmpBag, xmpExternal, |
563 | | N_("Adobe Lightroom hierarchical keywords.")}, |
564 | | {"privateRTKInfo", N_("Private RTK Info"), "Text", xmpText, xmpExternal, N_("Adobe Lightroom private RTK info.")}, |
565 | | // End of list marker |
566 | | {nullptr, nullptr, nullptr, invalidTypeId, xmpInternal, nullptr}, |
567 | | }; |
568 | | |
569 | | const XmpPropertyInfo xmpPdfInfo[] = { |
570 | | {"Keywords", N_("Keywords"), "Text", xmpText, xmpExternal, N_("Keywords.")}, |
571 | | {"PDFVersion", N_("PDF Version"), "Text", xmpText, xmpInternal, |
572 | | N_("The PDF file version (for example: 1.0, 1.3, and so on).")}, |
573 | | {"Producer", N_("Producer"), "AgentName", xmpText, xmpInternal, |
574 | | N_("The name of the tool that created the PDF document.")}, |
575 | | {"Trapped", N_("Trapped"), "Boolean", xmpText, xmpExternal, N_("True when the document has been trapped.")}, |
576 | | // End of list marker |
577 | | {nullptr, nullptr, nullptr, invalidTypeId, xmpInternal, nullptr}, |
578 | | }; |
579 | | |
580 | | const XmpPropertyInfo xmpPhotoshopInfo[] = { |
581 | | {"DateCreated", N_("Date Created"), "Date", xmpText, xmpExternal, |
582 | | N_("The date the intellectual content of the document was created (rather than the creation " |
583 | | "date of the physical representation), following IIM conventions. For example, a photo " |
584 | | "taken during the American Civil War would have a creation date during that epoch " |
585 | | "(1861-1865) rather than the date the photo was digitized for archiving.")}, |
586 | | {"Headline", N_("Headline"), "Text", xmpText, xmpExternal, N_("Headline.")}, |
587 | | {"Country", N_("Country"), "Text", xmpText, xmpExternal, N_("Country/primary location.")}, |
588 | | {"State", N_("State"), "Text", xmpText, xmpExternal, N_("Province/state.")}, |
589 | | {"City", N_("City"), "Text", xmpText, xmpExternal, N_("City.")}, |
590 | | {"Credit", N_("Credit"), "Text", xmpText, xmpExternal, N_("Credit.")}, |
591 | | {"AuthorsPosition", N_("Authors Position"), "Text", xmpText, xmpExternal, N_("By-line title.")}, |
592 | | {"CaptionWriter", N_("Caption Writer"), "Text", xmpText, xmpExternal, N_("Writer/editor.")}, |
593 | | {"Category", N_("Category"), "Text", xmpText, xmpExternal, N_("Category. Limited to 3 7-bit ASCII characters.")}, |
594 | | {"Instructions", N_("Instructions"), "Text", xmpText, xmpExternal, N_("Special instructions.")}, |
595 | | {"Source", N_("Source"), "Text", xmpText, xmpExternal, N_("Source.")}, |
596 | | {"SupplementalCategories", N_("Supplemental Categories"), "bag Text", xmpBag, xmpExternal, |
597 | | N_("Supplemental category.")}, |
598 | | {"TransmissionReference", N_("Transmission Reference"), "Text", xmpText, xmpExternal, |
599 | | N_("Original transmission reference.")}, |
600 | | {"Urgency", N_("Urgency"), "Integer", xmpText, xmpExternal, N_("Urgency. Valid range is 1-8.")}, |
601 | | {"ICCProfile", N_("ICC Profile"), "Text", xmpText, xmpInternal, |
602 | | N_("The colour profile, such as AppleRGB, AdobeRGB1998.")}, |
603 | | {"ColorMode", N_("Color Mode"), "Closed Choice of Integer", xmpText, xmpInternal, |
604 | | N_("The colour mode. One of: 0 = Bitmap, 1 = Grayscale, 2 = Indexed, 3 = RGB, 4 = CMYK, 7 = Multichannel, 8 = " |
605 | | "Duotone, 9 = Lab.")}, |
606 | | {"AncestorID", N_("Ancestor ID"), "URI", xmpText, xmpExternal, N_("The unique identifier of a document.")}, |
607 | | {"DocumentAncestors", N_("Document Ancestors"), "bag Ancestor", xmpBag, xmpExternal, |
608 | | N_("If the source document for a copy-and-paste or place operation has a document ID, that ID is added to " |
609 | | "this list in the destination document's XMP.")}, |
610 | | {"History", N_("History"), "Text", xmpText, xmpExternal, |
611 | | N_("The history that appears in the FileInfo panel, if activated in the application preferences.")}, |
612 | | {"TextLayers", N_("Text Layers"), "seq Layer", xmpSeq, xmpExternal, |
613 | | N_("If a document has text layers, this property caches the text for each layer.")}, |
614 | | {"LayerName", N_("Layer Name"), "Text", xmpText, xmpExternal, N_("The identifying name of the text layer.")}, |
615 | | {"LayerText", N_("Layer Text"), "Text", xmpText, xmpExternal, N_("The text content of the text layer.")}, |
616 | | {"EmbeddedXMPDigest", N_("Embedded XMP Digest"), "Text", xmpText, xmpExternal, N_("Embedded XMP Digest.")}, |
617 | | {"LegacyIPTCDigest", N_("Legacy IPTC Digest"), "Text", xmpText, xmpExternal, N_("Legacy IPTC Digest.")}, |
618 | | {"SidecarForExtension", N_("Sidecar F or Extension"), "Text", xmpText, xmpExternal, |
619 | | N_("Filename extension of associated image file.")}, |
620 | | |
621 | | // End of list marker |
622 | | {nullptr, nullptr, nullptr, invalidTypeId, xmpInternal, nullptr}, |
623 | | }; |
624 | | |
625 | | //! XMP crs:CropUnits |
626 | | constexpr TagDetails crsCropUnits[] = { |
627 | | {0, N_("pixels")}, |
628 | | {1, N_("inches")}, |
629 | | {2, N_("cm")}, |
630 | | }; |
631 | | |
632 | | const XmpPropertyInfo xmpCrssInfo[] = { |
633 | | {"SavedSettings", N_("Saved Settings"), "SavedSettings", xmpText, xmpInternal, |
634 | | N_("*Main structure* Camera Raw Saved Settings.")}, |
635 | | {"Name", N_("Name"), "Text", xmpText, xmpExternal, N_("Camera Raw Saved Settings Name.")}, |
636 | | {"Type", N_("Type"), "Text", xmpText, xmpExternal, N_("Camera Raw Saved Settings Type.")}, |
637 | | {"Parameters", N_("Parameters"), "Parameters", xmpText, xmpInternal, |
638 | | N_("*Main structure* Camera Raw Saved Settings Parameters.")}, |
639 | | // End of list marker |
640 | | {nullptr, nullptr, nullptr, invalidTypeId, xmpInternal, nullptr}, |
641 | | }; |
642 | | |
643 | | const XmpPropertyInfo xmpCrsInfo[] = { |
644 | | {"AutoBrightness", N_("Auto Brightness"), "Boolean", xmpText, xmpInternal, |
645 | | N_("When true, \"Brightness\" is automatically adjusted.")}, |
646 | | {"AutoContrast", N_("Auto Contrast"), "Boolean", xmpText, xmpInternal, |
647 | | N_("When true, \"Contrast\" is automatically adjusted.")}, |
648 | | {"AutoExposure", N_("Auto Exposure"), "Boolean", xmpText, xmpInternal, |
649 | | N_("When true, \"Exposure\" is automatically adjusted.")}, |
650 | | {"AutoShadows", N_("Auto Shadows"), "Boolean", xmpText, xmpInternal, |
651 | | N_("When true,\"Shadows\" is automatically adjusted.")}, |
652 | | {"BlueHue", N_("Blue Hue"), "Integer", xmpText, xmpInternal, N_("\"Blue Hue\" setting. Range -100 to 100.")}, |
653 | | {"BlueSaturation", N_("Blue Saturation"), "Integer", xmpText, xmpInternal, |
654 | | N_("\"Blue Saturation\" setting. Range -100 to +100.")}, |
655 | | {"Brightness", N_("Brightness"), "Integer", xmpText, xmpInternal, N_("\"Brightness\" setting. Range 0 to +150.")}, |
656 | | {"CameraProfile", N_("Camera Profile"), "Text", xmpText, xmpInternal, N_("\"Camera Profile\" setting.")}, |
657 | | {"ChromaticAberrationB", N_("Chromatic Aberration Blue"), "Integer", xmpText, xmpInternal, |
658 | | N_("\"Chromatic Aberration, Fix Blue/Yellow Fringe\" setting. Range -100 to +100.")}, |
659 | | {"ChromaticAberrationR", N_("Chromatic Aberration Red"), "Integer", xmpText, xmpInternal, |
660 | | N_("\"Chromatic Aberration, Fix Red/Cyan Fringe\" setting. Range -100 to +100.")}, |
661 | | {"ColorNoiseReduction", N_("Color Noise Reduction"), "Integer", xmpText, xmpInternal, |
662 | | N_("\"Color Noise Reduction\" setting. Range 0 to +100.")}, |
663 | | {"Contrast", N_("Contrast"), "Integer", xmpText, xmpInternal, N_("\"Contrast\" setting. Range -50 to +100.")}, |
664 | | {"CropTop", N_("Crop Top"), "Real", xmpText, xmpInternal, N_("When \"Has Crop\" is true, top of crop rectangle")}, |
665 | | {"CropLeft", N_("Crop Left"), "Real", xmpText, xmpInternal, |
666 | | N_("When \"Has Crop\" is true, left of crop rectangle.")}, |
667 | | {"CropBottom", N_("Crop Bottom"), "Real", xmpText, xmpInternal, |
668 | | N_("When \"Has Crop\" is true, bottom of crop rectangle.")}, |
669 | | {"CropRight", N_("Crop Right"), "Real", xmpText, xmpInternal, |
670 | | N_("When \"Has Crop\" is true, right of crop rectangle.")}, |
671 | | {"CropAngle", N_("Crop Angle"), "Real", xmpText, xmpInternal, |
672 | | N_("When \"Has Crop\" is true, angle of crop rectangle.")}, |
673 | | {"CropWidth", N_("Crop Width"), "Real", xmpText, xmpInternal, |
674 | | N_("Width of resulting cropped image in CropUnits units.")}, |
675 | | {"CropHeight", N_("Crop Height"), "Real", xmpText, xmpInternal, |
676 | | N_("Height of resulting cropped image in CropUnits units.")}, |
677 | | {"CropUnits", N_("Crop Units"), "Integer", xmpText, xmpInternal, |
678 | | N_("Units for CropWidth and CropHeight. 0=pixels, 1=inches, 2=cm")}, |
679 | | {"Exposure", N_("Exposure"), "Real", xmpText, xmpInternal, N_("\"Exposure\" setting. Range -4.0 to +4.0.")}, |
680 | | {"GreenHue", N_("Green Hue"), "Integer", xmpText, xmpInternal, N_("\"Green Hue\" setting. Range -100 to +100.")}, |
681 | | {"GreenSaturation", N_("Green Saturation"), "Integer", xmpText, xmpInternal, |
682 | | N_("\"Green Saturation\" setting. Range -100 to +100.")}, |
683 | | {"HasCrop", N_("Has Crop"), "Boolean", xmpText, xmpInternal, N_("When true, image has a cropping rectangle.")}, |
684 | | {"HasSettings", N_("Has Settings"), "Boolean", xmpText, xmpInternal, |
685 | | N_("When true, non-default camera raw settings.")}, |
686 | | {"LuminanceSmoothing", N_("Luminance Smoothing"), "Integer", xmpText, xmpInternal, |
687 | | N_("\"Luminance Smoothing\" setting. Range 0 to +100.")}, |
688 | | {"RawFileName", N_("Raw File Name"), "Text", xmpText, xmpInternal, |
689 | | N_("File name of raw file (not a complete path).")}, |
690 | | {"RedHue", N_("Red Hue"), "Integer", xmpText, xmpInternal, N_("\"Red Hue\" setting. Range -100 to +100.")}, |
691 | | {"RedSaturation", N_("Red Saturation"), "Integer", xmpText, xmpInternal, |
692 | | N_("\"Red Saturation\" setting. Range -100 to +100.")}, |
693 | | {"Saturation", N_("Saturation"), "Integer", xmpText, xmpInternal, |
694 | | N_("\"Saturation\" setting. Range -100 to +100.")}, |
695 | | {"Shadows", N_("Shadows"), "Integer", xmpText, xmpInternal, N_("\"Shadows\" setting. Range 0 to +100.")}, |
696 | | {"ShadowTint", N_("Shadow Tint"), "Integer", xmpText, xmpInternal, |
697 | | N_("\"Shadow Tint\" setting. Range -100 to +100.")}, |
698 | | {"Sharpness", N_("Sharpness"), "Integer", xmpText, xmpInternal, N_("\"Sharpness\" setting. Range 0 to +100.")}, |
699 | | {"Temperature", N_("Temperature"), "Integer", xmpText, xmpInternal, |
700 | | N_("\"Temperature\" setting. Range 2000 to 50000.")}, |
701 | | {"Tint", N_("Tint"), "Integer", xmpText, xmpInternal, N_("\"Tint\" setting. Range -150 to +150.")}, |
702 | | {"ToneCurve", N_("Tone Curve"), "Seq of points (Integer, Integer)", xmpText, xmpInternal, |
703 | | N_("Array of points (Integer, Integer) defining a \"Tone Curve\".")}, |
704 | | {"ToneCurveName", N_("Tone Curve Name"), "Choice Text", xmpText, xmpInternal, |
705 | | N_("The name of the Tone Curve described by ToneCurve. One of: Linear, Medium Contrast, " |
706 | | "Strong Contrast, Custom or a user-defined preset name.")}, |
707 | | {"Version", N_("Version"), "Text", xmpText, xmpInternal, N_("Version of Camera Raw plugin.")}, |
708 | | {"VignetteAmount", N_("Vignette Amount"), "Integer", xmpText, xmpInternal, |
709 | | N_("\"Vignetting Amount\" setting. Range -100 to +100.")}, |
710 | | {"VignetteMidpoint", N_("Vignette Midpoint"), "Integer", xmpText, xmpInternal, |
711 | | N_("\"Vignetting Midpoint\" setting. Range 0 to +100.")}, |
712 | | {"WhiteBalance", N_("White Balance"), "Closed Choice Text", xmpText, xmpInternal, |
713 | | N_("\"White Balance\" setting. One of: As Shot, Auto, Daylight, Cloudy, Shade, Tungsten, " |
714 | | "Fluorescent, Flash, Custom")}, |
715 | | // The following properties are not in the XMP specification. They are found in sample files from Adobe |
716 | | // applications and in exiftool. |
717 | | {"AlreadyApplied", N_("Already Applied"), "Boolean", xmpText, xmpInternal, |
718 | | N_("Not in XMP Specification. Found in sample files.")}, |
719 | | {"Converter", N_("Converter"), "Text", xmpText, xmpInternal, |
720 | | N_("Not in XMP Specification. Found in sample files.")}, |
721 | | {"MoireFilter", N_("Moire Filter"), "Text", xmpText, xmpInternal, |
722 | | N_("Not in XMP Specification. Found in sample files.")}, |
723 | | {"Smoothness", N_("Smoothness"), "Integer", xmpText, xmpInternal, |
724 | | N_("Not in XMP Specification. Found in sample files.")}, |
725 | | {"CameraProfileDigest", N_("Camera Profile Digest"), "Text", xmpText, xmpInternal, |
726 | | N_("Not in XMP Specification. Found in sample files.")}, |
727 | | {"Clarity", N_("Clarity"), "Integer", xmpText, xmpInternal, N_("Not in XMP Specification. Found in sample files.")}, |
728 | | {"ConvertToGrayscale", N_("Convert To Grayscale"), "Boolean", xmpText, xmpInternal, |
729 | | N_("Not in XMP Specification. Found in sample files.")}, |
730 | | {"Defringe", N_("Defringe"), "Integer", xmpText, xmpInternal, |
731 | | N_("Not in XMP Specification. Found in sample files.")}, |
732 | | {"FillLight", N_("Fill Light"), "Integer", xmpText, xmpInternal, |
733 | | N_("Not in XMP Specification. Found in sample files.")}, |
734 | | {"HighlightRecovery", N_("Highlight Recovery"), "Integer", xmpText, xmpInternal, |
735 | | N_("Not in XMP Specification. Found in sample files.")}, |
736 | | {"HueAdjustmentAqua", N_("Hue Adjustment Aqua"), "Integer", xmpText, xmpInternal, |
737 | | N_("Not in XMP Specification. Found in sample files.")}, |
738 | | {"HueAdjustmentBlue", N_("Hue Adjustment Blue"), "Integer", xmpText, xmpInternal, |
739 | | N_("Not in XMP Specification. Found in sample files.")}, |
740 | | {"HueAdjustmentGreen", N_("Hue Adjustment Green"), "Integer", xmpText, xmpInternal, |
741 | | N_("Not in XMP Specification. Found in sample files.")}, |
742 | | {"HueAdjustmentMagenta", N_("Hue Adjustment Magenta"), "Integer", xmpText, xmpInternal, |
743 | | N_("Not in XMP Specification. Found in sample files.")}, |
744 | | {"HueAdjustmentOrange", N_("Hue Adjustment Orange"), "Integer", xmpText, xmpInternal, |
745 | | N_("Not in XMP Specification. Found in sample files.")}, |
746 | | {"HueAdjustmentPurple", N_("Hue Adjustment Purple"), "Integer", xmpText, xmpInternal, |
747 | | N_("Not in XMP Specification. Found in sample files.")}, |
748 | | {"HueAdjustmentRed", N_("Hue Adjustment Red"), "Integer", xmpText, xmpInternal, |
749 | | N_("Not in XMP Specification. Found in sample files.")}, |
750 | | {"HueAdjustmentYellow", N_("Hue Adjustment Yellow"), "Integer", xmpText, xmpInternal, |
751 | | N_("Not in XMP Specification. Found in sample files.")}, |
752 | | {"IncrementalTemperature", N_("Incremental Temperature"), "Integer", xmpText, xmpInternal, |
753 | | N_("Not in XMP Specification. Found in sample files.")}, |
754 | | {"IncrementalTint", N_("Incremental Tint"), "Integer", xmpText, xmpInternal, |
755 | | N_("Not in XMP Specification. Found in sample files.")}, |
756 | | {"LuminanceAdjustmentAqua", N_("Luminance Adjustment Aqua"), "Integer", xmpText, xmpInternal, |
757 | | N_("Not in XMP Specification. Found in sample files.")}, |
758 | | {"LuminanceAdjustmentBlue", N_("Luminance Adjustment Blue"), "Integer", xmpText, xmpInternal, |
759 | | N_("Not in XMP Specification. Found in sample files.")}, |
760 | | {"LuminanceAdjustmentGreen", N_("Luminance Adjustment Green"), "Integer", xmpText, xmpInternal, |
761 | | N_("Not in XMP Specification. Found in sample files.")}, |
762 | | {"LuminanceAdjustmentMagenta", N_("Luminance Adjustment Magenta"), "Integer", xmpText, xmpInternal, |
763 | | N_("Not in XMP Specification. Found in sample files.")}, |
764 | | {"LuminanceAdjustmentOrange", N_("Luminance Adjustment Orange"), "Integer", xmpText, xmpInternal, |
765 | | N_("Not in XMP Specification. Found in sample files.")}, |
766 | | {"LuminanceAdjustmentPurple", N_("Luminance Adjustment Purple"), "Integer", xmpText, xmpInternal, |
767 | | N_("Not in XMP Specification. Found in sample files.")}, |
768 | | {"LuminanceAdjustmentRed", N_("Luminance Adjustment Red"), "Integer", xmpText, xmpInternal, |
769 | | N_("Not in XMP Specification. Found in sample files.")}, |
770 | | {"LuminanceAdjustmentYellow", N_("Luminance Adjustment Yellow"), "Integer", xmpText, xmpInternal, |
771 | | N_("Not in XMP Specification. Found in sample files.")}, |
772 | | {"ParametricDarks", N_("Parametric Darks"), "Integer", xmpText, xmpInternal, |
773 | | N_("Not in XMP Specification. Found in sample files.")}, |
774 | | {"ParametricHighlights", N_("Parametric Highlights"), "Integer", xmpText, xmpInternal, |
775 | | N_("Not in XMP Specification. Found in sample files.")}, |
776 | | {"ParametricHighlightSplit", N_("Parametric Highlight Split"), "Integer", xmpText, xmpInternal, |
777 | | N_("Not in XMP Specification. Found in sample files.")}, |
778 | | {"ParametricLights", N_("Parametric Lights"), "Integer", xmpText, xmpInternal, |
779 | | N_("Not in XMP Specification. Found in sample files.")}, |
780 | | {"ParametricMidtoneSplit", N_("Parametric Midtone Split"), "Integer", xmpText, xmpInternal, |
781 | | N_("Not in XMP Specification. Found in sample files.")}, |
782 | | {"ParametricShadows", N_("Parametric Shadows"), "Integer", xmpText, xmpInternal, |
783 | | N_("Not in XMP Specification. Found in sample files.")}, |
784 | | {"ParametricShadowSplit", N_("Parametric Shadow Split"), "Integer", xmpText, xmpInternal, |
785 | | N_("Not in XMP Specification. Found in sample files.")}, |
786 | | {"SaturationAdjustmentAqua", N_("Saturation Adjustment Aqua"), "Integer", xmpText, xmpInternal, |
787 | | N_("Not in XMP Specification. Found in sample files.")}, |
788 | | {"SaturationAdjustmentBlue", N_("Saturation Adjustment Blue"), "Integer", xmpText, xmpInternal, |
789 | | N_("Not in XMP Specification. Found in sample files.")}, |
790 | | {"SaturationAdjustmentGreen", N_("Saturation Adjustment Green"), "Integer", xmpText, xmpInternal, |
791 | | N_("Not in XMP Specification. Found in sample files.")}, |
792 | | {"SaturationAdjustmentMagenta", N_("Saturation Adjustment Magenta"), "Integer", xmpText, xmpInternal, |
793 | | N_("Not in XMP Specification. Found in sample files.")}, |
794 | | {"SaturationAdjustmentOrange", N_("Saturation Adjustment Orange"), "Integer", xmpText, xmpInternal, |
795 | | N_("Not in XMP Specification. Found in sample files.")}, |
796 | | {"SaturationAdjustmentPurple", N_("Saturation Adjustment Purple"), "Integer", xmpText, xmpInternal, |
797 | | N_("Not in XMP Specification. Found in sample files.")}, |
798 | | {"SaturationAdjustmentRed", N_("Saturation Adjustment Red"), "Integer", xmpText, xmpInternal, |
799 | | N_("Not in XMP Specification. Found in sample files.")}, |
800 | | {"SaturationAdjustmentYellow", N_("Saturation Adjustment Yellow"), "Integer", xmpText, xmpInternal, |
801 | | N_("Not in XMP Specification. Found in sample files.")}, |
802 | | {"SharpenDetail", N_("Sharpen Detail"), "Integer", xmpText, xmpInternal, |
803 | | N_("Not in XMP Specification. Found in sample files.")}, |
804 | | {"SharpenEdgeMasking", N_("Sharpen Edge Masking"), "Integer", xmpText, xmpInternal, |
805 | | N_("Not in XMP Specification. Found in sample files.")}, |
806 | | {"SharpenRadius", N_("Sharpen Radius"), "Real", xmpText, xmpInternal, |
807 | | N_("Not in XMP Specification. Found in sample files.")}, |
808 | | {"SplitToningBalance", N_("Split Toning Balance"), "Integer", xmpText, xmpInternal, |
809 | | N_("Not in XMP Specification. Found in sample files.")}, |
810 | | {"SplitToningHighlightHue", N_("Split Toning Highlight Hue"), "Integer", xmpText, xmpInternal, |
811 | | N_("Not in XMP Specification. Found in sample files.")}, |
812 | | {"SplitToningHighlightSaturation", N_("Split Toning Highlight Saturation"), "Integer", xmpText, xmpInternal, |
813 | | N_("Not in XMP Specification. Found in sample files.")}, |
814 | | {"SplitToningShadowHue", N_("Split Toning Shadow Hue"), "Integer", xmpText, xmpInternal, |
815 | | N_("Not in XMP Specification. Found in sample files.")}, |
816 | | {"SplitToningShadowSaturation", N_("Split Toning Shadow Saturation"), "Integer", xmpText, xmpInternal, |
817 | | N_("Not in XMP Specification. Found in sample files.")}, |
818 | | {"Vibrance", N_("Vibrance"), "Integer", xmpText, xmpInternal, |
819 | | N_("Not in XMP Specification. Found in sample files.")}, |
820 | | {"GrayMixerRed", N_("Gray Mixer Red"), "Integer", xmpText, xmpInternal, |
821 | | N_("Not in XMP Specification. Found in sample files.")}, |
822 | | {"GrayMixerOrange", N_("Gray Mixer Orange"), "Integer", xmpText, xmpInternal, |
823 | | N_("Not in XMP Specification. Found in sample files.")}, |
824 | | {"GrayMixerYellow", N_("Gray Mixer Yellow"), "Integer", xmpText, xmpInternal, |
825 | | N_("Not in XMP Specification. Found in sample files.")}, |
826 | | {"GrayMixerGreen", N_("Gray Mixer Green"), "Integer", xmpText, xmpInternal, |
827 | | N_("Not in XMP Specification. Found in sample files.")}, |
828 | | {"GrayMixerAqua", N_("Gray Mixer Aqua"), "Integer", xmpText, xmpInternal, |
829 | | N_("Not in XMP Specification. Found in sample files.")}, |
830 | | {"GrayMixerBlue", N_("Gray Mixer Blue"), "Integer", xmpText, xmpInternal, |
831 | | N_("Not in XMP Specification. Found in sample files.")}, |
832 | | {"GrayMixerPurple", N_("Gray Mixer Purple"), "Integer", xmpText, xmpInternal, |
833 | | N_("Not in XMP Specification. Found in sample files.")}, |
834 | | {"GrayMixerMagenta", N_("Gray Mixer Magenta"), "Integer", xmpText, xmpInternal, |
835 | | N_("Not in XMP Specification. Found in sample files.")}, |
836 | | {"RetouchInfo", N_("Retouch Info"), "bag Text", xmpBag, xmpInternal, |
837 | | N_("Not in XMP Specification. Found in sample files.")}, |
838 | | {"RedEyeInfo", N_("Red Eye Info"), "bag Text", xmpBag, xmpInternal, |
839 | | N_("Not in XMP Specification. Found in sample files.")}, |
840 | | {"CropUnit", N_("Crop Unit"), "Integer", xmpText, xmpInternal, |
841 | | N_("Not in XMP Specification. Found in sample files.")}, |
842 | | {"PostCropVignetteAmount", N_("Post Crop Vignette Amount"), "Integer", xmpText, xmpInternal, |
843 | | N_("Not in XMP Specification. Found in sample files.")}, |
844 | | {"PostCropVignetteMidpoint", N_("Post Crop Vignette Midpoint"), "Integer", xmpText, xmpInternal, |
845 | | N_("Not in XMP Specification. Found in sample files.")}, |
846 | | {"PostCropVignetteFeather", N_("Post Crop Vignette Feather"), "Integer", xmpText, xmpInternal, |
847 | | N_("Not in XMP Specification. Found in sample files.")}, |
848 | | {"PostCropVignetteRoundness", N_("Post Crop Vignette Roundness"), "Integer", xmpText, xmpInternal, |
849 | | N_("Not in XMP Specification. Found in sample files.")}, |
850 | | {"PostCropVignetteStyle", N_("Post Crop Vignette Style"), "Integer", xmpText, xmpInternal, |
851 | | N_("Not in XMP Specification. Found in sample files.")}, |
852 | | {"ProcessVersion", N_("Process Version"), "Text", xmpText, xmpInternal, |
853 | | N_("Not in XMP Specification. Found in sample files.")}, |
854 | | {"LensProfileEnable", N_("Lens Profile Enable"), "Integer", xmpText, xmpInternal, |
855 | | N_("Not in XMP Specification. Found in sample files.")}, |
856 | | {"LensProfileSetup", N_("Lens Profile Setup"), "Text", xmpText, xmpInternal, |
857 | | N_("Not in XMP Specification. Found in sample files.")}, |
858 | | {"LensProfileName", N_("Lens Profile Name"), "Text", xmpText, xmpInternal, |
859 | | N_("Not in XMP Specification. Found in sample files.")}, |
860 | | {"LensProfileFilename", N_("Lens Profile Filename"), "Text", xmpText, xmpInternal, |
861 | | N_("Not in XMP Specification. Found in sample files.")}, |
862 | | {"LensProfileDigest", N_("Lens Profile Digest"), "Text", xmpText, xmpInternal, |
863 | | N_("Not in XMP Specification. Found in sample files.")}, |
864 | | {"LensProfileDistortionScale", N_("Lens Profile Distortion Scale"), "Integer", xmpText, xmpInternal, |
865 | | N_("Not in XMP Specification. Found in sample files.")}, |
866 | | {"LensProfileChromaticAberrationScale", N_("Lens Profile Chromatic Aberration Scale"), "Integer", xmpText, |
867 | | xmpInternal, N_("Not in XMP Specification. Found in sample files.")}, |
868 | | {"LensProfileVignettingScale", N_("Lens Profile Vignetting Scale"), "Integer", xmpText, xmpInternal, |
869 | | N_("Not in XMP Specification. Found in sample files.")}, |
870 | | {"LensManualDistortionAmount", N_("Lens Manual Distortion Amount"), "Integer", xmpText, xmpInternal, |
871 | | N_("Not in XMP Specification. Found in sample files.")}, |
872 | | {"PerspectiveVertical", N_("Perspective Vertical"), "Integer", xmpText, xmpInternal, |
873 | | N_("Not in XMP Specification. Found in sample files.")}, |
874 | | {"PerspectiveHorizontal", N_("Perspective Horizontal"), "Integer", xmpText, xmpInternal, |
875 | | N_("Not in XMP Specification. Found in sample files.")}, |
876 | | {"PerspectiveRotate", N_("Perspective Rotate"), "Real", xmpText, xmpInternal, |
877 | | N_("Not in XMP Specification. Found in sample files.")}, |
878 | | {"PerspectiveScale", N_("Perspective Scale"), "Integer", xmpText, xmpInternal, |
879 | | N_("Not in XMP Specification. Found in sample files.")}, |
880 | | {"CropConstrainToWarp", N_("Crop Constrain To Warp"), "Integer", xmpText, xmpInternal, |
881 | | N_("Not in XMP Specification. Found in sample files.")}, |
882 | | {"LuminanceNoiseReductionDetail", N_("Luminance Noise Reduction Detail"), "Integer", xmpText, xmpInternal, |
883 | | N_("Not in XMP Specification. Found in sample files.")}, |
884 | | {"LuminanceNoiseReductionContrast", N_("Luminance Noise Reduction Contrast"), "Integer", xmpText, xmpInternal, |
885 | | N_("Not in XMP Specification. Found in sample files.")}, |
886 | | {"ColorNoiseReductionDetail", N_("Color Noise Reduction Detail"), "Integer", xmpText, xmpInternal, |
887 | | N_("Not in XMP Specification. Found in sample files.")}, |
888 | | {"GrainAmount", N_("Grain Amount"), "Integer", xmpText, xmpInternal, |
889 | | N_("Not in XMP Specification. Found in sample files.")}, |
890 | | {"GrainSize", N_("Grain Size"), "Integer", xmpText, xmpInternal, |
891 | | N_("Not in XMP Specification. Found in sample files.")}, |
892 | | {"GrainFrequency", N_("GrainFrequency"), "Integer", xmpText, xmpInternal, |
893 | | N_("Not in XMP Specification. Found in sample files.")}, |
894 | | {"AutoLateralCA", N_("Auto Lateral CA"), "Integer", xmpText, xmpInternal, |
895 | | N_("Not in XMP Specification. Found in sample files.")}, |
896 | | {"Exposure2012", N_("Exposure 2012"), "Real", xmpText, xmpInternal, |
897 | | N_("Not in XMP Specification. Found in sample files.")}, |
898 | | {"Contrast2012", N_("Contrast 2012"), "Integer", xmpText, xmpInternal, |
899 | | N_("Not in XMP Specification. Found in sample files.")}, |
900 | | {"Highlights2012", N_("Highlights 2012"), "Integer", xmpText, xmpInternal, |
901 | | N_("Not in XMP Specification. Found in sample files.")}, |
902 | | {"Shadows2012", N_("Shadows 2012"), "Integer", xmpText, xmpInternal, |
903 | | N_("Not in XMP Specification. Found in sample files.")}, |
904 | | {"Whites2012", N_("Whites 2012"), "Integer", xmpText, xmpInternal, |
905 | | N_("Not in XMP Specification. Found in sample files.")}, |
906 | | {"Blacks2012", N_("Blacks 2012"), "Integer", xmpText, xmpInternal, |
907 | | N_("Not in XMP Specification. Found in sample files.")}, |
908 | | {"Clarity2012", N_("Clarity 2012"), "Integer", xmpText, xmpInternal, |
909 | | N_("Not in XMP Specification. Found in sample files.")}, |
910 | | {"PostCropVignetteHighlightContrast", N_("Post Crop Vignette Highlight Contrast"), "Integer", xmpText, xmpInternal, |
911 | | N_("Not in XMP Specification. Found in sample files.")}, |
912 | | {"ToneCurveName2012", N_("Tone Curve Name 2012"), "Text", xmpText, xmpInternal, |
913 | | N_("Values: Linear, Medium Contrast, Strong Contrast, Custom. Not in XMP Specification. Found in sample " |
914 | | "files.")}, |
915 | | {"ToneCurveRed", N_("Tone Curve Red"), "Seq of points (Integer, Integer)", xmpText, xmpInternal, |
916 | | N_("Array of points (Integer, Integer) defining a \"Tone Curve\".")}, |
917 | | {"ToneCurveGreen", N_("Tone Curve Green"), "Seq of points (Integer, Integer)", xmpText, xmpInternal, |
918 | | N_("Array of points (Integer, Integer) defining a \"Tone Curve\".")}, |
919 | | {"ToneCurveBlue", N_("Tone Curve Blue"), "Seq of points (Integer, Integer)", xmpText, xmpInternal, |
920 | | N_("Array of points (Integer, Integer) defining a \"Tone Curve\".")}, |
921 | | {"ToneCurvePV2012", N_("Tone Curve PV 2012"), "Seq of points (Integer, Integer)", xmpText, xmpInternal, |
922 | | N_("Array of points (Integer, Integer) defining a \"Tone Curve\".")}, |
923 | | {"ToneCurvePV2012Red", N_("Tone Curve PV 2012 Red"), "Seq of points (Integer, Integer)", xmpText, xmpInternal, |
924 | | N_("Array of points (Integer, Integer) defining a \"Tone Curve\".")}, |
925 | | {"ToneCurvePV2012Green", N_("Tone Curve PV 2012 Green"), "Seq of points (Integer, Integer)", xmpText, xmpInternal, |
926 | | N_("Array of points (Integer, Integer) defining a \"Tone Curve\".")}, |
927 | | {"ToneCurvePV2012Blue", N_("Tone Curve PV 2012 Blue"), "Seq of points (Integer, Integer)", xmpText, xmpInternal, |
928 | | N_("Array of points (Integer, Integer) defining a \"Tone Curve\".")}, |
929 | | {"DefringePurpleAmount", N_("Defringe Purple Amount"), "Integer", xmpText, xmpInternal, |
930 | | N_("Not in XMP Specification. Found in sample files.")}, |
931 | | {"DefringePurpleHueLo", N_("Defringe Purple Hue Lo"), "Integer", xmpText, xmpInternal, |
932 | | N_("Not in XMP Specification. Found in sample files.")}, |
933 | | {"DefringePurpleHueHi", N_("Defringe Purple Hue Hi"), "Integer", xmpText, xmpInternal, |
934 | | N_("Not in XMP Specification. Found in sample files.")}, |
935 | | {"DefringeGreenAmount", N_("Defringe Green Amount"), "Integer", xmpText, xmpInternal, |
936 | | N_("Not in XMP Specification. Found in sample files.")}, |
937 | | {"DefringeGreenHueLo", N_("Defringe Green Hue Lo"), "Integer", xmpText, xmpInternal, |
938 | | N_("Not in XMP Specification. Found in sample files.")}, |
939 | | {"DefringeGreenHueHi", N_("Defringe Green Hue Hi"), "Integer", xmpText, xmpInternal, |
940 | | N_("Not in XMP Specification. Found in sample files.")}, |
941 | | {"AutoWhiteVersion", N_("Defringe Green Hue Hi"), "Integer", xmpText, xmpInternal, |
942 | | N_("Not in XMP Specification. Found in sample files.")}, |
943 | | {"ColorNoiseReductionSmoothness", N_("Color Noise Reduction Smoothness"), "Integer", xmpText, xmpInternal, |
944 | | N_("Not in XMP Specification. Found in sample files.")}, |
945 | | {"PerspectiveAspect", N_("Perspective Aspect"), "Integer", xmpText, xmpInternal, |
946 | | N_("Not in XMP Specification. Found in sample files.")}, |
947 | | {"PerspectiveUpright", N_("Perspective Upright"), "Integer", xmpText, xmpInternal, |
948 | | N_("Not in XMP Specification. Found in sample files.")}, |
949 | | {"UprightVersion", N_("Upright Version"), "Integer", xmpText, xmpInternal, |
950 | | N_("Not in XMP Specification. Found in sample files.")}, |
951 | | {"UprightCenterMode", N_("Upright Center Mode"), "Integer", xmpText, xmpInternal, |
952 | | N_("Not in XMP Specification. Found in sample files.")}, |
953 | | {"UprightCenterNormX", N_("Upright Center Norm X"), "Real", xmpText, xmpInternal, |
954 | | N_("Not in XMP Specification. Found in sample files.")}, |
955 | | {"UprightCenterNormY", N_("Upright Center Norm Y"), "Real", xmpText, xmpInternal, |
956 | | N_("Not in XMP Specification. Found in sample files.")}, |
957 | | {"UprightFocalMode", N_("Upright Focal Mode"), "Integer", xmpText, xmpInternal, |
958 | | N_("Not in XMP Specification. Found in sample files.")}, |
959 | | {"UprightFocalLength35mm", N_("Upright Focal Length 35mm"), "Real", xmpText, xmpInternal, |
960 | | N_("Not in XMP Specification. Found in sample files.")}, |
961 | | {"UprightPreview", N_("Upright Preview"), "Boolean", xmpText, xmpInternal, |
962 | | N_("Not in XMP Specification. Found in sample files.")}, |
963 | | {"UprightTransformCount", N_("Upright TransformCount"), "Integer", xmpText, xmpInternal, |
964 | | N_("Not in XMP Specification. Found in sample files.")}, |
965 | | {"UprightDependentDigest", N_("Upright DependentDigest"), "Text", xmpText, xmpInternal, |
966 | | N_("Not in XMP Specification. Found in sample files.")}, |
967 | | {"UprightTransform_0", N_("Upright Transform_0"), "Text", xmpText, xmpInternal, |
968 | | N_("Not in XMP Specification. Found in sample files.")}, |
969 | | {"UprightTransform_1", N_("Upright Transform_1"), "Text", xmpText, xmpInternal, |
970 | | N_("Not in XMP Specification. Found in sample files.")}, |
971 | | {"UprightTransform_2", N_("Upright Transform_2"), "Text", xmpText, xmpInternal, |
972 | | N_("Not in XMP Specification. Found in sample files.")}, |
973 | | {"UprightTransform_3", N_("Upright Transform_3"), "Text", xmpText, xmpInternal, |
974 | | N_("Not in XMP Specification. Found in sample files.")}, |
975 | | {"UprightTransform_4", N_("Upright Transform_4"), "Text", xmpText, xmpInternal, |
976 | | N_("Not in XMP Specification. Found in sample files.")}, |
977 | | {"LensProfileMatchKeyExifMake", N_("Lens Profile Match Key Exif Make"), "Text", xmpText, xmpInternal, |
978 | | N_("Not in XMP Specification. Found in sample files.")}, |
979 | | {"LensProfileMatchKeyExifModel", N_("Lens Profile Match Key Exif Model"), "Text", xmpText, xmpInternal, |
980 | | N_("Not in XMP Specification. Found in sample files.")}, |
981 | | {"LensProfileMatchKeyCameraModelName", N_("Lens Profile Match Key Camera Model Name"), "Text", xmpText, xmpInternal, |
982 | | N_("Not in XMP Specification. Found in sample files.")}, |
983 | | {"LensProfileMatchKeyLensInfo", N_("Lens Profile Match Key Lens Info"), "Text", xmpText, xmpInternal, |
984 | | N_("Not in XMP Specification. Found in sample files.")}, |
985 | | {"LensProfileMatchKeyLensID", N_("Lens Profile Match Key Lens ID"), "Text", xmpText, xmpInternal, |
986 | | N_("Not in XMP Specification. Found in sample files.")}, |
987 | | {"LensProfileMatchKeyLensName", N_("Lens Profile Match Key Lens Name"), "Text", xmpText, xmpInternal, |
988 | | N_("Not in XMP Specification. Found in sample files.")}, |
989 | | {"LensProfileMatchKeyIsRaw", N_("Lens Profile Match Key Is Raw"), "Boolean", xmpText, xmpInternal, |
990 | | N_("Not in XMP Specification. Found in sample files.")}, |
991 | | {"LensProfileMatchKeySensorFormatFactor", N_("Lens Profile Match Key Sensor Format Factor"), "Real", xmpText, |
992 | | xmpInternal, N_("Not in XMP Specification. Found in sample files.")}, |
993 | | {"DefaultAutoTone", N_("Default Auto Tone"), "Boolean", xmpText, xmpInternal, |
994 | | N_("Not in XMP Specification. Found in sample files.")}, |
995 | | {"DefaultAutoGray", N_("DefaultAuto Gray"), "Boolean", xmpText, xmpInternal, |
996 | | N_("Not in XMP Specification. Found in sample files.")}, |
997 | | {"DefaultsSpecificToSerial", N_("Defaults Specific To Serial"), "Boolean", xmpText, xmpInternal, |
998 | | N_("Not in XMP Specification. Found in sample files.")}, |
999 | | {"DefaultsSpecificToISO", N_("Defaults Specific To ISO"), "Boolean", xmpText, xmpInternal, |
1000 | | N_("Not in XMP Specification. Found in sample files.")}, |
1001 | | {"DNGIgnoreSidecars", N_("DNG IgnoreSidecars"), "Boolean", xmpText, xmpInternal, |
1002 | | N_("Not in XMP Specification. Found in sample files.")}, |
1003 | | {"NegativeCachePath", N_("Negative Cache Path"), "Text", xmpText, xmpInternal, |
1004 | | N_("Not in XMP Specification. Found in sample files.")}, |
1005 | | {"NegativeCacheMaximumSize", N_("Negative Cache Maximum Size"), "Real", xmpText, xmpInternal, |
1006 | | N_("Not in XMP Specification. Found in sample files.")}, |
1007 | | {"NegativeCacheLargePreviewSize", N_("Negative Cache Large Preview Size"), "Integer", xmpText, xmpInternal, |
1008 | | N_("Not in XMP Specification. Found in sample files.")}, |
1009 | | {"JPEGHandling", N_("JPEG Handling"), "Text", xmpText, xmpInternal, |
1010 | | N_("Not in XMP Specification. Found in sample files.")}, |
1011 | | {"TIFFHandling", N_("TIFF Handling"), "Text", xmpText, xmpInternal, |
1012 | | N_("Not in XMP Specification. Found in sample files.")}, |
1013 | | // Corrections root structure properties |
1014 | | {"CircularGradientBasedCorrections", N_("CircularGradientBasedCorrections"), "CircularGradientBasedCorrections", |
1015 | | xmpText, xmpInternal, N_("*Root structure* ")}, |
1016 | | {"PaintBasedCorrections", N_("PaintBasedCorrections"), "PaintBasedCorrections", xmpText, xmpInternal, |
1017 | | N_("*Root structure* ")}, |
1018 | | {"CorrectionMasks", N_("CorrectionMasks"), "CorrectionMasks", xmpText, xmpInternal, N_("*sub Root structure* ")}, |
1019 | | // Corrections child properties |
1020 | | {"What", N_("What"), "Text", xmpText, xmpExternal, N_("Not in XMP Specification. Found in sample files.")}, |
1021 | | {"MaskValue", N_("Mask Value"), "Real", xmpText, xmpExternal, |
1022 | | N_("Not in XMP Specification. Found in sample files.")}, |
1023 | | {"Radius", N_("Radius"), "Real", xmpText, xmpExternal, N_("Not in XMP Specification. Found in sample files.")}, |
1024 | | {"Flow", N_("Flow"), "Real", xmpText, xmpExternal, N_("Not in XMP Specification. Found in sample files.")}, |
1025 | | {"CenterWeight", N_("Center Weight"), "Real", xmpText, xmpExternal, |
1026 | | N_("Not in XMP Specification. Found in sample files.")}, |
1027 | | {"Dabs", N_("Dabs"), "Seq of points (Integer, Integer)", xmpText, xmpInternal, |
1028 | | N_("Array of points (Integer, Integer).")}, |
1029 | | {"ZeroX", N_("Zero X"), "Real", xmpText, xmpExternal, N_("Not in XMP Specification. Found in sample files.")}, |
1030 | | {"ZeroY", N_("Zero Y"), "Real", xmpText, xmpExternal, N_("Not in XMP Specification. Found in sample files.")}, |
1031 | | {"FullX", N_("Full X"), "Real", xmpText, xmpExternal, N_("Not in XMP Specification. Found in sample files.")}, |
1032 | | {"FullY", N_("Full Y"), "Real", xmpText, xmpExternal, N_("Not in XMP Specification. Found in sample files.")}, |
1033 | | {"Top", N_("Top"), "Real", xmpText, xmpExternal, N_("Not in XMP Specification. Found in sample files.")}, |
1034 | | {"Left", N_("Left"), "Real", xmpText, xmpExternal, N_("Not in XMP Specification. Found in sample files.")}, |
1035 | | {"Bottom", N_("Bottom"), "Real", xmpText, xmpExternal, N_("Not in XMP Specification. Found in sample files.")}, |
1036 | | {"Right", N_("Right"), "Real", xmpText, xmpExternal, N_("Not in XMP Specification. Found in sample files.")}, |
1037 | | {"Angle", N_("Angle"), "Real", xmpText, xmpExternal, N_("Not in XMP Specification. Found in sample files.")}, |
1038 | | {"Midpoint", N_("Midpoint"), "Real", xmpText, xmpExternal, N_("Not in XMP Specification. Found in sample files.")}, |
1039 | | {"Roundness", N_("Roundness"), "Real", xmpText, xmpExternal, |
1040 | | N_("Not in XMP Specification. Found in sample files.")}, |
1041 | | {"Feather", N_("Feather"), "Real", xmpText, xmpExternal, N_("Not in XMP Specification. Found in sample files.")}, |
1042 | | {"Flipped", N_("Flipped"), "Boolean", xmpText, xmpExternal, N_("Not in XMP Specification. Found in sample files.")}, |
1043 | | {"Version", N_("Version"), "Integer", xmpText, xmpExternal, N_("Not in XMP Specification. Found in sample files.")}, |
1044 | | {"SizeX", N_("Size X"), "Real", xmpText, xmpExternal, N_("Not in XMP Specification. Found in sample files.")}, |
1045 | | {"SizeY", N_("Size Y"), "Real", xmpText, xmpExternal, N_("Not in XMP Specification. Found in sample files.")}, |
1046 | | {"X", N_("X"), "Real", xmpText, xmpExternal, N_("Not in XMP Specification. Found in sample files.")}, |
1047 | | {"Y", N_("Y"), "Real", xmpText, xmpExternal, N_("Not in XMP Specification. Found in sample files.")}, |
1048 | | {"Alpha", N_("Alpha"), "Real", xmpText, xmpExternal, N_("Not in XMP Specification. Found in sample files.")}, |
1049 | | {"CenterValue", N_("Center Value"), "Real", xmpText, xmpExternal, |
1050 | | N_("Not in XMP Specification. Found in sample files.")}, |
1051 | | {"PerimeterValue", N_("Perimeter Value"), "Real", xmpText, xmpExternal, |
1052 | | N_("Not in XMP Specification. Found in sample files.")}, |
1053 | | // Retouch root structure properties |
1054 | | {"RetouchAreas", N_("RetouchAreas"), "RetouchAreas", xmpText, xmpInternal, N_("*Root structure* ")}, |
1055 | | // Retouch child properties |
1056 | | {"SpotType", N_("Spot Type"), "Text", xmpText, xmpExternal, N_("Not in XMP Specification. Found in sample files.")}, |
1057 | | {"SourceState", N_("Source State"), "Text", xmpText, xmpExternal, |
1058 | | N_("Not in XMP Specification. Found in sample files.")}, |
1059 | | {"Method", N_("Method"), "Text", xmpText, xmpExternal, N_("Not in XMP Specification. Found in sample files.")}, |
1060 | | {"SourceX", N_("Source X"), "Real", xmpText, xmpExternal, N_("Not in XMP Specification. Found in sample files.")}, |
1061 | | {"OffsetY", N_("Offset Y"), "Real", xmpText, xmpExternal, N_("Not in XMP Specification. Found in sample files.")}, |
1062 | | {"Opacity", N_("Opacity"), "Real", xmpText, xmpExternal, N_("Not in XMP Specification. Found in sample files.")}, |
1063 | | {"Feather", N_("Feather"), "Real", xmpText, xmpExternal, N_("Not in XMP Specification. Found in sample files.")}, |
1064 | | {"Seed", N_("Seed"), "Integer", xmpText, xmpExternal, N_("Not in XMP Specification. Found in sample files.")}, |
1065 | | // End of list marker |
1066 | | {nullptr, nullptr, nullptr, invalidTypeId, xmpInternal, nullptr}, |
1067 | | }; |
1068 | | |
1069 | | const XmpPropertyInfo xmpTiffInfo[] = { |
1070 | | {"ImageWidth", N_("Image Width"), "Integer", xmpText, xmpInternal, |
1071 | | N_("TIFF tag 256, 0x100. Image width in pixels.")}, |
1072 | | {"ImageLength", N_("Image Length"), "Integer", xmpText, xmpInternal, |
1073 | | N_("TIFF tag 257, 0x101. Image height in pixels.")}, |
1074 | | {"BitsPerSample", N_("Bits Per Sample"), "seq Integer", xmpSeq, xmpInternal, |
1075 | | N_("TIFF tag 258, 0x102. Number of bits per component in each channel.")}, |
1076 | | {"Compression", N_("Compression"), "Closed Choice of Integer", xmpText, xmpInternal, |
1077 | | N_("TIFF tag 259, 0x103. Compression scheme: 1 = uncompressed; 6 = JPEG.")}, |
1078 | | {"PhotometricInterpretation", N_("Photometric Interpretation"), "Closed Choice of Integer", xmpText, xmpInternal, |
1079 | | N_("TIFF tag 262, 0x106. Pixel Composition: 2 = RGB; 6 = YCbCr.")}, |
1080 | | {"Orientation", N_("Orientation"), "Closed Choice of Integer", xmpText, xmpInternal, |
1081 | | N_("TIFF tag 274, 0x112. Orientation:" |
1082 | | "1 = 0th row at top, 0th column at left " |
1083 | | "2 = 0th row at top, 0th column at right " |
1084 | | "3 = 0th row at bottom, 0th column at right " |
1085 | | "4 = 0th row at bottom, 0th column at left " |
1086 | | "5 = 0th row at left, 0th column at top " |
1087 | | "6 = 0th row at right, 0th column at top " |
1088 | | "7 = 0th row at right, 0th column at bottom " |
1089 | | "8 = 0th row at left, 0th column at bottom")}, |
1090 | | {"SamplesPerPixel", N_("Samples Per Pixel"), "Integer", xmpText, xmpInternal, |
1091 | | N_("TIFF tag 277, 0x115. Number of components per pixel.")}, |
1092 | | {"PlanarConfiguration", N_("Planar Configuration"), "Closed Choice of Integer", xmpText, xmpInternal, |
1093 | | N_("TIFF tag 284, 0x11C. Data layout:1 = chunky; 2 = planar.")}, |
1094 | | {"YCbCrSubSampling", N_("YCbCr Sub Sampling"), "Closed Choice of seq Integer", xmpSeq, xmpInternal, |
1095 | | N_("TIFF tag 530, 0x212. Sampling ratio of chrominance " |
1096 | | "components: [2, 1] = YCbCr4:2:2; [2, 2] = YCbCr4:2:0")}, |
1097 | | {"YCbCrPositioning", N_("YCbCr Positioning"), "Closed Choice of Integer", xmpText, xmpInternal, |
1098 | | N_("TIFF tag 531, 0x213. Position of chrominance vs. " |
1099 | | "luminance components: 1 = centered; 2 = co-sited.")}, |
1100 | | {"XResolution", N_("X Resolution"), "Rational", xmpText, xmpInternal, |
1101 | | N_("TIFF tag 282, 0x11A. Horizontal resolution in pixels per unit.")}, |
1102 | | {"YResolution", N_("Y Resolution"), "Rational", xmpText, xmpInternal, |
1103 | | N_("TIFF tag 283, 0x11B. Vertical resolution in pixels per unit.")}, |
1104 | | {"ResolutionUnit", N_("Resolution Unit"), "Closed Choice of Integer", xmpText, xmpInternal, |
1105 | | N_("TIFF tag 296, 0x128. Unit used for XResolution and " |
1106 | | "YResolution. Value is one of: 2 = inches; 3 = centimeters.")}, |
1107 | | {"TransferFunction", N_("Transfer Function"), "seq Integer", xmpSeq, xmpInternal, |
1108 | | N_("TIFF tag 301, 0x12D. Transfer function for image " |
1109 | | "described in tabular style with 3 * 256 entries.")}, |
1110 | | {"WhitePoint", N_("White Point"), "seq Rational", xmpSeq, xmpInternal, |
1111 | | N_("TIFF tag 318, 0x13E. Chromaticity of white point.")}, |
1112 | | {"PrimaryChromaticities", N_("Primary Chromaticities"), "seq Rational", xmpSeq, xmpInternal, |
1113 | | N_("TIFF tag 319, 0x13F. Chromaticity of the three primary colors.")}, |
1114 | | {"YCbCrCoefficients", N_("YCbCr Coefficients"), "seq Rational", xmpSeq, xmpInternal, |
1115 | | N_("TIFF tag 529, 0x211. Matrix coefficients for RGB to YCbCr transformation.")}, |
1116 | | {"ReferenceBlackWhite", N_("Reference Black White"), "seq Rational", xmpSeq, xmpInternal, |
1117 | | N_("TIFF tag 532, 0x214. Reference black and white point values.")}, |
1118 | | {"DateTime", N_("Date and Time"), "Date", xmpText, xmpInternal, |
1119 | | N_("TIFF tag 306, 0x132 (primary) and EXIF tag 37520, " |
1120 | | "0x9290 (subseconds). Date and time of image creation " |
1121 | | "(no time zone in EXIF), stored in ISO 8601 format, not " |
1122 | | "the original EXIF format. This property includes the " |
1123 | | "value for the EXIF SubSecTime attribute. " |
1124 | | "NOTE: This property is stored in XMP as xmp:ModifyDate.")}, |
1125 | | {"ImageDescription", N_("Image Description"), "Lang Alt", langAlt, xmpExternal, |
1126 | | N_("TIFF tag 270, 0x10E. Description of the image. Note: This property is stored in XMP as dc:description.")}, |
1127 | | {"Make", N_("Make"), "ProperName", xmpText, xmpInternal, |
1128 | | N_("TIFF tag 271, 0x10F. Manufacturer of recording equipment.")}, |
1129 | | {"Model", N_("Model"), "ProperName", xmpText, xmpInternal, |
1130 | | N_("TIFF tag 272, 0x110. Model name or number of equipment.")}, |
1131 | | {"Software", N_("Software"), "AgentName", xmpText, xmpInternal, |
1132 | | N_("TIFF tag 305, 0x131. Software or firmware used to generate image. " |
1133 | | "Note: This property is stored in XMP as xmp:CreatorTool.")}, |
1134 | | {"Artist", N_("Artist"), "ProperName", xmpText, xmpExternal, |
1135 | | N_("TIFF tag 315, 0x13B. Camera owner, photographer or image creator. " |
1136 | | "Note: This property is stored in XMP as the first item in the dc:creator array.")}, |
1137 | | {"Copyright", N_("Copyright"), "Lang Alt", langAlt, xmpExternal, |
1138 | | N_("TIFF tag 33432, 0x8298. Copyright information. " |
1139 | | "Note: This property is stored in XMP as dc:rights.")}, |
1140 | | // End of list marker |
1141 | | {nullptr, nullptr, nullptr, invalidTypeId, xmpInternal, nullptr}, |
1142 | | }; |
1143 | | |
1144 | | const XmpPropertyInfo xmpExifInfo[] = { |
1145 | | {"ExifVersion", N_("Exif Version"), "Closed Choice of Text", xmpText, xmpInternal, |
1146 | | N_("EXIF tag 36864, 0x9000. EXIF version number.")}, |
1147 | | {"FlashpixVersion", N_("Flashpix Version"), "Closed Choice of Text", xmpText, xmpInternal, |
1148 | | N_("EXIF tag 40960, 0xA000. Version of FlashPix.")}, |
1149 | | {"ColorSpace", N_("Color Space"), "Closed Choice of Integer", xmpText, xmpInternal, |
1150 | | N_("EXIF tag 40961, 0xA001. Color space information")}, |
1151 | | {"ComponentsConfiguration", N_("Components Configuration"), "Closed Choice of seq Integer", xmpSeq, xmpInternal, |
1152 | | N_("EXIF tag 37121, 0x9101. Configuration of components in data: 4 5 6 0 (if RGB compressed data), " |
1153 | | "1 2 3 0 (other cases).")}, |
1154 | | {"CompressedBitsPerPixel", N_("Compressed Bits Per Pixel"), "Rational", xmpText, xmpInternal, |
1155 | | N_("EXIF tag 37122, 0x9102. Compression mode used for a compressed image is indicated " |
1156 | | "in unit bits per pixel.")}, |
1157 | | {"PixelXDimension", N_("Pixel X Dimension"), "Integer", xmpText, xmpInternal, |
1158 | | N_("EXIF tag 40962, 0xA002. Valid image width, in pixels.")}, |
1159 | | {"PixelYDimension", N_("Pixel Y Dimension"), "Integer", xmpText, xmpInternal, |
1160 | | N_("EXIF tag 40963, 0xA003. Valid image height, in pixels.")}, |
1161 | | {"UserComment", N_("User Comment"), "Lang Alt", langAlt, xmpExternal, |
1162 | | N_("EXIF tag 37510, 0x9286. Comments from user.")}, |
1163 | | {"RelatedSoundFile", N_("Related Sound File"), "Text", xmpText, xmpInternal, |
1164 | | N_("EXIF tag 40964, 0xA004. An \"8.3\" file name for the related sound file.")}, |
1165 | | {"DateTimeOriginal", N_("Date and Time Original"), "Date", xmpText, xmpInternal, |
1166 | | N_("EXIF tags 36867, 0x9003 (primary) and 37521, 0x9291 (subseconds). " |
1167 | | "Date and time when original image was generated, in ISO 8601 format. " |
1168 | | "Includes the EXIF SubSecTimeOriginal data.")}, |
1169 | | {"DateTimeDigitized", N_("Date and Time Digitized"), "Date", xmpText, xmpInternal, |
1170 | | N_("EXIF tag 36868, 0x9004 (primary) and 37522, 0x9292 (subseconds). Date and time when " |
1171 | | "image was stored as digital data, can be the same as DateTimeOriginal if originally " |
1172 | | "stored in digital form. Stored in ISO 8601 format. Includes the EXIF " |
1173 | | "SubSecTimeDigitized data.")}, |
1174 | | {"ExposureTime", N_("Exposure Time"), "Rational", xmpText, xmpInternal, |
1175 | | N_("EXIF tag 33434, 0x829A. Exposure time in seconds.")}, |
1176 | | {"FNumber", N_("F Number"), "Rational", xmpText, xmpInternal, N_("EXIF tag 33437, 0x829D. F number.")}, |
1177 | | {"ExposureProgram", N_("Exposure Program"), "Closed Choice of Integer", xmpText, xmpInternal, |
1178 | | N_("EXIF tag 34850, 0x8822. Class of program used for exposure.")}, |
1179 | | {"SpectralSensitivity", N_("Spectral Sensitivity"), "Text", xmpText, xmpInternal, |
1180 | | N_("EXIF tag 34852, 0x8824. Spectral sensitivity of each channel.")}, |
1181 | | {"ISOSpeedRatings", N_("ISOSpeedRatings"), "seq Integer", xmpSeq, xmpInternal, |
1182 | | N_("EXIF tag 34855, 0x8827. ISO Speed and ISO Latitude of the input device as " |
1183 | | "specified in ISO 12232.")}, |
1184 | | {"OECF", N_("OECF"), "OECF/SFR", xmpText, xmpInternal, |
1185 | | N_("EXIF tag 34856, 0x8828. Opto-Electoric Conversion Function as specified in ISO 14524.")}, |
1186 | | {"ShutterSpeedValue", N_("Shutter Speed Value"), "Rational", xmpText, xmpInternal, |
1187 | | N_("EXIF tag 37377, 0x9201. Shutter speed, unit is APEX. See Annex C of the EXIF specification.")}, |
1188 | | {"ApertureValue", N_("Aperture Value"), "Rational", xmpText, xmpInternal, |
1189 | | N_("EXIF tag 37378, 0x9202. Lens aperture, unit is APEX.")}, |
1190 | | {"BrightnessValue", N_("Brightness Value"), "Rational", xmpText, xmpInternal, |
1191 | | N_("EXIF tag 37379, 0x9203. Brightness, unit is APEX.")}, |
1192 | | {"ExposureBiasValue", N_("Exposure Bias Value"), "Rational", xmpText, xmpInternal, |
1193 | | N_("EXIF tag 37380, 0x9204. Exposure bias, unit is APEX.")}, |
1194 | | {"MaxApertureValue", N_("Maximum Aperture Value"), "Rational", xmpText, xmpInternal, |
1195 | | N_("EXIF tag 37381, 0x9205. Smallest F number of lens, in APEX.")}, |
1196 | | {"SubjectDistance", N_("Subject Distance"), "Rational", xmpText, xmpInternal, |
1197 | | N_("EXIF tag 37382, 0x9206. Distance to subject, in meters.")}, |
1198 | | {"MeteringMode", N_("Metering Mode"), "Closed Choice of Integer", xmpText, xmpInternal, |
1199 | | N_("EXIF tag 37383, 0x9207. Metering mode.")}, |
1200 | | {"LightSource", N_("Light Source"), "Closed Choice of Integer", xmpText, xmpInternal, |
1201 | | N_("EXIF tag 37384, 0x9208. Light source.")}, |
1202 | | {"Flash", N_("Flash"), "Flash", xmpText, xmpInternal, |
1203 | | N_("EXIF tag 37385, 0x9209. Strobe light (flash) source data.")}, |
1204 | | {"FocalLength", N_("Focal Length"), "Rational", xmpText, xmpInternal, |
1205 | | N_("EXIF tag 37386, 0x920A. Focal length of the lens, in millimeters.")}, |
1206 | | {"SubjectArea", N_("Subject Area"), "seq Integer", xmpSeq, xmpInternal, |
1207 | | N_("EXIF tag 37396, 0x9214. The location and area of the main subject in the overall scene.")}, |
1208 | | {"FlashEnergy", N_("Flash Energy"), "Rational", xmpText, xmpInternal, |
1209 | | N_("EXIF tag 41483, 0xA20B. Strobe energy during image capture.")}, |
1210 | | {"SpatialFrequencyResponse", N_("Spatial Frequency Response"), "OECF/SFR", xmpText, xmpInternal, |
1211 | | N_("EXIF tag 41484, 0xA20C. Input device spatial frequency table and SFR values as " |
1212 | | "specified in ISO 12233.")}, |
1213 | | {"FocalPlaneXResolution", N_("Focal Plane X Resolution"), "Rational", xmpText, xmpInternal, |
1214 | | N_("EXIF tag 41486, 0xA20E. Horizontal focal resolution, measured pixels per unit.")}, |
1215 | | {"FocalPlaneYResolution", N_("Focal Plane Y Resolution"), "Rational", xmpText, xmpInternal, |
1216 | | N_("EXIF tag 41487, 0xA20F. Vertical focal resolution, measured in pixels per unit.")}, |
1217 | | {"FocalPlaneResolutionUnit", N_("Focal Plane Resolution Unit"), "Closed Choice of Integer", xmpText, xmpInternal, |
1218 | | N_("EXIF tag 41488, 0xA210. Unit used for FocalPlaneXResolution and FocalPlaneYResolution.")}, |
1219 | | {"SubjectLocation", N_("Subject Location"), "seq Integer", xmpSeq, xmpInternal, |
1220 | | N_("EXIF tag 41492, 0xA214. Location of the main subject of the scene. The first value is the " |
1221 | | "horizontal pixel and the second value is the vertical pixel at which the " |
1222 | | "main subject appears.")}, |
1223 | | {"ExposureIndex", N_("Exposure Index"), "Rational", xmpText, xmpInternal, |
1224 | | N_("EXIF tag 41493, 0xA215. Exposure index of input device.")}, |
1225 | | {"SensingMethod", N_("Sensing Method"), "Closed Choice of Integer", xmpText, xmpInternal, |
1226 | | N_("EXIF tag 41495, 0xA217. Image sensor type on input device.")}, |
1227 | | {"FileSource", N_("File Source"), "Closed Choice of Integer", xmpText, xmpInternal, |
1228 | | N_("EXIF tag 41728, 0xA300. Indicates image source.")}, |
1229 | | {"SceneType", N_("Scene Type"), "Closed Choice of Integer", xmpText, xmpInternal, |
1230 | | N_("EXIF tag 41729, 0xA301. Indicates the type of scene.")}, |
1231 | | {"CFAPattern", N_("CFA Pattern"), "CFAPattern", xmpText, xmpInternal, |
1232 | | N_("EXIF tag 41730, 0xA302. Color filter array geometric pattern of the image sense.")}, |
1233 | | {"CustomRendered", N_("Custom Rendered"), "Closed Choice of Integer", xmpText, xmpInternal, |
1234 | | N_("EXIF tag 41985, 0xA401. Indicates the use of special processing on image data.")}, |
1235 | | {"ExposureMode", N_("Exposure Mode"), "Closed Choice of Integer", xmpText, xmpInternal, |
1236 | | N_("EXIF tag 41986, 0xA402. Indicates the exposure mode set when the image was shot.")}, |
1237 | | {"WhiteBalance", N_("White Balance"), "Closed Choice of Integer", xmpText, xmpInternal, |
1238 | | N_("EXIF tag 41987, 0xA403. Indicates the white balance mode set when the image was shot.")}, |
1239 | | {"DigitalZoomRatio", N_("Digital Zoom Ratio"), "Rational", xmpText, xmpInternal, |
1240 | | N_("EXIF tag 41988, 0xA404. Indicates the digital zoom ratio when the image was shot.")}, |
1241 | | {"FocalLengthIn35mmFilm", N_("Focal Length In 35mm Film"), "Integer", xmpText, xmpInternal, |
1242 | | N_("EXIF tag 41989, 0xA405. Indicates the equivalent focal length assuming a 35mm film " |
1243 | | "camera, in mm. A value of 0 means the focal length is unknown. Note that this tag " |
1244 | | "differs from the FocalLength tag.")}, |
1245 | | {"SceneCaptureType", N_("Scene Capture Type"), "Closed Choice of Integer", xmpText, xmpInternal, |
1246 | | N_("EXIF tag 41990, 0xA406. Indicates the type of scene that was shot.")}, |
1247 | | {"GainControl", N_("Gain Control"), "Closed Choice of Integer", xmpText, xmpInternal, |
1248 | | N_("EXIF tag 41991, 0xA407. Indicates the degree of overall image gain adjustment.")}, |
1249 | | {"Contrast", N_("Contrast"), "Closed Choice of Integer", xmpText, xmpInternal, |
1250 | | N_("EXIF tag 41992, 0xA408. Indicates the direction of contrast processing applied by the camera.")}, |
1251 | | {"Saturation", N_("Saturation"), "Closed Choice of Integer", xmpText, xmpInternal, |
1252 | | N_("EXIF tag 41993, 0xA409. Indicates the direction of saturation processing applied by the camera.")}, |
1253 | | {"Sharpness", N_("Sharpness"), "Closed Choice of Integer", xmpText, xmpInternal, |
1254 | | N_("EXIF tag 41994, 0xA40A. Indicates the direction of sharpness processing applied by the camera.")}, |
1255 | | {"DeviceSettingDescription", N_("Device Setting Description"), "DeviceSettings", xmpText, xmpInternal, |
1256 | | N_("EXIF tag 41995, 0xA40B. Indicates information on the picture-taking conditions of a particular camera " |
1257 | | "model.")}, |
1258 | | {"SubjectDistanceRange", N_("Subject Distance Range"), "Closed Choice of Integer", xmpText, xmpInternal, |
1259 | | N_("EXIF tag 41996, 0xA40C. Indicates the distance to the subject.")}, |
1260 | | {"ImageUniqueID", N_("Image Unique ID"), "Text", xmpText, xmpInternal, |
1261 | | N_("EXIF tag 42016, 0xA420. An identifier assigned uniquely to each image. It is recorded as a 32 " |
1262 | | "character ASCII string, equivalent to hexadecimal notation and 128-bit fixed length.")}, |
1263 | | {"GPSVersionID", N_("GPS Version ID"), "Text", xmpText, xmpInternal, |
1264 | | N_("GPS tag 0, 0x00. A decimal encoding of each of the four EXIF bytes with period separators. " |
1265 | | "The current value is \"2.0.0.0\".")}, |
1266 | | {"GPSLatitude", N_("GPS Latitude"), "GPSCoordinate", xmpText, xmpInternal, |
1267 | | N_("GPS tag 2, 0x02 (position) and 1, 0x01 (North/South). Indicates latitude.")}, |
1268 | | {"GPSLongitude", N_("GPS Longitude"), "GPSCoordinate", xmpText, xmpInternal, |
1269 | | N_("GPS tag 4, 0x04 (position) and 3, 0x03 (East/West). Indicates longitude.")}, |
1270 | | {"GPSAltitudeRef", N_("GPS Altitude Reference"), "Closed Choice of Integer", xmpText, xmpInternal, |
1271 | | N_("GPS tag 5, 0x05. Indicates whether the altitude is above or below sea level.")}, |
1272 | | {"GPSAltitude", N_("GPS Altitude"), "Rational", xmpText, xmpInternal, |
1273 | | N_("GPS tag 6, 0x06. Indicates altitude in meters.")}, |
1274 | | {"GPSTimeStamp", N_("GPS Time Stamp"), "Date", xmpText, xmpInternal, |
1275 | | N_("GPS tag 29 (date), 0x1D, and, and GPS tag 7 (time), 0x07. Time stamp of GPS data, " |
1276 | | "in Coordinated Universal Time. Note: The GPSDateStamp tag is new in EXIF 2.2. " |
1277 | | "The GPS timestamp in EXIF 2.1 does not include a date. If not present, " |
1278 | | "the date component for the XMP should be taken from exif:DateTimeOriginal, or if that is " |
1279 | | "also lacking from exif:DateTimeDigitized. If no date is available, do not write " |
1280 | | "exif:GPSTimeStamp to XMP.")}, |
1281 | | {"GPSSatellites", N_("GPS Satellites"), "Text", xmpText, xmpInternal, |
1282 | | N_("GPS tag 8, 0x08. Satellite information, format is unspecified.")}, |
1283 | | {"GPSStatus", N_("GPS Status"), "Closed Choice of Text", xmpText, xmpInternal, |
1284 | | N_("GPS tag 9, 0x09. Status of GPS receiver at image creation time.")}, |
1285 | | {"GPSMeasureMode", N_("GPS Measure Mode"), "Text", xmpText, xmpInternal, |
1286 | | N_("GPS tag 10, 0x0A. GPS measurement mode, Text type.")}, |
1287 | | {"GPSDOP", N_("GPS DOP"), "Rational", xmpText, xmpInternal, |
1288 | | N_("GPS tag 11, 0x0B. Degree of precision for GPS data.")}, |
1289 | | {"GPSSpeedRef", N_("GPS Speed Reference"), "Closed Choice of Text", xmpText, xmpInternal, |
1290 | | N_("GPS tag 12, 0x0C. Units used to speed measurement.")}, |
1291 | | {"GPSSpeed", N_("GPS Speed"), "Rational", xmpText, xmpInternal, |
1292 | | N_("GPS tag 13, 0x0D. Speed of GPS receiver movement.")}, |
1293 | | {"GPSTrackRef", N_("GPS Track Reference"), "Closed Choice of Text", xmpText, xmpInternal, |
1294 | | N_("GPS tag 14, 0x0E. Reference for movement direction.")}, |
1295 | | {"GPSTrack", N_("GPS Track"), "Rational", xmpText, xmpInternal, |
1296 | | N_("GPS tag 15, 0x0F. Direction of GPS movement, values range from 0 to 359.99.")}, |
1297 | | {"GPSImgDirectionRef", N_("GPS Image Direction Reference"), "Closed Choice of Text", xmpText, xmpInternal, |
1298 | | N_("GPS tag 16, 0x10. Reference for image direction.")}, |
1299 | | {"GPSImgDirection", N_("GPS Image Direction"), "Rational", xmpText, xmpInternal, |
1300 | | N_("GPS tag 17, 0x11. Direction of image when captured, values range from 0 to 359.99.")}, |
1301 | | {"GPSMapDatum", N_("GPS Map Datum"), "Text", xmpText, xmpInternal, N_("GPS tag 18, 0x12. Geodetic survey data.")}, |
1302 | | {"GPSDestLatitude", N_("GPS Destination Latitude"), "GPSCoordinate", xmpText, xmpInternal, |
1303 | | N_("GPS tag 20, 0x14 (position) and 19, 0x13 (North/South). Indicates destination latitude.")}, |
1304 | | {"GPSDestLongitude", N_("GPS Destination Longitude"), "GPSCoordinate", xmpText, xmpInternal, |
1305 | | N_("GPS tag 22, 0x16 (position) and 21, 0x15 (East/West). Indicates destination longitude.")}, |
1306 | | {"GPSDestBearingRef", N_("GPS Destination Bearing Reference"), "Closed Choice of Text", xmpText, xmpInternal, |
1307 | | N_("GPS tag 23, 0x17. Reference for movement direction.")}, |
1308 | | {"GPSDestBearing", N_("GPS Destination Bearing"), "Rational", xmpText, xmpInternal, |
1309 | | N_("GPS tag 24, 0x18. Destination bearing, values from 0 to 359.99.")}, |
1310 | | {"GPSDestDistanceRef", N_("GPS Destination Distance Reference"), "Closed Choice of Text", xmpText, xmpInternal, |
1311 | | N_("GPS tag 25, 0x19. Units used for speed measurement.")}, |
1312 | | {"GPSDestDistance", N_("GPS Destination Distance"), "Rational", xmpText, xmpInternal, |
1313 | | N_("GPS tag 26, 0x1A. Distance to destination.")}, |
1314 | | {"GPSProcessingMethod", N_("GPS Processing Method"), "Text", xmpText, xmpInternal, |
1315 | | N_("GPS tag 27, 0x1B. A character string recording the name of the method used for location finding.")}, |
1316 | | {"GPSAreaInformation", N_("GPS Area Information"), "Text", xmpText, xmpInternal, |
1317 | | N_("GPS tag 28, 0x1C. A character string recording the name of the GPS area.")}, |
1318 | | {"GPSDifferential", N_("GPS Differential"), "Closed Choice of Integer", xmpText, xmpInternal, |
1319 | | N_("GPS tag 30, 0x1E. Indicates whether differential correction is applied to the GPS receiver.")}, |
1320 | | // End of list marker |
1321 | | {nullptr, nullptr, nullptr, invalidTypeId, xmpInternal, nullptr}, |
1322 | | }; |
1323 | | |
1324 | | const XmpPropertyInfo xmpExifEXInfo[] = { |
1325 | | {"Gamma", N_("Gamma"), "Rational", xmpText, xmpInternal, |
1326 | | N_("EXIF tag 42240, 0xA500. Indicates the value of coefficient gamma.")}, |
1327 | | {"PhotographicSensitivity", N_("Photographic Sensitivity"), "Integer", xmpText, xmpInternal, |
1328 | | N_("EXIF tag 34855, 0x8827. Indicates the sensitivity of the camera or input device when the image was shot " |
1329 | | "up to the value of 65535 with one of the following parameters that are defined in ISO 12232: standard " |
1330 | | "output sensitivity (SOS), recommended exposure index (REI), or ISO speed.")}, |
1331 | | {"SensitivityType", N_("Sensitivity Type"), "Closed Choice of Integer", xmpText, xmpInternal, |
1332 | | N_("EXIF tag 34864, 0x8830. Indicates which one of the parameters of ISO12232 is used for " |
1333 | | "PhotographicSensitivity:0 = Unknown " |
1334 | | "1 = Standard output sensitivity (SOS) " |
1335 | | "2 = Recommended exposure index (REI) " |
1336 | | "3 = ISO speed " |
1337 | | "4 = Standard output sensitivity (SOS) and recommended exposure index (REI) " |
1338 | | "5 = Standard output sensitivity (SOS) and ISO speed " |
1339 | | "6 = Recommended exposure index (REI) and ISO speed " |
1340 | | "7 = Standard output sensitivity (SOS) and recommended exposure index (REI) and ISO speed")}, |
1341 | | {"StandardOutput-Sensitivity", N_("Standard Output Sensitivity"), "Integer", xmpText, xmpInternal, |
1342 | | N_("EXIF tag 34865, 0x8831. Indicates the standard output sensitivity value of a camera or input device " |
1343 | | "defined in ISO 12232.")}, |
1344 | | {"RecommendedExposureIndex", N_("Recommended Exposure Index"), "Integer", xmpText, xmpInternal, |
1345 | | N_("EXIF tag 34866, 0x8832. Indicates the recommended exposure index value of a camera or input device " |
1346 | | "defined in ISO 12232.")}, |
1347 | | {"ISOSpeed", N_("ISO Speed"), "Integer", xmpText, xmpInternal, |
1348 | | N_("EXIF tag 34867, 0x8833. Indicates the ISO speed value of a camera or input device defined in ISO 12232.")}, |
1349 | | {"ISOSpeedLatitudeyyy", N_("ISO Speed Latitude yyy"), "Integer", xmpText, xmpInternal, |
1350 | | N_("EXIF tag 34868, 0x8834. Indicates the ISO speed latitude yyy value of a camera or input device defined in " |
1351 | | "ISO 12232.")}, |
1352 | | {"ISOSpeedLatitudezzz", N_("ISO Speed Latitude zzz"), "Integer", xmpText, xmpInternal, |
1353 | | N_("EXIF tag 34869, 0x8835. Indicates the ISO speed latitude zzz value of a camera or input device defined in " |
1354 | | "ISO 12232.")}, |
1355 | | {"CameraOwnerName", N_("Camera Owner Name"), "Proper-Name", xmpText, xmpInternal, |
1356 | | N_("EXIF tag 42032, 0xA430. This tag records the owner of a camera used in photography as an ASCII string.")}, |
1357 | | {"BodySerialNumber", N_("Body Serial Number"), "Text", xmpText, xmpInternal, |
1358 | | N_("EXIF tag 42033, 0xA431. The serial number of the camera or camera body used to take the photograph.")}, |
1359 | | {"LensSpecification", N_("Lens Specification"), "Ordered array of Rational", xmpText, xmpInternal, |
1360 | | N_("EXIF tag 42034, 0xA432. notes minimum focal length, maximum focal length, minimum F number in the minimum " |
1361 | | "focal length, and minimum F number in the maximum focal length, which are specification information for " |
1362 | | "the lens that was used in photography.")}, |
1363 | | {"LensMake", N_("Lens Make"), "Proper-Name", xmpText, xmpInternal, |
1364 | | N_("EXIF tag 42035, 0xA433. Records the lens manufacturer as an ASCII string.")}, |
1365 | | {"LensModel", N_("Lens Model"), "Text", xmpText, xmpInternal, |
1366 | | N_("EXIF tag 42036, 0xA434. Records the lens's model name and model number as an ASCII string.")}, |
1367 | | {"LensSerialNumber", N_("Lens Serial Number"), "Text", xmpText, xmpInternal, |
1368 | | N_("EXIF tag 42037, 0xA435. This tag records the serial number of the interchangeable lens that was used in " |
1369 | | "photography as an ASCII string.")}, |
1370 | | |
1371 | | {"InteroperabilityIndex", N_("Interoperability Index"), "Closed Choice of Text", xmpText, xmpInternal, |
1372 | | N_("EXIF tag 1, 0x0001. Indicates the identification of the Interoperability rule. " |
1373 | | "R98 = Indicates a file conforming to R98 file specification of Recommended Exif Interoperability Rules " |
1374 | | "(Exif R 98) or to DCF basic file stipulated by Design Rule for Camera File System (DCF). " |
1375 | | "THM = Indicates a file conforming to DCF thumbnail file stipulated by Design rule for Camera File System. " |
1376 | | "R03 = Indicates a file conforming to DCF Option File stipulated by Design rule for Camera File System.")}, |
1377 | | // End of list marker |
1378 | | {nullptr, nullptr, nullptr, invalidTypeId, xmpInternal, nullptr}, |
1379 | | }; |
1380 | | |
1381 | | const XmpPropertyInfo xmpAuxInfo[] = { |
1382 | | {"Lens", N_("Lens"), "Text", xmpText, xmpInternal, |
1383 | | N_("A description of the lens used to take the photograph. For example, \"70-200 mm f/2.8-4.0\".")}, |
1384 | | {"SerialNumber", N_("Serial Number"), "Text", xmpText, xmpInternal, |
1385 | | N_("The serial number of the camera or camera body used to take the photograph.")}, |
1386 | | // End of list marker |
1387 | | {nullptr, nullptr, nullptr, invalidTypeId, xmpInternal, nullptr}, |
1388 | | }; |
1389 | | |
1390 | | const XmpPropertyInfo xmpIptcInfo[] = { |
1391 | | {"AltTextAccessibility", N_("Alternative Text (Accessibility)"), "Lang Alt", langAlt, xmpExternal, |
1392 | | N_("A brief textual description of the purpose and meaning of an image that can be accessed by assistive " |
1393 | | "technology or displayed when the image is disabled in the browser. It should not exceed 250 characters.")}, |
1394 | | {"CreatorContactInfo", N_("Creator's Contact Info"), "ContactInfo", xmpText, xmpExternal, |
1395 | | N_("The creator's contact information provides all necessary information to get in contact " |
1396 | | "with the creator of this image and comprises a set of sub-properties for proper addressing.")}, |
1397 | | {"CiAdrExtadr", N_("Contact Info: Address (deprecated)"), "Text", xmpText, xmpExternal, |
1398 | | N_("Deprecated, use the CiAdrExtadr tag in ContactInfo struct instead. sub-key Creator Contact Info: address. " |
1399 | | "Comprises an optional company name and all required " |
1400 | | "information to locate the building or postbox to which mail should be sent.")}, |
1401 | | {"CiAdrCity", N_("Contact Info-City (deprecated)"), "Text", xmpText, xmpExternal, |
1402 | | N_("Deprecated, use the CiAdrCity tag in ContactInfo struct instead. sub-key Creator Contact Info: The " |
1403 | | "contact information city part.")}, |
1404 | | {"CiAdrRegion", N_("Contact Info-State/Province (deprecated)"), "Text", xmpText, xmpExternal, |
1405 | | N_("Deprecated, use the CiAdrRegion tag in ContactInfo struct instead. sub-key Creator Contact Info: state or " |
1406 | | "province.")}, |
1407 | | {"CiAdrPcode", N_("Contact Info-Postal Code (deprecated)"), "Text", xmpText, xmpExternal, |
1408 | | N_("Deprecated, use the CiAdrPcode tag in ContactInfo struct instead. sub-key Creator Contact Info: local " |
1409 | | "postal code.")}, |
1410 | | {"CiAdrCtry", N_("Contact Info-Country (deprecated)"), "Text", xmpText, xmpExternal, |
1411 | | N_("Deprecated, use the CiAdrCtry tag in ContactInfo struct instead. sub-key Creator Contact Info: country.")}, |
1412 | | {"CiEmailWork", N_("Contact Info-Email (deprecated)"), "Text", xmpText, xmpExternal, |
1413 | | N_("Deprecated, use the CiEmailWork tag in ContactInfo struct instead. sub-key Creator Contact Info: email " |
1414 | | "address.")}, |
1415 | | {"CiTelWork", N_("Contact Info-Phone (deprecated)"), "Text", xmpText, xmpExternal, |
1416 | | N_("Deprecated, use the CiTelWork tag in ContactInfo struct instead. sub-key Creator Contact Info: phone " |
1417 | | "number.")}, |
1418 | | {"CiUrlWork", N_("Contact Info-Web URL (deprecated)"), "Text", xmpText, xmpExternal, |
1419 | | N_("Deprecated, use the CiUrlWork tag in ContactInfo struct instead. sub-key Creator Contact Info: web " |
1420 | | "address.")}, |
1421 | | {"ExtDescrAccessibility", N_("Extended Description (Accessibility)"), "Lang Alt", langAlt, xmpExternal, |
1422 | | N_("A more detailed textual description of the purpose and meaning of an image that elaborates on the " |
1423 | | "information provided by the Alt Text (Accessibility) property. This property does not have a " |
1424 | | "character limitation and is not required if the Alt Text (Accessibility) field sufficiently describes the " |
1425 | | "image.")}, |
1426 | | {"IntellectualGenre", N_("Intellectual Genre"), "Text", xmpText, xmpExternal, |
1427 | | N_("Describes the nature, intellectual, artistic or journalistic characteristic of an image.")}, |
1428 | | {"Scene", N_("IPTC Scene Code"), "bag closed Choice of Text", xmpBag, xmpExternal, |
1429 | | N_("Describes the scene of a photo content. Specifies one or more terms from the IPTC " |
1430 | | "\"Scene-NewsCodes\". Each Scene is represented as a string of 6 digits in an unordered list.")}, |
1431 | | {"SubjectCode", N_("IPTC Subject Code"), "bag closed Choice of Text", xmpBag, xmpExternal, |
1432 | | N_("Specifies one or more Subjects from the IPTC \"Subject-NewsCodes\" taxonomy to " |
1433 | | "categorize the image. Each Subject is represented as a string of 8 digits in an unordered list.")}, |
1434 | | {"Location", N_("Sublocation (legacy)"), "Text", xmpText, xmpExternal, |
1435 | | N_("(legacy) Exact name of the sublocation shown in the image. This sublocation name could either be the name " |
1436 | | "of a sublocation to a city or the name of a well known location or (natural) monument " |
1437 | | "outside a city. In the sense of a sublocation to a city this element is at the fourth " |
1438 | | "level of a top-down geographical hierarchy.")}, |
1439 | | {"CountryCode", N_("Country Code (legacy)"), "closed Choice of Text", xmpText, xmpExternal, |
1440 | | N_("(legacy) Code of the country of the location shown in the image. This element is at the top/first level " |
1441 | | "of " |
1442 | | "a top-down geographical hierarchy. The code should be taken from ISO 3166 two or three " |
1443 | | "letter code. The full name of a country should go in the \"Country\" element.")}, |
1444 | | // End of list marker |
1445 | | {nullptr, nullptr, nullptr, invalidTypeId, xmpInternal, nullptr}, |
1446 | | }; |
1447 | | |
1448 | | const XmpPropertyInfo xmpIptcExtInfo[] = { |
1449 | | {"AddlModelInfo", N_("Additional model information"), "Text", xmpText, xmpExternal, |
1450 | | N_("Information about the ethnicity and other facets of the model(s) in a model-released image.")}, |
1451 | | {"OrganisationInImageCode", N_("Code of featured Organisation"), "bag Text", xmpBag, xmpExternal, |
1452 | | N_("Code from a controlled vocabulary for identifying the organisation or company which is featured in the " |
1453 | | "image.")}, |
1454 | | {"AboutCvTerm", N_("CV-Term About Image"), "bag CVTerm", xmpBag, xmpExternal, |
1455 | | N_("One or more topics, themes or entities the content is about, each one expressed by a term from a " |
1456 | | "Controlled Vocabulary.")}, |
1457 | | {"CVterm", N_("Controlled Vocabulary Term"), "bag URI", xmpBag, xmpExternal, |
1458 | | N_("A term to describe the content of the image by a value from a Controlled Vocabulary.")}, |
1459 | | {"ModelAge", N_("Model age"), "bag Integer", xmpBag, xmpExternal, |
1460 | | N_("Age of the human model(s) at the time this image was taken in a model released image.")}, |
1461 | | {"OrganisationInImageName", N_("Name of featured Organisation"), "bag Text", xmpBag, xmpExternal, |
1462 | | N_("Name of the organisation or company which is featured in the image.")}, |
1463 | | {"PersonInImage", N_("Person shown"), "bag Text", xmpBag, xmpExternal, N_("Name of a person shown in the image.")}, |
1464 | | {"PersonInImageWDetails", N_("Person Shown (Details)"), "bag Person", xmpBag, xmpExternal, |
1465 | | N_("Details about a person the content is about.")}, |
1466 | | {"ProductInImage", N_("Product Shown"), "bag Product", xmpBag, xmpExternal, N_("A product the content is about.")}, |
1467 | | {"PropertyReleaseID", N_("Property Release Id"), "bag Text", xmpBag, xmpExternal, |
1468 | | N_("Optional identifier associated with each Property Release.")}, |
1469 | | {"DigImageGUID", N_("Digital Image Identifier"), "Text", xmpText, xmpInternal, |
1470 | | N_("Globally unique identifier for this digital image. It is created and applied by the creator of the " |
1471 | | "digital image at the time of its creation. This value shall not be changed after that time.")}, |
1472 | | {"DigitalSourcefileType", N_("Physical type of original photo (deprecated)"), "URI", xmpText, xmpExternal, |
1473 | | N_("Deprecated, use the DigitalSourceType tag instead. The type of the source digital file.")}, |
1474 | | {"DigitalSourceType", N_("Digital Source Type"), "URI", xmpText, xmpExternal, |
1475 | | N_("The type of the source of this digital image.")}, |
1476 | | {"Event", N_("Event Name"), "Lang Alt", langAlt, xmpExternal, |
1477 | | N_("Names or describes the specific event at which the photo was taken.")}, |
1478 | | {"EventId", N_("Event Identifier"), "bag Text", xmpBag, xmpExternal, |
1479 | | N_("Identifier(s) of the specific event at which the photo was taken.")}, |
1480 | | {"EmbdEncRightsExpr", N_("Embedded Encoded Rights Expression"), "bag EERE", xmpBag, xmpInternal, |
1481 | | N_("An embedded rights expression using any rights expression language.")}, |
1482 | | {"Genre", N_("Genre"), "bag CVTerm", xmpBag, xmpExternal, |
1483 | | N_("Artistic, style, journalistic, product or other genre(s) of the image (expressed by a term " |
1484 | | "from any Controlled Vocabulary).")}, |
1485 | | {"ImageRegion", N_("Image Region(s)"), "bag ImageRegion", xmpBag, xmpExternal, |
1486 | | N_("Sets a region inside an image by defining its boundaries. All pixels of the boundary are " |
1487 | | "also part of the region. It may include metadata related to this region.")}, |
1488 | | {"LinkedEncRightsExpr", N_("Linked Encoded Rights Expression"), "bag LERE", xmpBag, xmpExternal, |
1489 | | N_("A linked rights expression using any rights expression language.")}, |
1490 | | {"MaxAvailHeight", N_("Maximum available height"), "Integer", xmpText, xmpExternal, |
1491 | | N_("The maximum available height in pixels of the original photo from which this photo has been derived by " |
1492 | | "downsizing.")}, |
1493 | | {"MaxAvailWidth", N_("Maximum available width"), "Integer", xmpText, xmpExternal, |
1494 | | N_("The maximum available width in pixels of the original photo from which this photo has been derived by " |
1495 | | "downsizing.")}, |
1496 | | {"RegistryId", N_("Registry Entry"), "bag RegistryEntryDetails", xmpBag, xmpExternal, |
1497 | | N_("Both a Registry Item Id and a Registry Organisation Id to record any registration of this digital image " |
1498 | | "with a registry.")}, |
1499 | | {"RegItemId", N_("Registry Entry-Item Identifier (deprecated)"), "Text", xmpText, xmpExternal, |
1500 | | N_("Deprecated, use the RegItemId tag in Product struct instead. A unique identifier created by a registry " |
1501 | | "and applied by the creator of the digital image. This value shall not be changed after being applied. " |
1502 | | "This identifier is linked to a corresponding Registry Organisation Identifier.")}, |
1503 | | {"RegOrgId", N_("Registry Entry-Organisation Identifier (deprecated)"), "Text", xmpText, xmpExternal, |
1504 | | N_("Deprecated, use the RegOrgId tag in RegistryEntryDetails struct instead. An identifier for the registry " |
1505 | | "which issued the corresponding Registry Image Id.")}, |
1506 | | {"IptcLastEdited", N_("IPTC Fields Last Edited"), "Date", xmpText, xmpExternal, |
1507 | | N_("The date and optionally time when any of the IPTC photo metadata fields has been last edited.")}, |
1508 | | {"LocationShown", N_("Location Shown"), "bag LocationDetails", xmpBag, xmpExternal, |
1509 | | N_("A location shown in the image.")}, |
1510 | | {"LocationCreated", N_("Location Created"), "bag LocationDetails", xmpBag, xmpExternal, |
1511 | | N_("The location the photo was taken.")}, |
1512 | | {"City", N_("Location-City (deprecated)"), "Text", xmpText, xmpExternal, |
1513 | | N_("Deprecated, use the City tag in LocationDetails struct instead. Name of the city of a location.")}, |
1514 | | {"CountryCode", N_("Location-Country ISO-Code (deprecated)"), "Text", xmpText, xmpExternal, |
1515 | | N_("Deprecated, use the CountryCode tag in LocationDetails struct instead. The ISO code of a country of a " |
1516 | | "location.")}, |
1517 | | {"CountryName", N_("Location-Country Name (deprecated)"), "Text", xmpText, xmpExternal, |
1518 | | N_("Deprecated, use the CountryName tag in LocationDetails struct instead. The name of a country of a " |
1519 | | "location.")}, |
1520 | | {"ProvinceState", N_("Location-Province/State (deprecated)"), "Text", xmpText, xmpExternal, |
1521 | | N_("Deprecated, use the ProvinceState tag in LocationDetails struct instead. The name of a subregion of a " |
1522 | | "country - a province or state - of a location.")}, |
1523 | | {"Sublocation", N_("Location-Sublocation (deprecated)"), "Text", xmpText, xmpExternal, |
1524 | | N_("Deprecated, use the City tag in LocationDetails struct instead. Name of a sublocation. This sublocation " |
1525 | | "name could either be the name of a sublocation to a city or the name of a well known location or " |
1526 | | "(natural) monument outside a city.")}, |
1527 | | {"WorldRegion", N_("Location-World Region (deprecated)"), "Text", xmpText, xmpExternal, |
1528 | | N_("Deprecated, use the WorldRegion tag in LocationDetails struct instead. The name of a world region of a " |
1529 | | "location.")}, |
1530 | | {"ArtworkOrObject", N_("Artwork or object in the image"), "bag ArtworkOrObjectDetails", xmpBag, xmpExternal, |
1531 | | N_("A set of metadata about artwork or an object in the image.")}, |
1532 | | {"AOCopyrightNotice", N_("Artwork or object-Copyright notice (deprecated)"), "Text", xmpText, xmpExternal, |
1533 | | N_("Deprecated, use the AOCopyrightNotice tag in ArtworkOrObjectDetails struct instead. Contains any " |
1534 | | "necessary copyright notice for claiming the intellectual property for artwork or an object in the image " |
1535 | | "and should identify the current owner of the copyright of this work with associated intellectual property " |
1536 | | "rights.")}, |
1537 | | {"AOCreator", N_("Artwork or object-Creator (deprecated)"), "seq ProperName", xmpSeq, xmpExternal, |
1538 | | N_("Deprecated, use the AOCreator tag in ArtworkOrObjectDetails struct instead. Contains the name of the " |
1539 | | "artist who has created artwork or an object in the image. In cases where the artist could or should not " |
1540 | | "be identified the name of a company or organisation may be appropriate.")}, |
1541 | | {"AODateCreated", N_("Artwork or object-Date Created (deprecated)"), "Date", xmpText, xmpExternal, |
1542 | | N_("Deprecated, use the AODateCreated tag in ArtworkOrObjectDetails struct instead. Designates the date and " |
1543 | | "optionally the time the artwork or object in the image was created. This relates to artwork or objects " |
1544 | | "with associated intellectual property rights.")}, |
1545 | | {"AOSource", N_("Artwork or object-Source (deprecated)"), "Text", xmpText, xmpExternal, |
1546 | | N_("Deprecated, use the AOSource tag in ArtworkOrObjectDetails struct instead. The organisation or body " |
1547 | | "holding and registering the artwork or object in the image for inventory purposes.")}, |
1548 | | {"AOSourceInvNo", N_("Artwork or object-Source inventory number (deprecated)"), "Text", xmpText, xmpExternal, |
1549 | | N_("Deprecated, use the AOSourceInvNo tag in ArtworkOrObjectDetails struct instead. The inventory number " |
1550 | | "issued by the organisation or body holding and registering the artwork or object in the image.")}, |
1551 | | {"AOTitle", N_("Artwork or object-Title (deprecated)"), "Lang Alt", langAlt, xmpExternal, |
1552 | | N_("Deprecated, use the AOTitle tag in ArtworkOrObjectDetails struct instead. A reference for the artwork or " |
1553 | | "object in the image.")}, |
1554 | | // End of list marker |
1555 | | {nullptr, nullptr, nullptr, invalidTypeId, xmpInternal, nullptr}, |
1556 | | }; |
1557 | | |
1558 | | //! XMP Iptc4xmpCore:Scene |
1559 | | // Source: http://cv.iptc.org/newscodes/scene/ |
1560 | | constexpr TagVocabulary iptcScene[] = { |
1561 | | {"010100", N_("Headshot")}, {"010200", N_("Half-length")}, |
1562 | | {"010300", N_("Full-length")}, {"010400", N_("Profile")}, |
1563 | | {"010500", N_("rear view")}, {"010600", N_("Single")}, |
1564 | | {"010700", N_("Couple")}, {"010800", N_("Two")}, |
1565 | | {"010900", N_("Group")}, {"011000", N_("General view")}, |
1566 | | {"011100", N_("Panoramic view")}, {"011200", N_("Aerial view")}, |
1567 | | {"011300", N_("Under-water")}, {"011400", N_("Night scene")}, |
1568 | | {"011500", N_("Satellite")}, {"011600", N_("Exterior view")}, |
1569 | | {"011700", N_("Interior view")}, {"011800", N_("Close-up")}, |
1570 | | {"011900", N_("Action")}, {"012000", N_("Performing")}, |
1571 | | {"012100", N_("Posing")}, {"012200", N_("Symbolic")}, |
1572 | | {"012300", N_("Off-beat")}, {"012400", N_("Movie scene")}, |
1573 | | }; |
1574 | | |
1575 | | //! XMP Iptc4xmpCore:SubjectCode |
1576 | | // Source: https://cv.iptc.org/newscodes/subjectcode/ |
1577 | | constexpr TagVocabulary iptcSubjectCode[] = { |
1578 | | {"01000000", "arts, culture and entertainment"}, |
1579 | | {"01001000", "archaeology"}, |
1580 | | {"01002000", "architecture"}, |
1581 | | {"01003000", "bullfighting"}, |
1582 | | {"01004000", "festive event (including carnival)"}, |
1583 | | {"01005000", "cinema"}, |
1584 | | {"01005001", "film festival"}, |
1585 | | {"01006000", "dance"}, |
1586 | | {"01007000", "fashion"}, |
1587 | | {"01007001", "jewelry"}, |
1588 | | {"01008000", "language"}, |
1589 | | {"01009000", "library and museum"}, |
1590 | | {"01010000", "literature"}, |
1591 | | {"01010001", "fiction"}, |
1592 | | {"01010002", "poetry"}, |
1593 | | {"01011000", "music"}, |
1594 | | {"01011001", "classical music"}, |
1595 | | {"01011002", "folk music"}, |
1596 | | {"01011003", "jazz music"}, |
1597 | | {"01011004", "popular music"}, |
1598 | | {"01011005", "country music"}, |
1599 | | {"01011006", "rock and roll music"}, |
1600 | | {"01011007", "hip-hop"}, |
1601 | | {"01012000", "painting"}, |
1602 | | {"01013000", "photography"}, |
1603 | | {"01014000", "radio"}, |
1604 | | {"01015000", "sculpture"}, |
1605 | | {"01015001", "plastic art"}, |
1606 | | {"01016000", "television"}, |
1607 | | {"01016001", "soap opera"}, |
1608 | | {"01017000", "theatre"}, |
1609 | | {"01017001", "music theatre"}, |
1610 | | {"01018000", "monument and heritage site"}, |
1611 | | {"01018001", "institution-DEPRECATED"}, |
1612 | | {"01019000", "customs and tradition"}, |
1613 | | {"01020000", "arts (general)"}, |
1614 | | {"01021000", "entertainment (general)"}, |
1615 | | {"01021001", "entertainment award"}, |
1616 | | {"01022000", "culture (general)"}, |
1617 | | {"01022001", "cultural development"}, |
1618 | | {"01023000", "nightclub"}, |
1619 | | {"01024000", "cartoon"}, |
1620 | | {"01025000", "animation"}, |
1621 | | {"01026000", "mass media"}, |
1622 | | {"01026001", "periodicals"}, |
1623 | | {"01026002", "news media"}, |
1624 | | {"01026003", "newspapers"}, |
1625 | | {"01026004", "reviews"}, |
1626 | | {"01027000", "internet"}, |
1627 | | {"01028000", "history"}, |
1628 | | {"02000000", "crime, law and justice"}, |
1629 | | {"02001000", "crime"}, |
1630 | | {"02001001", "homicide"}, |
1631 | | {"02001002", "computer crime"}, |
1632 | | {"02001003", "theft"}, |
1633 | | {"02001004", "drug trafficking"}, |
1634 | | {"02001005", "sexual assault"}, |
1635 | | {"02001006", "assault (general)"}, |
1636 | | {"02001007", "kidnapping"}, |
1637 | | {"02001008", "arson"}, |
1638 | | {"02001009", "gang activity"}, |
1639 | | {"02001010", "terrorism"}, |
1640 | | {"02002000", "judiciary (system of justice)"}, |
1641 | | {"02002001", "lawyer"}, |
1642 | | {"02002002", "judge"}, |
1643 | | {"02002003", "court administration"}, |
1644 | | {"02003000", "police"}, |
1645 | | {"02003001", "law enforcement"}, |
1646 | | {"02003002", "investigation"}, |
1647 | | {"02003003", "arrest"}, |
1648 | | {"02004000", "punishment"}, |
1649 | | {"02004001", "fine"}, |
1650 | | {"02004002", "execution"}, |
1651 | | {"02005000", "prison"}, |
1652 | | {"02006000", "laws"}, |
1653 | | {"02006001", "criminal"}, |
1654 | | {"02006002", "civil"}, |
1655 | | {"02007000", "justice and rights"}, |
1656 | | {"02007001", "civil rights"}, |
1657 | | {"02008000", "trials"}, |
1658 | | {"02008001", "litigation"}, |
1659 | | {"02008002", "arbitration"}, |
1660 | | {"02008003", "court preliminary"}, |
1661 | | {"02009000", "prosecution"}, |
1662 | | {"02009001", "defendant"}, |
1663 | | {"02009002", "witness"}, |
1664 | | {"02010000", "organized crime"}, |
1665 | | {"02011000", "international law"}, |
1666 | | {"02011001", "international court or tribunal"}, |
1667 | | {"02011002", "extradition"}, |
1668 | | {"02012000", "corporate crime"}, |
1669 | | {"02012001", "fraud"}, |
1670 | | {"02012002", "embezzlement"}, |
1671 | | {"02012003", "restraint of trade"}, |
1672 | | {"02012004", "breach of contract"}, |
1673 | | {"02012005", "anti-trust crime"}, |
1674 | | {"02012006", "corruption"}, |
1675 | | {"02012007", "bribery"}, |
1676 | | {"02013000", "war crime"}, |
1677 | | {"02014000", "inquest"}, |
1678 | | {"02015000", "inquiry"}, |
1679 | | {"02016000", "tribunal"}, |
1680 | | {"03000000", "disaster and accident"}, |
1681 | | {"03001000", "drought"}, |
1682 | | {"03002000", "earthquake"}, |
1683 | | {"03003000", "famine"}, |
1684 | | {"03004000", "fire"}, |
1685 | | {"03005000", "flood"}, |
1686 | | {"03006000", "industrial accident"}, |
1687 | | {"03006001", "structural failures"}, |
1688 | | {"03007000", "meteorological disaster"}, |
1689 | | {"03007001", "windstorms"}, |
1690 | | {"03008000", "nuclear accident"}, |
1691 | | {"03009000", "pollution"}, |
1692 | | {"03010000", "transport accident"}, |
1693 | | {"03010001", "road accident"}, |
1694 | | {"03010002", "railway accident"}, |
1695 | | {"03010003", "air and space accident"}, |
1696 | | {"03010004", "maritime accident"}, |
1697 | | {"03011000", "volcanic eruption"}, |
1698 | | {"03012000", "relief and aid organisation"}, |
1699 | | {"03013000", "accident (general)"}, |
1700 | | {"03014000", "emergency incident"}, |
1701 | | {"03014001", "explosion"}, |
1702 | | {"03015000", "disaster (general)"}, |
1703 | | {"03015001", "natural disasters"}, |
1704 | | {"03015002", "avalanche/landslide"}, |
1705 | | {"03016000", "emergency planning"}, |
1706 | | {"03017000", "rescue"}, |
1707 | | {"04000000", "economy, business and finance"}, |
1708 | | {"04001000", "agriculture"}, |
1709 | | {"04001001", "arable farming"}, |
1710 | | {"04001002", "fishing industry"}, |
1711 | | {"04001003", "forestry and timber"}, |
1712 | | {"04001004", "livestock farming"}, |
1713 | | {"04001005", "viniculture"}, |
1714 | | {"04001006", "aquaculture"}, |
1715 | | {"04002000", "chemicals"}, |
1716 | | {"04002001", "biotechnology"}, |
1717 | | {"04002002", "fertiliser"}, |
1718 | | {"04002003", "health and beauty product"}, |
1719 | | {"04002004", "inorganic chemical"}, |
1720 | | {"04002005", "organic chemical"}, |
1721 | | {"04002006", "pharmaceutical"}, |
1722 | | {"04002007", "synthetic and plastic"}, |
1723 | | {"04003000", "computing and information technology"}, |
1724 | | {"04003001", "hardware"}, |
1725 | | {"04003002", "networking"}, |
1726 | | {"04003003", "satellite technology"}, |
1727 | | {"04003004", "semiconductors and active components"}, |
1728 | | {"04003005", "software"}, |
1729 | | {"04003006", "telecommunication equipment"}, |
1730 | | {"04003007", "telecommunication service"}, |
1731 | | {"04003008", "security"}, |
1732 | | {"04003009", "wireless technology"}, |
1733 | | {"04004000", "construction and property"}, |
1734 | | {"04004001", "heavy construction"}, |
1735 | | {"04004002", "house building"}, |
1736 | | {"04004003", "real estate"}, |
1737 | | {"04004004", "farms"}, |
1738 | | {"04004005", "land price"}, |
1739 | | {"04004006", "renovation"}, |
1740 | | {"04004007", "design and engineering"}, |
1741 | | {"04005000", "energy and resource"}, |
1742 | | {"04005001", "alternative energy"}, |
1743 | | {"04005002", "coal"}, |
1744 | | {"04005003", "oil and gas - downstream activities"}, |
1745 | | {"04005004", "oil and gas - upstream activities"}, |
1746 | | {"04005005", "nuclear power"}, |
1747 | | {"04005006", "electricity production and distribution"}, |
1748 | | {"04005007", "waste management and pollution control"}, |
1749 | | {"04005008", "water supply"}, |
1750 | | {"04005009", "natural resources (general)"}, |
1751 | | {"04005010", "energy (general)"}, |
1752 | | {"04005011", "natural gas"}, |
1753 | | {"04005012", "petrol"}, |
1754 | | {"04005013", "diesel fuel"}, |
1755 | | {"04005014", "kerosene/paraffin"}, |
1756 | | {"04006000", "financial and business service"}, |
1757 | | {"04006001", "accountancy and auditing"}, |
1758 | | {"04006002", "banking"}, |
1759 | | {"04006003", "consultancy service"}, |
1760 | | {"04006004", "employment agency"}, |
1761 | | {"04006005", "healthcare provider"}, |
1762 | | {"04006006", "insurance"}, |
1763 | | {"04006007", "legal service"}, |
1764 | | {"04006008", "market research"}, |
1765 | | {"04006009", "stock broking"}, |
1766 | | {"04006010", "personal investing"}, |
1767 | | {"04006011", "market trend"}, |
1768 | | {"04006012", "shipping service"}, |
1769 | | {"04006013", "personal service"}, |
1770 | | {"04006014", "janitorial service"}, |
1771 | | {"04006015", "funeral parlour and crematorium"}, |
1772 | | {"04006016", "rental service"}, |
1773 | | {"04006017", "wedding service"}, |
1774 | | {"04006018", "personal finance"}, |
1775 | | {"04006019", "personal income"}, |
1776 | | {"04006020", "auction service"}, |
1777 | | {"04006021", "printing/promotional service"}, |
1778 | | {"04006022", "investment service"}, |
1779 | | {"04007000", "consumer goods"}, |
1780 | | {"04007001", "clothing"}, |
1781 | | {"04007002", "department store"}, |
1782 | | {"04007003", "food"}, |
1783 | | {"04007004", "mail order"}, |
1784 | | {"04007005", "retail"}, |
1785 | | {"04007006", "speciality store"}, |
1786 | | {"04007007", "wholesale"}, |
1787 | | {"04007008", "beverage"}, |
1788 | | {"04007009", "electronic commerce"}, |
1789 | | {"04007010", "luxury good"}, |
1790 | | {"04007011", "non-durable good"}, |
1791 | | {"04007012", "toy"}, |
1792 | | {"04008000", "macro economics"}, |
1793 | | {"04008001", "central bank"}, |
1794 | | {"04008002", "consumer issue"}, |
1795 | | {"04008003", "debt market"}, |
1796 | | {"04008004", "economic indicator"}, |
1797 | | {"04008005", "emerging market"}, |
1798 | | {"04008006", "foreign exchange market"}, |
1799 | | {"04008007", "government aid"}, |
1800 | | {"04008008", "government debt"}, |
1801 | | {"04008009", "interest rate"}, |
1802 | | {"04008010", "international economic institution"}, |
1803 | | {"04008011", "international (foreign) trade"}, |
1804 | | {"04008012", "loan market"}, |
1805 | | {"04008013", "economic organization"}, |
1806 | | {"04008014", "consumer confidence"}, |
1807 | | {"04008015", "trade dispute"}, |
1808 | | {"04008016", "inflation and deflation"}, |
1809 | | {"04008017", "prices"}, |
1810 | | {"04008018", "currency values"}, |
1811 | | {"04008019", "budgets and budgeting"}, |
1812 | | {"04008020", "credit and debt"}, |
1813 | | {"04008021", "loans"}, |
1814 | | {"04008022", "mortgages"}, |
1815 | | {"04008023", "financial markets"}, |
1816 | | {"04008024", "commodity markets"}, |
1817 | | {"04008025", "investments"}, |
1818 | | {"04008026", "stocks"}, |
1819 | | {"04008027", "bonds"}, |
1820 | | {"04008028", "mutual funds"}, |
1821 | | {"04008029", "derivative securities"}, |
1822 | | {"04008030", "imports"}, |
1823 | | {"04008031", "exports"}, |
1824 | | {"04008032", "trade agreements"}, |
1825 | | {"04008033", "trade policy"}, |
1826 | | {"04008034", "business enterprises"}, |
1827 | | {"04008035", "tariff"}, |
1828 | | {"04008036", "trade balance"}, |
1829 | | {"04009000", "market and exchange"}, |
1830 | | {"04009001", "energy"}, |
1831 | | {"04009002", "metal"}, |
1832 | | {"04009003", "securities"}, |
1833 | | {"04009004", "soft commodity"}, |
1834 | | {"04010000", "media"}, |
1835 | | {"04010001", "advertising"}, |
1836 | | {"04010002", "book"}, |
1837 | | {"04010003", "cinema industry"}, |
1838 | | {"04010004", "news agency"}, |
1839 | | {"04010005", "newspaper and magazine"}, |
1840 | | {"04010006", "online"}, |
1841 | | {"04010007", "public relation"}, |
1842 | | {"04010008", "radio industry"}, |
1843 | | {"04010009", "satellite and cable service"}, |
1844 | | {"04010010", "television industry"}, |
1845 | | {"04010011", "music industry"}, |
1846 | | {"04011000", "manufacturing and engineering"}, |
1847 | | {"04011001", "aerospace"}, |
1848 | | {"04011002", "automotive equipment"}, |
1849 | | {"04011003", "defence equipment"}, |
1850 | | {"04011004", "electrical appliance"}, |
1851 | | {"04011005", "heavy engineering"}, |
1852 | | {"04011006", "industrial component"}, |
1853 | | {"04011007", "instrument engineering"}, |
1854 | | {"04011008", "shipbuilding"}, |
1855 | | {"04011009", "machine manufacturing"}, |
1856 | | {"04012000", "metal and mineral"}, |
1857 | | {"04012001", "building material"}, |
1858 | | {"04012002", "gold and precious material"}, |
1859 | | {"04012003", "iron and steel"}, |
1860 | | {"04012004", "non ferrous metal"}, |
1861 | | {"04012005", "mining"}, |
1862 | | {"04013000", "process industry"}, |
1863 | | {"04013001", "distiller and brewer"}, |
1864 | | {"04013002", "food"}, |
1865 | | {"04013003", "furnishings and furniture"}, |
1866 | | {"04013004", "paper and packaging product"}, |
1867 | | {"04013005", "rubber product"}, |
1868 | | {"04013006", "soft drinks"}, |
1869 | | {"04013007", "textile and clothing"}, |
1870 | | {"04013008", "tobacco"}, |
1871 | | {"04014000", "tourism and leisure"}, |
1872 | | {"04014001", "casino and gambling"}, |
1873 | | {"04014002", "hotel and accommodation"}, |
1874 | | {"04014003", "recreational and sporting goods"}, |
1875 | | {"04014004", "restaurant and catering"}, |
1876 | | {"04014005", "tour operator"}, |
1877 | | {"04015000", "transport"}, |
1878 | | {"04015001", "air transport"}, |
1879 | | {"04015002", "railway"}, |
1880 | | {"04015003", "road transport"}, |
1881 | | {"04015004", "waterway and maritime transport"}, |
1882 | | {"04016000", "company information"}, |
1883 | | {"04016001", "accounting and audit"}, |
1884 | | {"04016002", "annual and special corporate meeting"}, |
1885 | | {"04016003", "annual report"}, |
1886 | | {"04016004", "antitrust issue"}, |
1887 | | {"04016005", "merger, acquisition and takeover"}, |
1888 | | {"04016006", "analysts' comment"}, |
1889 | | {"04016007", "bankruptcy"}, |
1890 | | {"04016008", "board of directors (appointment and change)"}, |
1891 | | {"04016009", "buyback"}, |
1892 | | {"04016010", "C.E.O. interview"}, |
1893 | | {"04016011", "corporate officer"}, |
1894 | | {"04016012", "corporate profile"}, |
1895 | | {"04016013", "contract"}, |
1896 | | {"04016014", "defence contract"}, |
1897 | | {"04016015", "dividend announcement"}, |
1898 | | {"04016016", "earnings forecast"}, |
1899 | | {"04016017", "financially distressed company"}, |
1900 | | {"04016018", "earnings"}, |
1901 | | {"04016019", "financing and stock offering"}, |
1902 | | {"04016020", "government contract"}, |
1903 | | {"04016021", "global expansion"}, |
1904 | | {"04016022", "insider trading"}, |
1905 | | {"04016023", "joint venture"}, |
1906 | | {"04016024", "leveraged buyout"}, |
1907 | | {"04016025", "layoffs and downsizing"}, |
1908 | | {"04016026", "licensing agreement"}, |
1909 | | {"04016027", "litigation and regulation"}, |
1910 | | {"04016028", "management change"}, |
1911 | | {"04016029", "marketing"}, |
1912 | | {"04016030", "new product"}, |
1913 | | {"04016031", "patent, copyright and trademark"}, |
1914 | | {"04016032", "plant closing"}, |
1915 | | {"04016033", "plant opening"}, |
1916 | | {"04016034", "privatisation"}, |
1917 | | {"04016035", "proxy filing"}, |
1918 | | {"04016036", "rating"}, |
1919 | | {"04016037", "research and development"}, |
1920 | | {"04016038", "quarterly or semiannual financial statement"}, |
1921 | | {"04016039", "restructuring and recapitalisation"}, |
1922 | | {"04016040", "spin-off"}, |
1923 | | {"04016041", "stock activity"}, |
1924 | | {"04016042", "industrial production"}, |
1925 | | {"04016043", "productivity"}, |
1926 | | {"04016044", "inventories"}, |
1927 | | {"04016045", "sales"}, |
1928 | | {"04016046", "corporations"}, |
1929 | | {"04016047", "shareholders"}, |
1930 | | {"04016048", "corporate performance"}, |
1931 | | {"04016049", "losses"}, |
1932 | | {"04016050", "credit ratings"}, |
1933 | | {"04016051", "stock splits"}, |
1934 | | {"04016052", "stock options"}, |
1935 | | {"04016053", "recalls (products)"}, |
1936 | | {"04016054", "globalization"}, |
1937 | | {"04016055", "consumers"}, |
1938 | | {"04016056", "purchase"}, |
1939 | | {"04016057", "new service"}, |
1940 | | {"04017000", "economy (general)"}, |
1941 | | {"04017001", "economic policy"}, |
1942 | | {"04018000", "business (general)"}, |
1943 | | {"04018001", "institution"}, |
1944 | | {"04019000", "finance (general)"}, |
1945 | | {"04019001", "money and monetary policy"}, |
1946 | | {"05000000", "education"}, |
1947 | | {"05001000", "adult education"}, |
1948 | | {"05002000", "further education"}, |
1949 | | {"05003000", "parent organisation"}, |
1950 | | {"05004000", "preschool"}, |
1951 | | {"05005000", "school"}, |
1952 | | {"05005001", "elementary schools"}, |
1953 | | {"05005002", "middle schools"}, |
1954 | | {"05005003", "high schools"}, |
1955 | | {"05006000", "teachers union"}, |
1956 | | {"05007000", "university"}, |
1957 | | {"05008000", "upbringing"}, |
1958 | | {"05009000", "entrance examination"}, |
1959 | | {"05010000", "teaching and learning"}, |
1960 | | {"05010001", "students"}, |
1961 | | {"05010002", "teachers"}, |
1962 | | {"05010003", "curriculum"}, |
1963 | | {"05010004", "test/examination"}, |
1964 | | {"05011000", "religious education"}, |
1965 | | {"05011001", "parochial school"}, |
1966 | | {"05011002", "seminary"}, |
1967 | | {"05011003", "yeshiva"}, |
1968 | | {"05011004", "madrasa"}, |
1969 | | {"06000000", "environmental issue"}, |
1970 | | {"06001000", "renewable energy"}, |
1971 | | {"06002000", "conservation"}, |
1972 | | {"06002001", "endangered species"}, |
1973 | | {"06002002", "ecosystem"}, |
1974 | | {"06003000", "energy saving"}, |
1975 | | {"06004000", "environmental politics"}, |
1976 | | {"06005000", "environmental pollution"}, |
1977 | | {"06005001", "air pollution"}, |
1978 | | {"06005002", "water pollution"}, |
1979 | | {"06006000", "natural resources"}, |
1980 | | {"06006001", "land resources"}, |
1981 | | {"06006002", "parks"}, |
1982 | | {"06006003", "forests"}, |
1983 | | {"06006004", "wetlands"}, |
1984 | | {"06006005", "mountains"}, |
1985 | | {"06006006", "rivers"}, |
1986 | | {"06006007", "oceans"}, |
1987 | | {"06006008", "wildlife"}, |
1988 | | {"06006009", "energy resources"}, |
1989 | | {"06007000", "nature"}, |
1990 | | {"06007001", "invasive species"}, |
1991 | | {"06008000", "population"}, |
1992 | | {"06009000", "waste"}, |
1993 | | {"06010000", "water"}, |
1994 | | {"06011000", "global warming"}, |
1995 | | {"06012000", "hazardous materials"}, |
1996 | | {"06013000", "environmental cleanup"}, |
1997 | | {"07000000", "health"}, |
1998 | | {"07001000", "disease"}, |
1999 | | {"07001001", "communicable diseases"}, |
2000 | | {"07001002", "virus diseases"}, |
2001 | | {"07001003", "AIDS"}, |
2002 | | {"07001004", "cancer"}, |
2003 | | {"07001005", "heart disease"}, |
2004 | | {"07001006", "alzheimer's disease"}, |
2005 | | {"07001007", "animal diseases"}, |
2006 | | {"07001008", "plant diseases"}, |
2007 | | {"07001009", "retrovirus"}, |
2008 | | {"07002000", "epidemic and plague"}, |
2009 | | {"07003000", "health treatment"}, |
2010 | | {"07003001", "prescription drugs"}, |
2011 | | {"07003002", "dietary supplements"}, |
2012 | | {"07003003", "diet"}, |
2013 | | {"07003004", "medical procedure/test"}, |
2014 | | {"07003005", "therapy"}, |
2015 | | {"07004000", "health organisations"}, |
2016 | | {"07005000", "medical research"}, |
2017 | | {"07006000", "medical staff"}, |
2018 | | {"07006001", "primary care physician"}, |
2019 | | {"07006002", "health-workers union"}, |
2020 | | {"07007000", "medicine"}, |
2021 | | {"07007001", "herbal"}, |
2022 | | {"07007002", "holistic"}, |
2023 | | {"07007003", "western"}, |
2024 | | {"07007004", "traditional Chinese"}, |
2025 | | {"07008000", "preventative medicine"}, |
2026 | | {"07008001", "vaccines"}, |
2027 | | {"07009000", "injury"}, |
2028 | | {"07010000", "hospital and clinic"}, |
2029 | | {"07011000", "government health care"}, |
2030 | | {"07011001", "medicare"}, |
2031 | | {"07011002", "medicaid"}, |
2032 | | {"07012000", "private health care"}, |
2033 | | {"07013000", "healthcare policy"}, |
2034 | | {"07013001", "food safety"}, |
2035 | | {"07014000", "medical specialisation"}, |
2036 | | {"07014001", "geriatric"}, |
2037 | | {"07014002", "pediatrics"}, |
2038 | | {"07014003", "reproduction"}, |
2039 | | {"07014004", "genetics"}, |
2040 | | {"07014005", "obstetrics/gynecology"}, |
2041 | | {"07015000", "medical service"}, |
2042 | | {"07016000", "physical fitness"}, |
2043 | | {"07017000", "illness"}, |
2044 | | {"07017001", "mental illness"}, |
2045 | | {"07017002", "eating disorder"}, |
2046 | | {"07017003", "obesity"}, |
2047 | | {"07018000", "medical conditions"}, |
2048 | | {"07019000", "patient"}, |
2049 | | {"08000000", "human interest"}, |
2050 | | {"08001000", "animal"}, |
2051 | | {"08002000", "curiosity"}, |
2052 | | {"08003000", "people"}, |
2053 | | {"08003001", "advice"}, |
2054 | | {"08003002", "celebrity"}, |
2055 | | {"08003003", "accomplishment"}, |
2056 | | {"08003004", "human mishap"}, |
2057 | | {"08003005", "fortune-telling"}, |
2058 | | {"08004000", "mystery"}, |
2059 | | {"08005000", "society"}, |
2060 | | {"08005001", "ceremony"}, |
2061 | | {"08005002", "death"}, |
2062 | | {"08005003", "funeral"}, |
2063 | | {"08005004", "estate bestowal"}, |
2064 | | {"08005005", "memorial"}, |
2065 | | {"08006000", "award and prize"}, |
2066 | | {"08006001", "record"}, |
2067 | | {"08007000", "imperial and royal matters"}, |
2068 | | {"08008000", "plant"}, |
2069 | | {"09000000", "labour"}, |
2070 | | {"09001000", "apprentices"}, |
2071 | | {"09002000", "collective contract"}, |
2072 | | {"09002001", "contract issue-wages"}, |
2073 | | {"09002002", "contract issue-healthcare"}, |
2074 | | {"09002003", "contract issue-work rules"}, |
2075 | | {"09003000", "employment"}, |
2076 | | {"09003001", "labor market"}, |
2077 | | {"09003002", "job layoffs"}, |
2078 | | {"09003003", "child labor"}, |
2079 | | {"09003004", "occupations"}, |
2080 | | {"09004000", "labour dispute"}, |
2081 | | {"09005000", "labour legislation"}, |
2082 | | {"09006000", "retirement"}, |
2083 | | {"09007000", "retraining"}, |
2084 | | {"09008000", "strike"}, |
2085 | | {"09009000", "unemployment"}, |
2086 | | {"09010000", "unions"}, |
2087 | | {"09011000", "wage and pension"}, |
2088 | | {"09011001", "employee benefits"}, |
2089 | | {"09011002", "social security"}, |
2090 | | {"09012000", "work relations"}, |
2091 | | {"09013000", "health and safety at work"}, |
2092 | | {"09014000", "advanced training"}, |
2093 | | {"09015000", "employer"}, |
2094 | | {"09016000", "employee"}, |
2095 | | {"10000000", "lifestyle and leisure"}, |
2096 | | {"10001000", "game"}, |
2097 | | {"10001001", "Go"}, |
2098 | | {"10001002", "chess"}, |
2099 | | {"10001003", "bridge"}, |
2100 | | {"10001004", "shogi"}, |
2101 | | {"10002000", "gaming and lottery"}, |
2102 | | {"10003000", "gastronomy"}, |
2103 | | {"10003001", "organic foods"}, |
2104 | | {"10004000", "hobby"}, |
2105 | | {"10004001", "DIY"}, |
2106 | | {"10004002", "shopping"}, |
2107 | | {"10004003", "gardening"}, |
2108 | | {"10005000", "holiday or vacation"}, |
2109 | | {"10006000", "tourism"}, |
2110 | | {"10007000", "travel and commuting"}, |
2111 | | {"10007001", "traffic"}, |
2112 | | {"10008000", "club and association"}, |
2113 | | {"10009000", "lifestyle (house and home)"}, |
2114 | | {"10010000", "leisure (general)"}, |
2115 | | {"10011000", "public holiday"}, |
2116 | | {"10012000", "hunting"}, |
2117 | | {"10013000", "fishing"}, |
2118 | | {"10014000", "auto trends"}, |
2119 | | {"10015000", "adventure"}, |
2120 | | {"10016000", "beauty"}, |
2121 | | {"10017000", "consumer issue"}, |
2122 | | {"10018000", "wedding"}, |
2123 | | {"11000000", "politics"}, |
2124 | | {"11001000", "defence"}, |
2125 | | {"11001001", "veterans affairs"}, |
2126 | | {"11001002", "national security"}, |
2127 | | {"11001003", "security measures"}, |
2128 | | {"11001004", "armed Forces"}, |
2129 | | {"11001005", "military equipment"}, |
2130 | | {"11001006", "firearms"}, |
2131 | | {"11001007", "biological and chemical weapons"}, |
2132 | | {"11001008", "missile systems"}, |
2133 | | {"11001009", "nuclear weapons"}, |
2134 | | {"11002000", "diplomacy"}, |
2135 | | {"11002001", "summit"}, |
2136 | | {"11002002", "international relations"}, |
2137 | | {"11002003", "peace negotiations"}, |
2138 | | {"11002004", "alliances"}, |
2139 | | {"11003000", "election"}, |
2140 | | {"11003001", "political candidates"}, |
2141 | | {"11003002", "political campaigns"}, |
2142 | | {"11003003", "campaign finance"}, |
2143 | | {"11003004", "national elections"}, |
2144 | | {"11003005", "regional elections"}, |
2145 | | {"11003006", "local elections"}, |
2146 | | {"11003007", "voting"}, |
2147 | | {"11003008", "poll"}, |
2148 | | {"11003009", "european elections"}, |
2149 | | {"11003010", "primary"}, |
2150 | | {"11004000", "espionage and intelligence"}, |
2151 | | {"11005000", "foreign aid"}, |
2152 | | {"11005001", "economic sanction"}, |
2153 | | {"11006000", "government"}, |
2154 | | {"11006001", "civil and public service"}, |
2155 | | {"11006002", "safety of citizens"}, |
2156 | | {"11006003", "think tank"}, |
2157 | | {"11006004", "national government"}, |
2158 | | {"11006005", "executive (government)"}, |
2159 | | {"11006006", "heads of state"}, |
2160 | | {"11006007", "government departments"}, |
2161 | | {"11006008", "public officials"}, |
2162 | | {"11006009", "ministers (government)"}, |
2163 | | {"11006010", "public employees"}, |
2164 | | {"11006011", "privatisation"}, |
2165 | | {"11006012", "nationalisation"}, |
2166 | | {"11006013", "impeachment"}, |
2167 | | {"11007000", "human rights"}, |
2168 | | {"11008000", "local authority"}, |
2169 | | {"11009000", "parliament"}, |
2170 | | {"11009001", "upper house"}, |
2171 | | {"11009002", "lower house"}, |
2172 | | {"11010000", "parties and movements"}, |
2173 | | {"11010001", "non government organizations (NGO)"}, |
2174 | | {"11011000", "refugee"}, |
2175 | | {"11012000", "regional authority"}, |
2176 | | {"11013000", "state budget and tax"}, |
2177 | | {"11013001", "public finance"}, |
2178 | | {"11014000", "treaty and international organisation-DEPRECATED"}, |
2179 | | {"11014001", "international relations-DEPRECATED"}, |
2180 | | {"11014002", "peace negotiations-DEPRECATED"}, |
2181 | | {"11014003", "alliances-DEPRECATED"}, |
2182 | | {"11015000", "constitution"}, |
2183 | | {"11016000", "interior policy"}, |
2184 | | {"11016001", "data protection"}, |
2185 | | {"11016002", "housing and urban planning"}, |
2186 | | {"11016003", "pension and welfare"}, |
2187 | | {"11016004", "personal weapon control"}, |
2188 | | {"11016005", "indigenous people"}, |
2189 | | {"11016006", "personal data collection"}, |
2190 | | {"11016007", "planning inquiries"}, |
2191 | | {"11017000", "migration"}, |
2192 | | {"11018000", "citizens initiative and recall"}, |
2193 | | {"11019000", "referenda"}, |
2194 | | {"11020000", "nuclear policy"}, |
2195 | | {"11021000", "lobbying"}, |
2196 | | {"11022000", "regulatory policy and organisation"}, |
2197 | | {"11023000", "censorship"}, |
2198 | | {"11024000", "politics (general)"}, |
2199 | | {"11024001", "political systems"}, |
2200 | | {"11024002", "democracy"}, |
2201 | | {"11024003", "political development"}, |
2202 | | {"11025000", "freedom of the press"}, |
2203 | | {"11026000", "freedom of religion"}, |
2204 | | {"11027000", "treaty"}, |
2205 | | {"11028000", "international organisation"}, |
2206 | | {"12000000", "religion and belief"}, |
2207 | | {"12001000", "cult and sect"}, |
2208 | | {"12002000", "belief (faith)"}, |
2209 | | {"12002001", "unificationism"}, |
2210 | | {"12002002", "scientology"}, |
2211 | | {"12003000", "freemasonry"}, |
2212 | | {"12004000", "religion-DEPRECATED"}, |
2213 | | {"12004001", "christianity-DEPRECATED"}, |
2214 | | {"12004002", "islam-DEPRECATED"}, |
2215 | | {"12004003", "judaism-DEPRECATED"}, |
2216 | | {"12004004", "buddhism-DEPRECATED"}, |
2217 | | {"12004005", "hinduism-DEPRECATED"}, |
2218 | | {"12005000", "church (organisation)-DEPRECATED"}, |
2219 | | {"12005001", "religious facilities-DEPRECATED"}, |
2220 | | {"12006000", "values"}, |
2221 | | {"12006001", "ethics"}, |
2222 | | {"12006002", "corrupt practices"}, |
2223 | | {"12007000", "church and state relations"}, |
2224 | | {"12008000", "philosophy"}, |
2225 | | {"12009000", "christianity"}, |
2226 | | {"12009001", "protestant"}, |
2227 | | {"12009002", "lutheran"}, |
2228 | | {"12009003", "reformed"}, |
2229 | | {"12009004", "anglican"}, |
2230 | | {"12009005", "methodist"}, |
2231 | | {"12009006", "baptist"}, |
2232 | | {"12009007", "mennonite"}, |
2233 | | {"12009009", "mormon"}, |
2234 | | {"12009010", "roman catholic"}, |
2235 | | {"12009011", "old catholic"}, |
2236 | | {"12009012", "orthodoxy"}, |
2237 | | {"12009013", "salvation army"}, |
2238 | | {"12010000", "islam"}, |
2239 | | {"12011000", "judaism"}, |
2240 | | {"12012000", "buddhism"}, |
2241 | | {"12013000", "hinduism"}, |
2242 | | {"12014000", "religious festival or holiday"}, |
2243 | | {"12014001", "christmas"}, |
2244 | | {"12014002", "easter"}, |
2245 | | {"12014003", "pentecost"}, |
2246 | | {"12014004", "ramadan"}, |
2247 | | {"12014005", "yom kippur"}, |
2248 | | {"12015000", "religious leader"}, |
2249 | | {"12015001", "pope"}, |
2250 | | {"12016000", "nature religion"}, |
2251 | | {"12017000", "taoism"}, |
2252 | | {"12018000", "shintoism"}, |
2253 | | {"12019000", "sikhism"}, |
2254 | | {"12020000", "jainism"}, |
2255 | | {"12021000", "parsasm"}, |
2256 | | {"12022000", "confucianism"}, |
2257 | | {"12023000", "religious text"}, |
2258 | | {"12023001", "bible"}, |
2259 | | {"12023002", "qur'an"}, |
2260 | | {"12023003", "torah"}, |
2261 | | {"12024000", "interreligious dialogue"}, |
2262 | | {"12025000", "religious event"}, |
2263 | | {"12025001", "catholic convention"}, |
2264 | | {"12025002", "protestant convention"}, |
2265 | | {"12025004", "ritual"}, |
2266 | | {"12026000", "concordat"}, |
2267 | | {"12027000", "ecumenism"}, |
2268 | | {"13000000", "science and technology"}, |
2269 | | {"13001000", "applied science"}, |
2270 | | {"13001001", "physics"}, |
2271 | | {"13001002", "chemistry"}, |
2272 | | {"13001003", "cosmology"}, |
2273 | | {"13001004", "particle physics"}, |
2274 | | {"13002000", "engineering"}, |
2275 | | {"13002001", "material science"}, |
2276 | | {"13003000", "human science"}, |
2277 | | {"13003001", "social sciences"}, |
2278 | | {"13003002", "history"}, |
2279 | | {"13003003", "psychology"}, |
2280 | | {"13003004", "sociology"}, |
2281 | | {"13003005", "anthropology"}, |
2282 | | {"13004000", "natural science"}, |
2283 | | {"13004001", "geology"}, |
2284 | | {"13004002", "paleontology"}, |
2285 | | {"13004003", "geography"}, |
2286 | | {"13004004", "botany"}, |
2287 | | {"13004005", "zoology"}, |
2288 | | {"13004006", "physiology"}, |
2289 | | {"13004007", "astronomy"}, |
2290 | | {"13004008", "biology"}, |
2291 | | {"13005000", "philosophical science"}, |
2292 | | {"13006000", "research"}, |
2293 | | {"13006001", "survey"}, |
2294 | | {"13007000", "scientific exploration"}, |
2295 | | {"13008000", "space programme"}, |
2296 | | {"13009000", "science (general)"}, |
2297 | | {"13010000", "technology (general)"}, |
2298 | | {"13010001", "rocketry"}, |
2299 | | {"13010002", "laser"}, |
2300 | | {"13011000", "standards"}, |
2301 | | {"13012000", "animal science"}, |
2302 | | {"13013000", "micro science"}, |
2303 | | {"13014000", "marine science"}, |
2304 | | {"13015000", "weather science"}, |
2305 | | {"13016000", "electronics"}, |
2306 | | {"13017000", "identification technology"}, |
2307 | | {"13018000", "mathematics"}, |
2308 | | {"13019000", "biotechnology"}, |
2309 | | {"13020000", "agricultural research and technology"}, |
2310 | | {"13021000", "nanotechnology"}, |
2311 | | {"13022000", "IT/computer sciences"}, |
2312 | | {"13023000", "scientific institutions"}, |
2313 | | {"14000000", "social issue"}, |
2314 | | {"14001000", "addiction"}, |
2315 | | {"14002000", "charity"}, |
2316 | | {"14003000", "demographics"}, |
2317 | | {"14003001", "population and census"}, |
2318 | | {"14003002", "immigration"}, |
2319 | | {"14003003", "illegal immigrants"}, |
2320 | | {"14003004", "emigrants"}, |
2321 | | {"14004000", "disabled"}, |
2322 | | {"14005000", "euthanasia (also includes assisted suicide)"}, |
2323 | | {"14005001", "suicide"}, |
2324 | | {"14006000", "family"}, |
2325 | | {"14006001", "parent and child"}, |
2326 | | {"14006002", "adoption"}, |
2327 | | {"14006003", "marriage"}, |
2328 | | {"14006004", "divorce"}, |
2329 | | {"14006005", "sex"}, |
2330 | | {"14006006", "courtship"}, |
2331 | | {"14007000", "family planning"}, |
2332 | | {"14008000", "health insurance"}, |
2333 | | {"14009000", "homelessness"}, |
2334 | | {"14010000", "minority group"}, |
2335 | | {"14010001", "gays and lesbians"}, |
2336 | | {"14010002", "national or ethnic minority"}, |
2337 | | {"14011000", "pornography"}, |
2338 | | {"14012000", "poverty"}, |
2339 | | {"14013000", "prostitution"}, |
2340 | | {"14014000", "racism"}, |
2341 | | {"14015000", "welfare"}, |
2342 | | {"14016000", "abortion"}, |
2343 | | {"14017000", "missing person"}, |
2344 | | {"14017001", "missing due to hostilities"}, |
2345 | | {"14018000", "long term care"}, |
2346 | | {"14019000", "juvenile delinquency"}, |
2347 | | {"14020000", "nuclear radiation victims"}, |
2348 | | {"14021000", "slavery"}, |
2349 | | {"14022000", "abusive behaviour"}, |
2350 | | {"14023000", "death and dying"}, |
2351 | | {"14024000", "people"}, |
2352 | | {"14024001", "children"}, |
2353 | | {"14024002", "infants"}, |
2354 | | {"14024003", "teen-agers"}, |
2355 | | {"14024004", "adults"}, |
2356 | | {"14024005", "senior citizens"}, |
2357 | | {"14025000", "social issues (general)"}, |
2358 | | {"14025001", "social conditions"}, |
2359 | | {"14025002", "social problems"}, |
2360 | | {"14025003", "discrimination"}, |
2361 | | {"14025004", "social services"}, |
2362 | | {"14025005", "death penalty policies"}, |
2363 | | {"14026000", "ordnance clearance"}, |
2364 | | {"14027000", "reconstruction"}, |
2365 | | {"15000000", "sport"}, |
2366 | | {"15001000", "aero and aviation sport"}, |
2367 | | {"15001001", "parachuting"}, |
2368 | | {"15001002", "sky diving"}, |
2369 | | {"15002000", "alpine skiing"}, |
2370 | | {"15002001", "downhill"}, |
2371 | | {"15002002", "giant slalom"}, |
2372 | | {"15002003", "super G"}, |
2373 | | {"15002004", "slalom"}, |
2374 | | {"15002005", "combined"}, |
2375 | | {"15003000", "American football"}, |
2376 | | {"15003001", "(US) National Football League (NFL) (North American)"}, |
2377 | | {"15003002", "CFL"}, |
2378 | | {"15003003", "AFL-DEPRECATED"}, |
2379 | | {"15004000", "archery"}, |
2380 | | {"15004001", "FITA / Outdoor target archery"}, |
2381 | | {"15004002", "crossbow shooting"}, |
2382 | | {"15005000", "athletics, track and field"}, |
2383 | | {"15005001", "100 m"}, |
2384 | | {"15005002", "200 m"}, |
2385 | | {"15005003", "400 m"}, |
2386 | | {"15005004", "800 m"}, |
2387 | | {"15005005", "1000 m"}, |
2388 | | {"15005006", "1500 m"}, |
2389 | | {"15005007", "mile"}, |
2390 | | {"15005008", "2000 m"}, |
2391 | | {"15005009", "3000 m"}, |
2392 | | {"15005010", "5000 m"}, |
2393 | | {"15005011", "10,000 m"}, |
2394 | | {"15005012", "20 km"}, |
2395 | | {"15005013", "one hour"}, |
2396 | | {"15005014", "25000"}, |
2397 | | {"15005015", "30000"}, |
2398 | | {"15005016", "110 m hurdles"}, |
2399 | | {"15005017", "400 m hurdles"}, |
2400 | | {"15005018", "3000 m steeplechase"}, |
2401 | | {"15005019", "high jump"}, |
2402 | | {"15005020", "pole vault"}, |
2403 | | {"15005021", "long jump"}, |
2404 | | {"15005022", "triple jump"}, |
2405 | | {"15005023", "shot put"}, |
2406 | | {"15005024", "discus throw"}, |
2407 | | {"15005025", "hammer throw"}, |
2408 | | {"15005026", "javelin throw"}, |
2409 | | {"15005027", "decathlon"}, |
2410 | | {"15005028", "4x100 m"}, |
2411 | | {"15005029", "4x200 m"}, |
2412 | | {"15005030", "4x400 m"}, |
2413 | | {"15005031", "4x800 m"}, |
2414 | | {"15005032", "4x1500 m"}, |
2415 | | {"15005033", "walk 1 h"}, |
2416 | | {"15005034", "walk 2 h"}, |
2417 | | {"15005035", "10 km walk"}, |
2418 | | {"15005036", "15 km walk"}, |
2419 | | {"15005037", "20 km walk"}, |
2420 | | {"15005038", "30 km walk"}, |
2421 | | {"15005039", "50 km walk"}, |
2422 | | {"15005040", "100 m hurdles"}, |
2423 | | {"15005041", "5 km walk"}, |
2424 | | {"15005042", "heptathlon"}, |
2425 | | {"15005043", "1500 m walk"}, |
2426 | | {"15005044", "2000 m walk"}, |
2427 | | {"15005045", "3000 m walk"}, |
2428 | | {"15005046", "50 m"}, |
2429 | | {"15005047", "50 m hurdles"}, |
2430 | | {"15005048", "50 yards"}, |
2431 | | {"15005049", "50 yard hurdles"}, |
2432 | | {"15005050", "60 m"}, |
2433 | | {"15005051", "60 m hurdles"}, |
2434 | | {"15005052", "60 yards"}, |
2435 | | {"15005053", "60 yard hurdles"}, |
2436 | | {"15005054", "100 yards"}, |
2437 | | {"15005055", "100 yard hurdles"}, |
2438 | | {"15005056", "300 m"}, |
2439 | | {"15005057", "300 yards"}, |
2440 | | {"15005058", "440 yards"}, |
2441 | | {"15005059", "500 m"}, |
2442 | | {"15005060", "500 yards"}, |
2443 | | {"15005061", "600 m"}, |
2444 | | {"15005062", "600 yards"}, |
2445 | | {"15005063", "880 yards"}, |
2446 | | {"15005064", "1000 yards"}, |
2447 | | {"15005065", "2 miles"}, |
2448 | | {"15005066", "3 miles"}, |
2449 | | {"15005067", "6 miles"}, |
2450 | | {"15005068", "4x1 mile"}, |
2451 | | {"15005069", "pentathlon"}, |
2452 | | {"15006000", "badminton"}, |
2453 | | {"15007000", "baseball"}, |
2454 | | {"15007001", "Major League Baseball (North American Professional) - American League"}, |
2455 | | {"15007002", "Major League Baseball (North American Professional) - National League"}, |
2456 | | {"15007003", "Major League Baseball (North American Professional) - Special (e.g. All-Star, World Series)"}, |
2457 | | {"15007004", "rubberball baseball"}, |
2458 | | {"15007005", "Major League Baseball Playoffs"}, |
2459 | | {"15007006", "World Series"}, |
2460 | | {"15008000", "basketball"}, |
2461 | | {"15008001", "National Basketball Association (North American Professional)"}, |
2462 | | {"15008002", "professional - Women general"}, |
2463 | | {"15008003", "Swiss netball"}, |
2464 | | {"15008004", "German netball"}, |
2465 | | {"15008005", "Dutch netball"}, |
2466 | | {"15009000", "biathlon"}, |
2467 | | {"15009001", "7.5 km"}, |
2468 | | {"15009002", "10 km"}, |
2469 | | {"15009003", "15 km"}, |
2470 | | {"15009004", "20 km"}, |
2471 | | {"15009005", "4x7.5 km relay"}, |
2472 | | {"15009006", "12.5 km pursuit"}, |
2473 | | {"15010000", "billiards, snooker and pool"}, |
2474 | | {"15010001", "8 ball"}, |
2475 | | {"15010002", "9 ball"}, |
2476 | | {"15010003", "14.1"}, |
2477 | | {"15010004", "continuous-DEPRECATED"}, |
2478 | | {"15010005", "other-DEPRECATED"}, |
2479 | | {"15010006", "snooker"}, |
2480 | | {"15011000", "bobsleigh"}, |
2481 | | {"15011001", "two-man sled"}, |
2482 | | {"15011002", "four-man sled"}, |
2483 | | {"15012000", "bowling"}, |
2484 | | {"15013000", "bowls and petanque"}, |
2485 | | {"15014000", "boxing"}, |
2486 | | {"15014001", "super-heavyweight"}, |
2487 | | {"15014002", "heavyweight"}, |
2488 | | {"15014003", "cruiserweight"}, |
2489 | | {"15014004", "light-heavyweight"}, |
2490 | | {"15014005", "super-middleweight"}, |
2491 | | {"15014006", "middleweight"}, |
2492 | | {"15014007", "light-middleweight"}, |
2493 | | {"15014008", "welterweight"}, |
2494 | | {"15014009", "light-welterweight"}, |
2495 | | {"15014010", "lightweight"}, |
2496 | | {"15014011", "super-featherweight"}, |
2497 | | {"15014012", "featherweight"}, |
2498 | | {"15014013", "super-bantamweight"}, |
2499 | | {"15014014", "bantamweight"}, |
2500 | | {"15014015", "super-flyweight"}, |
2501 | | {"15014016", "flyweight"}, |
2502 | | {"15014017", "light flyweight"}, |
2503 | | {"15014018", "straw"}, |
2504 | | {"15014019", "IBF"}, |
2505 | | {"15014020", "WBA"}, |
2506 | | {"15014021", "WBC"}, |
2507 | | {"15014022", "WBO"}, |
2508 | | {"15014023", "French boxing"}, |
2509 | | {"15014024", "Thai boxing"}, |
2510 | | {"15015000", "canoeing and kayaking"}, |
2511 | | {"15015001", "Slalom"}, |
2512 | | {"15015002", "200 m"}, |
2513 | | {"15015003", "500 m"}, |
2514 | | {"15015004", "1000 m"}, |
2515 | | {"15015005", "K1"}, |
2516 | | {"15015006", "K2"}, |
2517 | | {"15015007", "K4"}, |
2518 | | {"15015008", "C1"}, |
2519 | | {"15015009", "C2"}, |
2520 | | {"15015010", "C4"}, |
2521 | | {"15015011", "canoe sailing"}, |
2522 | | {"15015012", "pontoniering"}, |
2523 | | {"15016000", "climbing"}, |
2524 | | {"15016001", "mountaineering"}, |
2525 | | {"15016002", "sport climbing"}, |
2526 | | {"15017000", "cricket"}, |
2527 | | {"15018000", "curling"}, |
2528 | | {"15018001", "icestock sport"}, |
2529 | | {"15019000", "cycling"}, |
2530 | | {"15019001", "track"}, |
2531 | | {"15019002", "pursuit"}, |
2532 | | {"15019003", "Olympic sprint"}, |
2533 | | {"15019004", "sprint"}, |
2534 | | {"15019005", "Keirin"}, |
2535 | | {"15019006", "points race"}, |
2536 | | {"15019007", "Madison race"}, |
2537 | | {"15019008", "500 m time trial"}, |
2538 | | {"15019009", "1 km time trial"}, |
2539 | | {"15019010", "one hour"}, |
2540 | | {"15019011", "road race"}, |
2541 | | {"15019012", "road time trial"}, |
2542 | | {"15019013", "staging race"}, |
2543 | | {"15019014", "cyclo-cross"}, |
2544 | | {"15019015", "Vtt"}, |
2545 | | {"15019016", "Vtt-cross"}, |
2546 | | {"15019017", "Vtt-downhill"}, |
2547 | | {"15019018", "bi-crossing"}, |
2548 | | {"15019019", "trial"}, |
2549 | | {"15019020", "artistic cycling"}, |
2550 | | {"15019021", "cycle ball"}, |
2551 | | {"15020000", "dancing"}, |
2552 | | {"15021000", "diving"}, |
2553 | | {"15021001", "10 m platform"}, |
2554 | | {"15021002", "10 m platform synchronised"}, |
2555 | | {"15021003", "3 m springboard"}, |
2556 | | {"15021004", "3 m springboard synchronised"}, |
2557 | | {"15021005", "subaquatics"}, |
2558 | | {"15021006", "scuba diving"}, |
2559 | | {"15022000", "equestrian"}, |
2560 | | {"15022001", "three-day event"}, |
2561 | | {"15022002", "dressage"}, |
2562 | | {"15022003", "jumping"}, |
2563 | | {"15022004", "cross country"}, |
2564 | | {"15023000", "fencing"}, |
2565 | | {"15023001", "epee"}, |
2566 | | {"15023002", "foil"}, |
2567 | | {"15023003", "sabre"}, |
2568 | | {"15024000", "field Hockey"}, |
2569 | | {"15024001", "roll hockey"}, |
2570 | | {"15025000", "figure Skating"}, |
2571 | | {"15025001", "singles"}, |
2572 | | {"15025002", "pairs"}, |
2573 | | {"15025003", "ice dance"}, |
2574 | | {"15026000", "freestyle Skiing"}, |
2575 | | {"15026001", "moguls"}, |
2576 | | {"15026002", "aerials"}, |
2577 | | {"15026003", "artistic skiing"}, |
2578 | | {"15027000", "golf"}, |
2579 | | {"15028000", "gymnastics"}, |
2580 | | {"15028001", "floor exercise"}, |
2581 | | {"15028002", "vault"}, |
2582 | | {"15028003", "pommel horse"}, |
2583 | | {"15028004", "uneven bars"}, |
2584 | | {"15028005", "parallel bars"}, |
2585 | | {"15028006", "horizontal bar"}, |
2586 | | {"15028007", "rings"}, |
2587 | | {"15028008", "beam"}, |
2588 | | {"15028009", "rhythmic"}, |
2589 | | {"15028010", "clubs"}, |
2590 | | {"15028011", "hoop"}, |
2591 | | {"15028012", "ribbon"}, |
2592 | | {"15028013", "rope"}, |
2593 | | {"15028014", "ball"}, |
2594 | | {"15028015", "trampoline"}, |
2595 | | {"15029000", "handball (team)"}, |
2596 | | {"15030000", "horse racing, harness racing"}, |
2597 | | {"15030001", "flat racing"}, |
2598 | | {"15030002", "steeple chase"}, |
2599 | | {"15030003", "trotting"}, |
2600 | | {"15030004", "cross country"}, |
2601 | | {"15031000", "ice hockey"}, |
2602 | | {"15031001", "National Hockey League (North American)"}, |
2603 | | {"15031002", "sledge hockey"}, |
2604 | | {"15032000", "Jai Alai (Pelota)"}, |
2605 | | {"15032001", "fronton"}, |
2606 | | {"15032002", "jai-alai"}, |
2607 | | {"15032003", "left wall"}, |
2608 | | {"15032004", "trinquet"}, |
2609 | | {"15032005", "rebot"}, |
2610 | | {"15032006", "chistera ancha"}, |
2611 | | {"15032007", "chistera corta"}, |
2612 | | {"15032008", "bare hand"}, |
2613 | | {"15032009", "pala-ancha"}, |
2614 | | {"15032010", "pala-corta"}, |
2615 | | {"15032011", "pasaka"}, |
2616 | | {"15032012", "xare"}, |
2617 | | {"15033000", "judo"}, |
2618 | | {"15033001", "heavyweight"}, |
2619 | | {"15033002", "half-heavyweight"}, |
2620 | | {"15033003", "middleweight"}, |
2621 | | {"15033004", "half-middleweight"}, |
2622 | | {"15033005", "half-lightweight"}, |
2623 | | {"15033006", "lightweight"}, |
2624 | | {"15033007", "extra lightweight"}, |
2625 | | {"15034000", "karate"}, |
2626 | | {"15034001", "sparring"}, |
2627 | | {"15034002", "formal exercise-DEPRECATED"}, |
2628 | | {"15035000", "lacrosse"}, |
2629 | | {"15036000", "luge"}, |
2630 | | {"15036001", "singles"}, |
2631 | | {"15036002", "doubles"}, |
2632 | | {"15037000", "marathon"}, |
2633 | | {"15038000", "modern pentathlon"}, |
2634 | | {"15038001", "running"}, |
2635 | | {"15038002", "shooting"}, |
2636 | | {"15038003", "swimming"}, |
2637 | | {"15038004", "fencing"}, |
2638 | | {"15038005", "showjumping"}, |
2639 | | {"15039000", "motor racing"}, |
2640 | | {"15039001", "Formula One"}, |
2641 | | {"15039002", "F3000"}, |
2642 | | {"15039003", "endurance"}, |
2643 | | {"15039004", "Indy"}, |
2644 | | {"15039005", "CART"}, |
2645 | | {"15039006", "NHRA"}, |
2646 | | {"15039007", "NASCAR"}, |
2647 | | {"15039008", "TRUCKI"}, |
2648 | | {"15040000", "motor rallying"}, |
2649 | | {"15040001", "rallying"}, |
2650 | | {"15040002", "pursuit"}, |
2651 | | {"15040003", "rallycross"}, |
2652 | | {"15041000", "motorcycling"}, |
2653 | | {"15041001", "speed-Grand-Prix"}, |
2654 | | {"15041002", "enduro"}, |
2655 | | {"15041003", "grass-track"}, |
2656 | | {"15041004", "moto-ball"}, |
2657 | | {"15041005", "moto-cross"}, |
2658 | | {"15041006", "rallying"}, |
2659 | | {"15041007", "trial"}, |
2660 | | {"15041008", "endurance"}, |
2661 | | {"15041009", "superbike"}, |
2662 | | {"15041010", "125 cm3"}, |
2663 | | {"15041011", "250 cm3"}, |
2664 | | {"15041012", "500 cm3"}, |
2665 | | {"15041013", "side-cars"}, |
2666 | | {"15041014", "motoGP"}, |
2667 | | {"15042000", "netball"}, |
2668 | | {"15043000", "nordic skiing"}, |
2669 | | {"15043001", "cross-country"}, |
2670 | | {"15043002", "5 km classical time"}, |
2671 | | {"15043003", "10 km classical style"}, |
2672 | | {"15043004", "10 km pursuit free style"}, |
2673 | | {"15043005", "15 km classical style"}, |
2674 | | {"15043006", "15 km pursuit free style"}, |
2675 | | {"15043007", "10 km + 15 km combined"}, |
2676 | | {"15043008", "30 km classical style"}, |
2677 | | {"15043009", "30km free style"}, |
2678 | | {"15043010", "50 km free style"}, |
2679 | | {"15043011", "4x5 km relay"}, |
2680 | | {"15043012", "4x10 km relay"}, |
2681 | | {"15043013", "nordic combined"}, |
2682 | | {"15043014", "raid"}, |
2683 | | {"15043015", "5 km pursuit free style"}, |
2684 | | {"15043016", "1.5 km sprint free"}, |
2685 | | {"15043017", "50 km classic style"}, |
2686 | | {"15044000", "orienteering"}, |
2687 | | {"15044001", "ski orienteering"}, |
2688 | | {"15045000", "polo"}, |
2689 | | {"15046000", "power boating"}, |
2690 | | {"15046001", "F1"}, |
2691 | | {"15046002", "F2"}, |
2692 | | {"15047000", "rowing"}, |
2693 | | {"15047001", "single sculls"}, |
2694 | | {"15047002", "double sculls"}, |
2695 | | {"15047003", "quadruple sculls"}, |
2696 | | {"15047004", "coxless pair"}, |
2697 | | {"15047005", "coxless four"}, |
2698 | | {"15047006", "eight"}, |
2699 | | {"15047007", "lightweight"}, |
2700 | | {"15048000", "rugby league"}, |
2701 | | {"15049000", "rugby union"}, |
2702 | | {"15049001", "rugby 7"}, |
2703 | | {"15050000", "sailing"}, |
2704 | | {"15050001", "Tornado"}, |
2705 | | {"15050002", "soling"}, |
2706 | | {"15050003", "49er"}, |
2707 | | {"15050004", "Europe"}, |
2708 | | {"15050005", "Laser"}, |
2709 | | {"15050006", "470"}, |
2710 | | {"15050007", "Finn"}, |
2711 | | {"15050008", "Star"}, |
2712 | | {"15050009", "flying dutchmann"}, |
2713 | | {"15050010", "505"}, |
2714 | | {"15050011", "staging race"}, |
2715 | | {"15050012", "around the world"}, |
2716 | | {"15050013", "monohull"}, |
2717 | | {"15050014", "multihulls"}, |
2718 | | {"15050015", "yngling"}, |
2719 | | {"15050016", "mistral"}, |
2720 | | {"15051000", "shooting"}, |
2721 | | {"15051001", "10 m air rifle"}, |
2722 | | {"15051002", "10 m air pistol"}, |
2723 | | {"15051003", "10 m running target"}, |
2724 | | {"15051004", "25 m rapid fire pistol"}, |
2725 | | {"15051005", "25 m sport pistol"}, |
2726 | | {"15051006", "50 m free pistol"}, |
2727 | | {"15051007", "50 m free rifle prone"}, |
2728 | | {"15051008", "50 m free rifle 3x40"}, |
2729 | | {"15051009", "50 m sport rifle 3x20"}, |
2730 | | {"15051010", "trap"}, |
2731 | | {"15051011", "double trap"}, |
2732 | | {"15051012", "skeet"}, |
2733 | | {"15052000", "ski jumping"}, |
2734 | | {"15052001", "K90 jump"}, |
2735 | | {"15052002", "K120 jump"}, |
2736 | | {"15052003", "K180 (flying jump)"}, |
2737 | | {"15053000", "snow boarding"}, |
2738 | | {"15053001", "giant slalom"}, |
2739 | | {"15053002", "half-pipe"}, |
2740 | | {"15054000", "soccer"}, |
2741 | | {"15055000", "softball"}, |
2742 | | {"15056000", "speed skating"}, |
2743 | | {"15056001", "500 m"}, |
2744 | | {"15056002", "1000 m"}, |
2745 | | {"15056003", "1500 m"}, |
2746 | | {"15056004", "3000 m"}, |
2747 | | {"15056005", "5000 m"}, |
2748 | | {"15056006", "10000 m"}, |
2749 | | {"15056007", "Short-track"}, |
2750 | | {"15056008", "st 500 m"}, |
2751 | | {"15056009", "st 1000m"}, |
2752 | | {"15056010", "st 1500m"}, |
2753 | | {"15056011", "st 3000m"}, |
2754 | | {"15056012", "st 3000m relay"}, |
2755 | | {"15056013", "st 5000m"}, |
2756 | | {"15056014", "st 5000m relay"}, |
2757 | | {"15057000", "speedway"}, |
2758 | | {"15058000", "sports organisations"}, |
2759 | | {"15058001", "IOC"}, |
2760 | | {"15058002", "international federation"}, |
2761 | | {"15058003", "continental federation"}, |
2762 | | {"15058004", "national federation"}, |
2763 | | {"15058005", "GAISF"}, |
2764 | | {"15059000", "squash"}, |
2765 | | {"15060000", "sumo wrestling"}, |
2766 | | {"15061000", "surfing"}, |
2767 | | {"15062000", "swimming"}, |
2768 | | {"15062001", "50 m freestyle"}, |
2769 | | {"15062002", "100 m freestyle"}, |
2770 | | {"15062003", "200 m freestyle"}, |
2771 | | {"15062004", "400 m freestyle"}, |
2772 | | {"15062005", "800 m freestyle"}, |
2773 | | {"15062006", "1500 m freestyle"}, |
2774 | | {"15062007", "relay 4x50 m freestyle"}, |
2775 | | {"15062008", "relay 4x100 m freestyle"}, |
2776 | | {"15062009", "relay 4x200 m freestyle"}, |
2777 | | {"15062010", "50 m backstroke"}, |
2778 | | {"15062011", "100 m backstroke"}, |
2779 | | {"15062012", "200 m backstroke"}, |
2780 | | {"15062013", "50 m breaststroke"}, |
2781 | | {"15062014", "100 m breaststroke"}, |
2782 | | {"15062015", "200 m breaststroke"}, |
2783 | | {"15062016", "50 m butterfly"}, |
2784 | | {"15062017", "100 m butterfly"}, |
2785 | | {"15062018", "200 m butterfly"}, |
2786 | | {"15062019", "100 m medley"}, |
2787 | | {"15062020", "200 m medley"}, |
2788 | | {"15062021", "400 m medley"}, |
2789 | | {"15062022", "relay 4x50 m medlay"}, |
2790 | | {"15062023", "relay4x100 m medley"}, |
2791 | | {"15062024", "short course"}, |
2792 | | {"15062025", "synchronised technical routine"}, |
2793 | | {"15062026", "synchronised free routine"}, |
2794 | | {"15063000", "table tennis"}, |
2795 | | {"15064000", "Taekwon-Do"}, |
2796 | | {"15064001", "under 49 kg"}, |
2797 | | {"15064002", "under 58 kg"}, |
2798 | | {"15064003", "49-57 kg"}, |
2799 | | {"15064004", "58-68 kg"}, |
2800 | | {"15064005", "57-67 kg"}, |
2801 | | {"15064006", "68-80 kg"}, |
2802 | | {"15064007", "over 67 kg"}, |
2803 | | {"15064008", "over 80 kg"}, |
2804 | | {"15065000", "tennis"}, |
2805 | | {"15065001", "soft tennis"}, |
2806 | | {"15066000", "triathlon"}, |
2807 | | {"15066001", "triathlon swimming"}, |
2808 | | {"15066002", "triathlon cycling"}, |
2809 | | {"15066003", "triathlon run"}, |
2810 | | {"15067000", "volleyball"}, |
2811 | | {"15067001", "beach volleyball"}, |
2812 | | {"15068000", "water polo"}, |
2813 | | {"15069000", "water skiing"}, |
2814 | | {"15069001", "slalom"}, |
2815 | | {"15069002", "trick"}, |
2816 | | {"15069003", "jump"}, |
2817 | | {"15069004", "combined"}, |
2818 | | {"15070000", "weightlifting"}, |
2819 | | {"15070001", "snatch"}, |
2820 | | {"15070002", "clean and jerk"}, |
2821 | | {"15070003", "48 kg"}, |
2822 | | {"15070004", "53 kg"}, |
2823 | | {"15070005", "63 kg"}, |
2824 | | {"15070006", "75 kg"}, |
2825 | | {"15070007", "over 75 kg"}, |
2826 | | {"15070008", "56 kg"}, |
2827 | | {"15070009", "62 kg"}, |
2828 | | {"15070010", "69 kg"}, |
2829 | | {"15070011", "77 kg"}, |
2830 | | {"15070012", "85 kg"}, |
2831 | | {"15070013", "94 kg"}, |
2832 | | {"15070014", "105 kg"}, |
2833 | | {"15070015", "over 105 kg"}, |
2834 | | {"15070016", "powerlifting"}, |
2835 | | {"15071000", "windsurfing"}, |
2836 | | {"15071001", "ocean"}, |
2837 | | {"15071002", "lake"}, |
2838 | | {"15071003", "river"}, |
2839 | | {"15071004", "land"}, |
2840 | | {"15072000", "wrestling"}, |
2841 | | {"15072001", "freestyle"}, |
2842 | | {"15072002", "greco-roman"}, |
2843 | | {"15072003", "over 130 kg"}, |
2844 | | {"15072004", "130 kg"}, |
2845 | | {"15072005", "97 kg"}, |
2846 | | {"15072006", "85 kg"}, |
2847 | | {"15072007", "76 kg"}, |
2848 | | {"15072008", "69 kg"}, |
2849 | | {"15072009", "63 kg"}, |
2850 | | {"15072010", "58 kg"}, |
2851 | | {"15072011", "54 kg"}, |
2852 | | {"15072012", "Swiss wrestling"}, |
2853 | | {"15073000", "sports event"}, |
2854 | | {"15073001", "Summer Olympics"}, |
2855 | | {"15073002", "Winter Olympics"}, |
2856 | | {"15073003", "Summer universiade"}, |
2857 | | {"15073004", "Winter Universiade"}, |
2858 | | {"15073005", "Commonwealth Games"}, |
2859 | | {"15073006", "Winter Goodwill Games"}, |
2860 | | {"15073007", "Summer Asian Games"}, |
2861 | | {"15073008", "Winter Asian Games"}, |
2862 | | {"15073009", "Panamerican Games"}, |
2863 | | {"15073010", "African Games"}, |
2864 | | {"15073011", "Mediterranean Games"}, |
2865 | | {"15073012", "SouthEast Asiatic Games"}, |
2866 | | {"15073013", "PanPacific Games"}, |
2867 | | {"15073014", "SouthPacific Games"}, |
2868 | | {"15073015", "PanArabic Games"}, |
2869 | | {"15073016", "Summer Goodwill Games"}, |
2870 | | {"15073017", "World games"}, |
2871 | | {"15073018", "World Cup"}, |
2872 | | {"15073019", "intercontinental cup"}, |
2873 | | {"15073020", "continental cup"}, |
2874 | | {"15073021", "international cup"}, |
2875 | | {"15073022", "National Cup"}, |
2876 | | {"15073023", "interregional cup"}, |
2877 | | {"15073024", "regional cup"}, |
2878 | | {"15073025", "league cup"}, |
2879 | | {"15073026", "world championship"}, |
2880 | | {"15073027", "intercontinental championship"}, |
2881 | | {"15073028", "continental championship 1st level"}, |
2882 | | {"15073029", "continental championship 2nd level"}, |
2883 | | {"15073030", "continental championship 3rd level"}, |
2884 | | {"15073031", "national championship 1st level"}, |
2885 | | {"15073032", "national championship 2nd level"}, |
2886 | | {"15073033", "national championship3rdlevel"}, |
2887 | | {"15073034", "national championship 4th level"}, |
2888 | | {"15073035", "regional championship"}, |
2889 | | {"15073036", "Grand Prix"}, |
2890 | | {"15073037", "intercontinental tournament"}, |
2891 | | {"15073038", "continental tournament"}, |
2892 | | {"15073039", "international tournament"}, |
2893 | | {"15073040", "national tournament"}, |
2894 | | {"15073041", "inter-nations competition"}, |
2895 | | {"15073042", "inter-clubs competition"}, |
2896 | | {"15073043", "friendly competition"}, |
2897 | | {"15073044", "all-stars competition"}, |
2898 | | {"15073045", "exhibition"}, |
2899 | | {"15073046", "Super Bowl"}, |
2900 | | {"15073047", "paralympic games"}, |
2901 | | {"15074000", "rodeo"}, |
2902 | | {"15074001", "barrel racing"}, |
2903 | | {"15074002", "calf roping"}, |
2904 | | {"15074003", "bull riding"}, |
2905 | | {"15074004", "bulldogging"}, |
2906 | | {"15074005", "saddle bronc"}, |
2907 | | {"15074006", "bareback"}, |
2908 | | {"15074007", "goat roping"}, |
2909 | | {"15075000", "mini golf sport"}, |
2910 | | {"15076000", "bandy"}, |
2911 | | {"15077000", "flying disc"}, |
2912 | | {"15077001", "ultimate"}, |
2913 | | {"15077002", "guts"}, |
2914 | | {"15077003", "overall"}, |
2915 | | {"15077004", "distance"}, |
2916 | | {"15077005", "discathon"}, |
2917 | | {"15077006", "DDC"}, |
2918 | | {"15077007", "SCF"}, |
2919 | | {"15077008", "freestyle"}, |
2920 | | {"15077009", "accuracy"}, |
2921 | | {"15077010", "disc golf"}, |
2922 | | {"15078000", "floorball"}, |
2923 | | {"15079000", "casting"}, |
2924 | | {"15080000", "tug-of-war"}, |
2925 | | {"15081000", "croquette"}, |
2926 | | {"15082000", "dog racing"}, |
2927 | | {"15082001", "sled"}, |
2928 | | {"15082002", "oval track"}, |
2929 | | {"15083000", "skeleton"}, |
2930 | | {"15084000", "Australian rules football"}, |
2931 | | {"15085000", "Canadian football"}, |
2932 | | {"15086000", "duathlon"}, |
2933 | | {"15087000", "hornuss"}, |
2934 | | {"15088000", "fist ball"}, |
2935 | | {"15089000", "inline skating"}, |
2936 | | {"15090000", "grass ski"}, |
2937 | | {"15091000", "snowbiking"}, |
2938 | | {"15092000", "twirling"}, |
2939 | | {"15093000", "kendo"}, |
2940 | | {"15094000", "jukendo"}, |
2941 | | {"15095000", "naginata"}, |
2942 | | {"15096000", "kyudo"}, |
2943 | | {"15097000", "kabaddi"}, |
2944 | | {"15098000", "sepak takraw"}, |
2945 | | {"15099000", "wushu"}, |
2946 | | {"15100000", "darts"}, |
2947 | | {"15101000", "bodybuilding"}, |
2948 | | {"15102000", "sports disciplinary action"}, |
2949 | | {"15103000", "sports awards"}, |
2950 | | {"16000000", "unrest, conflicts and war"}, |
2951 | | {"16001000", "act of terror"}, |
2952 | | {"16002000", "armed conflict"}, |
2953 | | {"16003000", "civil unrest"}, |
2954 | | {"16003001", "revolutions"}, |
2955 | | {"16003002", "rebellions"}, |
2956 | | {"16003003", "political dissent"}, |
2957 | | {"16003004", "religious conflict"}, |
2958 | | {"16003005", "social conflict"}, |
2959 | | {"16004000", "coup d'etat"}, |
2960 | | {"16005000", "guerrilla activity"}, |
2961 | | {"16005001", "bioterrorism"}, |
2962 | | {"16005002", "bombings"}, |
2963 | | {"16006000", "massacre"}, |
2964 | | {"16006001", "genocide"}, |
2965 | | {"16007000", "riots"}, |
2966 | | {"16008000", "demonstration"}, |
2967 | | {"16009000", "war"}, |
2968 | | {"16009001", "civil war"}, |
2969 | | {"16009002", "international military intervention"}, |
2970 | | {"16009003", "prisoners and detainees"}, |
2971 | | {"16010000", "conflict (general)"}, |
2972 | | {"16010001", "peacekeeping force"}, |
2973 | | {"16011000", "crisis"}, |
2974 | | {"16012000", "weaponry"}, |
2975 | | {"17000000", "weather"}, |
2976 | | {"17001000", "forecast"}, |
2977 | | {"17002000", "global change"}, |
2978 | | {"17003000", "report"}, |
2979 | | {"17003001", "weather news"}, |
2980 | | {"17004000", "statistic"}, |
2981 | | {"17005000", "warning"}, |
2982 | | }; |
2983 | | |
2984 | | //! XMP iptcExt:DigitalSourcefileType |
2985 | | constexpr TagVocabulary iptcExtDigitalSourcefileType[] = { |
2986 | | {"scanfilm", N_("Scan from film")}, {"scantransparency", N_("Scan from transparency (including slide)")}, |
2987 | | {"scanprint", N_("Scan from print")}, {"cameraraw", N_("Camera RAW")}, |
2988 | | {"cameratiff", N_("Camera TIFF")}, {"camerajpeg", N_("Camera JPEG")}, |
2989 | | }; |
2990 | | |
2991 | | //! XMP iptcExt:DigitalSourceType |
2992 | | // Source: http://cv.iptc.org/newscodes/digitalsourcetype/ |
2993 | | constexpr TagVocabulary iptcExtDigitalSourceType[] = { |
2994 | | {"digitalCapture", N_("Digital capture")}, |
2995 | | {"negativeFilm", N_("Digitised from a negative on film")}, |
2996 | | {"positiveFilm", N_("Digitised from a positive on film")}, |
2997 | | {"print", N_("Digitised from a print on non-transparent medium")}, |
2998 | | {"softwareImage", N_("The digital image was created by computer software")}, |
2999 | | }; |
3000 | | |
3001 | | const XmpPropertyInfo xmpPlusInfo[] = { |
3002 | | // PLUS Version 2.0.1 |
3003 | | // https://ns.useplus.org/LDF/ldf-XMPSpecification |
3004 | | // Header |
3005 | | {"Version", N_("PLUS Version"), "Text", xmpText, xmpExternal, |
3006 | | N_("The version number of the PLUS standards in place at the time of the transaction.")}, |
3007 | | {"Licensee", N_("Licensee"), "seq LicenseeDetail", xmpSeq, xmpExternal, |
3008 | | N_("Party or parties to whom the license is granted by the Licensor/s under the license transaction.")}, |
3009 | | {"LicenseeID", N_("Licensee ID"), "Text", xmpText, xmpExternal, N_("Optional PLUS-ID identifying each Licensee.")}, |
3010 | | {"LicenseeName", N_("Licensee Name"), "ProperName", xmpText, xmpExternal, N_("Name of each Licensee.")}, |
3011 | | {"EndUser", N_("End User"), "seq EndUserDetail", xmpSeq, xmpExternal, |
3012 | | N_("Party or parties ultimately making use of the image under the license.")}, |
3013 | | {"EndUserID", N_("End User ID"), "Text", xmpText, xmpExternal, N_("Optional PLUS-ID identifying each End User.")}, |
3014 | | {"EndUserName", N_("End User Name"), "ProperName", xmpText, xmpExternal, N_("Name of each End User.")}, |
3015 | | {"Licensor", N_("Licensor"), "seq LicensorDetail", xmpSeq, xmpExternal, |
3016 | | N_("Party or parties granting the license to the Licensee.")}, |
3017 | | {"LicensorID", N_("Licensor ID"), "Text", xmpText, xmpExternal, N_("Optional PLUS-ID identifying each Licensor.")}, |
3018 | | {"LicensorName", N_("Licensor Name"), "ProperName", xmpText, xmpExternal, N_("Name of each Licensor.")}, |
3019 | | {"LicensorStreetAddress", N_("Licensor Address"), "Text", xmpText, xmpExternal, N_("Licensor street address.")}, |
3020 | | {"LicensorExtendedAddress", N_("Licensor Address Detail"), "Text", xmpText, xmpExternal, |
3021 | | N_("Additional Licensor mailing address details.")}, |
3022 | | {"LicensorCity", N_("Licensor City"), "Text", xmpText, xmpExternal, N_("Licensor City name.")}, |
3023 | | {"LicensorRegion", N_("Licensor State or Province"), "Text", xmpText, xmpExternal, |
3024 | | N_("Licensor State or Province name.")}, |
3025 | | {"LicensorPostalCode", N_("Licensor Postal Code"), "Text", xmpText, xmpExternal, |
3026 | | N_("Licensor Postal Code or Zip Code.")}, |
3027 | | {"LicensorCountry", N_("Licensor Country"), "Text", xmpText, xmpExternal, N_("Licensor Country name.")}, |
3028 | | {"LicensorTelephoneType1", N_("Licensor Telephone Type 1"), "URL", xmpText, xmpExternal, |
3029 | | N_("Licensor Telephone Type 1.")}, |
3030 | | {"LicensorTelephone1", N_("Licensor Telephone 1"), "Text", xmpText, xmpExternal, |
3031 | | N_("Licensor Telephone number 1.")}, |
3032 | | {"LicensorTelephoneType2", N_("Licensor Telephone Type 2"), "URL", xmpText, xmpExternal, |
3033 | | N_("Licensor Telephone Type 2.")}, |
3034 | | {"LicensorTelephone2", N_("Licensor Telephone 2"), "Text", xmpText, xmpExternal, |
3035 | | N_("Licensor Telephone number 2.")}, |
3036 | | {"LicensorEmail", N_("Licensor Email"), "Text", xmpText, xmpExternal, N_("Licensor Email address.")}, |
3037 | | {"LicensorURL", N_("Licensor URL"), "URL", xmpText, xmpExternal, |
3038 | | N_("URL for a Licensor web page. May facilitate licensing of the image.")}, |
3039 | | {"LicensorNotes", N_("Licensor Notes"), "Lang Alt", langAlt, xmpExternal, |
3040 | | N_("Supplemental information for use in identifying and contacting the Licensor/s.")}, |
3041 | | // Media Permissions |
3042 | | {"MediaSummaryCode", N_("PLUS Media Summary Code"), "Text", xmpText, xmpExternal, |
3043 | | N_("A PLUS-standardized alphanumeric code string summarizing the media usages included in the license.")}, |
3044 | | // Constraints |
3045 | | {"LicenseStartDate", N_("License Start Date"), "Date", xmpText, xmpExternal, |
3046 | | N_("The date on which the license takes effect.")}, |
3047 | | {"LicenseEndDate", N_("License End Date"), "Date", xmpText, xmpExternal, |
3048 | | N_("The date on which the license expires.")}, |
3049 | | {"MediaConstraints", N_("Media Constraints"), "Lang Alt", langAlt, xmpExternal, |
3050 | | N_("Constraints limiting the scope of PLUS Media Usage/s included in the license to particular named media or " |
3051 | | "to media not yet specifically defined in the PLUS Media Matrix.")}, |
3052 | | {"RegionConstraints", N_("Region Constraints"), "Lang Alt", langAlt, xmpExternal, |
3053 | | N_("Constraints limiting the scope of geographic distribution to specific cities, states, provinces or other " |
3054 | | "areas to be included in or excluded from the PLUS Regions specified in the Media Usages specified in the " |
3055 | | "license.")}, |
3056 | | {"ProductOrServiceConstraints", N_("Product or Service Constraints"), "Lang Alt", langAlt, xmpExternal, |
3057 | | N_("Constraints limiting usage of the image to promotion of/association with a named product or service.")}, |
3058 | | {"ImageFileConstraints", N_("Image File Constraints"), "bag URL", xmpBag, xmpExternal, |
3059 | | N_("Constraints on the changing of the image file name, metadata or file type.")}, |
3060 | | {"ImageAlterationConstraints", N_("Image Alteration Constraints"), "bag URL", xmpBag, xmpExternal, |
3061 | | N_("Constraints on alteration of the image by cropping, flipping, retouching, colorization, de-colorization " |
3062 | | "or merging.")}, |
3063 | | {"ImageDuplicationConstraints", N_("Image Duplication Constraints"), "URL", xmpText, xmpExternal, |
3064 | | N_("Constraints on the creation of duplicates of the image.")}, |
3065 | | {"ModelReleaseStatus", N_("Model Release Status"), "URL", xmpText, xmpExternal, |
3066 | | N_("Summarizes the availability and scope of model releases authorizing usage of the likenesses of persons " |
3067 | | "appearing in the photograph.")}, |
3068 | | {"ModelReleaseID", N_("Model Release ID"), "bag Text", xmpBag, xmpExternal, |
3069 | | N_("Optional identifier associated with each Model Release.")}, |
3070 | | {"MinorModelAgeDisclosure", N_("Minor Model Age Disclosure"), "URL", xmpText, xmpExternal, |
3071 | | N_("Age of the youngest model pictured in the image, at the time that the image was made.")}, |
3072 | | {"PropertyReleaseStatus", N_("Property Release Status"), "URL", xmpText, xmpExternal, |
3073 | | N_("Summarizes the availability and scope of property releases authorizing usage of the properties appearing " |
3074 | | "in the photograph.")}, |
3075 | | {"PropertyReleaseID", N_("Property Release ID"), "bag Text", xmpBag, xmpExternal, |
3076 | | N_("Optional identifier associated with each Property Release.")}, |
3077 | | {"OtherConstraints", N_("Other Constraints"), "Lang Alt", langAlt, xmpExternal, |
3078 | | N_("Additional constraints on the use of the asset.")}, |
3079 | | // Requirements |
3080 | | {"CreditLineRequired", N_("Credit Line Required"), "URL", xmpText, xmpExternal, |
3081 | | N_("Attribution requirements, if any.")}, |
3082 | | {"AdultContentWarning", N_("Adult Content Warning"), "URL", xmpText, xmpExternal, |
3083 | | N_("Warning indicating the presence of content not suitable for minors.")}, |
3084 | | {"OtherLicenseRequirements", N_("Other License Requirements"), "Lang Alt", langAlt, xmpExternal, |
3085 | | N_("Additional license requirements.")}, |
3086 | | // Conditions |
3087 | | {"TermsAndConditionsText", N_("Terms and Conditions Text"), "Lang Alt", langAlt, xmpExternal, |
3088 | | N_("Terms and Conditions applying to the license.")}, |
3089 | | {"TermsAndConditionsURL", N_("Terms and Conditions URL"), "URL", xmpText, xmpExternal, |
3090 | | N_("URL for Terms and Conditions applying to the license.")}, |
3091 | | {"OtherConditions", N_("Other License Conditions"), "Lang Alt", langAlt, xmpExternal, |
3092 | | N_("Additional license conditions.")}, |
3093 | | // Image Info |
3094 | | {"ImageType", N_("Image Type"), "URL", xmpText, xmpExternal, N_("Identifies the type of image delivered.")}, |
3095 | | {"LicensorImageID", N_("Licensor Image ID"), "Text", xmpText, xmpExternal, |
3096 | | N_("Optional identifier assigned by the Licensor to the image.")}, |
3097 | | {"FileNameAsDelivered", N_("Image File Name As Delivered"), "Text", xmpText, xmpExternal, |
3098 | | N_("Name of the image file delivered to the Licensee for use under the license.")}, |
3099 | | {"ImageFileFormatAsDelivered", N_("Image File Format As Delivered"), "URL", xmpText, xmpExternal, |
3100 | | N_("File format of the image file delivered to the Licensee for use under the license.")}, |
3101 | | {"ImageFileSizeAsDelivered", N_("Image File Size As Delivered"), "URL", xmpText, xmpExternal, |
3102 | | N_("Size of the image file delivered to the Licensee.")}, |
3103 | | {"CopyrightStatus", N_("Copyright Status"), "URL", xmpText, xmpExternal, N_("Copyright status of the image.")}, |
3104 | | {"CopyrightRegistrationNumber", N_("Copyright Registration Number"), "Text", xmpText, xmpExternal, |
3105 | | N_("Copyright Registration Number, if any, applying to the licensed image.")}, |
3106 | | {"FirstPublicationDate", N_("First Publication Date"), "Date", xmpText, xmpExternal, |
3107 | | N_("The date on which the image was first published.")}, |
3108 | | {"CopyrightOwner", N_("Copyright Owner"), "seq CopyrightOwnerDetail", xmpSeq, xmpExternal, |
3109 | | N_("Owner or owners of the copyright in the licensed image.")}, |
3110 | | {"CopyrightOwnerID", N_("Copyright Owner ID"), "Text", xmpText, xmpExternal, |
3111 | | N_("Optional PLUS-ID identifying each Copyright Owner.")}, |
3112 | | {"CopyrightOwnerName", N_("Copyright Owner Name"), "ProperName", xmpText, xmpExternal, |
3113 | | N_("Name of Copyright Owner.")}, |
3114 | | {"CopyrightOwnerImageID", N_("Copyright Owner Image ID"), "Text", xmpText, xmpExternal, |
3115 | | N_("Optional identifier assigned by the Copyright Owner to the image.")}, |
3116 | | {"ImageCreator", N_("Image Creator"), "seq ImageCreatorDetail", xmpSeq, xmpExternal, N_("Creator/s of the image.")}, |
3117 | | {"ImageCreatorID", N_("Image Creator ID"), "Text", xmpText, xmpExternal, |
3118 | | N_("Optional PLUS-ID identifying each Image Creator.")}, |
3119 | | {"ImageCreatorName", N_("Image Creator Name"), "ProperName", xmpText, xmpExternal, N_("Name of Image Creator.")}, |
3120 | | {"ImageCreatorImageID", N_("Image Creator Image ID"), "Text", xmpText, xmpExternal, |
3121 | | N_("Optional identifier assigned by the Image Creator to the image.")}, |
3122 | | {"ImageSupplierID", N_("Image Supplier ID"), "Text", xmpText, xmpExternal, |
3123 | | N_("Optional PLUS-ID identifying the Image Supplier.")}, |
3124 | | {"ImageSupplierName", N_("Image Supplier Name"), "ProperName", xmpText, xmpExternal, N_("Name of Image Supplier.")}, |
3125 | | {"ImageSupplierImageID", N_("Image Supplier Image ID"), "Text", xmpText, xmpExternal, |
3126 | | N_("Optional identifier assigned by the Image Supplier to the image.")}, |
3127 | | {"LicenseeImageID", N_("Licensee Image ID"), "Text", xmpText, xmpExternal, |
3128 | | N_("Optional identifier assigned by the Licensee to the image.")}, |
3129 | | {"LicenseeImageNotes", N_("Licensee Image Notes"), "Lang Alt", langAlt, xmpExternal, |
3130 | | N_("Notes added by Licensee.")}, |
3131 | | {"OtherImageInfo", N_("Other Image Info"), "Lang Alt", langAlt, xmpExternal, N_("Additional image information.")}, |
3132 | | // License Info |
3133 | | {"LicenseID", N_("License ID"), "Text", xmpText, xmpExternal, |
3134 | | N_("Optional PLUS-ID assigned by the Licensor to the License.")}, |
3135 | | {"LicensorTransactionID", N_("Licensor Transaction ID"), "bag Text", xmpBag, xmpExternal, |
3136 | | N_("Identifier assigned by Licensor for Licensor's reference and internal use.")}, |
3137 | | {"LicenseeTransactionID", N_("Licensee Transaction ID"), "bag Text", xmpBag, xmpExternal, |
3138 | | N_("Identifier assigned by Licensee for Licensee's reference and internal use.")}, |
3139 | | {"LicenseeProjectReference", N_("Licensee Project Reference"), "bag Text", xmpBag, xmpExternal, |
3140 | | N_("Project reference name or description assigned by Licensee.")}, |
3141 | | {"LicenseTransactionDate", N_("License Transaction Date"), "Date", xmpText, xmpExternal, |
3142 | | N_("The date of the License Transaction.")}, |
3143 | | {"Reuse", N_("Reuse"), "URL", xmpText, xmpExternal, |
3144 | | N_("Indicates whether a license is a repeat or an initial license. Reuse may require that licenses stored in " |
3145 | | "files previously delivered to the customer be updated.")}, |
3146 | | {"DataMining", N_("Data Mining"), "URL", xmpText, xmpExternal, |
3147 | | N_("Data mining prohibition or permission, optionally with constraints.")}, |
3148 | | {"OtherLicenseDocuments", N_("Other License Documents"), "bag Text", xmpBag, xmpExternal, |
3149 | | N_("Reference information for additional documents associated with the license.")}, |
3150 | | {"OtherLicenseInfo", N_("Other License Info"), "Lang Alt", langAlt, xmpExternal, |
3151 | | N_("Additional license information.")}, |
3152 | | // Custom Fields |
3153 | | {"Custom1", N_("Custom 1"), "bag Lang Alt", xmpBag, xmpExternal, |
3154 | | N_("Optional field for use at Licensor's discretion.")}, |
3155 | | {"Custom2", N_("Custom 2"), "bag Lang Alt", xmpBag, xmpExternal, |
3156 | | N_("Optional field for use at Licensor's discretion.")}, |
3157 | | {"Custom3", N_("Custom 3"), "bag Lang Alt", xmpBag, xmpExternal, |
3158 | | N_("Optional field for use at Licensor's discretion.")}, |
3159 | | {"Custom4", N_("Custom 4"), "bag Lang Alt", xmpBag, xmpExternal, |
3160 | | N_("Optional field for use at Licensor's discretion.")}, |
3161 | | {"Custom5", N_("Custom 5"), "bag Lang Alt", xmpBag, xmpExternal, |
3162 | | N_("Optional field for use at Licensor's discretion.")}, |
3163 | | {"Custom6", N_("Custom 6"), "bag Lang Alt", xmpBag, xmpExternal, |
3164 | | N_("Optional field for use at Licensee's discretion.")}, |
3165 | | {"Custom7", N_("Custom 7"), "bag Lang Alt", xmpBag, xmpExternal, |
3166 | | N_("Optional field for use at Licensee's discretion.")}, |
3167 | | {"Custom8", N_("Custom 8"), "bag Lang Alt", xmpBag, xmpExternal, |
3168 | | N_("Optional field for use at Licensee's discretion.")}, |
3169 | | {"Custom9", N_("Custom 9"), "bag Lang Alt", xmpBag, xmpExternal, |
3170 | | N_("Optional field for use at Licensee's discretion.")}, |
3171 | | {"Custom10", N_("Custom 10"), "bag Lang Alt", xmpBag, xmpExternal, |
3172 | | N_("Optional field for use at Licensee's discretion.")}, |
3173 | | // End of list marker |
3174 | | {nullptr, nullptr, nullptr, invalidTypeId, xmpInternal, nullptr}, |
3175 | | }; |
3176 | | |
3177 | | //! XMP plus:AdultContentWarning |
3178 | | constexpr TagVocabulary plusAdultContentWarning[] = { |
3179 | | {"CW-AWR", N_("Adult Content Warning Required")}, |
3180 | | {"CW-NRQ", N_("Not Required")}, |
3181 | | {"CW-UNK", N_("Unknown")}, |
3182 | | }; |
3183 | | |
3184 | | //! XMP plus:CopyrightStatus |
3185 | | constexpr TagVocabulary plusCopyrightStatus[] = { |
3186 | | {"CS-PRO", N_("Protected")}, |
3187 | | {"CS-PUB", N_("Public Domain")}, |
3188 | | {"CS-UNK", N_("Unknown")}, |
3189 | | }; |
3190 | | |
3191 | | //! XMP plus:CreditLineRequired |
3192 | | constexpr TagVocabulary plusCreditLineRequired[] = { |
3193 | | {"CR-CAI", N_("Credit Adjacent To Image")}, |
3194 | | {"CR-CCA", N_("Credit in Credits Area")}, |
3195 | | {"CR-COI", N_("Credit on Image")}, |
3196 | | {"CR-NRQ", N_("Not Require")}, |
3197 | | }; |
3198 | | |
3199 | | //! XMP plus:ImageAlterationConstraints |
3200 | | constexpr TagVocabulary plusImageAlterationConstraints[] = { |
3201 | | {"AL-CLR", N_("No Colorization")}, {"AL-CRP", N_("No Cropping")}, {"AL-DCL", N_("No De-Colorization")}, |
3202 | | {"AL-FLP", N_("No Flipping")}, {"AL-MRG", N_("No Merging")}, {"AL-RET", N_("No Retouching")}, |
3203 | | }; |
3204 | | |
3205 | | //! XMP plus:ImageDuplicationConstraints |
3206 | | constexpr TagVocabulary plusImageDuplicationConstraints[] = { |
3207 | | {"DP-LIC", N_("Duplication Only as Necessary Under License")}, |
3208 | | {"DP-NDC", N_("No Duplication Constraints")}, |
3209 | | {"DP-NOD", N_("No Duplication")}, |
3210 | | }; |
3211 | | |
3212 | | //! XMP plus:ImageFileConstraints |
3213 | | constexpr TagVocabulary plusImageFileConstraints[] = { |
3214 | | {"IF-MFN", N_("Maintain File Name")}, |
3215 | | {"IF-MFT", N_("Maintain File Type")}, |
3216 | | {"IF-MID", N_("Maintain ID in File Name")}, |
3217 | | {"IF-MMD", N_("Maintain Metadata")}, |
3218 | | }; |
3219 | | |
3220 | | //! XMP plus:ImageFileFormatAsDelivered |
3221 | | constexpr TagVocabulary plusImageFileFormatAsDelivered[] = { |
3222 | | {"FF-BMP", N_("Windows Bitmap (BMP)")}, |
3223 | | {"FF-DNG", N_("Digital Negative (DNG)")}, |
3224 | | {"FF-EPS", N_("Encapsulated PostScript (EPS)")}, |
3225 | | {"FF-GIF", N_("Graphics Interchange Format (GIF)")}, |
3226 | | {"FF-JPG", N_("JPEG Interchange Formats (JPG, JIF, JFIF)")}, |
3227 | | {"FF-OTR", N_("Other")}, |
3228 | | {"FF-PIC", N_("Macintosh Picture (PICT)")}, |
3229 | | {"FF-PNG", N_("Portable Network Graphics (PNG)")}, |
3230 | | {"FF-PSD", N_("Photoshop Document (PSD)")}, |
3231 | | {"FF-RAW", N_("Proprietary RAW Image Format")}, |
3232 | | {"FF-TIF", N_("Tagged Image File Format (TIFF)")}, |
3233 | | {"FF-WMP", N_("Windows Media Photo (HD Photo)")}, |
3234 | | }; |
3235 | | |
3236 | | //! XMP plus:ImageFileSizeAsDelivered |
3237 | | constexpr TagVocabulary plusImageFileSizeAsDelivered[] = { |
3238 | | {"SZ-G50", N_("Greater than 50 MB")}, {"SZ-U01", N_("Up to 1 MB")}, {"SZ-U10", N_("Up to 10 MB")}, |
3239 | | {"SZ-U30", N_("Up to 30 MB")}, {"SZ-U50", N_("Up to 50 MB")}, |
3240 | | }; |
3241 | | |
3242 | | //! XMP plus:ImageType |
3243 | | constexpr TagVocabulary plusImageType[] = { |
3244 | | {"TY-ILL", N_("Illustrated Image")}, |
3245 | | {"TY-MCI", N_("Multimedia or Composited Image")}, |
3246 | | {"TY-OTR", N_("Other")}, |
3247 | | {"TY-PHO", N_("Photographic Image")}, |
3248 | | {"TY-VID", N_("Video")}, |
3249 | | }; |
3250 | | |
3251 | | //! XMP plus:LicensorTelephoneType |
3252 | | constexpr TagVocabulary plusLicensorTelephoneType[] = { |
3253 | | {"cell", N_("Cell")}, {"fax", N_("FAX")}, {"home", N_("Home")}, {"pager", N_("Pager")}, {"work", N_("Work")}, |
3254 | | }; |
3255 | | |
3256 | | //! XMP plus:MinorModelAgeDisclosure |
3257 | | constexpr TagVocabulary plusMinorModelAgeDisclosure[] = { |
3258 | | {"AG-UNK", N_("Age Unknown")}, {"AG-A25", N_("Age 25 or Over")}, {"AG-A24", N_("Age 24")}, |
3259 | | {"AG-A23", N_("Age 23")}, {"AG-A22", N_("Age 22")}, {"AG-A21", N_("Age 21")}, |
3260 | | {"AG-A20", N_("Age 20")}, {"AG-A19", N_("Age 19")}, {"AG-A18", N_("Age 18")}, |
3261 | | {"AG-A17", N_("Age 17")}, {"AG-A16", N_("Age 16")}, {"AG-A15", N_("Age 15")}, |
3262 | | {"AG-U14", N_("Age 14 or Under")}, |
3263 | | }; |
3264 | | |
3265 | | //! XMP plus:ModelReleaseStatus |
3266 | | constexpr TagVocabulary plusModelReleaseStatus[] = { |
3267 | | {"MR-NON", N_("None")}, |
3268 | | {"MR-NAP", N_("Not Applicable")}, |
3269 | | {"MR-UMR", N_("Unlimited Model Releases")}, |
3270 | | {"MR-LMR", N_("Limited or Incomplete Model Releases")}, |
3271 | | }; |
3272 | | |
3273 | | //! XMP plus:PropertyReleaseStatus |
3274 | | constexpr TagVocabulary plusPropertyReleaseStatus[] = { |
3275 | | {"PR-NON", N_("None")}, |
3276 | | {"PR-NAP", N_("Not Applicable")}, |
3277 | | {"PR-UPR", N_("Unlimited Property Releases")}, |
3278 | | {"PR-LPR", N_("Limited or Incomplete Property Releases")}, |
3279 | | }; |
3280 | | |
3281 | | //! XMP plus:Reuse |
3282 | | constexpr TagVocabulary plusReuse[] = { |
3283 | | {"RE-NAP", N_("Not Applicable")}, |
3284 | | {"RE-REU", N_("Repeat Use")}, |
3285 | | }; |
3286 | | |
3287 | | //! XMP plus:DataMining |
3288 | | constexpr TagVocabulary plusDataMining[] = { |
3289 | | {"DMI-UNSPECIFIED", N_("Unspecified - no prohibition defined")}, |
3290 | | {"DMI-ALLOWED", N_("Allowed")}, |
3291 | | {"DMI-PROHIBITED-AIMLTRAINING", N_("Prohibited for AI/ML training")}, |
3292 | | {"DMI-PROHIBITED-GENAIMLTRAINING", N_("Prohibited for Generative AI/ML training")}, |
3293 | | {"DMI-PROHIBITED-EXCEPTSEARCHENGINEINDEXING", N_("Prohibited except for search engine indexing")}, |
3294 | | {"DMI-PROHIBITED", N_("Prohibited")}, |
3295 | | {"DMI-PROHIBITED-SEECONSTRAINT", N_("Prohibited, see Other Constraints property")}, |
3296 | | {"DMI-PROHIBITED-SEEEMBEDDEDRIGHTSEXPR", N_("Prohibited, see Embedded Encoded Rights Expression property")}, |
3297 | | {"DMI-PROHIBITED-SEELINKEDRIGHTSEXPR", N_("Prohibited, see Linked Encoded Rights Expression property")}, |
3298 | | }; |
3299 | | |
3300 | | const XmpPropertyInfo xmpMediaProInfo[] = { |
3301 | | {"Event", N_("Event"), "Text", xmpText, xmpExternal, N_("Fixture Identification")}, |
3302 | | {"Status", N_("Status"), "Text", xmpText, xmpExternal, N_("A notation making the image unique")}, |
3303 | | {"People", N_("People"), "bag Text", xmpBag, xmpExternal, N_("Contact")}, |
3304 | | {"CatalogSets", N_("Catalog Sets"), "bag Text", xmpBag, xmpExternal, |
3305 | | N_("Descriptive markers of catalog items by content")}, |
3306 | | // End of list marker |
3307 | | {nullptr, nullptr, nullptr, invalidTypeId, xmpInternal, nullptr}, |
3308 | | }; |
3309 | | |
3310 | | const XmpPropertyInfo xmpExpressionMediaInfo[] = { |
3311 | | {"Event", N_("Event"), "Text", xmpText, xmpExternal, N_("Fixture Identification")}, |
3312 | | {"Status", N_("Status"), "Text", xmpText, xmpExternal, N_("A notation making the image unique")}, |
3313 | | {"People", N_("People"), "bag Text", xmpBag, xmpExternal, N_("Contact")}, |
3314 | | {"CatalogSets", N_("Catalog Sets"), "bag Text", xmpBag, xmpExternal, |
3315 | | N_("Descriptive markers of catalog items by content")}, |
3316 | | // End of list marker |
3317 | | {nullptr, nullptr, nullptr, invalidTypeId, xmpInternal, nullptr}, |
3318 | | }; |
3319 | | |
3320 | | const XmpPropertyInfo xmpMicrosoftPhotoInfo[] = { |
3321 | | {"RegionInfo", N_("RegionInfo"), "RegionInfo", xmpText, xmpInternal, |
3322 | | N_("Microsoft Photo people-tagging metadata root")}, |
3323 | | // End of list marker |
3324 | | {nullptr, nullptr, nullptr, invalidTypeId, xmpInternal, nullptr}, |
3325 | | }; |
3326 | | |
3327 | | const XmpPropertyInfo xmpMicrosoftPhotoRegionInfoInfo[] = { |
3328 | | {"Regions", N_("Regions"), "bag Region", xmpBag, xmpExternal, N_("Contains Regions/person tags")}, |
3329 | | {"DateRegionsValid", N_("Date Regions Valid"), "Date", xmpText, xmpExternal, |
3330 | | N_("Date the last region was created")}, |
3331 | | // End of list marker |
3332 | | {nullptr, nullptr, nullptr, invalidTypeId, xmpInternal, nullptr}, |
3333 | | }; |
3334 | | |
3335 | | const XmpPropertyInfo xmpMicrosoftPhotoRegionInfo[] = { |
3336 | | {"PersonDisplayName", N_("Person Display Name"), "Text", xmpText, xmpExternal, |
3337 | | N_("Name of the person (in the given rectangle)")}, |
3338 | | {"Rectangle", N_("Rectangle"), "Text", xmpText, xmpExternal, |
3339 | | N_("Rectangle that identifies the person within the photo")}, |
3340 | | { |
3341 | | "PersonEmailDigest", |
3342 | | N_("Person Email Digest"), |
3343 | | "Text", |
3344 | | xmpText, |
3345 | | xmpExternal, |
3346 | | N_("SHA-1 encrypted message hash of the person's Windows Live e-mail address"), |
3347 | | }, |
3348 | | {"PersonLiveIdCID", N_("Person LiveId CID"), "Text", xmpText, xmpExternal, |
3349 | | N_("Signed decimal representation of the person's Windows Live CID")}, |
3350 | | // End of list marker |
3351 | | {nullptr, nullptr, nullptr, invalidTypeId, xmpInternal, nullptr}, |
3352 | | }; |
3353 | | |
3354 | | const XmpPropertyInfo xmpMWGRegionsInfo[] = { |
3355 | | {"Regions", N_("Regions"), "RegionInfo", xmpText, xmpInternal, |
3356 | | N_("Main structure containing region based information")}, |
3357 | | {"AppliedToDimensions", N_("Applied To Dimensions"), "Dimensions", xmpText, xmpExternal, |
3358 | | N_("Width and height of image when storing region data")}, |
3359 | | {"RegionList", N_("Region List"), "bag RegionStruct", xmpBag, xmpExternal, N_("List of Region structures")}, |
3360 | | {"Area", N_("Area"), "Area", xmpText, xmpExternal, N_("Descriptive markers of catalog items by content")}, |
3361 | | {"Type", N_("Type"), "closed Choice of Text", xmpText, xmpExternal, |
3362 | | N_("Type purpose of region (Face|Pet|Focus|BarCode)")}, |
3363 | | {"Name", N_("Name"), "Text", xmpText, xmpExternal, N_("Name/ short description of content in image region")}, |
3364 | | {"Description", N_("Description"), "Text", xmpText, xmpExternal, |
3365 | | N_("Usage scenario for a given focus area (EvaluatedUsed|EvaluatedNotUsed|NotEvaluatedNotUsed)")}, |
3366 | | {"FocusUsage", N_("Focus Usage"), "closed Choice of Text", xmpText, xmpExternal, |
3367 | | N_("Descriptive markers of catalog items by content")}, |
3368 | | {"BarCodeValue", N_("Bar Code Value"), "Text", xmpText, xmpExternal, N_("Decoded BarCode value string")}, |
3369 | | {"Extensions", N_("Extensions"), "Text", xmpText, xmpInternal, |
3370 | | N_("Any top level XMP property to describe the region content")}, |
3371 | | // End of list marker |
3372 | | {nullptr, nullptr, nullptr, invalidTypeId, xmpInternal, nullptr}, |
3373 | | }; |
3374 | | |
3375 | | const XmpPropertyInfo xmpMWGKeywordInfo[] = { |
3376 | | {"Keywords", N_("Keywords"), "KeywordInfo", xmpText, xmpInternal, |
3377 | | N_("Main structure containing keyword based information")}, |
3378 | | {"Hierarchy", N_("Hierarchy"), "bag KeywordStruct", xmpBag, xmpExternal, N_("List of root keyword structures")}, |
3379 | | {"Keyword", N_("Keyword"), "Text", xmpText, xmpExternal, N_("Name of keyword (-node)")}, |
3380 | | {"Applied", N_("Applied"), "Boolean", xmpText, xmpExternal, |
3381 | | N_("True if this keyword has been applied, False otherwise. If missing, mwg-kw:Applied is presumed True for " |
3382 | | "leaf nodes and False for ancestor nodes")}, |
3383 | | {"Children", N_("Children"), "bag KeywordStruct", xmpBag, xmpExternal, N_("List of children keyword structures")}, |
3384 | | |
3385 | | // End of list marker |
3386 | | {nullptr, nullptr, nullptr, invalidTypeId, xmpInternal, nullptr}, |
3387 | | }; |
3388 | | |
3389 | | const XmpPropertyInfo xmpGPanoInfo[] = { |
3390 | | {"UsePanoramaViewer", N_("Use Panorama Viewer"), "Boolean", xmpText, xmpExternal, |
3391 | | N_("Whether to show this image in a panorama viewer rather than as a normal flat image. This may be specified " |
3392 | | "based on user preferences or by the stitching software. The application displaying or ingesting the image " |
3393 | | "may choose to ignore this.")}, |
3394 | | {"CaptureSoftware", N_("Capture Software"), "Text", xmpText, xmpExternal, |
3395 | | N_("If capture was done using an application on a mobile device, such as an Android phone, the name of the " |
3396 | | "application that was used (such as \"Photo Sphere\"). This should be left blank if source images were " |
3397 | | "captured manually, such as by using a DSLR on a tripod.")}, |
3398 | | {"StitchingSoftware", N_("Stitching Software"), "Text", xmpText, xmpExternal, |
3399 | | N_("The software that was used to create the final panorama. This may sometimes be the same value as that of " |
3400 | | "GPano:CaptureSoftware.")}, |
3401 | | {"ProjectionType", N_("Projection Type"), "Open Choice of Text", xmpText, xmpExternal, |
3402 | | N_("Projection type used in the image file. Google products currently support the value equirectangular.")}, |
3403 | | {"PoseHeadingDegrees", N_("Pose Heading Degrees"), "Real", xmpText, xmpExternal, |
3404 | | N_("Compass heading, measured in degrees, for the center the image. Value must be >= 0 and < 360.")}, |
3405 | | {"PosePitchDegrees", N_("Pose Pitch Degrees"), "Real", xmpText, xmpExternal, |
3406 | | N_("Pitch, measured in degrees, for the center in the image. Value must be >= -90 and <= 90.")}, |
3407 | | {"PoseRollDegrees", N_("Pose Roll Degrees"), "Real", xmpText, xmpExternal, |
3408 | | N_("Roll, measured in degrees, of the image where level with the horizon is 0. Value must be > -180 and <= " |
3409 | | "180.")}, |
3410 | | {"InitialViewHeadingDegrees", N_("Initial View Heading Degrees"), "Integer", xmpText, xmpExternal, |
3411 | | N_("The heading angle of the initial view in degrees.")}, |
3412 | | {"InitialViewPitchDegrees", N_("Initial View Pitch Degrees"), "Integer", xmpText, xmpExternal, |
3413 | | N_("The pitch angle of the initial view in degrees.")}, |
3414 | | {"InitialViewRollDegrees", N_("Initial View Roll Degrees"), "Integer", xmpText, xmpExternal, |
3415 | | N_("The roll angle of the initial view in degrees.")}, |
3416 | | {"InitialHorizontalFOVDegrees", N_("Initial Horizontal FOV Degrees"), "Real", xmpText, xmpExternal, |
3417 | | N_("The initial horizontal field of view that the viewer should display (in degrees). This is similar to a " |
3418 | | "zoom level.")}, |
3419 | | {"FirstPhotoDate", N_("First Photo Date"), "Date", xmpText, xmpExternal, |
3420 | | N_("Date and time for the first image created in the panorama.")}, |
3421 | | {"LastPhotoDate", N_("Last Photo Date"), "Date", xmpText, xmpExternal, |
3422 | | N_("Date and time for the last image created in the panorama.")}, |
3423 | | {"SourcePhotosCount", N_("Source Photos Count"), "Integer", xmpText, xmpExternal, |
3424 | | N_("Number of source images used to create the panorama")}, |
3425 | | {"ExposureLockUsed", N_("Exposure Lock Used"), "Boolean", xmpText, xmpExternal, |
3426 | | N_("When individual source photographs were captured, whether or not the camera's exposure setting was " |
3427 | | "locked.")}, |
3428 | | {"CroppedAreaImageWidthPixels", N_("Cropped Area Image Width Pixels"), "Integer", xmpText, xmpExternal, |
3429 | | N_("Original width in pixels of the image (equal to the actual image's width for unedited images).")}, |
3430 | | {"CroppedAreaImageHeightPixels", N_("Cropped Area Image Height Pixels"), "Integer", xmpText, xmpExternal, |
3431 | | N_("Original height in pixels of the image (equal to the actual image's height for unedited images).")}, |
3432 | | {"FullPanoWidthPixels", N_("Full Pano Width Pixels"), "Integer", xmpText, xmpExternal, |
3433 | | N_("Original full panorama width from which the image was cropped. Or, if only a partial panorama was " |
3434 | | "captured, this specifies the width of what the full panorama would have been.")}, |
3435 | | {"FullPanoHeightPixels", N_("Full Pano Height Pixels"), "Integer", xmpText, xmpExternal, |
3436 | | N_("Original full panorama height from which the image was cropped. Or, if only a partial panorama was " |
3437 | | "captured, this specifies the height of what the full panorama would have been.")}, |
3438 | | {"CroppedAreaLeftPixels", N_("Cropped Area Left Pixels"), "Integer", xmpText, xmpExternal, |
3439 | | N_("Column where the left edge of the image was cropped from the full sized panorama.")}, |
3440 | | {"CroppedAreaTopPixels", N_("Cropped Area Top Pixels"), "Integer", xmpText, xmpExternal, |
3441 | | N_("Row where the top edge of the image was cropped from the full sized panorama.")}, |
3442 | | {"InitialCameraDolly", N_("Initial Camera Dolly"), "Real", xmpText, xmpExternal, |
3443 | | N_("This optional parameter moves the virtual camera position along the line of sight, away from the center " |
3444 | | "of the photo sphere. A rear surface position is represented by the value -1.0, while a front surface " |
3445 | | "position is represented by 1.0. For normal viewing, this parameter should be set to 0.")}, |
3446 | | |
3447 | | // End of list marker |
3448 | | {nullptr, nullptr, nullptr, invalidTypeId, xmpInternal, nullptr}, |
3449 | | }; |
3450 | | |
3451 | | const XmpPropertyInfo xmpVideoInfo[] = { |
3452 | | {"Album", N_("Album"), "Text", xmpText, xmpExternal, N_("The name of the album.")}, |
3453 | | {"ArchivalLocation", N_("Archival Location"), "Text", xmpText, xmpExternal, |
3454 | | N_("Information about the Archival Location.")}, |
3455 | | {"Arranger", N_("Arranger"), "Text", xmpText, xmpExternal, N_("Information about the Arranger.")}, |
3456 | | {"ArrangerKeywords", N_("Arranger Keywords"), "Text", xmpText, xmpExternal, |
3457 | | N_("Information about the Arranger Keywords.")}, |
3458 | | {"Artist", N_("Artist"), "Text", xmpText, xmpExternal, N_("The name of the artist or artists.")}, |
3459 | | {"AspectRatio", N_("Video Aspect Ratio"), "Rational", xmpText, xmpExternal, |
3460 | | N_("Ratio of Width:Height, helps to determine how a video would be displayed on a screen")}, |
3461 | | {"AspectRatioType", N_("Video Aspect Ratio Type"), "Text", xmpText, xmpExternal, |
3462 | | N_("Aspect Ratio Type. E.g.: Free-Resizing or Fixed")}, |
3463 | | {"AttachFileData", N_("Attached File Data"), "Text", xmpText, xmpExternal, N_("Attached File Data")}, |
3464 | | {"AttachFileDesc", N_("Attached File Description"), "Text", xmpText, xmpExternal, N_("Attached File Description")}, |
3465 | | {"AttachFileMIME", N_("Attached File MIME Type"), "Text", xmpText, xmpExternal, N_("Attached File MIME Type")}, |
3466 | | {"AttachFileName", N_("Attached File Name"), "Text", xmpText, xmpExternal, N_("Attached File Name")}, |
3467 | | {"AttachFileUID", N_("Attached File UID"), "Integer", xmpText, xmpExternal, N_("Attached File Universal ID")}, |
3468 | | {"BaseURL", N_("Base URL"), "Text", xmpText, xmpExternal, N_("A C string that specifies a Base URL.")}, |
3469 | | {"BitDepth", N_("Bit Depth"), "Integer", xmpText, xmpExternal, |
3470 | | N_("A 16-bit integer that indicates the pixel depth of the compressed image. Values of 1, 2, 4, 8 , 16, 24, " |
3471 | | "and 32 indicate the depth of color images")}, |
3472 | | {"Brightness", N_("Brightness"), "Integer", xmpText, xmpExternal, N_("Brightness setting.")}, |
3473 | | {"CameraByteOrder", N_("Camera Byte Order"), "Text", xmpText, xmpExternal, |
3474 | | N_("Byte Order used by the Video Capturing device.")}, |
3475 | | {"Cinematographer", N_("Video Cinematographer"), "Text", xmpText, xmpExternal, |
3476 | | N_("The video Cinematographer information.")}, |
3477 | | {"CleanApertureWidth", N_("Clean Aperture Width"), "Integer", xmpText, xmpExternal, |
3478 | | N_("Clean aperture width in pixels")}, |
3479 | | {"CleanApertureHeight", N_("Clean Aperture Height"), "Integer", xmpText, xmpExternal, |
3480 | | N_("Clean aperture height in pixels")}, |
3481 | | {"Codec", N_("Video Codec"), "Text", xmpText, xmpExternal, |
3482 | | N_("The video codec information. Informs about the encoding algorithm of video. Codec Info is required for " |
3483 | | "video playback.")}, |
3484 | | {"CodecDecodeAll", N_("Video Codec Decode Info"), "Text", xmpText, xmpExternal, |
3485 | | N_("Contains information the video Codec Decode All, i.e. Enabled/Disabled")}, |
3486 | | {"CodecDescription", N_("Video Codec Description"), "Text", xmpText, xmpExternal, |
3487 | | N_("Contains description the codec.")}, |
3488 | | {"CodecInfo", N_("Video Codec Information"), "Text", xmpText, xmpExternal, |
3489 | | N_("Contains information the codec needs before decoding can be started.")}, |
3490 | | {"CodecDownloadUrl", N_("Video Codec Download URL"), "Text", xmpText, xmpExternal, N_("Video Codec Download URL.")}, |
3491 | | {"CodecSettings", N_("Video Codec Settings"), "Text", xmpText, xmpExternal, |
3492 | | N_("Contains settings the codec needs before decoding can be started.")}, |
3493 | | {"ColorMode", N_("Color Mode"), "Text", xmpText, xmpExternal, N_("Color Mode")}, |
3494 | | {"ColorNoiseReduction", N_("Color Noise Reduction"), "Integer", xmpText, xmpExternal, |
3495 | | N_("\"Color Noise Reduction\" setting. Range 0 to +100.")}, |
3496 | | {"ColorSpace", N_("Video Color Space"), "closed Choice of Text", xmpText, xmpInternal, |
3497 | | N_("The color space. One of: sRGB (used by Photoshop), CCIR-601 (used for NTSC), " |
3498 | | "CCIR-709 (used for HD).")}, |
3499 | | {"Comment", N_("Comment"), "Text", xmpText, xmpExternal, N_("Information about the Comment.")}, |
3500 | | {"Commissioned", N_("Commissioned"), "Text", xmpText, xmpExternal, N_("Commissioned.")}, |
3501 | | {"CompatibleBrands", N_("QTime Compatible FileType Brand"), "Text", xmpText, xmpExternal, |
3502 | | N_("Other QuickTime Compatible FileType Brand")}, |
3503 | | {"Composer", N_("Composer"), "Text", xmpText, xmpExternal, N_("Information about the Composer.")}, |
3504 | | {"ComposerKeywords", N_("Composer Keywords"), "Text", xmpText, xmpExternal, |
3505 | | N_("Information about the Composer Keywords.")}, |
3506 | | {"Compressor", N_("Compressor"), "Text", xmpText, xmpExternal, N_("Video Compression Library Used")}, |
3507 | | {"CompressorID", N_("Video Compressor ID"), "Text", xmpText, xmpExternal, |
3508 | | N_("Video Compression ID of Technology/Codec Used")}, |
3509 | | {"CompressorVersion", N_("Compressor Version"), "Text", xmpText, xmpExternal, |
3510 | | N_("Information about the Compressor Version.")}, |
3511 | | {"Container", N_("Container Type"), "Text", xmpText, xmpExternal, N_("Primary Metadata Container")}, |
3512 | | {"ContentCompressAlgo", N_("Content Compression Algorithm"), "Text", xmpText, xmpExternal, |
3513 | | N_("Content Compression Algorithm. E.g.: zlib")}, |
3514 | | {"ContentEncodingType", N_("Content Encoding Type"), "Text", xmpText, xmpExternal, |
3515 | | N_("Content Encoding Type. E.g.: Encryption or Compression")}, |
3516 | | {"ContentEncryptAlgo", N_("Content Encryption Algorithm"), "Text", xmpText, xmpExternal, |
3517 | | N_("Content Encryption Algorithm. E.g.: Blowfish")}, |
3518 | | {"ContentSignAlgo", N_("Content Signature Algorithm"), "Text", xmpText, xmpExternal, |
3519 | | N_("Content Signature Algorithm. E.g.: RSA")}, |
3520 | | {"ContentSignHashAlgo", N_("Content Sign Hash Algorithm"), "Text", xmpText, xmpExternal, |
3521 | | N_("Content Signature Hash Algorithm. E.g.: SHA1-160 or MD5")}, |
3522 | | {"Contrast", N_("Contrast"), "Closed Choice of Integer", xmpText, xmpInternal, |
3523 | | N_("Indicates the direction of contrast processing applied by the camera.")}, |
3524 | | {"Copyright", N_("Copyright"), "Text", xmpText, xmpExternal, |
3525 | | N_("Copyright, can be name of an organization or an individual.")}, |
3526 | | {"CostumeDesigner", N_("Costume Designer"), "Text", xmpText, xmpExternal, |
3527 | | N_("Costume Designer associated with the video.")}, |
3528 | | {"Country", N_("Country"), "Text", xmpText, xmpExternal, N_("Name of the country where the video was created.")}, |
3529 | | {"CreationDate", N_("Creation Date"), "Integer", xmpText, xmpExternal, |
3530 | | N_("Specifies the date and time of the initial creation of the file. The value is given as the " |
3531 | | "number of 100-nanosecond intervals since January 1, 1601, according to Coordinated Universal Time " |
3532 | | "(Greenwich Mean Time).")}, |
3533 | | {"CropBottom", N_("Pixel Crop Bottom"), "Integer", xmpText, xmpExternal, |
3534 | | N_("Number of Pixels to be cropped from the bottom.")}, |
3535 | | {"CropLeft", N_("Pixel Crop Left"), "Integer", xmpText, xmpExternal, |
3536 | | N_("Number of Pixels to be cropped from the left.")}, |
3537 | | {"CropRight", N_("Pixel Crop Right"), "Integer", xmpText, xmpExternal, |
3538 | | N_("Number of Pixels to be cropped from the right.")}, |
3539 | | {"Cropped", N_("Cropped"), "Integer", xmpText, xmpExternal, N_("Field that indicates if a video is cropped.")}, |
3540 | | {"CropTop", N_("Pixel Crop Top"), "Integer", xmpText, xmpExternal, |
3541 | | N_("Number of Pixels to be cropped from the top.")}, |
3542 | | {"CurrentTime", N_("Current Time"), "Integer", xmpText, xmpExternal, |
3543 | | N_("The time value for current time position within the movie.")}, |
3544 | | {"DataPackets", N_("Data Packets"), "Integer", xmpText, xmpExternal, |
3545 | | N_("Specifies the number of Data Packet entries that exist within the Data Object.")}, |
3546 | | {"DateTimeOriginal", N_("Date and Time Original"), "Date", xmpText, xmpInternal, |
3547 | | N_("Date and time when original video was generated, in ISO 8601 format.")}, |
3548 | | {"DateTimeDigitized", N_("Date and Time Digitized"), "Date", xmpText, xmpInternal, |
3549 | | N_("Date and time when video was stored as digital data, can be the same " |
3550 | | "as DateTimeOriginal if originally stored in digital form. Stored in ISO 8601 format.")}, |
3551 | | {"DateUTC", N_("Date-Time Original"), "Text", xmpText, xmpExternal, N_("Contains the production date")}, |
3552 | | {"DefaultOn", N_("Video Track Default On"), "Text", xmpText, xmpExternal, |
3553 | | N_("Video Track Default On , i.e. Enabled/Disabled")}, |
3554 | | {"DigitalZoomRatio", N_("Digital Zoom Ratio"), "Rational", xmpText, xmpInternal, |
3555 | | N_("Indicates the digital zoom ratio when the video was shot.")}, |
3556 | | {"Dimensions", N_("Dimensions"), "Text", xmpText, xmpExternal, |
3557 | | N_("Information about the Dimensions of the video frame.")}, |
3558 | | {"Director", N_("Director"), "Text", xmpText, xmpExternal, N_("Information about the Director.")}, |
3559 | | {"DisplayUnit", N_("Video Display Unit"), "Text", xmpText, xmpExternal, |
3560 | | N_("Video display unit. E.g.: cm, pixels, inch")}, |
3561 | | {"DistributedBy", N_("Distributed By"), "Text", xmpText, xmpExternal, |
3562 | | N_("Distributed By, i.e. name of person or organization.")}, |
3563 | | {"DocType", N_("Doc Type"), "Text", xmpText, xmpExternal, |
3564 | | N_("Describes the contents of the file. In the case of a MATROSKA file, its value is 'matroska'")}, |
3565 | | {"DocTypeReadVersion", N_("Doc Type Read Version"), "Integer", xmpText, xmpExternal, |
3566 | | N_("A Matroska video specific property, helps in determining the compatibility of file with a particular " |
3567 | | "version of a video player")}, |
3568 | | {"DocTypeVersion", N_("Doc Type Version"), "Integer", xmpText, xmpExternal, |
3569 | | N_("A Matroska video specific property, indicated the version of filetype, helps in determining the " |
3570 | | "compatibility")}, |
3571 | | {"DotsPerInch", N_("Dots Per Inch"), "Integer", xmpText, xmpExternal, N_("Dots Per Inch")}, |
3572 | | {"duration", N_("Duration"), "Integer", xmpText, xmpExternal, |
3573 | | N_("The duration of the media file. Measured in milli-seconds.")}, |
3574 | | {"EBMLReadVersion", N_("EBML Read Version"), "Integer", xmpText, xmpExternal, |
3575 | | N_("Extensible Binary Meta Language Read Version")}, |
3576 | | {"EBMLVersion", N_("EBML Version"), "Integer", xmpText, xmpExternal, N_("Extensible Binary Meta Language Version")}, |
3577 | | {"Edit1", N_("Edit Block 1 / Language"), "Text", xmpText, xmpExternal, |
3578 | | N_("Information about the Edit / Language.")}, |
3579 | | {"Edit2", N_("Edit Block 2 / Language"), "Text", xmpText, xmpExternal, |
3580 | | N_("Information about the Edit / Language.")}, |
3581 | | {"Edit3", N_("Edit Block 3 / Language"), "Text", xmpText, xmpExternal, |
3582 | | N_("Information about the Edit / Language.")}, |
3583 | | {"Edit4", N_("Edit Block 4 / Language"), "Text", xmpText, xmpExternal, |
3584 | | N_("Information about the Edit / Language.")}, |
3585 | | {"Edit5", N_("Edit Block 5 / Language"), "Text", xmpText, xmpExternal, |
3586 | | N_("Information about the Edit / Language.")}, |
3587 | | {"Edit6", N_("Edit Block 6 / Language"), "Text", xmpText, xmpExternal, |
3588 | | N_("Information about the Edit / Language.")}, |
3589 | | {"Edit7", N_("Edit Block 7 / Language"), "Text", xmpText, xmpExternal, |
3590 | | N_("Information about the Edit / Language.")}, |
3591 | | {"Edit8", N_("Edit Block 8 / Language"), "Text", xmpText, xmpExternal, |
3592 | | N_("Information about the Edit / Language.")}, |
3593 | | {"Edit9", N_("Edit Block 9 / Language"), "Text", xmpText, xmpExternal, |
3594 | | N_("Information about the Edit / Language.")}, |
3595 | | {"EditedBy", N_("Edited By"), "Text", xmpText, xmpExternal, N_("Edited By, i.e. name of person or organization.")}, |
3596 | | {"Enabled", N_("Video Track Enabled"), "Text", xmpText, xmpExternal, |
3597 | | N_("Status of Video Track, i.e. Enabled/Disabled")}, |
3598 | | {"EncodedBy", N_("Encoded By"), "Text", xmpText, xmpExternal, |
3599 | | N_("Encoded By, i.e. name of person or organization.")}, |
3600 | | {"EncodedPixelsWidth", N_("Encoded Pixels Width"), "Integer", xmpText, xmpExternal, |
3601 | | N_("Encoded Pixels width in pixels")}, |
3602 | | {"EncodedPixelsHeight", N_("Encoded Pixels Height"), "Integer", xmpText, xmpExternal, |
3603 | | N_("Encoded Pixels height in pixels")}, |
3604 | | {"Encoder", N_("Encoder"), "Text", xmpText, xmpExternal, N_("Information about the Encoder.")}, |
3605 | | {"EndTimecode", N_("End Timecode"), "Integer", xmpText, xmpExternal, N_("End Timecode")}, |
3606 | | {"Engineer", N_("Engineer"), "Text", xmpText, xmpExternal, N_("Engineer, in most cases name of person.")}, |
3607 | | {"Equipment", N_("Equipment"), "Text", xmpText, xmpExternal, |
3608 | | N_("Information about the Equipment used for recording Video.")}, |
3609 | | {"ExposureCompensation", N_("Exposure Compensation"), "Text", xmpText, xmpExternal, |
3610 | | N_("Exposure Compensation Information.")}, |
3611 | | {"ExposureProgram", N_("Exposure Program"), "Text", xmpText, xmpExternal, N_("Exposure Program Information.")}, |
3612 | | {"ExposureTime", N_("Exposure Time"), "Rational", xmpText, xmpInternal, N_("Exposure time in seconds.")}, |
3613 | | {"ExtendedContentDescription", N_("Extended Content Description"), "Text", xmpSeq, xmpExternal, |
3614 | | N_("Extended Content Description, usually found in ASF type files.")}, |
3615 | | {"FileDataRate", N_("File Data Rate"), "Rational", xmpText, xmpExternal, |
3616 | | N_("The file data rate in megabytes per second. For example: \"36/10\" = 3.6 MB/sec")}, |
3617 | | {"FileID", N_("File ID"), "Text", xmpText, xmpExternal, N_("File ID.")}, |
3618 | | {"FileLength", N_("File Length"), "Integer", xmpText, xmpInternal, N_("File length.")}, |
3619 | | {"FileName", N_("File Name"), "Text", xmpText, xmpExternal, N_("File Name or Absolute File Path")}, |
3620 | | {"FileSize", N_("File Size"), "Integer", xmpText, xmpExternal, N_("File Size, in MB")}, |
3621 | | {"FileType", N_("File Type"), "Text", xmpText, xmpExternal, N_("Extension of File or Type of File")}, |
3622 | | {"FilterEffect", N_("Filter Effect"), "Text", xmpText, xmpExternal, N_("Filter Effect Settings Applied.")}, |
3623 | | {"FirmwareVersion", N_("Firmware Version"), "Text", xmpText, xmpExternal, |
3624 | | N_("Firmware Version of the Camera/Video device.")}, |
3625 | | {"FNumber", N_("F Number"), "Rational", xmpText, xmpInternal, N_("F number. Camera Lens specific data.")}, |
3626 | | {"FocalLength", N_("Focal Length"), "Rational", xmpText, xmpInternal, |
3627 | | N_("Focal length of the lens, in millimeters.")}, |
3628 | | {"FocusMode", N_("Focus Mode"), "Text", xmpText, xmpExternal, |
3629 | | N_("Focus Mode of the Lens. E.g.: AF for Auto Focus")}, |
3630 | | {"Format", N_("Format"), "Text", xmpText, xmpExternal, |
3631 | | N_("Indication of movie format (computer-generated, digitized, and so on).")}, |
3632 | | {"FrameCount", N_("Frame Count"), "Integer", xmpText, xmpExternal, N_("Total number of frames in a video")}, |
3633 | | {"FrameHeight", N_("Frame Height"), "Integer", xmpText, xmpExternal, N_("Height of frames in a video")}, |
3634 | | {"FrameRate", N_("Video Frame Rate"), "Frames per Second", xmpText, xmpExternal, |
3635 | | N_("Rate at which frames are presented in a video (Expressed in fps(Frames per Second))")}, |
3636 | | {"FrameSize", N_("Video Frame Size"), "Dimensions", xmpText, xmpExternal, |
3637 | | N_("The frame size. For example: w:720, h: 480, unit:pixels")}, |
3638 | | {"FrameWidth", N_("Frame Width"), "Integer", xmpText, xmpExternal, N_("Width of frames in a video")}, |
3639 | | {"Genre", N_("Genre"), "Text", xmpText, xmpExternal, N_("The name of the genre.")}, |
3640 | | {"GPSAltitude", N_("GPS Altitude"), "Rational", xmpText, xmpInternal, |
3641 | | N_("GPS tag 6, 0x06. Indicates altitude in meters.")}, |
3642 | | {"GPSAltitudeRef", N_("GPS Altitude Reference"), "Closed Choice of Integer", xmpText, xmpInternal, |
3643 | | N_("GPS tag 5, 0x05. Indicates whether the altitude is above or below sea level.")}, |
3644 | | {"GPSCoordinates", N_("GPS Coordinates"), "Text", xmpText, xmpExternal, |
3645 | | N_("Information about the GPS Coordinates.")}, |
3646 | | {"GPSDateStamp", N_("GPS Time Stamp"), "Date", xmpText, xmpInternal, N_("Date stamp of GPS data.")}, |
3647 | | {"GPSImgDirection", N_("GPS Image Direction"), "Rational", xmpText, xmpInternal, |
3648 | | N_("Direction of image when captured, values range from 0 to 359.99.")}, |
3649 | | {"GPSImgDirectionRef", N_("GPS Image Direction Reference"), "Closed Choice of Text", xmpText, xmpInternal, |
3650 | | N_("Reference for image direction.")}, |
3651 | | {"GPSLatitude", N_("GPS Latitude"), "GPSCoordinate", xmpText, xmpInternal, |
3652 | | N_("(North/South). Indicates latitude.")}, |
3653 | | {"GPSLongitude", N_("GPS Longitude"), "GPSCoordinate", xmpText, xmpInternal, |
3654 | | N_("(East/West). Indicates longitude.")}, |
3655 | | {"GPSMapDatum", N_("GPS Map Datum"), "Text", xmpText, xmpInternal, N_("Geodetic survey data.")}, |
3656 | | {"GPSSatellites", N_("GPS Satellites"), "Text", xmpText, xmpInternal, |
3657 | | N_("Satellite information, format is unspecified.")}, |
3658 | | {"GPSTimeStamp", N_("GPS Time Stamp"), "Date", xmpText, xmpInternal, N_("Time stamp of GPS data.")}, |
3659 | | {"GPSVersionID", N_("GPS Version ID"), "Text", xmpText, xmpInternal, |
3660 | | N_("A decimal encoding with period separators.")}, |
3661 | | {"GraphicsMode", N_("Graphics Mode"), "Text", xmpText, xmpExternal, |
3662 | | N_("A 16-bit integer that specifies the transfer mode. The transfer mode specifies which Boolean" |
3663 | | "operation QuickDraw should perform when drawing or transferring an image from one location to another.")}, |
3664 | | {"Grouping", N_("Grouping"), "Text", xmpText, xmpExternal, N_("Information about the Grouping.")}, |
3665 | | {"HandlerClass", N_("Handler Class"), "Text", xmpText, xmpExternal, |
3666 | | N_("A four-character code that identifies the type of the handler. Only two values are valid for this field: " |
3667 | | "'mhlr' for media handlers and 'dhlr' for data handlers.")}, |
3668 | | {"HandlerDescription", N_("Handler Description"), "Text", xmpText, xmpExternal, |
3669 | | N_("A (counted) string that specifies the name of the component-that is, the media handler used when this " |
3670 | | "media was created..")}, |
3671 | | {"HandlerType", N_("Handler Type"), "Text", xmpText, xmpExternal, |
3672 | | N_("A four-character code that identifies the type of the media handler or data handler.")}, |
3673 | | {"HandlerVendorID", N_("Handler Vendor ID"), "Text", xmpText, xmpExternal, N_("Component manufacturer.")}, |
3674 | | {"Height", N_("Video Height"), "Integer", xmpText, xmpExternal, N_("Video height in pixels")}, |
3675 | | {"HueAdjustment", N_("Hue Adjustment"), "Integer", xmpText, xmpExternal, |
3676 | | N_("Hue Adjustment Settings Information.")}, |
3677 | | {"ImageLength", N_("Image Length"), "Integer", xmpText, xmpExternal, |
3678 | | N_("Image Length, a property inherited from BitMap format")}, |
3679 | | {"InfoBannerImage", N_("Info Banner Image"), "Text", xmpText, xmpExternal, N_("Information Banner Image.")}, |
3680 | | {"InfoBannerURL", N_("Info Banner URL"), "Text", xmpText, xmpExternal, N_("Information Banner URL.")}, |
3681 | | {"Information", N_("Information"), "Text", xmpText, xmpExternal, N_("Additional Movie Information.")}, |
3682 | | {"InfoText", N_("Info Text"), "Text", xmpText, xmpExternal, N_("Information Text.")}, |
3683 | | {"InfoURL", N_("Info URL"), "Text", xmpText, xmpExternal, N_("Information URL.")}, |
3684 | | {"ISO", N_("ISO Setting"), "Integer", xmpText, xmpExternal, N_("Information about the ISO Setting.")}, |
3685 | | {"ISRCCode", N_("ISRC Code"), "Text", xmpText, xmpExternal, N_("Information about the ISRC Code.")}, |
3686 | | {"Junk", N_("Junk Data"), "Text", xmpText, xmpExternal, N_("Video Junk data")}, |
3687 | | {"Language", N_("Language"), "Text", xmpText, xmpExternal, N_("Language.")}, |
3688 | | {"Length", N_("Length"), "Integer", xmpText, xmpExternal, N_("The length of the media file.")}, |
3689 | | {"LensModel", N_("Lens Model"), "Text", xmpText, xmpExternal, N_("Lens Model.")}, |
3690 | | {"LensType", N_("Lens Type"), "Text", xmpText, xmpExternal, N_("Lens Type.")}, |
3691 | | {"Lightness", N_("Lightness"), "Text", xmpText, xmpExternal, N_("Lightness.")}, |
3692 | | {"LocationInfo", N_("Location Information"), "Text", xmpText, xmpExternal, N_("Location Information.")}, |
3693 | | {"LogoIconURL", N_("Logo Icon URL"), "Text", xmpText, xmpExternal, N_("A C string that specifies Logo Icon URL.")}, |
3694 | | {"LogoURL", N_("Logo URL"), "Text", xmpText, xmpExternal, N_("A C string that specifies a Logo URL.")}, |
3695 | | {"Lyrics", N_("Lyrics"), "Text", xmpText, xmpExternal, N_("Lyrics of a Song/Video.")}, |
3696 | | {"MajorBrand", N_("QTime Major FileType Brand"), "Text", xmpText, xmpExternal, |
3697 | | N_("QuickTime Major File Type Brand")}, |
3698 | | {"Make", N_("Equipment Make"), "Text", xmpText, xmpExternal, N_("Manufacturer of recording equipment")}, |
3699 | | {"MakerNoteType", N_("Camera Maker Note Type"), "Text", xmpText, xmpExternal, N_("Maker Note Type of the camera.")}, |
3700 | | {"MakerNoteVersion", N_("Camera Maker Note Version"), "Text", xmpText, xmpExternal, |
3701 | | N_("Maker Note Version of the camera.")}, |
3702 | | {"MakerURL", N_("Maker URL"), "Text", xmpText, xmpExternal, N_("Camera Manufacturer's URL.")}, |
3703 | | {"MaxApertureValue", N_("Maximum Aperture Value"), "Rational", xmpText, xmpInternal, |
3704 | | N_("Smallest F number of lens, in APEX.")}, |
3705 | | {"MaxBitRate", N_("Maximum Bit Rate"), "Integer", xmpText, xmpExternal, |
3706 | | N_("Specifies the maximum instantaneous bit rate in bits per second for the entire file. This shall equal the " |
3707 | | "sum of the bit rates of the individual digital media streams.")}, |
3708 | | {"MaxDataRate", N_("Maximum Data Rate"), "kiloBytes per Second", xmpText, xmpExternal, |
3709 | | N_("Peak rate at which data is presented in a video (Expressed in kB/s(kiloBytes per Second))")}, |
3710 | | {"MediaCreateDate", N_("Media Track Create Date"), "Integer", xmpText, xmpExternal, |
3711 | | N_("A 32-bit integer that indicates (in seconds since midnight, January 1, 1904) when the media header was " |
3712 | | "created.")}, |
3713 | | {"MediaDuration", N_("Media Track Duration"), "Integer", xmpText, xmpExternal, |
3714 | | N_("A time value that indicates the duration of this media (in the movie's time coordinate system).")}, |
3715 | | {"MediaHeaderVersion", N_("Media Header Version"), "Text", xmpText, xmpExternal, |
3716 | | N_("A 1-byte specification of the version of this media header")}, |
3717 | | {"MediaLangCode", N_("Media Language Code"), "Integer", xmpText, xmpExternal, |
3718 | | N_("A 16-bit integer that specifies the language code for this media.")}, |
3719 | | {"MediaModifyDate", N_("Media Track Modify Date"), "Integer", xmpText, xmpExternal, |
3720 | | N_("A 32-bit integer that indicates (in seconds since midnight, January 1, 1904) when the media header was " |
3721 | | "last modified.")}, |
3722 | | {"MediaTimeScale", N_("Media Time Scale"), "Integer", xmpText, xmpExternal, |
3723 | | N_("A time value that indicates the time scale for this media-that is, the number of time units that pass per " |
3724 | | "second in its time coordinate system.")}, |
3725 | | {"Medium", N_("Medium"), "Text", xmpSeq, xmpExternal, N_("Medium.")}, |
3726 | | {"Metadata", N_("Metadata"), "Text", xmpSeq, xmpExternal, |
3727 | | N_("An array of Unknown / Unregistered Metadata Tags and their values.")}, |
3728 | | {"MetadataLibrary", N_("Metadata Library"), "Text", xmpSeq, xmpExternal, |
3729 | | N_("An array of Unregistered Metadata Library Tags and their values.")}, |
3730 | | {"MeteringMode", N_("Metering Mode"), "Closed Choice of Integer", xmpText, xmpInternal, N_("Metering mode.")}, |
3731 | | {"MicroSecPerFrame", N_("Micro Seconds Per Frame"), "Integer", xmpText, xmpExternal, |
3732 | | N_("Number of micro seconds per frame, or frame rate")}, |
3733 | | {"MimeType", N_("Mime Type"), "Text", xmpText, xmpExternal, N_("Tells about the video format")}, |
3734 | | {"MinorVersion", N_("QTime Minor FileType Version"), "Text", xmpText, xmpExternal, |
3735 | | N_("QuickTime Minor File Type Version")}, |
3736 | | {"Model", N_("Equipment Model"), "Text", xmpText, xmpExternal, N_("Model name or number of equipment.")}, |
3737 | | {"ModificationDate", N_("Modification Date-Time"), "Text", xmpText, xmpExternal, |
3738 | | N_("Contains the modification date of the video")}, |
3739 | | {"MovieHeaderVersion", N_("Movie Header Version"), "Integer", xmpText, xmpExternal, N_("Movie Header Version")}, |
3740 | | {"MusicBy", N_("Music By"), "Text", xmpText, xmpExternal, N_("Music By, i.e. name of person or organization.")}, |
3741 | | {"MuxingApp", N_("Muxing App"), "Text", xmpText, xmpExternal, |
3742 | | N_("Contains the name of the library that has been used to create the file (like \"libmatroska 0.7.0\")")}, |
3743 | | {"Name", N_("Name"), "Text", xmpText, xmpExternal, N_("Name of song or the event.")}, |
3744 | | {"NextTrackID", N_("Next Track ID"), "Integer", xmpText, xmpExternal, |
3745 | | N_("A 32-bit integer that indicates a value to use for the track ID number of the next track added to this " |
3746 | | "movie. Note that 0 is not a valid track ID value.")}, |
3747 | | {"NumOfColours", N_("Number Of Colours"), "Integer/Text", xmpText, xmpExternal, N_("Total number of colours used")}, |
3748 | | {"NumOfImpColours", N_("Number Of Important Colours"), "Integer/Text", xmpText, xmpExternal, |
3749 | | N_("Number Of Important Colours, a property inherited from BitMap format")}, |
3750 | | {"NumOfParts", N_("Number Of Parts"), "Integer", xmpText, xmpExternal, N_("Total number of parts in the video.")}, |
3751 | | {"OpColor", N_("Operation Colours"), "Integer/Text", xmpText, xmpExternal, |
3752 | | N_("Three 16-bit values that specify the red, green, and blue colors for the transfer mode operation " |
3753 | | "indicated in the graphics mode field.")}, |
3754 | | {"Organization", N_("Organization"), "Text", xmpText, xmpExternal, |
3755 | | N_("Name of organization associated with the video.")}, |
3756 | | {"Orientation", N_("Orientation"), "Closed Choice of Integer", xmpText, xmpInternal, |
3757 | | N_("Video Orientation:" |
3758 | | "1 = Horizontal (normal) " |
3759 | | "2 = Mirror horizontal " |
3760 | | "3 = Rotate 180 " |
3761 | | "4 = Mirror vertical " |
3762 | | "5 = Mirror horizontal and rotate 270 CW " |
3763 | | "6 = Rotate 90 CW " |
3764 | | "7 = Mirror horizontal and rotate 90 CW " |
3765 | | "8 = Rotate 270 CW")}, |
3766 | | {"Part", N_("Part"), "Text", xmpText, xmpExternal, N_("Part.")}, |
3767 | | {"Performers", N_("Performers"), "Text", xmpText, xmpExternal, N_("Performers involved in the video.")}, |
3768 | | {"PerformerKeywords", N_("Performer Keywords"), "Text", xmpText, xmpExternal, N_("Performer Keywords.")}, |
3769 | | {"PerformerURL", N_("Performer URL"), "Text", xmpText, xmpExternal, N_("Performer's dedicated URL.")}, |
3770 | | {"PictureControlData", N_("Picture Control Data"), "Text", xmpText, xmpExternal, N_("Picture Control Data.")}, |
3771 | | {"PictureControlVersion", N_("Picture Control Version"), "Text", xmpText, xmpExternal, |
3772 | | N_("Picture Control Data Version.")}, |
3773 | | {"PictureControlName", N_("Picture Control Name"), "Text", xmpText, xmpExternal, N_("Picture Control Name.")}, |
3774 | | {"PictureControlBase", N_("Picture Control Base"), "Text", xmpText, xmpExternal, N_("Picture Control Data Base.")}, |
3775 | | {"PictureControlAdjust", N_("Picture Control Adjust"), "Text", xmpText, xmpExternal, |
3776 | | N_("Picture Control Adjust Information.")}, |
3777 | | {"PictureControlQuickAdjust", N_("Picture Control Quick Adjust"), "Text", xmpText, xmpExternal, |
3778 | | N_("Picture Control Quick Adjustment Settings.")}, |
3779 | | {"PlaySelection", N_("Play Selection"), "Text", xmpText, xmpExternal, N_("Play Selection.")}, |
3780 | | {"PlayMode", N_("Play Mode"), "Text", xmpText, xmpExternal, N_("Information about the Play Mode.")}, |
3781 | | {"PhysicalEquivalent", N_("Chapter Physical Equivalent"), "Text", xmpText, xmpExternal, |
3782 | | N_("Contains the information of External media.")}, |
3783 | | {"PixelDepth", N_("Video Pixel Depth"), "closed Choice of Text", xmpText, xmpExternal, |
3784 | | N_("The size in bits of each color component of a pixel. Standard Windows 32-bit " |
3785 | | "pixels have 8 bits per component. One of: 8Int, 16Int, 32Int, 32Float.")}, |
3786 | | {"PixelPerMeterX", N_("Pixels Per Meter X"), "Integer", xmpText, xmpExternal, |
3787 | | N_("Pixels Per Meter X, a property inherited from BitMap format")}, |
3788 | | {"PixelPerMeterY", N_("Pixels Per Meter Y"), "Integer", xmpText, xmpExternal, |
3789 | | N_("Pixels Per Meter Y, a property inherited from BitMap format")}, |
3790 | | {"Planes", N_("Planes"), "Integer", xmpText, xmpExternal, N_("The number of Image Planes in the video")}, |
3791 | | {"PosterTime", N_("Poster Time"), "Integer", xmpText, xmpExternal, |
3792 | | N_("The time value of the time of the movie poster.")}, |
3793 | | {"PreferredRate", N_("Preferred Rate"), "Rational", xmpText, xmpExternal, |
3794 | | N_("A 32-bit fixed-point number that specifies the rate at which to play this movie. A value of 1.0 indicates " |
3795 | | "normal rate.")}, |
3796 | | {"PreferredVolume", N_("Preferred Volume"), "Rational", xmpText, xmpExternal, |
3797 | | N_("A 16-bit fixed-point number that specifies how loud to play this movie's sound. A value of 1.0 indicates " |
3798 | | "full volume.")}, |
3799 | | {"Preroll", N_("Preroll"), "Integer", xmpText, xmpExternal, |
3800 | | N_("Specifies the amount of time to buffer data before starting to play the file, in millisecond units. If " |
3801 | | "this value is nonzero," |
3802 | | "the Play Duration field and all of the payload Presentation Time fields have been offset by this amount. " |
3803 | | "Therefore, player software " |
3804 | | "must subtract the value in the preroll field from the play duration and presentation times to calculate " |
3805 | | "their actual values.")}, |
3806 | | {"PreviewAtomType", N_("Preview Atom Type"), "Text", xmpText, xmpExternal, |
3807 | | N_("Indicates the type of atom that contains the preview data")}, |
3808 | | {"PreviewDate", N_("Preview Date"), "Integer", xmpText, xmpExternal, |
3809 | | N_("The date of the movie preview in local time converted from UTC")}, |
3810 | | {"PreviewDuration", N_("Preview Duration"), "Integer", xmpText, xmpExternal, |
3811 | | N_("The duration of the movie preview in movie time scale units")}, |
3812 | | {"PreviewTime", N_("Preview Time"), "Integer", xmpText, xmpExternal, |
3813 | | N_("The time value in the movie at which the preview begins.")}, |
3814 | | {"PreviewVersion", N_("Preview Version"), "Integer", xmpText, xmpExternal, N_("The version of the movie preview")}, |
3815 | | {"ProducedBy", N_("Produced By"), "Text", xmpText, xmpExternal, |
3816 | | N_("Produced By, i.e. name of person or organization.")}, |
3817 | | {"Producer", N_("Producer"), "Text", xmpText, xmpExternal, N_("Producer involved with the video.")}, |
3818 | | {"ProducerKeywords", N_("Producer Keywords"), "Text", xmpText, xmpExternal, |
3819 | | N_("Information about the Producer Keywords.")}, |
3820 | | {"ProductionApertureWidth", N_("Production Aperture Width"), "Integer", xmpText, xmpExternal, |
3821 | | N_("Production aperture width in pixels")}, |
3822 | | {"ProductionApertureHeight", N_("Production Aperture Height"), "Integer", xmpText, xmpExternal, |
3823 | | N_("Production aperture height in pixels")}, |
3824 | | {"ProductionDesigner", N_("Production Designer"), "Text", xmpText, xmpExternal, |
3825 | | N_("Information about the Production Designer.")}, |
3826 | | {"ProductionStudio", N_("Production Studio"), "Text", xmpText, xmpExternal, |
3827 | | N_("Information about the Production Studio.")}, |
3828 | | {"Product", N_("Product"), "Text", xmpText, xmpExternal, N_("Product.")}, |
3829 | | {"ProjectRef", N_("Project Reference"), "ProjectLink", xmpText, xmpExternal, |
3830 | | N_("A reference to the project that created this file.")}, |
3831 | | {"Rate", N_("Rate"), "Integer", xmpText, xmpExternal, N_("Rate.")}, |
3832 | | {"Rated", N_("Rated"), "Text", xmpText, xmpExternal, N_("The age circle required for viewing the video.")}, |
3833 | | {"Rating", N_("Rating"), "Text", xmpText, xmpExternal, N_("Rating, e.g. 7 or 8 (generally out of 10).")}, |
3834 | | {"RecordLabelName", N_("Record Label Name"), "Text", xmpText, xmpExternal, |
3835 | | N_("Record Label Name, or the name of the organization recording the video.")}, |
3836 | | {"RecordLabelURL", N_("Record Label URL"), "Text", xmpText, xmpExternal, N_("Record Label URL.")}, |
3837 | | {"RecordingCopyright", N_("Recording Copyright"), "Text", xmpText, xmpExternal, N_("Recording Copyright.")}, |
3838 | | {"Requirements", N_("Requirements"), "Text", xmpText, xmpExternal, N_("Information about the Requirements.")}, |
3839 | | {"ResolutionUnit", N_("Resolution Unit"), "Closed Choice of Integer", xmpText, xmpInternal, |
3840 | | N_("Unit used for XResolution and YResolution. Value is one of: 2 = inches; 3 = centimeters.")}, |
3841 | | {"RippedBy", N_("Ripped By"), "Text", xmpText, xmpExternal, N_("Ripped By, i.e. name of person or organization.")}, |
3842 | | {"Saturation", N_("Saturation"), "Closed Choice of Integer", xmpText, xmpInternal, |
3843 | | N_("Indicates the direction of saturation processing applied by the camera.")}, |
3844 | | {"SecondaryGenre", N_("Secondary Genre"), "Text", xmpText, xmpExternal, N_("The name of the secondary genre.")}, |
3845 | | {"SelectionTime", N_("Selection Time"), "Integer", xmpText, xmpExternal, |
3846 | | N_("The time value for the start time of the current selection.")}, |
3847 | | {"SelectionDuration", N_("Selection Duration"), "Integer", xmpText, xmpExternal, |
3848 | | N_("The duration of the current selection in movie time scale units.")}, |
3849 | | {"SendDuration", N_("Send Duration"), "Integer", xmpText, xmpExternal, |
3850 | | N_("Specifies the time needed to send the file in 100-nanosecond units. This value should " |
3851 | | "include the duration of the last packet in the content.")}, |
3852 | | {"Sharpness", N_("Sharpness"), "Integer", xmpText, xmpExternal, N_("\"Sharpness\" setting. Range 0 to +100.")}, |
3853 | | {"Software", N_("Software"), "Text", xmpText, xmpExternal, N_("Software used to generate / create Video data.")}, |
3854 | | {"SoftwareVersion", N_("Software Version"), "Text", xmpText, xmpExternal, N_("The Version of the software used.")}, |
3855 | | {"SongWriter", N_("Song Writer"), "Text", xmpText, xmpExternal, N_("The name of the song writer.")}, |
3856 | | {"SongWriterKeywords", N_("Song Writer Keywords"), "Text", xmpText, xmpExternal, N_("Song Writer Keywords.")}, |
3857 | | {"Source", N_("Source"), "Text", xmpText, xmpExternal, N_("Source.")}, |
3858 | | {"SourceCredits", N_("Source Credits"), "Text", xmpText, xmpExternal, N_("Source Credits.")}, |
3859 | | {"SourceForm", N_("Source Form"), "Text", xmpText, xmpExternal, N_("Source Form.")}, |
3860 | | {"SourceImageHeight", N_("Source Image Height"), "Integer", xmpText, xmpExternal, N_("Video height in pixels")}, |
3861 | | {"SourceImageWidth", N_("Source Image Width"), "Integer", xmpText, xmpExternal, N_("Video width in pixels")}, |
3862 | | {"Starring", N_("Starring"), "Text", xmpText, xmpExternal, |
3863 | | N_("Starring, name of famous people appearing in the video.")}, |
3864 | | {"StartTimecode", N_("Start Timecode"), "Integer", xmpText, xmpExternal, N_("Start Timecode")}, |
3865 | | {"Statistics", N_("Statistics"), "Text", xmpText, xmpExternal, N_("Statistics.")}, |
3866 | | {"StreamCount", N_("Stream Count"), "Integer", xmpText, xmpExternal, N_("Total Number Of Streams")}, |
3867 | | {"StreamName", N_("Stream Name"), "Text", xmpText, xmpExternal, |
3868 | | N_("Describes the Stream Name. E.g.: FUJIFILM AVI STREAM 0100")}, |
3869 | | {"StreamQuality", N_("Stream Quality"), "Integer", xmpText, xmpExternal, N_("General Stream Quality")}, |
3870 | | {"StreamSampleRate", N_("Stream Sample Rate"), "Rational", xmpText, xmpExternal, N_("Stream Sample Rate")}, |
3871 | | {"StreamSampleCount", N_("Stream Sample Count"), "Integer", xmpText, xmpExternal, N_("Stream Sample Count")}, |
3872 | | {"StreamSampleSize", N_("Stream Sample Size"), "Integer", xmpText, xmpExternal, N_("General Stream Sample Size")}, |
3873 | | {"StreamType", N_("Stream Type"), "Text", xmpText, xmpExternal, |
3874 | | N_("Describes the Stream Type. E.g.: Video, Audio or Subtitles")}, |
3875 | | {"SubTCodec", N_("Subtitles Codec"), "Text", xmpText, xmpExternal, |
3876 | | N_("Subtitles stream codec, for general purpose")}, |
3877 | | {"SubTCodecDecodeAll", N_("Subtitle Codec Decode Info"), "Text", xmpText, xmpExternal, |
3878 | | N_("Contains information the Subtitles codec decode all, i.e. Enabled/Disabled")}, |
3879 | | {"SubTCodecInfo", N_("Subtitles Codec Information"), "Text", xmpText, xmpExternal, |
3880 | | N_("Contains additional information about subtitles.")}, |
3881 | | {"SubTCodecDownloadUrl", N_("Subtitle Codec Download URL"), "Text", xmpText, xmpExternal, |
3882 | | N_("Video Subtitle Codec Download URL.")}, |
3883 | | {"SubTCodecSettings", N_("Subtitle Codec Settings"), "Text", xmpText, xmpExternal, |
3884 | | N_("Contains settings the codec needs before decoding can be started.")}, |
3885 | | {"SubTDefaultOn", N_("Subtitle Track Default On"), "Text", xmpText, xmpExternal, |
3886 | | N_("Subtitles Track Default On , i.e. Enabled/Disabled")}, |
3887 | | {"SubTEnabled", N_("Subtitle Track Enabled"), "Text", xmpText, xmpExternal, |
3888 | | N_("Status of Subtitles Track, i.e. Enabled/Disabled")}, |
3889 | | {"Subtitle", N_("Subtitle"), "Text", xmpText, xmpExternal, N_("Subtitle of the video.")}, |
3890 | | {"SubtitleKeywords", N_("Subtitle Keywords"), "Text", xmpText, xmpExternal, N_("Subtitle Keywords.")}, |
3891 | | {"SubTLang", N_("Subtitles Language"), "Text", xmpText, xmpExternal, |
3892 | | N_("The Language in which the subtitles is recorded in.")}, |
3893 | | {"SubTTrackForced", N_("Subtitle Track Forced"), "Text", xmpText, xmpExternal, |
3894 | | N_("Subtitles Track Forced , i.e. Enabled/Disabled")}, |
3895 | | {"SubTTrackLacing", N_("Subtitle Track Lacing"), "Text", xmpText, xmpExternal, |
3896 | | N_("Subtitles Track Lacing , i.e. Enabled/Disabled")}, |
3897 | | {"Subject", N_("Subject"), "Text", xmpText, xmpExternal, N_("Subject.")}, |
3898 | | {"TapeName", N_("Tape Name"), "Text", xmpText, xmpExternal, N_("TapeName.")}, |
3899 | | {"TagDefault", N_("Tag Default Setting"), "Text", xmpText, xmpExternal, |
3900 | | N_("If Tag is Default enabled, this value is Yes, else No")}, |
3901 | | {"TagLanguage", N_("Tag Language"), "Text", xmpText, xmpExternal, N_("Language that has been used to define tags")}, |
3902 | | {"TagName", N_("Tag Name"), "Text", xmpText, xmpExternal, |
3903 | | N_("Tags could be used to define several titles for a segment.")}, |
3904 | | {"TagString", N_("Tag String"), "Text", xmpText, xmpExternal, N_("Information contained in a Tags")}, |
3905 | | {"TargetType", N_("Target Type"), "Text", xmpText, xmpExternal, |
3906 | | N_("A string describing the logical level of the object the Tag is referring to.")}, |
3907 | | {"Technician", N_("Technician"), "Text", xmpText, xmpExternal, N_("Technician, in most cases name of person.")}, |
3908 | | {"ThumbnailHeight", N_("Thumbnail Height"), "Integer", xmpText, xmpExternal, N_("Preview Image Thumbnail Height.")}, |
3909 | | {"ThumbnailLength", N_("Thumbnail Length"), "Integer", xmpText, xmpExternal, N_("Preview Image Thumbnail Length.")}, |
3910 | | {"ThumbnailWidth", N_("Thumbnail Width"), "Integer", xmpText, xmpExternal, N_("Preview Image Thumbnail Width.")}, |
3911 | | {"TimecodeScale", N_("Timecode Scale"), "Rational", xmpText, xmpExternal, |
3912 | | N_("Multiplying factor which is helpful in calculation of a particular timecode")}, |
3913 | | {"TimeOffset", N_("Time Offset"), "Integer", xmpText, xmpExternal, |
3914 | | N_("Specifies the presentation time offset of the stream in 100-nanosecond units. This value shall be equal " |
3915 | | "to the send time of the first interleaved packet in the data section.")}, |
3916 | | {"TimeScale", N_("Time Scale"), "Integer", xmpText, xmpExternal, |
3917 | | N_("A time value that indicates the time scale for this movie-that is, the number of time units that" |
3918 | | "pass per second in its time coordinate system. A time coordinate system that measures time" |
3919 | | "in sixtieths of a second, for example, has a time scale of 60.")}, |
3920 | | {"Title", N_("Title"), "Text", xmpText, xmpExternal, |
3921 | | N_("Contains a general name of the SEGMENT, like 'Lord of the Rings - The Two Towers', however, Tags could be " |
3922 | | "used to define several titles for a segment.")}, |
3923 | | {"ToningEffect", N_("Toning Effect"), "Text", xmpText, xmpExternal, N_("Toning Effect Settings Applied.")}, |
3924 | | {"TotalFrameCount", N_("Total Frame Count"), "Integer", xmpText, xmpExternal, |
3925 | | N_("Total number of frames in a video")}, |
3926 | | {"TotalStream", N_("Number Of Streams"), "Integer", xmpText, xmpExternal, |
3927 | | N_("Total number of streams present in a video. E.g.: Video, Audio or Subtitles")}, |
3928 | | {"Track", N_("Track"), "Text", xmpText, xmpExternal, N_("Information about the Track.")}, |
3929 | | {"TrackCreateDate", N_("Video Track Create Date"), "Integer", xmpText, xmpExternal, |
3930 | | N_("A 32-bit integer that indicates (in seconds since midnight, January 1, 1904) when the track header was " |
3931 | | "created.")}, |
3932 | | {"TrackDuration", N_("Video Track Duration"), "Integer", xmpText, xmpExternal, |
3933 | | N_("A time value that indicates the duration of this track (in the movie's time coordinate system).")}, |
3934 | | {"TrackForced", N_("Video Track Forced"), "Text", xmpText, xmpExternal, |
3935 | | N_("Video Track Forced , i.e. Enabled/Disabled")}, |
3936 | | {"TrackID", N_("Track ID"), "Integer", xmpText, xmpExternal, |
3937 | | N_("A 32-bit integer that uniquely identifies the track. The value 0 cannot be used.")}, |
3938 | | {"TrackHeaderVersion", N_("Track Header Version"), "Text", xmpText, xmpExternal, |
3939 | | N_("A 1-byte specification of the version of this track header")}, |
3940 | | {"TrackLacing", N_("Video Track Lacing"), "Text", xmpText, xmpExternal, |
3941 | | N_("Video Track Lacing , i.e. Enabled/Disabled")}, |
3942 | | {"TrackLang", N_("Track Language"), "Text", xmpText, xmpExternal, |
3943 | | N_("The Language in which a particular stream is recorded in.")}, |
3944 | | {"TrackLayer", N_("Video Track Layer"), "Integer", xmpText, xmpExternal, |
3945 | | N_("A 16-bit integer that indicates this track's spatial priority in its movie. The QuickTime Movie" |
3946 | | "Toolbox uses this value to determine how tracks overlay one another. Tracks with lower layer" |
3947 | | "values are displayed in front of tracks with higher layer values.")}, |
3948 | | {"TrackModifyDate", N_("Video Track Modify Date"), "Integer", xmpText, xmpExternal, |
3949 | | N_("A 32-bit integer that indicates (in seconds since midnight, January 1, 1904) when the track header was " |
3950 | | "last modified.")}, |
3951 | | {"TrackName", N_("Track Name"), "Text", xmpText, xmpExternal, |
3952 | | N_("Track Name could be used to define titles for a segment.")}, |
3953 | | {"TrackNumber", N_("Track Number"), "Integer", xmpText, xmpExternal, N_("Track Number.")}, |
3954 | | {"TrackVolume", N_("Track Volume"), "Rational", xmpText, xmpExternal, |
3955 | | N_("A 16-bit fixed-point number that specifies how loud to play this track's sound. A value of 1.0 indicates " |
3956 | | "full volume.")}, |
3957 | | {"TranslateCodec", N_("Chapter Translate Codec"), "Text", xmpText, xmpExternal, |
3958 | | N_("Chapter Translate Codec information. Usually used in Matroska file type.")}, |
3959 | | {"UnknownInfo", N_("Unknown Information"), "Text", xmpText, xmpExternal, |
3960 | | N_("Unknown / Unregistered Metadata Tags and their values.")}, |
3961 | | {"UnknownInfo2", N_("Unknown Information"), "Text", xmpText, xmpExternal, |
3962 | | N_("Unknown / Unregistered Metadata Tags and their values.")}, |
3963 | | {"URL", N_("Video URL"), "Text", xmpText, xmpExternal, |
3964 | | N_("A C string that specifies a URL. There may be additional data after the C string.")}, |
3965 | | {"URN", N_("Video URN"), "Text", xmpText, xmpExternal, |
3966 | | N_("A C string that specifies a URN. There may be additional data after the C string.")}, |
3967 | | {"VariProgram", N_("Vari Program"), "Text", xmpText, xmpExternal, |
3968 | | N_("Software settings used to generate / create Video data.")}, |
3969 | | {"VegasVersionMajor", N_("Vegas Version Major"), "Text", xmpText, xmpExternal, N_("Vegas Version Major.")}, |
3970 | | {"VegasVersionMinor", N_("Vegas Version Minor"), "Text", xmpText, xmpExternal, N_("Vegas Version Minor.")}, |
3971 | | {"Vendor", N_("Vendor"), "Text", xmpText, xmpExternal, |
3972 | | N_("The developer of the compressor that generated the compressed data.")}, |
3973 | | {"VendorID", N_("Vendor ID"), "Text", xmpText, xmpExternal, |
3974 | | N_("A 32-bit integer that specifies the developer of the compressor that generated the compressed data. Often " |
3975 | | "this field contains 'appl' to indicate Apple Computer, Inc.")}, |
3976 | | {"VideoQuality", N_("Video Quality"), "Integer", xmpText, xmpExternal, N_("Video Stream Quality")}, |
3977 | | {"VideoSampleSize", N_("Video Sample Size"), "Integer", xmpText, xmpExternal, N_("Video Stream Sample Size")}, |
3978 | | {"VideoScanType", N_("Video Scan Type"), "Text", xmpText, xmpExternal, |
3979 | | N_("Video Scan Type, it can be Progressive or Interlaced")}, |
3980 | | {"WatermarkURL", N_("Watermark URL"), "Text", xmpText, xmpExternal, |
3981 | | N_("A C string that specifies a Watermark URL.")}, |
3982 | | {"WhiteBalance", N_("White Balance"), "Closed Choice Text", xmpText, xmpExternal, |
3983 | | N_("\"White Balance\" setting. One of: As Shot, Auto, Daylight, Cloudy, Shade, Tungsten, " |
3984 | | "Fluorescent, Flash, Custom")}, |
3985 | | {"WhiteBalanceFineTune", N_("White Balance Fine Tune"), "Integer", xmpText, xmpExternal, |
3986 | | N_("White Balance Fine Tune.")}, |
3987 | | {"Width", N_("Video Width"), "Integer", xmpText, xmpExternal, N_("Video width in pixels")}, |
3988 | | {"WindowLocation", N_("Window Location"), "Text", xmpText, xmpExternal, |
3989 | | N_("Information about the Window Location.")}, |
3990 | | {"WorldTime", N_("World Time"), "Integer", xmpText, xmpExternal, N_("World Time")}, |
3991 | | {"WrittenBy", N_("Written By"), "Text", xmpText, xmpExternal, |
3992 | | N_("Written By, i.e. name of person or organization.")}, |
3993 | | {"WritingApp", N_("Writing App"), "Text", xmpText, xmpExternal, |
3994 | | N_("Contains the name of the application used to create the file (like \"mkvmerge 0.8.1\")")}, |
3995 | | {"XResolution", N_("X Resolution"), "Rational", xmpText, xmpInternal, |
3996 | | N_("Horizontal resolution in pixels per unit.")}, |
3997 | | {"Year", N_("Year"), "Integer", xmpText, xmpExternal, N_("Year in which the video was made.")}, |
3998 | | {"YResolution", N_("Y Resolution"), "Rational", xmpText, xmpInternal, |
3999 | | N_("Vertical resolution in pixels per unit.")}, |
4000 | | {nullptr, nullptr, nullptr, invalidTypeId, xmpInternal, nullptr}, |
4001 | | }; |
4002 | | |
4003 | | const XmpPropertyInfo xmpAudioInfo[] = { |
4004 | | {"AvgBytePerSec", N_("Average Bytes Per Second"), "Integer", xmpText, xmpExternal, |
4005 | | N_("Average Bytes Per Second found in audio stream")}, |
4006 | | {"Balance", N_("Balance"), "Integer", xmpText, xmpExternal, N_("Indicates the left-right balance of the audio")}, |
4007 | | {"BitsPerSample", N_("Bits Per Sample/ Bit Rate"), "Integer", xmpText, xmpExternal, N_("Bits per test sample")}, |
4008 | | {"ChannelType", N_("Audio Channel Type"), "Integers", xmpText, xmpExternal, |
4009 | | N_("The audio channel type. One of: Mono, Stereo, 5.1, 7.1.")}, |
4010 | | {"Codec", N_("Audio Codec"), "Text", xmpText, xmpExternal, N_("Codec used for Audio Encoding/Decoding")}, |
4011 | | {"CodecDecodeAll", N_("Audio Codec Decode Info"), "Text", xmpText, xmpExternal, |
4012 | | N_("Contains information the audio codec decode all, i.e. Enabled/Disabled")}, |
4013 | | {"CodecDescription", N_("Audio Codec Description"), "Text", xmpText, xmpExternal, |
4014 | | N_("Contains description the codec.")}, |
4015 | | {"CodecDownloadUrl", N_("Audio Codec Download URL"), "Text", xmpText, xmpExternal, N_("Audio Codec Download URL.")}, |
4016 | | {"CodecInfo", N_("Audio Codec Information"), "Text", xmpText, xmpExternal, |
4017 | | N_("Contains information the codec needs before decoding can be started. An example is the Vorbis " |
4018 | | "initialization packets for Vorbis audio.")}, |
4019 | | {"CodecSettings", N_("Audio Codec Settings"), "Text", xmpText, xmpExternal, |
4020 | | N_("Contains settings the codec needs before decoding can be started.")}, |
4021 | | {"Compressor", N_("Audio Compressor"), "Text", xmpText, xmpExternal, |
4022 | | N_("The audio compression used. For example, MP3.")}, |
4023 | | {"DefaultDuration", N_("Audio Default Duration"), "Text", xmpText, xmpExternal, |
4024 | | N_("The number of micro seconds an audio chunk plays.")}, |
4025 | | {"DefaultStream", N_("Audio Default Stream"), "Text", xmpText, xmpExternal, |
4026 | | N_("Audio Stream that would be played by default.")}, |
4027 | | {"DefaultOn", N_("Audio Track Default On"), "Text", xmpText, xmpExternal, |
4028 | | N_("Audio Track Default On , i.e. Enabled/Disabled")}, |
4029 | | {"Enabled", N_("Audio Track Enabled"), "Text", xmpText, xmpExternal, |
4030 | | N_("Status of Audio Track, i.e. Enabled/Disabled")}, |
4031 | | {"Format", N_("Audio Format"), "Text", xmpText, xmpExternal, |
4032 | | N_("A four-character code that identifies the format of the audio.")}, |
4033 | | {"HandlerClass", N_("Handler Class"), "Text", xmpText, xmpExternal, |
4034 | | N_("A four-character code that identifies the type of the handler. Only two values are valid for this field: " |
4035 | | "'mhlr' for media handlers and 'dhlr' for data handlers.")}, |
4036 | | {"HandlerDescription", N_("Handler Description"), "Text", xmpText, xmpExternal, |
4037 | | N_("A (counted) string that specifies the name of the component-that is, the media handler used when this " |
4038 | | "media was created..")}, |
4039 | | {"HandlerType", N_("Handler Type"), "Text", xmpText, xmpExternal, |
4040 | | N_("A four-character code that identifies the type of the media handler or data handler.")}, |
4041 | | {"HandlerVendorID", N_("Handler Vendor ID"), "Text", xmpText, xmpExternal, N_("Component manufacturer.")}, |
4042 | | {"MediaCreateDate", N_("Media Track Create Date"), "Integer", xmpText, xmpExternal, |
4043 | | N_("A 32-bit integer that indicates (in seconds since midnight, January 1, 1904) when the media header was " |
4044 | | "created.")}, |
4045 | | {"MediaDuration", N_("Media Track Duration"), "Integer", xmpText, xmpExternal, |
4046 | | N_("A time value that indicates the duration of this media (in the movie's time coordinate system).")}, |
4047 | | {"MediaHeaderVersion", N_("Media Header Version"), "Text", xmpText, xmpExternal, |
4048 | | N_("A 1-byte specification of the version of this media header")}, |
4049 | | {"MediaLangCode", N_("Media Language Code"), "Integer", xmpText, xmpExternal, |
4050 | | N_("A 16-bit integer that specifies the language code for this media.")}, |
4051 | | {"MediaModifyDate", N_("Media Track Modify Date"), "Integer", xmpText, xmpExternal, |
4052 | | N_("A 32-bit integer that indicates (in seconds since midnight, January 1, 1904) when the media header was " |
4053 | | "last modified.")}, |
4054 | | {"MediaTimeScale", N_("Media Time Scale"), "Integer", xmpText, xmpExternal, |
4055 | | N_("A time value that indicates the time scale for this media-that is, the number of time units that pass per " |
4056 | | "second in its time coordinate system.")}, |
4057 | | {"OutputSampleRate", N_("Output Audio Sample Rate"), "Integer", xmpText, xmpExternal, |
4058 | | N_("The output audio sample rate. Can be any value, but commonly 32000, 41100, or 48000.")}, |
4059 | | {"SampleCount", N_("Audio Sample Count"), "Integer", xmpText, xmpExternal, |
4060 | | N_("Sample taken for Analyzing Audio Stream")}, |
4061 | | {"SampleRate", N_("Audio Sample Rate"), "Integer", xmpText, xmpExternal, |
4062 | | N_("The audio sample rate. Can be any value, but commonly 32000, 41100, or 48000.")}, |
4063 | | {"SampleType", N_("Audio Sample Type"), "closed Choice of Text", xmpText, xmpExternal, |
4064 | | N_("The audio sample type. One of: 8Int, 16Int, 32Int, 32Float.")}, |
4065 | | {"SchemeTitle", N_("Sound Scheme Title"), "Text", xmpText, xmpExternal, N_("Sound Scheme Title.")}, |
4066 | | {"TimeOffset", N_("Time Offset"), "Integer", xmpText, xmpExternal, |
4067 | | N_("Specifies the presentation time offset of the stream in 100-nanosecond units. This value shall be equal " |
4068 | | "to the send time of the first interleaved packet in the data section.")}, |
4069 | | {"TrackCreateDate", N_("Audio Track Create Date"), "Integer", xmpText, xmpExternal, |
4070 | | N_("A 32-bit integer that indicates (in seconds since midnight, January 1, 1904) when the track header was " |
4071 | | "created.")}, |
4072 | | {"TrackDuration", N_("Audio Track Duration"), "Integer", xmpText, xmpExternal, |
4073 | | N_("A time value that indicates the duration of this track (in the movie's time coordinate system).")}, |
4074 | | {"TrackForced", N_("Audio Track Forced"), "Text", xmpText, xmpExternal, |
4075 | | N_("Audio Track Forced , i.e. Enabled/Disabled")}, |
4076 | | {"TrackID", N_("Track ID"), "Integer", xmpText, xmpExternal, |
4077 | | N_("A 32-bit integer that uniquely identifies the track. The value 0 cannot be used.")}, |
4078 | | {"TrackHeaderVersion", N_("Track Header Version"), "Text", xmpText, xmpExternal, |
4079 | | N_("A 1-byte specification of the version of this track header")}, |
4080 | | {"TrackLacing", N_("Audio Track Lacing"), "Text", xmpText, xmpExternal, |
4081 | | N_("Audio Track Lacing , i.e. Enabled/Disabled")}, |
4082 | | {"TrackLang", N_("Track Language"), "Text", xmpText, xmpExternal, |
4083 | | N_("The Language in which a particular stream is recorded in.")}, |
4084 | | {"TrackLayer", N_("Audio Track Layer"), "Integer", xmpText, xmpExternal, |
4085 | | N_("A 16-bit integer that indicates this track's spatial priority in its movie. The QuickTime Movie" |
4086 | | "Toolbox uses this value to determine how tracks overlay one another. Tracks with lower layer" |
4087 | | "values are displayed in front of tracks with higher layer values.")}, |
4088 | | {"TrackModifyDate", N_("Audio Track Modify Date"), "Integer", xmpText, xmpExternal, |
4089 | | N_("A 32-bit integer that indicates (in seconds since midnight, January 1, 1904) when the track header was " |
4090 | | "last modified.")}, |
4091 | | {"TrackVolume", N_("Track Volume"), "Rational", xmpText, xmpExternal, |
4092 | | N_("A 16-bit fixed-point number that specifies how loud to play this track's sound. A value of 1.0 indicates " |
4093 | | "full volume.")}, |
4094 | | {"URL", N_("Audio URL"), "Text", xmpText, xmpExternal, |
4095 | | N_("A C string that specifies a URL. There may be additional data after the C string.")}, |
4096 | | {"URN", N_("Audio URN"), "Text", xmpText, xmpExternal, |
4097 | | N_("A C string that specifies a URN. There may be additional data after the C string.")}, |
4098 | | {"VendorID", N_("Vendor ID"), "Text", xmpText, xmpExternal, |
4099 | | N_("A 32-bit integer that specifies the developer of the compressor that generated the compressed data. Often " |
4100 | | "this field contains 'appl' to indicate Apple Computer, Inc.")}, |
4101 | | {nullptr, nullptr, nullptr, invalidTypeId, xmpInternal, nullptr}, |
4102 | | }; |
4103 | | |
4104 | | const XmpPropertyInfo xmpDctermsInfo[] = { |
4105 | | // dcterms properties used by DwC under the Record Class. |
4106 | | {"type", N_("Type"), "bag open Choice", xmpBag, xmpExternal, N_("The nature or genre of the resource.")}, |
4107 | | {"modified", N_("Date Modified"), "seq Date", xmpSeq, xmpExternal, N_("Date on which the resource was changed.")}, |
4108 | | {"language", N_("Language"), "bag Locale", xmpBag, xmpExternal, N_("A language of the resource.")}, |
4109 | | {"license", N_("License"), "Lang Alt", langAlt, xmpExternal, |
4110 | | N_("A legal document giving official permission to do something with the resource.")}, |
4111 | | {"rightsHolder", N_("Rights Holder"), "seq ProperName", xmpSeq, xmpExternal, |
4112 | | N_("A person or organization owning or managing rights over the resource.")}, |
4113 | | {"accessRights", N_("Access Rights"), "Lang Alt", langAlt, xmpExternal, |
4114 | | N_("Information about who can access the resource or an indication of its security status.")}, |
4115 | | {"bibliographicCitation", N_("Bibliographic Citation"), "Text", xmpText, xmpExternal, |
4116 | | N_("A bibliographic reference for the resource.")}, |
4117 | | {"references", N_("References"), "bag Text", xmpBag, xmpExternal, |
4118 | | N_("A related resource that is referenced, cited, or otherwise pointed to by the described resource.")}, |
4119 | | // Location Level Class |
4120 | | { |
4121 | | "Location", |
4122 | | N_("Location"), |
4123 | | "Location", |
4124 | | xmpText, |
4125 | | xmpInternal, |
4126 | | N_("*Main structure* containing Darwin Core location based information."), |
4127 | | }, |
4128 | | // End of list marker |
4129 | | {nullptr, nullptr, nullptr, invalidTypeId, xmpInternal, nullptr}, |
4130 | | }; |
4131 | | |
4132 | | const XmpPropertyInfo xmpDwCInfo[] = { |
4133 | | |
4134 | | // Record Level Class |
4135 | | { |
4136 | | "Record", |
4137 | | N_("Record"), |
4138 | | "Record", |
4139 | | xmpText, |
4140 | | xmpInternal, |
4141 | | N_("*Main structure* containing record based information."), |
4142 | | }, |
4143 | | // Record Level Terms |
4144 | | {"institutionID", N_("Institution ID"), "Text", xmpText, xmpExternal, |
4145 | | N_("An identifier for the institution having custody of the object(s) or information referred to in the " |
4146 | | "record.")}, |
4147 | | {"collectionID", N_("Collection ID"), "Text", xmpText, xmpExternal, |
4148 | | N_("An identifier for the collection or dataset from which the record was derived. For physical specimens, " |
4149 | | "the recommended best practice is to use the identifier in a collections registry such as the Biodiversity " |
4150 | | "Collections Index (http://www.biodiversitycollectionsindex.org/).")}, |
4151 | | {"institutionCode", N_("Institution Code"), "Text", xmpText, xmpExternal, |
4152 | | N_("The name (or acronym) in use by the institution having custody of the object(s) or information referred " |
4153 | | "to in the record.")}, |
4154 | | {"datasetID", N_("Dataset ID"), "Text", xmpText, xmpExternal, |
4155 | | N_("An identifier for the set of data. May be a global unique identifier or an identifier specific to a " |
4156 | | "collection or institution.")}, |
4157 | | {"collectionCode", N_("Collection Code"), "Text", xmpText, xmpExternal, |
4158 | | N_("The name, acronym, coden, or initialism identifying the collection or data set from which the record was " |
4159 | | "derived.")}, |
4160 | | {"datasetName", N_("Dataset Name"), "Text", xmpText, xmpExternal, |
4161 | | N_("The name identifying the data set from which the record was derived.")}, |
4162 | | {"ownerInstitutionCode", N_("Owner Institution Code"), "Text", xmpText, xmpExternal, |
4163 | | N_("The name (or acronym) in use by the institution having ownership of the object(s) or information referred " |
4164 | | "to in the record.")}, |
4165 | | {"basisOfRecord", N_("Basis Of Record"), "Text", xmpText, xmpExternal, |
4166 | | N_("The specific nature of the data record - a subtype of the type. Recommended best practice is to use a " |
4167 | | "controlled vocabulary such as the Darwin Core Type Vocabulary " |
4168 | | "(http://rs.tdwg.org/dwc/terms/type-vocabulary/index.htm).")}, |
4169 | | {"informationWithheld", N_("Information Withheld"), "Text", xmpText, xmpExternal, |
4170 | | N_("Additional information that exists, but that has not been shared in the given record.")}, |
4171 | | {"dataGeneralizations", N_("Data Generalizations"), "Text", xmpText, xmpExternal, |
4172 | | N_("Actions taken to make the shared data less specific or complete than in its original form. Suggests that " |
4173 | | "alternative data of higher quality may be available on request.")}, |
4174 | | {"dynamicProperties", N_("Dynamic Properties"), "bag Text", xmpBag, xmpExternal, |
4175 | | N_("A list (concatenated and separated) of additional measurements, facts, characteristics, or assertions " |
4176 | | "about the record. Meant to provide a mechanism for structured content such as key-value pairs.")}, |
4177 | | |
4178 | | // Occurrence Level Class |
4179 | | { |
4180 | | "Occurrence", |
4181 | | N_("Occurrence"), |
4182 | | "Occurrence", |
4183 | | xmpText, |
4184 | | xmpInternal, |
4185 | | N_("*Main structure* containing occurrence based information."), |
4186 | | }, |
4187 | | // Occurrence Level Terms |
4188 | | {"occurrenceID", N_("Occurrence ID"), "Text", xmpText, xmpExternal, |
4189 | | N_("An identifier for the Occurrence (as opposed to a particular digital record of the occurrence). In the " |
4190 | | "absence of a persistent global unique identifier, construct one from a combination of identifiers in the " |
4191 | | "record that will most closely make the occurrenceID globally unique.")}, |
4192 | | {"catalogNumber", N_("Catalog Number"), "Text", xmpText, xmpExternal, |
4193 | | N_("An identifier (preferably unique) for the record within the data set or collection.")}, |
4194 | | {"occurrenceDetails", N_("Occurrence Details"), "Text", xmpText, xmpExternal, |
4195 | | N_("Deprecated. Details about the Occurrence.")}, |
4196 | | {"occurrenceRemarks", N_("Occurrence Remarks"), "Text", xmpText, xmpExternal, |
4197 | | N_("Comments or notes about the Occurrence.")}, |
4198 | | {"recordNumber", N_("Record Number"), "Text", xmpText, xmpExternal, |
4199 | | N_("An identifier given to the Occurrence at the time it was recorded. Often serves as a link between field " |
4200 | | "notes and an Occurrence record, such as a specimen collector's number.")}, |
4201 | | {"recordedBy", N_("Recorded By"), "bag Text", xmpBag, xmpExternal, |
4202 | | N_("A list (concatenated and separated) of names of people, groups, or organizations responsible for " |
4203 | | "recording the original Occurrence. The primary collector or observer, especially one who applies a " |
4204 | | "personal identifier (recordNumber), should be listed first.")}, |
4205 | | {"individualID", N_("Individual ID"), "Text", xmpText, xmpExternal, |
4206 | | N_("Deprecated. An identifier for an individual or named group of individual organisms represented in the " |
4207 | | "Occurrence. Meant to accommodate resampling of the same individual or group for monitoring purposes. May " |
4208 | | "be a global unique identifier or an identifier specific to a data set.")}, |
4209 | | {"individualCount", N_("Individual Count"), "Integer", xmpText, xmpExternal, |
4210 | | N_("The number of individuals represented present at the time of the Occurrence.")}, |
4211 | | {"organismQuantity", N_("Organism Quantity"), "Text", xmpText, xmpExternal, |
4212 | | N_("A number or enumeration value for the quantity of organisms.")}, |
4213 | | {"organismQuantityType", N_("Organism Quantity Type"), "Text", xmpText, xmpExternal, |
4214 | | N_("The type of quantification system used for the quantity of organisms.")}, |
4215 | | {"sex", N_("Sex"), "Text", xmpText, xmpExternal, |
4216 | | N_("The sex of the biological individual(s) represented in the Occurrence. Recommended best practice is to " |
4217 | | "use a controlled vocabulary.")}, |
4218 | | {"lifeStage", N_("Life Stage"), "Text", xmpText, xmpExternal, |
4219 | | N_("The age class or life stage of the biological individual(s) at the time the Occurrence was recorded. " |
4220 | | "Recommended best practice is to use a controlled vocabulary.")}, |
4221 | | {"reproductiveCondition", N_("Reproductive Condition"), "Text", xmpText, xmpExternal, |
4222 | | N_("The reproductive condition of the biological individual(s) represented in the Occurrence. Recommended " |
4223 | | "best practice is to use a controlled vocabulary.")}, |
4224 | | {"behavior", N_("Behavior"), "Text", xmpText, xmpExternal, |
4225 | | N_("A description of the behavior shown by the subject at the time the Occurrence was recorded. Recommended " |
4226 | | "best practice is to use a controlled vocabulary.")}, |
4227 | | {"establishmentMeans", N_("Establishment Means"), "Text", xmpText, xmpExternal, |
4228 | | N_("The process by which the biological individual(s) represented in the Occurrence became established at the " |
4229 | | "location. Recommended best practice is to use a controlled vocabulary.")}, |
4230 | | {"occurrenceStatus", N_("Occurrence Status"), "Text", xmpText, xmpExternal, |
4231 | | N_("A statement about the presence or absence of a Taxon at a Location. Recommended best practice is to use a " |
4232 | | "controlled vocabulary.")}, |
4233 | | {"preparations", N_("Preparations"), "bag Text", xmpBag, xmpExternal, |
4234 | | N_("A list (concatenated and separated) of preparations and preservation methods for a specimen.")}, |
4235 | | {"disposition", N_("Disposition"), "Text", xmpText, xmpExternal, |
4236 | | N_("The current state of a specimen with respect to the collection identified in collectionCode or " |
4237 | | "collectionID. Recommended best practice is to use a controlled vocabulary.")}, |
4238 | | {"otherCatalogNumbers", N_("Other Catalog Numbers"), "bag Text", xmpBag, xmpExternal, |
4239 | | N_("A list (concatenated and separated) of previous or alternate fully qualified catalog numbers or other " |
4240 | | "human-used identifiers for the same Occurrence, whether in the current or any other data set or " |
4241 | | "collection.")}, |
4242 | | {"previousIdentifications", N_("Previous Identifications"), "bag Text", xmpBag, xmpExternal, |
4243 | | N_("Deprecated. A list (concatenated and separated) of previous assignments of names to the Occurrence.")}, |
4244 | | {"associatedMedia", N_("Associated Media"), "bag Text", xmpBag, xmpExternal, |
4245 | | N_("A list (concatenated and separated) of identifiers (publication, global unique identifier, URI) of media " |
4246 | | "associated with the Occurrence.")}, |
4247 | | {"associatedReferences", N_("Associated References"), "bag Text", xmpBag, xmpExternal, |
4248 | | N_("A list (concatenated and separated) of identifiers (publication, bibliographic reference, global unique " |
4249 | | "identifier, URI) of literature associated with the Occurrence.")}, |
4250 | | {"associatedOccurrences", N_("Associated Occurrences"), "bag Text", xmpBag, xmpExternal, |
4251 | | N_("Deprecated. A list (concatenated and separated) of identifiers of other Occurrence records and their " |
4252 | | "associations to this Occurrence.")}, |
4253 | | {"associatedSequences", N_("Associated Sequences"), "bag Text", xmpBag, xmpExternal, |
4254 | | N_("A list (concatenated and separated) of identifiers (publication, global unique identifier, URI) of " |
4255 | | "genetic sequence information associated with the Occurrence.")}, |
4256 | | {"associatedTaxa", N_("Associated Taxa"), "bag Text", xmpBag, xmpExternal, |
4257 | | N_("A list (concatenated and separated) of identifiers or names of taxa and their associations with the " |
4258 | | "Occurrence.")}, |
4259 | | |
4260 | | // Organism Level Class |
4261 | | { |
4262 | | "Organism", |
4263 | | N_("Organism"), |
4264 | | "Organism", |
4265 | | xmpText, |
4266 | | xmpInternal, |
4267 | | N_("*Main structure* containing organism based information."), |
4268 | | }, |
4269 | | // Organism Level Terms |
4270 | | {"organismID", N_("Organism ID"), "Text", xmpText, xmpExternal, |
4271 | | N_("An identifier for the Organism instance (as opposed to a particular digital record of the Organism). May " |
4272 | | "be a globally unique identifier or an identifier specific to the data set.")}, |
4273 | | {"organismName", N_("Organism Name"), "Text", xmpText, xmpExternal, |
4274 | | N_("A textual name or label assigned to an Organism instance.")}, |
4275 | | {"organismScope", N_("Organism Scope"), "Text", xmpText, xmpExternal, |
4276 | | N_("A description of the kind of Organism instance. Can be used to indicate whether the Organism instance " |
4277 | | "represents a discrete organism or if it represents a particular type of aggregation. Recommended best " |
4278 | | "practice is to use a controlled vocabulary.")}, |
4279 | | {"associatedOccurrences", N_("Organism Associated Occurrences"), "bag Text", xmpBag, xmpExternal, |
4280 | | N_("A list (concatenated and separated with a vertical bar ' | ') of identifiers of other Occurrence records " |
4281 | | "and their associations to this Occurrence.")}, |
4282 | | {"associatedOrganisms", N_("Associated Organisms"), "bag Text", xmpBag, xmpExternal, |
4283 | | N_("A list (concatenated and separated with a vertical bar ' | ' ) of identifiers of other Organisms and " |
4284 | | "their associations to this Organism.")}, |
4285 | | {"previousIdentifications", N_("Previous Identifications"), "bag Text", xmpBag, xmpExternal, |
4286 | | N_("A list (concatenated and separated with a vertical bar ' | ' ) of previous assignments of names to the " |
4287 | | "Organism.")}, |
4288 | | {"organismRemarks", N_("Organism Remarks"), "Text", xmpText, xmpExternal, |
4289 | | N_("Comments or notes about the Organism instance.")}, |
4290 | | |
4291 | | // Material Sample Level Class |
4292 | | { |
4293 | | "MaterialSample", |
4294 | | N_("Material Sample"), |
4295 | | "MaterialSample", |
4296 | | xmpText, |
4297 | | xmpInternal, |
4298 | | N_("*Main structure* containing material sample based information."), |
4299 | | }, |
4300 | | { |
4301 | | "LivingSpecimen", |
4302 | | N_("Living Specimen"), |
4303 | | "LivingSpecimen", |
4304 | | xmpText, |
4305 | | xmpInternal, |
4306 | | N_("*Main structure* containing living specimen based information. A specimen that is alive."), |
4307 | | }, |
4308 | | { |
4309 | | "PreservedSpecimen", |
4310 | | N_("Preserved Specimen"), |
4311 | | "PreservedSpecimen", |
4312 | | xmpText, |
4313 | | xmpInternal, |
4314 | | N_("*Main structure* containing preserved specimen based information. A specimen that has been preserved."), |
4315 | | }, |
4316 | | { |
4317 | | "FossilSpecimen", |
4318 | | N_("Fossil Specimen"), |
4319 | | "FossilSpecimen", |
4320 | | xmpText, |
4321 | | xmpInternal, |
4322 | | N_("*Main structure* containing fossil specimen based information. A preserved specimen that is a fossil."), |
4323 | | }, |
4324 | | // Material Sample Level Terms |
4325 | | {"materialSampleID", N_("Material Sample ID"), "Text", xmpText, xmpExternal, |
4326 | | N_("An identifier for the MaterialSample (as opposed to a particular digital record of the material sample). " |
4327 | | "In the absence of a persistent global unique identifier, construct one from a combination of identifiers " |
4328 | | "in the record that will most closely make the materialSampleID globally unique.")}, |
4329 | | |
4330 | | // Event Level Class |
4331 | | { |
4332 | | "Event", |
4333 | | N_("Event"), |
4334 | | "Event", |
4335 | | xmpText, |
4336 | | xmpInternal, |
4337 | | N_("*Main structure* containing event based information."), |
4338 | | }, |
4339 | | { |
4340 | | "HumanObservation", |
4341 | | N_("Human Observation"), |
4342 | | "HumanObservation", |
4343 | | xmpText, |
4344 | | xmpInternal, |
4345 | | N_("*Main structure* containing human observation based information."), |
4346 | | }, |
4347 | | { |
4348 | | "MachineObservation", |
4349 | | N_("Machine Observation"), |
4350 | | "MachineObservation", |
4351 | | xmpText, |
4352 | | xmpInternal, |
4353 | | N_("*Main structure* containing machine observation based information."), |
4354 | | }, |
4355 | | // Event Level Terms |
4356 | | {"eventID", N_("Event ID"), "Text", xmpText, xmpExternal, |
4357 | | N_("An identifier for the set of information associated with an Event (something that occurs at a place and " |
4358 | | "time). May be a global unique identifier or an identifier specific to the data set.")}, |
4359 | | {"parentEventID", N_("Parent Event ID"), "Text", xmpText, xmpExternal, |
4360 | | N_("An identifier for the broader Event that groups this and potentially other Events.")}, |
4361 | | {"eventDate", N_("Event Date"), "Date", xmpText, xmpExternal, |
4362 | | N_("The date-time or interval during which an Event occurred. For occurrences, this is the date-time when the " |
4363 | | "event was recorded. Not suitable for a time in a geological context. Recommended best practice is to use " |
4364 | | "an encoding scheme, such as ISO 8601:2004(E).")}, |
4365 | | {"earliestDate", N_("Event Earliest Date"), "Date", xmpText, xmpExternal, |
4366 | | N_("Deprecated. (Child of Xmp.dwc.Event) The date-time or interval during which an Event started. For " |
4367 | | "occurrences, this is the date-time when the event was recorded. Not suitable for a time in a geological " |
4368 | | "context. Recommended best practice is to use an encoding scheme, such as ISO 8601:2004(E).")}, |
4369 | | {"latestDate", N_("Event Latest Date"), "Date", xmpText, xmpExternal, |
4370 | | N_("Deprecated. (Child of Xmp.dwc.Event) The date-time or interval during which an Event ended. For " |
4371 | | "occurrences, this is the date-time when the event was recorded. Not suitable for a time in a geological " |
4372 | | "context. Recommended best practice is to use an encoding scheme, such as ISO 8601:2004(E).")}, |
4373 | | {"eventTime", N_("Event Time"), "Date", xmpText, xmpExternal, |
4374 | | N_("The time or interval during which an Event occurred. Recommended best practice is to use an encoding " |
4375 | | "scheme, such as ISO 8601:2004(E).")}, |
4376 | | {"startDayOfYear", N_("Start Day Of Year"), "Integer", xmpText, xmpExternal, |
4377 | | N_("The earliest ordinal day of the year on which the Event occurred (1 for January 1, 365 for December 31, " |
4378 | | "except in a leap year, in which case it is 366).")}, |
4379 | | {"endDayOfYear", N_("End Day Of Year"), "Integer", xmpText, xmpExternal, |
4380 | | N_("The latest ordinal day of the year on which the Event occurred (1 for January 1, 365 for December 31, " |
4381 | | "except in a leap year, in which case it is 366).")}, |
4382 | | {"year", N_("Year"), "Integer", xmpText, xmpExternal, |
4383 | | N_("The four-digit year in which the Event occurred, according to the Common Era Calendar.")}, |
4384 | | {"month", N_("Month"), "Integer", xmpText, xmpExternal, N_("The ordinal month in which the Event occurred.")}, |
4385 | | {"day", N_("Day"), "Integer", xmpText, xmpExternal, |
4386 | | N_("The integer day of the month on which the Event occurred.")}, |
4387 | | {"verbatimEventDate", N_("Verbatim Event Date"), "Text", xmpText, xmpExternal, |
4388 | | N_("The verbatim original representation of the date and time information for an Event.")}, |
4389 | | {"habitat", N_("Habitat"), "Text", xmpText, xmpExternal, |
4390 | | N_("A category or description of the habitat in which the Event occurred.")}, |
4391 | | {"samplingProtocol", N_("Sampling Protocol"), "Text", xmpText, xmpExternal, |
4392 | | N_("The name of, reference to, or description of the method or protocol used during an Event.")}, |
4393 | | {"samplingEffort", N_("Sampling Effort"), "Text", xmpText, xmpExternal, |
4394 | | N_("The amount of effort expended during an Event.")}, |
4395 | | {"sampleSizeValue", N_("Sampling Size Value"), "Text", xmpText, xmpExternal, |
4396 | | N_("A numeric value for a measurement of the size (time duration, length, area, or volume) of a sample in a " |
4397 | | "sampling event.")}, |
4398 | | {"sampleSizeUnit", N_("Sampling Size Unit"), "Text", xmpText, xmpExternal, |
4399 | | N_("The unit of measurement of the size (time duration, length, area, or volume) of a sample in a sampling " |
4400 | | "event.")}, |
4401 | | {"fieldNumber", N_("Field Number"), "Text", xmpText, xmpExternal, |
4402 | | N_("An identifier given to the event in the field. Often serves as a link between field notes and the " |
4403 | | "Event.")}, |
4404 | | {"fieldNotes", N_("Field Notes"), "Text", xmpText, xmpExternal, |
4405 | | N_("One of (a) an indicator of the existence of, (b) a reference to (publication, URI), or (c) the text of " |
4406 | | "notes taken in the field about the Event.")}, |
4407 | | {"eventRemarks", N_("Event Remarks"), "Text", xmpText, xmpExternal, N_("Comments or notes about the Event.")}, |
4408 | | |
4409 | | // Location Level Class |
4410 | | { |
4411 | | "dctermsLocation", |
4412 | | N_("Location Class"), |
4413 | | "Location", |
4414 | | xmpText, |
4415 | | xmpInternal, |
4416 | | N_("Deprecated. Use Xmp.dcterms.Location instead. *Main structure* containing location based information."), |
4417 | | }, |
4418 | | // Location Level Terms |
4419 | | {"locationID", N_("Location ID"), "Text", xmpText, xmpExternal, |
4420 | | N_("An identifier for the set of location information (data associated with Location). May be a global unique " |
4421 | | "identifier or an identifier specific to the data set.")}, |
4422 | | {"higherGeographyID", N_("Higher Geography ID"), "Text", xmpText, xmpExternal, |
4423 | | N_("An identifier for the geographic region within which the Location occurred. Recommended best practice is " |
4424 | | "to use an persistent identifier from a controlled vocabulary such as the Getty Thesaurus of Geographic " |
4425 | | "Names.")}, |
4426 | | {"higherGeography", N_("Higher Geography"), "bag Text", xmpBag, xmpExternal, |
4427 | | N_("A list (concatenated and separated) of geographic names less specific than the information captured in " |
4428 | | "the locality term.")}, |
4429 | | {"continent", N_("Continent"), "Text", xmpText, xmpExternal, |
4430 | | N_("The name of the continent in which the Location occurs. Recommended best practice is to use a controlled " |
4431 | | "vocabulary such as the Getty Thesaurus of Geographic Names or the ISO 3166 Continent code.")}, |
4432 | | {"waterBody", N_("Water Body"), "Text", xmpText, xmpExternal, |
4433 | | N_("The name of the water body in which the Location occurs. Recommended best practice is to use a controlled " |
4434 | | "vocabulary such as the Getty Thesaurus of Geographic Names.")}, |
4435 | | {"islandGroup", N_("Island Group"), "Text", xmpText, xmpExternal, |
4436 | | N_("The name of the island group in which the Location occurs. Recommended best practice is to use a " |
4437 | | "controlled vocabulary such as the Getty Thesaurus of Geographic Names.")}, |
4438 | | {"island", N_("Island"), "Text", xmpText, xmpExternal, |
4439 | | N_("The name of the island on or near which the Location occurs. Recommended best practice is to use a " |
4440 | | "controlled vocabulary such as the Getty Thesaurus of Geographic Names.")}, |
4441 | | {"country", N_("Country"), "Text", xmpText, xmpExternal, |
4442 | | N_("The name of the country or major administrative unit in which the Location occurs. Recommended best " |
4443 | | "practice is to use a controlled vocabulary such as the Getty Thesaurus of Geographic Names.")}, |
4444 | | {"countryCode", N_("Country Code"), "Text", xmpText, xmpExternal, |
4445 | | N_("The standard code for the country in which the Location occurs. Recommended best practice is to use ISO " |
4446 | | "3166-1-alpha-2 country codes.")}, |
4447 | | {"stateProvince", N_("State Province"), "Text", xmpText, xmpExternal, |
4448 | | N_("The name of the next smaller administrative region than country (state, province, canton, department, " |
4449 | | "region, etc.) in which the Location occurs.")}, |
4450 | | {"county", N_("County"), "Text", xmpText, xmpExternal, |
4451 | | N_("The full, unabbreviated name of the next smaller administrative region than stateProvince (county, shire, " |
4452 | | "department, etc.) in which the Location occurs.")}, |
4453 | | {"municipality", N_("Municipality"), "Text", xmpText, xmpExternal, |
4454 | | N_("The full, unabbreviated name of the next smaller administrative region than county (city, municipality, " |
4455 | | "etc.) in which the Location occurs. Do not use this term for a nearby named place that does not contain " |
4456 | | "the actual location.")}, |
4457 | | {"locality", N_("Locality"), "Text", xmpText, xmpExternal, |
4458 | | N_("The specific description of the place. Less specific geographic information can be provided in other " |
4459 | | "geographic terms (higherGeography, continent, country, stateProvince, county, municipality, waterBody, " |
4460 | | "island, islandGroup). This term may contain information modified from the original to correct perceived " |
4461 | | "errors or standardize the description.")}, |
4462 | | {"verbatimLocality", N_("Verbatim Locality"), "Text", xmpText, xmpExternal, |
4463 | | N_("The original textual description of the place.")}, |
4464 | | {"verbatimElevation", N_("Verbatim Elevation"), "Text", xmpText, xmpExternal, |
4465 | | N_("The original description of the elevation (altitude, usually above sea level) of the Location.")}, |
4466 | | {"minimumElevationInMeters", N_("Minimum Elevation In Meters"), "Real", xmpText, xmpExternal, |
4467 | | N_("The lower limit of the range of elevation (altitude, usually above sea level), in meters.")}, |
4468 | | {"maximumElevationInMeters", N_("Maximum Elevation In Meters"), "Real", xmpText, xmpExternal, |
4469 | | N_("The upper limit of the range of elevation (altitude, usually above sea level), in meters.")}, |
4470 | | {"verbatimDepth", N_("Verbatim Depth"), "Text", xmpText, xmpExternal, |
4471 | | N_("The original description of the depth below the local surface.")}, |
4472 | | {"minimumDepthInMeters", N_("Minimum Depth In Meters"), "Real", xmpText, xmpExternal, |
4473 | | N_("The lesser depth of a range of depth below the local surface, in meters.")}, |
4474 | | {"maximumDepthInMeters", N_("Maximum Depth In Meters"), "Real", xmpText, xmpExternal, |
4475 | | N_("The greater depth of a range of depth below the local surface, in meters.")}, |
4476 | | {"minimumDistanceAboveSurfaceInMeters", N_("Minimum Distance Above Surface In Meters"), "Real", xmpText, |
4477 | | xmpExternal, |
4478 | | N_("The lesser distance in a range of distance from a reference surface in the vertical direction, in meters. " |
4479 | | "Use positive values for locations above the surface, negative values for locations below. If depth " |
4480 | | "measures are given, the reference surface is the location given by the depth, otherwise the reference " |
4481 | | "surface is the location given by the elevation.")}, |
4482 | | {"maximumDistanceAboveSurfaceInMeters", N_("Maximum Distance Above Surface In Meters"), "Real", xmpText, |
4483 | | xmpExternal, |
4484 | | N_("The greater distance in a range of distance from a reference surface in the vertical direction, in " |
4485 | | "meters. Use positive values for locations above the surface, negative values for locations below. If " |
4486 | | "depth measures are given, the reference surface is the location given by the depth, otherwise the " |
4487 | | "reference surface is the location given by the elevation.")}, |
4488 | | {"locationAccordingTo", N_("Location According To"), "Text", xmpText, xmpExternal, |
4489 | | N_("Information about the source of this Location information. Could be a publication (gazetteer), " |
4490 | | "institution, or team of individuals.")}, |
4491 | | {"locationRemarks", N_("Location Remarks"), "Text", xmpText, xmpExternal, |
4492 | | N_("Comments or notes about the Location.")}, |
4493 | | {"verbatimCoordinates", N_("Verbatim Coordinates"), "Text", xmpText, xmpExternal, |
4494 | | N_("The verbatim original spatial coordinates of the Location. The coordinate ellipsoid, geodeticDatum, or " |
4495 | | "full Spatial Reference System (SRS) for these coordinates should be stored in verbatimSRS and the " |
4496 | | "coordinate system should be stored in verbatimCoordinateSystem.")}, |
4497 | | {"verbatimLatitude", N_("Verbatim Latitude"), "Text", xmpText, xmpExternal, |
4498 | | N_("The verbatim original latitude of the Location. The coordinate ellipsoid, geodeticDatum, or full Spatial " |
4499 | | "Reference System (SRS) for these coordinates should be stored in verbatimSRS and the coordinate system " |
4500 | | "should be stored in verbatimCoordinateSystem.")}, |
4501 | | {"verbatimLongitude", N_("Verbatim Longitude"), "Text", xmpText, xmpExternal, |
4502 | | N_("The verbatim original longitude of the Location. The coordinate ellipsoid, geodeticDatum, or full Spatial " |
4503 | | "Reference System (SRS) for these coordinates should be stored in verbatimSRS and the coordinate system " |
4504 | | "should be stored in verbatimCoordinateSystem.")}, |
4505 | | {"verbatimCoordinateSystem", N_("Verbatim Coordinate System"), "Text", xmpText, xmpExternal, |
4506 | | N_("The spatial coordinate system for the verbatimLatitude and verbatimLongitude or the verbatimCoordinates " |
4507 | | "of the Location. Recommended best practice is to use a controlled vocabulary.")}, |
4508 | | {"verbatimSRS", N_("Verbatim SRS"), "Text", xmpText, xmpExternal, |
4509 | | N_("The ellipsoid, geodetic datum, or spatial reference system (SRS) upon which coordinates given in " |
4510 | | "verbatimLatitude and verbatimLongitude, or verbatimCoordinates are based. Recommended best practice is " |
4511 | | "use the EPSG code as a controlled vocabulary to provide an SRS, if known. Otherwise use a controlled " |
4512 | | "vocabulary for the name or code of the geodetic datum, if known. Otherwise use a controlled vocabulary " |
4513 | | "for the name or code of the ellipsoid, if known. If none of these is known, use the value \"unknown\".")}, |
4514 | | {"decimalLatitude", N_("Decimal Latitude"), "Real", xmpText, xmpExternal, |
4515 | | N_("The geographic latitude (in decimal degrees, using the spatial reference system given in geodeticDatum) " |
4516 | | "of the geographic center of a Location. Positive values are north of the Equator, negative values are " |
4517 | | "south of it. Legal values lie between -90 and 90, inclusive.")}, |
4518 | | {"decimalLongitude", N_("Decimal Longitude"), "Real", xmpText, xmpExternal, |
4519 | | N_("The geographic longitude (in decimal degrees, using the spatial reference system given in geodeticDatum) " |
4520 | | "of the geographic center of a Location. Positive values are east of the Greenwich Meridian, negative " |
4521 | | "values are west of it. Legal values lie between -180 and 180, inclusive.")}, |
4522 | | {"geodeticDatum", N_("Geodetic Datum"), "Text", xmpText, xmpExternal, |
4523 | | N_("The ellipsoid, geodetic datum, or spatial reference system (SRS) upon which the geographic coordinates " |
4524 | | "given in decimalLatitude and decimalLongitude as based. Recommended best practice is use the EPSG code as " |
4525 | | "a controlled vocabulary to provide an SRS, if known. Otherwise use a controlled vocabulary for the name " |
4526 | | "or code of the geodetic datum, if known. Otherwise use a controlled vocabulary for the name or code of " |
4527 | | "the ellipsoid, if known. If none of these is known, use the value \"unknown\".")}, |
4528 | | {"coordinateUncertaintyInMeters", N_("Coordinate Uncertainty In Meters"), "Real", xmpText, xmpExternal, |
4529 | | N_("The horizontal distance (in meters) from the given decimalLatitude and decimalLongitude describing the " |
4530 | | "smallest circle containing the whole of the Location. Leave the value empty if the uncertainty is " |
4531 | | "unknown, cannot be estimated, or is not applicable (because there are no coordinates). Zero is not a " |
4532 | | "valid value for this term.")}, |
4533 | | {"coordinatePrecision", N_("Coordinate Precision"), "Text", xmpText, xmpExternal, |
4534 | | N_("A decimal representation of the precision of the coordinates given in the decimalLatitude and " |
4535 | | "decimalLongitude.")}, |
4536 | | {"pointRadiusSpatialFit", N_("Point Radius Spatial Fit"), "Real", xmpText, xmpExternal, |
4537 | | /* xgettext:no-c-format */ |
4538 | | N_("The ratio of the area of the point-radius (decimalLatitude, decimalLongitude, " |
4539 | | "coordinateUncertaintyInMeters) to the area of the true (original, or most specific) spatial " |
4540 | | "representation of the Location. Legal values are 0, greater than or equal to 1, or undefined. A value of " |
4541 | | "1 is an exact match or 100% overlap. A value of 0 should be used if the given point-radius does not " |
4542 | | "completely contain the original representation. The pointRadiusSpatialFit is undefined (and should be " |
4543 | | "left blank) if the original representation is a point without uncertainty and the given georeference is " |
4544 | | "not that same point (without uncertainty). If both the original and the given georeference are the same " |
4545 | | "point, the pointRadiusSpatialFit is 1.")}, |
4546 | | {"footprintWKT", N_("Footprint WKT"), "Text", xmpText, xmpExternal, |
4547 | | N_("A Well-Known Text (WKT) representation of the shape (footprint, geometry) that defines the Location. A " |
4548 | | "Location may have both a point-radius representation (see decimalLatitude) and a footprint " |
4549 | | "representation, and they may differ from each other.")}, |
4550 | | {"footprintSRS", N_("Footprint SRS"), "Text", xmpText, xmpExternal, |
4551 | | N_("A Well-Known Text (WKT) representation of the Spatial Reference System (SRS) for the footprintWKT of the " |
4552 | | "Location. Do not use this term to describe the SRS of the decimalLatitude and decimalLongitude, even if " |
4553 | | "it is the same as for the footprintWKT - use the geodeticDatum instead.")}, |
4554 | | {"footprintSpatialFit", N_("Footprint Spatial Fit"), "Real", xmpText, xmpExternal, |
4555 | | /* xgettext:no-c-format */ |
4556 | | N_("The ratio of the area of the footprint (footprintWKT) to the area of the true (original, or most " |
4557 | | "specific) spatial representation of the Location. Legal values are 0, greater than or equal to 1, or " |
4558 | | "undefined. A value of 1 is an exact match or 100% overlap. A value of 0 should be used if the given " |
4559 | | "footprint does not completely contain the original representation. The footprintSpatialFit is undefined " |
4560 | | "(and should be left blank) if the original representation is a point and the given georeference is not " |
4561 | | "that same point. If both the original and the given georeference are the same point, the " |
4562 | | "footprintSpatialFit is 1.")}, |
4563 | | {"georeferencedBy", N_("Georeferenced By"), "bag Text", xmpBag, xmpExternal, |
4564 | | N_("A list (concatenated and separated) of names of people, groups, or organizations who determined the " |
4565 | | "georeference (spatial representation) for the Location.")}, |
4566 | | {"georeferencedDate", N_("Georeferenced Date"), "Date", xmpText, xmpExternal, |
4567 | | N_("The date on which the Location was georeferenced. Recommended best practice is to use an encoding scheme, " |
4568 | | "such as ISO 8601:2004(E).")}, |
4569 | | {"georeferenceProtocol", N_("Georeference Protocol"), "Text", xmpText, xmpExternal, |
4570 | | N_("A description or reference to the methods used to determine the spatial footprint, coordinates, and " |
4571 | | "uncertainties.")}, |
4572 | | {"georeferenceSources", N_("Georeference Sources"), "bag Text", xmpBag, xmpExternal, |
4573 | | N_("A list (concatenated and separated) of maps, gazetteers, or other resources used to georeference the " |
4574 | | "Location, described specifically enough to allow anyone in the future to use the same resources.")}, |
4575 | | {"georeferenceVerificationStatus", N_("Georeference Verification Status"), "Text", xmpText, xmpExternal, |
4576 | | N_("A categorical description of the extent to which the georeference has been verified to represent the best " |
4577 | | "possible spatial description. Recommended best practice is to use a controlled vocabulary.")}, |
4578 | | {"georeferenceRemarks", N_("Georeference Remarks"), "Text", xmpText, xmpExternal, |
4579 | | N_("Notes or comments about the spatial description determination, explaining assumptions made in addition or " |
4580 | | "opposition to the those formalized in the method referred to in georeferenceProtocol.")}, |
4581 | | |
4582 | | // Geological Context Level Class |
4583 | | { |
4584 | | "GeologicalContext", |
4585 | | N_("Geological Context"), |
4586 | | "GeologicalContext", |
4587 | | xmpText, |
4588 | | xmpInternal, |
4589 | | N_("*Main structure* containing geological context based information."), |
4590 | | }, |
4591 | | // Geological Context Level Terms |
4592 | | {"geologicalContextID", N_("Geological Context ID"), "Text", xmpText, xmpExternal, |
4593 | | N_("An identifier for the set of information associated with a GeologicalContext (the location within a " |
4594 | | "geological context, such as stratigraphy). May be a global unique identifier or an identifier specific to " |
4595 | | "the data set.")}, |
4596 | | {"earliestEonOrLowestEonothem", N_("Earliest Eon Or Lowest Eonothem"), "Text", xmpText, xmpExternal, |
4597 | | N_("The full name of the earliest possible geochronologic eon or lowest chrono-stratigraphic eonothem or the " |
4598 | | "informal name (\"Precambrian\") attributable to the stratigraphic horizon from which the cataloged item " |
4599 | | "was collected.")}, |
4600 | | {"latestEonOrHighestEonothem", N_("Latest Eon Or Highest Eonothem"), "Text", xmpText, xmpExternal, |
4601 | | N_("The full name of the latest possible geochronologic eon or highest chrono-stratigraphic eonothem or the " |
4602 | | "informal name (\"Precambrian\") attributable to the stratigraphic horizon from which the cataloged item " |
4603 | | "was collected.")}, |
4604 | | {"earliestEraOrLowestErathem", N_("Earliest Era Or Lowest Erathem"), "Text", xmpText, xmpExternal, |
4605 | | N_("The full name of the earliest possible geochronologic era or lowest chronostratigraphic erathem " |
4606 | | "attributable to the stratigraphic horizon from which the cataloged item was collected.")}, |
4607 | | {"latestEraOrHighestErathem", N_("Latest Era Or Highest Erathem"), "Text", xmpText, xmpExternal, |
4608 | | N_("The full name of the latest possible geochronologic era or highest chronostratigraphic erathem " |
4609 | | "attributable to the stratigraphic horizon from which the cataloged item was collected.")}, |
4610 | | {"earliestPeriodOrLowestSystem", N_("Earliest Period Or Lowest System"), "Text", xmpText, xmpExternal, |
4611 | | N_("The full name of the earliest possible geochronologic period or lowest chronostratigraphic system " |
4612 | | "attributable to the stratigraphic horizon from which the cataloged item was collected.")}, |
4613 | | {"latestPeriodOrHighestSystem", N_("Latest Period Or Highest System"), "Text", xmpText, xmpExternal, |
4614 | | N_("The full name of the latest possible geochronologic period or highest chronostratigraphic system " |
4615 | | "attributable to the stratigraphic horizon from which the cataloged item was collected.")}, |
4616 | | {"earliestEpochOrLowestSeries", N_("Earliest Epoch Or Lowest Series"), "Text", xmpText, xmpExternal, |
4617 | | N_("The full name of the earliest possible geochronologic epoch or lowest chronostratigraphic series " |
4618 | | "attributable to the stratigraphic horizon from which the cataloged item was collected.")}, |
4619 | | {"latestEpochOrHighestSeries", N_("Latest Epoch Or Highest Series"), "Text", xmpText, xmpExternal, |
4620 | | N_("The full name of the latest possible geochronologic epoch or highest chronostratigraphic series " |
4621 | | "attributable to the stratigraphic horizon from which the cataloged item was collected.")}, |
4622 | | {"earliestAgeOrLowestStage", N_("Earliest Age Or Lowest Stage"), "Text", xmpText, xmpExternal, |
4623 | | N_("The full name of the earliest possible geochronologic age or lowest chronostratigraphic stage " |
4624 | | "attributable to the stratigraphic horizon from which the cataloged item was collected.")}, |
4625 | | {"latestAgeOrHighestStage", N_("Latest Age Or Highest Stage"), "Text", xmpText, xmpExternal, |
4626 | | N_("The full name of the latest possible geochronologic age or highest chronostratigraphic stage attributable " |
4627 | | "to the stratigraphic horizon from which the cataloged item was collected.")}, |
4628 | | {"lowestBiostratigraphicZone", N_("Lowest Biostratigraphic Zone"), "Text", xmpText, xmpExternal, |
4629 | | N_("The full name of the lowest possible geological biostratigraphic zone of the stratigraphic horizon from " |
4630 | | "which the cataloged item was collected.")}, |
4631 | | {"highestBiostratigraphicZone", N_("Highest Biostratigraphic Zone"), "Text", xmpText, xmpExternal, |
4632 | | N_("The full name of the highest possible geological biostratigraphic zone of the stratigraphic horizon from " |
4633 | | "which the cataloged item was collected.")}, |
4634 | | {"lithostratigraphicTerms", N_("Lithostratigraphic Terms"), "Text", xmpText, xmpExternal, |
4635 | | N_("The combination of all litho-stratigraphic names for the rock from which the cataloged item was " |
4636 | | "collected.")}, |
4637 | | {"group", N_("Group"), "Text", xmpText, xmpExternal, |
4638 | | N_("The full name of the lithostratigraphic group from which the cataloged item was collected.")}, |
4639 | | {"formation", N_("Formation"), "Text", xmpText, xmpExternal, |
4640 | | N_("The full name of the lithostratigraphic formation from which the cataloged item was collected.")}, |
4641 | | {"member", N_("Member"), "Text", xmpText, xmpExternal, |
4642 | | N_("The full name of the lithostratigraphic member from which the cataloged item was collected.")}, |
4643 | | {"bed", N_("Bed"), "Text", xmpText, xmpExternal, |
4644 | | N_("The full name of the lithostratigraphic bed from which the cataloged item was collected.")}, |
4645 | | |
4646 | | // Identification Level Class |
4647 | | { |
4648 | | "Identification", |
4649 | | N_("Identification"), |
4650 | | "Identification", |
4651 | | xmpText, |
4652 | | xmpInternal, |
4653 | | N_("*Main structure* containing identification based information."), |
4654 | | }, |
4655 | | // Identification Level Terms |
4656 | | {"identificationID", N_("Identification ID"), "Text", xmpText, xmpExternal, |
4657 | | N_("An identifier for the Identification (the body of information associated with the assignment of a " |
4658 | | "scientific name). May be a global unique identifier or an identifier specific to the data set.")}, |
4659 | | {"identifiedBy", N_("Identified By"), "bag Text", xmpBag, xmpExternal, |
4660 | | N_("A list (concatenated and separated) of names of people, groups, or organizations who assigned the Taxon " |
4661 | | "to the subject.")}, |
4662 | | {"dateIdentified", N_("Date Identified"), "Date", xmpText, xmpExternal, |
4663 | | N_("The date on which the subject was identified as representing the Taxon. Recommended best practice is to " |
4664 | | "use an encoding scheme, such as ISO 8601:2004(E).")}, |
4665 | | {"identificationReferences", N_("Identification References"), "bag Text", xmpBag, xmpExternal, |
4666 | | N_("A list (concatenated and separated) of references (publication, global unique identifier, URI) used in " |
4667 | | "the Identification.")}, |
4668 | | {"identificationVerificationStatus", N_("Identification Verification Status"), "Text", xmpText, xmpExternal, |
4669 | | N_("A categorical indicator of the extent to which the taxonomic identification has been verified to be " |
4670 | | "correct. Recommended best practice is to use a controlled vocabulary such as that used in HISPID/ABCD.")}, |
4671 | | {"identificationRemarks", N_("Identification Remarks"), "Text", xmpText, xmpExternal, |
4672 | | N_("Comments or notes about the Identification.")}, |
4673 | | {"identificationQualifier", N_("Identification Qualifier"), "Text", xmpText, xmpExternal, |
4674 | | N_("A brief phrase or a standard term (\"cf.\" \"aff.\") to express the determiner's doubts about the " |
4675 | | "Identification.")}, |
4676 | | {"typeStatus", N_("Type Status"), "bag Text", xmpBag, xmpExternal, |
4677 | | N_("A list (concatenated and separated) of nomenclatural types (type status, typified scientific name, " |
4678 | | "publication) applied to the subject.")}, |
4679 | | |
4680 | | // Taxon Level Class |
4681 | | { |
4682 | | "Taxon", |
4683 | | N_("Taxon"), |
4684 | | "Taxon", |
4685 | | xmpText, |
4686 | | xmpInternal, |
4687 | | N_("*Main structure* containing taxonomic based information."), |
4688 | | }, |
4689 | | // Taxon Level Terms |
4690 | | {"taxonID", N_("Taxon ID"), "Text", xmpText, xmpExternal, |
4691 | | N_("An identifier for the set of taxon information (data associated with the Taxon class). May be a global " |
4692 | | "unique identifier or an identifier specific to the data set.")}, |
4693 | | {"scientificNameID", N_("Scientific Name ID"), "Text", xmpText, xmpExternal, |
4694 | | N_("An identifier for the nomenclatural (not taxonomic) details of a scientific name.")}, |
4695 | | {"acceptedNameUsageID", N_("Accepted Name Usage ID"), "Text", xmpText, xmpExternal, |
4696 | | N_("An identifier for the name usage (documented meaning of the name according to a source) of the currently " |
4697 | | "valid (zoological) or accepted (botanical) taxon.")}, |
4698 | | {"parentNameUsageID", N_("Parent Name Usage ID"), "Text", xmpText, xmpExternal, |
4699 | | N_("An identifier for the name usage (documented meaning of the name according to a source) of the direct, " |
4700 | | "most proximate higher-rank parent taxon (in a classification) of the most specific element of the " |
4701 | | "scientificName.")}, |
4702 | | {"originalNameUsageID", N_("Original Name Usage ID"), "Text", xmpText, xmpExternal, |
4703 | | N_("An identifier for the name usage (documented meaning of the name according to a source) in which the " |
4704 | | "terminal element of the scientificName was originally established under the rules of the associated " |
4705 | | "nomenclaturalCode.")}, |
4706 | | {"nameAccordingToID", N_("Name According To ID"), "Text", xmpText, xmpExternal, |
4707 | | N_("An identifier for the source in which the specific taxon concept circumscription is defined or implied. " |
4708 | | "See nameAccordingTo.")}, |
4709 | | {"namePublishedInID", N_("Name Published In ID"), "Text", xmpText, xmpExternal, |
4710 | | N_("An identifier for the publication in which the scientificName was originally established under the rules " |
4711 | | "of the associated nomenclaturalCode.")}, |
4712 | | {"taxonConceptID", N_("Taxon Concept ID"), "Text", xmpText, xmpExternal, |
4713 | | N_("An identifier for the taxonomic concept to which the record refers - not for the nomenclatural details of " |
4714 | | "a taxon.")}, |
4715 | | {"scientificName", N_("Scientific Name"), "Text", xmpText, xmpExternal, |
4716 | | N_("The full scientific name, with authorship and date information if known. When forming part of an " |
4717 | | "Identification, this should be the name in lowest level taxonomic rank that can be determined. This term " |
4718 | | "should not contain identification qualifications, which should instead be supplied in the " |
4719 | | "IdentificationQualifier term.")}, |
4720 | | {"acceptedNameUsage", N_("Accepted Name Usage"), "Text", xmpText, xmpExternal, |
4721 | | N_("The full name, with authorship and date information if known, of the currently valid (zoological) or " |
4722 | | "accepted (botanical) taxon.")}, |
4723 | | {"parentNameUsage", N_("Parent Name Usage"), "Text", xmpText, xmpExternal, |
4724 | | N_("The full name, with authorship and date information if known, of the direct, most proximate higher-rank " |
4725 | | "parent taxon (in a classification) of the most specific element of the scientificName.")}, |
4726 | | {"originalNameUsage", N_("Original Name Usage"), "Text", xmpText, xmpExternal, |
4727 | | N_("The taxon name, with authorship and date information if known, as it originally appeared when first " |
4728 | | "established under the rules of the associated nomenclaturalCode. The basionym (botany) or basonym " |
4729 | | "(bacteriology) of the scientificName or the senior/earlier homonym for replaced names.")}, |
4730 | | {"nameAccordingTo", N_("Name According To"), "Text", xmpText, xmpExternal, |
4731 | | N_("The reference to the source in which the specific taxon concept circumscription is defined or implied - " |
4732 | | "traditionally signified by the Latin \"sensu\" or \"sec.\" (from secundum, meaning \"according to\"). For " |
4733 | | "taxa that result from identifications, a reference to the keys, monographs, experts and other sources " |
4734 | | "should be given.")}, |
4735 | | {"namePublishedIn", N_("Name Published In"), "Text", xmpText, xmpExternal, |
4736 | | N_("A reference for the publication in which the scientificName was originally established under the rules of " |
4737 | | "the associated nomenclaturalCode.")}, |
4738 | | {"namePublishedInYear", N_("Name Published In Year"), "Text", xmpText, xmpExternal, |
4739 | | N_("The four-digit year in which the scientificName was published.")}, |
4740 | | {"higherClassification", N_("Higher Classification"), "bag Text", xmpBag, xmpExternal, |
4741 | | N_("A list (concatenated and separated) of taxa names terminating at the rank immediately superior to the " |
4742 | | "taxon referenced in the taxon record. Recommended best practice is to order the list starting with the " |
4743 | | "highest rank and separating the names for each rank with a semi-colon ;")}, |
4744 | | {"kingdom", N_("Kingdom"), "Text", xmpText, xmpExternal, |
4745 | | N_("The full scientific name of the kingdom in which the taxon is classified.")}, |
4746 | | {"phylum", N_("Phylum"), "Text", xmpText, xmpExternal, |
4747 | | N_("The full scientific name of the phylum or division in which the taxon is classified.")}, |
4748 | | {"class", N_("Class"), "Text", xmpText, xmpExternal, |
4749 | | N_("The full scientific name of the class in which the taxon is classified.")}, |
4750 | | {"order", N_("Order"), "Text", xmpText, xmpExternal, |
4751 | | N_("The full scientific name of the order in which the taxon is classified.")}, |
4752 | | {"family", N_("Family"), "Text", xmpText, xmpExternal, |
4753 | | N_("The full scientific name of the family in which the taxon is classified.")}, |
4754 | | {"genus", N_("Genus"), "Text", xmpText, xmpExternal, |
4755 | | N_("The full scientific name of the genus in which the taxon is classified.")}, |
4756 | | {"subgenus", N_("Subgenus"), "Text", xmpText, xmpExternal, |
4757 | | N_("The full scientific name of the subgenus in which the taxon is classified. Values should include the " |
4758 | | "genus to avoid homonym confusion.")}, |
4759 | | {"specificEpithet", N_("Specific Epithet"), "Text", xmpText, xmpExternal, |
4760 | | N_("The name of the first or species epithet of the scientificName.")}, |
4761 | | {"infraspecificEpithet", N_("Infraspecific Epithet"), "Text", xmpText, xmpExternal, |
4762 | | N_("The name of the lowest or terminal infraspecific epithet of the scientificName, excluding any rank " |
4763 | | "designation.")}, |
4764 | | {"taxonRank", N_("Taxon Rank"), "Text", xmpText, xmpExternal, |
4765 | | N_("The taxonomic rank of the most specific name in the scientificName. Recommended best practice is to use a " |
4766 | | "controlled vocabulary.")}, |
4767 | | {"verbatimTaxonRank", N_("Verbatim Taxon Rank"), "Text", xmpText, xmpExternal, |
4768 | | N_("The taxonomic rank of the most specific name in the scientificName as it appears in the original " |
4769 | | "record.")}, |
4770 | | {"scientificNameAuthorship", N_("Scientific Name Authorship"), "Text", xmpText, xmpExternal, |
4771 | | N_("The authorship information for the scientificName formatted according to the conventions of the " |
4772 | | "applicable nomenclaturalCode.")}, |
4773 | | {"vernacularName", N_("Vernacular Name"), "Lang Alt", langAlt, xmpExternal, N_("A common or vernacular name.")}, |
4774 | | {"nomenclaturalCode", N_("Nomenclatural Code"), "Text", xmpText, xmpExternal, |
4775 | | N_("The nomenclatural code (or codes in the case of an ambiregnal name) under which the scientificName is " |
4776 | | "constructed. Recommended best practice is to use a controlled vocabulary.")}, |
4777 | | {"taxonomicStatus", N_("Taxonomic Status"), "Text", xmpText, xmpExternal, |
4778 | | N_("The status of the use of the scientificName as a label for a taxon. Requires taxonomic opinion to define " |
4779 | | "the scope of a taxon. Rules of priority then are used to define the taxonomic status of the nomenclature " |
4780 | | "contained in that scope, combined with the experts opinion. It must be linked to a specific taxonomic " |
4781 | | "reference that defines the concept. Recommended best practice is to use a controlled vocabulary.")}, |
4782 | | {"nomenclaturalStatus", N_("Nomenclatural Status"), "Text", xmpText, xmpExternal, |
4783 | | N_("The status related to the original publication of the name and its conformance to the relevant rules of " |
4784 | | "nomenclature. It is based essentially on an algorithm according to the business rules of the code. It " |
4785 | | "requires no taxonomic opinion.")}, |
4786 | | {"taxonRemarks", N_("Taxon Remarks"), "Text", xmpText, xmpExternal, |
4787 | | N_("Comments or notes about the taxon or name.")}, |
4788 | | |
4789 | | // Resource Relationship Level Class |
4790 | | { |
4791 | | "ResourceRelationship", |
4792 | | N_("Resource Relationship"), |
4793 | | "ResourceRelationship", |
4794 | | xmpText, |
4795 | | xmpInternal, |
4796 | | N_("*Main structure* containing relationships between resources based information."), |
4797 | | }, |
4798 | | // Resource Relationship Level Terms |
4799 | | {"resourceRelationshipID", N_("Resource Relationship ID"), "Text", xmpText, xmpExternal, |
4800 | | N_("An identifier for an instance of relationship between one resource (the subject) and another " |
4801 | | "(relatedResource, the object).")}, |
4802 | | {"resourceID", N_("Resource ID"), "Text", xmpText, xmpExternal, |
4803 | | N_("An identifier for the resource that is the subject of the relationship.")}, |
4804 | | {"relatedResourceID", N_("Related Resource ID"), "Text", xmpText, xmpExternal, |
4805 | | N_("An identifier for a related resource (the object, rather than the subject of the relationship).")}, |
4806 | | {"relationshipOfResource", N_("Relationship Of Resource"), "Text", xmpText, xmpExternal, |
4807 | | N_("The relationship of the resource identified by relatedResourceID to the subject (optionally identified by " |
4808 | | "the resourceID). Recommended best practice is to use a controlled vocabulary.")}, |
4809 | | {"relationshipAccordingTo", N_("Relationship According To"), "Text", xmpText, xmpExternal, |
4810 | | N_("The source (person, organization, publication, reference) establishing the relationship between the two " |
4811 | | "resources.")}, |
4812 | | {"relationshipEstablishedDate", N_("Relationship Established Date"), "Date", xmpText, xmpExternal, |
4813 | | N_("The date-time on which the relationship between the two resources was established. Recommended best " |
4814 | | "practice is to use an encoding scheme, such as ISO 8601:2004(E).")}, |
4815 | | {"relationshipRemarks", N_("Relationship Remarks"), "Text", xmpText, xmpExternal, |
4816 | | N_("Comments or notes about the relationship between the two resources.")}, |
4817 | | |
4818 | | // Measurement Or Fact Level Class |
4819 | | { |
4820 | | "MeasurementOrFact", |
4821 | | N_("Measurement Or Fact"), |
4822 | | "MeasurementOrFact", |
4823 | | xmpText, |
4824 | | xmpInternal, |
4825 | | N_("*Main structure* containing measurement based information."), |
4826 | | }, |
4827 | | // Measurement Or Fact Level Terms |
4828 | | {"measurementID", N_("Measurement ID"), "Text", xmpText, xmpExternal, |
4829 | | N_("An identifier for the MeasurementOrFact (information pertaining to measurements, facts, characteristics, " |
4830 | | "or assertions). May be a global unique identifier or an identifier specific to the data set.")}, |
4831 | | {"measurementType", N_("Measurement Type"), "Text", xmpText, xmpExternal, |
4832 | | N_("The nature of the measurement, fact, characteristic, or assertion. Recommended best practice is to use a " |
4833 | | "controlled vocabulary.")}, |
4834 | | {"measurementValue", N_("Measurement Value"), "Text", xmpText, xmpExternal, |
4835 | | N_("The value of the measurement, fact, characteristic, or assertion.")}, |
4836 | | {"measurementAccuracy", N_("Measurement Accuracy"), "Text", xmpText, xmpExternal, |
4837 | | N_("The description of the potential error associated with the measurementValue.")}, |
4838 | | {"measurementUnit", N_("Measurement Unit"), "Text", xmpText, xmpExternal, |
4839 | | N_("The units associated with the measurementValue. Recommended best practice is to use the International " |
4840 | | "System of Units (SI).")}, |
4841 | | {"measurementDeterminedDate", N_("Measurement Determined Date"), "Date", xmpText, xmpExternal, |
4842 | | N_("The date on which the MeasurementOrFact was made. Recommended best practice is to use an encoding scheme, " |
4843 | | "such as ISO 8601:2004(E).")}, |
4844 | | {"measurementDeterminedBy", N_("Measurement Determined By"), "bag Text", xmpBag, xmpExternal, |
4845 | | N_("A list (concatenated and separated) of names of people, groups, or organizations who determined the value " |
4846 | | "of the MeasurementOrFact.")}, |
4847 | | {"measurementMethod", N_("Measurement Method"), "Text", xmpText, xmpExternal, |
4848 | | N_("A description of or reference to (publication, URI) the method or protocol used to determine the " |
4849 | | "measurement, fact, characteristic, or assertion.")}, |
4850 | | {"measurementRemarks", N_("Measurement Remarks"), "Text", xmpText, xmpExternal, |
4851 | | N_("Comments or notes accompanying the MeasurementOrFact.")}, |
4852 | | // End of list marker |
4853 | | {nullptr, nullptr, nullptr, invalidTypeId, xmpInternal, nullptr}, |
4854 | | }; |
4855 | | |
4856 | | const XmpPropertyInfo xmpAcdseeInfo[] = { |
4857 | | {"caption", N_("Caption"), "Text", xmpText, xmpExternal, N_("A brief description of the file")}, |
4858 | | {"datetime", N_("Date Time"), "Text", xmpText, xmpExternal, N_("Date and Time")}, |
4859 | | {"author", N_("Author"), "Text", xmpText, xmpExternal, N_("The name of the author or photographer")}, |
4860 | | {"rating", N_("Rating"), "Text", xmpText, xmpExternal, N_("Numerical rating from 1 to 5")}, |
4861 | | {"notes", N_("Notes"), "Text", xmpText, xmpExternal, |
4862 | | N_("Any descriptive or additional free-form text up to 4,095 characters")}, |
4863 | | {"tagged", N_("Tagged"), "Text", xmpText, xmpExternal, N_("True or False")}, |
4864 | | {"categories", N_("Categories"), "Text", xmpText, xmpExternal, N_("Catalog of hierarchical keywords and groups")}, |
4865 | | |
4866 | | // End of list marker |
4867 | | {nullptr, nullptr, nullptr, invalidTypeId, xmpInternal, nullptr}, |
4868 | | }; |
4869 | | |
4870 | | constexpr XmpPrintInfo xmpPrintInfo[] = { |
4871 | | {"Xmp.crs.CropUnits", EXV_PRINT_TAG(crsCropUnits)}, |
4872 | | {"Xmp.exif.ApertureValue", print0x9202}, |
4873 | | {"Xmp.exif.BrightnessValue", printFloat}, |
4874 | | {"Xmp.exif.ColorSpace", print0xa001}, |
4875 | | {"Xmp.exif.ComponentsConfiguration", print0x9101}, |
4876 | | {"Xmp.exif.Contrast", printNormalSoftHard}, |
4877 | | {"Xmp.exif.CreateDate", printXmpDate}, |
4878 | | {"Xmp.exif.CustomRendered", print0xa401}, |
4879 | | {"Xmp.exif.DateTimeOriginal", printXmpDate}, |
4880 | | {"Xmp.exif.ExifVersion", printXmpVersion}, |
4881 | | {"Xmp.exif.ExposureBiasValue", print0x9204}, |
4882 | | {"Xmp.exif.ExposureMode", print0xa402}, |
4883 | | {"Xmp.exif.ExposureProgram", print0x8822}, |
4884 | | {"Xmp.exif.FileSource", print0xa300}, |
4885 | | {"Xmp.exif.FlashpixVersion", printXmpVersion}, |
4886 | | {"Xmp.exif.FNumber", print0x829d}, |
4887 | | {"Xmp.exif.FocalLength", print0x920a}, |
4888 | | {"Xmp.exif.FocalPlaneResolutionUnit", printExifUnit}, |
4889 | | {"Xmp.exif.FocalPlaneXResolution", printFloat}, |
4890 | | {"Xmp.exif.FocalPlaneYResolution", printFloat}, |
4891 | | {"Xmp.exif.GainControl", print0xa407}, |
4892 | | {"Xmp.exif.GPSAltitudeRef", print0x0005}, |
4893 | | {"Xmp.exif.GPSDestBearingRef", printGPSDirRef}, |
4894 | | {"Xmp.exif.GPSDestDistanceRef", print0x0019}, |
4895 | | {"Xmp.exif.GPSDifferential", print0x001e}, |
4896 | | {"Xmp.exif.GPSImgDirectionRef", printGPSDirRef}, |
4897 | | {"Xmp.exif.GPSMeasureMode", print0x000a}, |
4898 | | {"Xmp.exif.GPSSpeedRef", print0x000c}, |
4899 | | {"Xmp.exif.GPSStatus", print0x0009}, |
4900 | | {"Xmp.exif.GPSTimeStamp", printXmpDate}, |
4901 | | {"Xmp.exif.GPSTrackRef", printGPSDirRef}, |
4902 | | {"Xmp.exif.LightSource", print0x9208}, |
4903 | | {"Xmp.exif.MeteringMode", print0x9207}, |
4904 | | {"Xmp.exif.ModifyDate", printXmpDate}, |
4905 | | {"Xmp.exif.Saturation", print0xa409}, |
4906 | | {"Xmp.exif.SceneCaptureType", print0xa406}, |
4907 | | {"Xmp.exif.SceneType", print0xa301}, |
4908 | | {"Xmp.exif.SensingMethod", print0xa217}, |
4909 | | {"Xmp.exif.Sharpness", printNormalSoftHard}, |
4910 | | {"Xmp.exif.ShutterSpeedValue", print0x9201}, |
4911 | | {"Xmp.exif.SubjectDistanceRange", print0xa40c}, |
4912 | | {"Xmp.exif.WhiteBalance", print0xa403}, |
4913 | | {"Xmp.tiff.Orientation", print0x0112}, |
4914 | | {"Xmp.tiff.ResolutionUnit", printExifUnit}, |
4915 | | {"Xmp.tiff.XResolution", printInt64}, |
4916 | | {"Xmp.tiff.YCbCrPositioning", print0x0213}, |
4917 | | {"Xmp.tiff.YResolution", printInt64}, |
4918 | | {"Xmp.iptc.Scene", EXV_PRINT_VOCABULARY_MULTI(iptcScene)}, |
4919 | | {"Xmp.iptc.SubjectCode", EXV_PRINT_VOCABULARY_MULTI(iptcSubjectCode)}, |
4920 | | {"Xmp.iptcExt.DigitalSourcefileType", EXV_PRINT_VOCABULARY(iptcExtDigitalSourcefileType)}, |
4921 | | {"Xmp.iptcExt.DigitalSourceType", EXV_PRINT_VOCABULARY(iptcExtDigitalSourceType)}, |
4922 | | {"Xmp.plus.AdultContentWarning", EXV_PRINT_VOCABULARY(plusAdultContentWarning)}, |
4923 | | {"Xmp.plus.CopyrightStatus", EXV_PRINT_VOCABULARY(plusCopyrightStatus)}, |
4924 | | {"Xmp.plus.CreditLineRequired", EXV_PRINT_VOCABULARY(plusCreditLineRequired)}, |
4925 | | {"Xmp.plus.ImageAlterationConstraints", EXV_PRINT_VOCABULARY(plusImageAlterationConstraints)}, |
4926 | | {"Xmp.plus.ImageDuplicationConstraints", EXV_PRINT_VOCABULARY(plusImageDuplicationConstraints)}, |
4927 | | {"Xmp.plus.ImageFileConstraints", EXV_PRINT_VOCABULARY(plusImageFileConstraints)}, |
4928 | | {"Xmp.plus.ImageFileFormatAsDelivered", EXV_PRINT_VOCABULARY(plusImageFileFormatAsDelivered)}, |
4929 | | {"Xmp.plus.ImageFileSizeAsDelivered", EXV_PRINT_VOCABULARY(plusImageFileSizeAsDelivered)}, |
4930 | | {"Xmp.plus.ImageType", EXV_PRINT_VOCABULARY(plusImageType)}, |
4931 | | {"Xmp.plus.LicensorTelephoneType1", EXV_PRINT_VOCABULARY(plusLicensorTelephoneType)}, |
4932 | | {"Xmp.plus.LicensorTelephoneType2", EXV_PRINT_VOCABULARY(plusLicensorTelephoneType)}, |
4933 | | {"Xmp.plus.MinorModelAgeDisclosure", EXV_PRINT_VOCABULARY(plusMinorModelAgeDisclosure)}, |
4934 | | {"Xmp.plus.ModelReleaseStatus", EXV_PRINT_VOCABULARY(plusModelReleaseStatus)}, |
4935 | | {"Xmp.plus.PropertyReleaseStatus", EXV_PRINT_VOCABULARY(plusPropertyReleaseStatus)}, |
4936 | | {"Xmp.plus.Reuse", EXV_PRINT_VOCABULARY(plusReuse)}, |
4937 | | {"Xmp.plus.DataMining", EXV_PRINT_VOCABULARY(plusDataMining)}, |
4938 | | }; |
4939 | | |
4940 | 485k | bool XmpNsInfo::operator==(const XmpNsInfo::Ns& ns) const { |
4941 | 485k | return ns_ == ns.ns_; |
4942 | 485k | } |
4943 | | |
4944 | 94.2M | bool XmpNsInfo::operator==(const XmpNsInfo::Prefix& prefix) const { |
4945 | 94.2M | return prefix_ == prefix.prefix_; |
4946 | 94.2M | } |
4947 | | |
4948 | 0 | bool XmpPropertyInfo::operator==(const std::string& name) const { |
4949 | 0 | return name_ == name; |
4950 | 0 | } |
4951 | | |
4952 | | XmpProperties::NsRegistry XmpProperties::nsRegistry_; |
4953 | | std::mutex XmpProperties::mutex_; |
4954 | | |
4955 | | /// \todo not used internally. At least we should test it |
4956 | 0 | const XmpNsInfo* XmpProperties::lookupNsRegistry(const XmpNsInfo::Prefix& prefix) { |
4957 | 0 | auto scopedReadLock = std::scoped_lock(mutex_); |
4958 | 0 | return lookupNsRegistryUnsafe(prefix); |
4959 | 0 | } |
4960 | | |
4961 | 3.35M | const XmpNsInfo* XmpProperties::lookupNsRegistryUnsafe(const XmpNsInfo::Prefix& prefix) { |
4962 | 45.9M | for (const auto& [_, p] : nsRegistry_) { |
4963 | 45.9M | if (p == prefix) |
4964 | 262k | return &p; |
4965 | 45.9M | } |
4966 | 3.08M | return nullptr; |
4967 | 3.35M | } |
4968 | | |
4969 | 6.05k | void XmpProperties::registerNs(const std::string& ns, const std::string& prefix) { |
4970 | 6.05k | auto scopedWriteLock = std::scoped_lock(mutex_); |
4971 | 6.05k | std::string ns2 = ns; |
4972 | 6.05k | if (ns2.back() != '/' && ns2.back() != '#') |
4973 | 3.66k | ns2 += '/'; |
4974 | | // Check if there is already a registered namespace with this prefix |
4975 | 6.05k | if (auto xnp = lookupNsRegistryUnsafe(XmpNsInfo::Prefix{prefix})) { |
4976 | 6.02k | #ifndef SUPPRESS_WARNINGS |
4977 | 6.02k | if (ns2 != xnp->ns_) |
4978 | 6.02k | EXV_WARNING << "Updating namespace URI for " << prefix << " from " << xnp->ns_ << " to " << ns2 << "\n"; |
4979 | 6.02k | #endif |
4980 | 6.02k | unregisterNsUnsafe(xnp->ns_); |
4981 | 6.02k | } |
4982 | | // Allocated memory is freed when the namespace is unregistered. |
4983 | | // Using malloc/free for better system compatibility in case |
4984 | | // users don't unregister their namespaces explicitly. |
4985 | 6.05k | XmpNsInfo xn; |
4986 | 6.05k | auto c = new char[ns2.size() + 1]; |
4987 | 6.05k | std::strcpy(c, ns2.c_str()); |
4988 | 6.05k | xn.ns_ = c; |
4989 | 6.05k | c = new char[prefix.size() + 1]; |
4990 | 6.05k | std::strcpy(c, prefix.c_str()); |
4991 | 6.05k | xn.prefix_ = c; |
4992 | 6.05k | xn.xmpPropertyInfo_ = nullptr; |
4993 | 6.05k | xn.desc_ = ""; |
4994 | 6.05k | nsRegistry_[ns2] = xn; |
4995 | 6.05k | } |
4996 | | |
4997 | 0 | void XmpProperties::unregisterNs(const std::string& ns) { |
4998 | 0 | auto scoped_write_lock = std::scoped_lock(mutex_); |
4999 | 0 | unregisterNsUnsafe(ns); |
5000 | 0 | } |
5001 | | |
5002 | 6.05k | void XmpProperties::unregisterNsUnsafe(const std::string& ns) { |
5003 | 6.05k | auto i = nsRegistry_.find(ns); |
5004 | 6.05k | if (i != nsRegistry_.end()) { |
5005 | 6.05k | delete[] i->second.prefix_; |
5006 | 6.05k | delete[] i->second.ns_; |
5007 | 6.05k | nsRegistry_.erase(i); |
5008 | 6.05k | } |
5009 | 6.05k | } |
5010 | | |
5011 | 53.6k | void XmpProperties::unregisterNs() { |
5012 | 53.6k | auto scoped_write_lock = std::scoped_lock(mutex_); |
5013 | | /// \todo check if we are not unregistering the first NS |
5014 | 53.6k | auto i = nsRegistry_.begin(); |
5015 | 53.6k | while (i != nsRegistry_.end()) { |
5016 | 35 | auto kill = i++; |
5017 | 35 | unregisterNsUnsafe(kill->first); |
5018 | 35 | } |
5019 | 53.6k | } |
5020 | | |
5021 | 145k | std::string XmpProperties::prefix(const std::string& ns) { |
5022 | 145k | auto scoped_read_lock = std::scoped_lock(mutex_); |
5023 | 145k | std::string ns2 = ns; |
5024 | 145k | if (ns2.back() != '/' && ns2.back() != '#') |
5025 | 35.8k | ns2 += '/'; |
5026 | | |
5027 | 145k | auto i = nsRegistry_.find(ns2); |
5028 | 145k | std::string p; |
5029 | 145k | if (i != nsRegistry_.end()) |
5030 | 121k | p = i->second.prefix_; |
5031 | 24.0k | else if (auto xn = Exiv2::find(xmpNsInfo, XmpNsInfo::Ns{std::move(ns2)})) |
5032 | 18.0k | p = std::string(xn->prefix_); |
5033 | 145k | return p; |
5034 | 145k | } |
5035 | | |
5036 | 1.77M | std::string XmpProperties::ns(const std::string& prefix) { |
5037 | 1.77M | auto scoped_read_lock = std::scoped_lock(mutex_); |
5038 | 1.77M | if (auto xn = lookupNsRegistryUnsafe(XmpNsInfo::Prefix{prefix})) |
5039 | 255k | return xn->ns_; |
5040 | 1.52M | return nsInfoUnsafe(prefix)->ns_; |
5041 | 1.77M | } |
5042 | | |
5043 | 0 | const char* XmpProperties::propertyTitle(const XmpKey& key) { |
5044 | 0 | const XmpPropertyInfo* pi = propertyInfo(key); |
5045 | 0 | return pi ? pi->title_ : nullptr; |
5046 | 0 | } |
5047 | | |
5048 | 0 | const char* XmpProperties::propertyDesc(const XmpKey& key) { |
5049 | 0 | const XmpPropertyInfo* pi = propertyInfo(key); |
5050 | 0 | return pi ? pi->desc_ : nullptr; |
5051 | 0 | } |
5052 | | |
5053 | 44.6k | TypeId XmpProperties::propertyType(const XmpKey& key) { |
5054 | 44.6k | const XmpPropertyInfo* pi = propertyInfo(key); |
5055 | 44.6k | return pi ? pi->typeId_ : xmpText; |
5056 | 44.6k | } |
5057 | | |
5058 | 44.6k | const XmpPropertyInfo* XmpProperties::propertyInfo(const XmpKey& key) { |
5059 | 44.6k | std::string prefix = key.groupName(); |
5060 | 44.6k | std::string property = key.tagName(); |
5061 | | // If property is a path for a nested property, determines the innermost element |
5062 | 44.6k | if (auto i = property.find_last_of('/'); i != std::string::npos) { |
5063 | 0 | i = std::distance(property.begin(), std::find_if(property.begin() + i, property.end(), isalpha)); |
5064 | 0 | property = property.substr(i); |
5065 | 0 | i = property.find_first_of(':'); |
5066 | 0 | if (i != std::string::npos) { |
5067 | 0 | prefix = property.substr(0, i); |
5068 | 0 | property = property.substr(i + 1); |
5069 | 0 | } |
5070 | | #ifdef EXIV2_DEBUG_MESSAGES |
5071 | | std::cout << "Nested key: " << key.key() << ", prefix: " << prefix << ", property: " << property << "\n"; |
5072 | | #endif |
5073 | 0 | } |
5074 | 44.6k | if (auto pl = propertyList(prefix)) { |
5075 | 5.97M | for (size_t j = 0; pl[j].name_; ++j) { |
5076 | 5.97M | if (property == pl[j].name_) { |
5077 | 43.3k | return pl + j; |
5078 | 43.3k | } |
5079 | 5.97M | } |
5080 | 44.6k | } |
5081 | 1.31k | return nullptr; |
5082 | 44.6k | } |
5083 | | |
5084 | | /// \todo not used internally. At least we should test it |
5085 | 0 | const char* XmpProperties::nsDesc(const std::string& prefix) { |
5086 | 0 | return nsInfo(prefix)->desc_; |
5087 | 0 | } |
5088 | | |
5089 | 44.6k | const XmpPropertyInfo* XmpProperties::propertyList(const std::string& prefix) { |
5090 | 44.6k | return nsInfo(prefix)->xmpPropertyInfo_; |
5091 | 44.6k | } |
5092 | | |
5093 | 44.6k | const XmpNsInfo* XmpProperties::nsInfo(const std::string& prefix) { |
5094 | 44.6k | auto scoped_read_lock = std::scoped_lock(mutex_); |
5095 | 44.6k | return nsInfoUnsafe(prefix); |
5096 | 44.6k | } |
5097 | | |
5098 | 1.56M | const XmpNsInfo* XmpProperties::nsInfoUnsafe(const std::string& prefix) { |
5099 | 1.56M | const auto pf = XmpNsInfo::Prefix{prefix}; |
5100 | 1.56M | const XmpNsInfo* xn = lookupNsRegistryUnsafe(pf); |
5101 | 1.56M | if (!xn) |
5102 | 1.56M | xn = Exiv2::find(xmpNsInfo, pf); |
5103 | 1.56M | if (!xn) |
5104 | 0 | throw Error(ErrorCode::kerNoNamespaceInfoForXmpPrefix, prefix); |
5105 | 1.56M | return xn; |
5106 | 1.56M | } |
5107 | | |
5108 | 0 | void XmpProperties::registeredNamespaces(Exiv2::Dictionary& nsDict) { |
5109 | 0 | for (auto&& i : xmpNsInfo) { |
5110 | 0 | Exiv2::XmpParser::registerNs(i.ns_, i.prefix_); |
5111 | 0 | } |
5112 | 0 | Exiv2::XmpParser::registeredNamespaces(nsDict); |
5113 | 0 | } |
5114 | | |
5115 | 0 | void XmpProperties::printProperties(std::ostream& os, const std::string& prefix) { |
5116 | 0 | if (auto pl = propertyList(prefix)) { |
5117 | 0 | for (int i = 0; pl[i].name_; ++i) { |
5118 | 0 | os << pl[i]; |
5119 | 0 | } |
5120 | 0 | } |
5121 | |
|
5122 | 0 | } // XmpProperties::printProperties |
5123 | | |
5124 | 25.6k | std::ostream& XmpProperties::printProperty(std::ostream& os, const std::string& key, const Value& value) { |
5125 | 25.6k | PrintFct fct = printValue; |
5126 | 25.6k | if (value.count() != 0) { |
5127 | 23.4k | if (auto info = Exiv2::find(xmpPrintInfo, key)) |
5128 | 0 | fct = info->printFct_; |
5129 | 23.4k | } |
5130 | 25.6k | return fct(os, value, nullptr); |
5131 | 25.6k | } |
5132 | | |
5133 | | //! @brief Internal Pimpl structure with private members and data of class XmpKey. |
5134 | | struct XmpKey::Impl { |
5135 | 1.53M | Impl() = default; //!< Default constructor |
5136 | | Impl(const std::string& prefix, const std::string& property); //!< Constructor |
5137 | | |
5138 | | /*! |
5139 | | @brief Parse and convert the \em key string into property and prefix. |
5140 | | Updates data members if the string can be decomposed, or throws |
5141 | | \em Error. |
5142 | | |
5143 | | @throw Error if the key cannot be decomposed. |
5144 | | */ |
5145 | | void decomposeKey(const std::string& key); //!< Mysterious magic |
5146 | | |
5147 | | // DATA |
5148 | | static constexpr auto familyName_ = "Xmp"; //!< "Xmp" |
5149 | | |
5150 | | std::string prefix_; //!< Prefix |
5151 | | std::string property_; //!< Property name |
5152 | | }; |
5153 | | |
5154 | | //! @brief Constructor for Internal Pimpl structure XmpKey::Impl::Impl |
5155 | 132k | XmpKey::Impl::Impl(const std::string& prefix, const std::string& property) { |
5156 | | // Validate prefix |
5157 | 132k | if (XmpProperties::ns(prefix).empty()) |
5158 | 0 | throw Error(ErrorCode::kerNoNamespaceForPrefix, prefix); |
5159 | | |
5160 | 132k | property_ = property; |
5161 | 132k | prefix_ = prefix; |
5162 | 132k | } |
5163 | | |
5164 | 1.53M | XmpKey::XmpKey(const std::string& key) : p_(std::make_unique<Impl>()) { |
5165 | 1.53M | p_->decomposeKey(key); |
5166 | 1.53M | } |
5167 | | |
5168 | 132k | XmpKey::XmpKey(const std::string& prefix, const std::string& property) : p_(std::make_unique<Impl>(prefix, property)) { |
5169 | 132k | } |
5170 | | |
5171 | 2.23M | XmpKey::~XmpKey() = default; |
5172 | | |
5173 | 574k | XmpKey::XmpKey(const XmpKey& rhs) : p_(std::make_unique<Impl>(*rhs.p_)) { |
5174 | 574k | } |
5175 | | |
5176 | 0 | XmpKey& XmpKey::operator=(const XmpKey& rhs) { |
5177 | 0 | if (this == &rhs) |
5178 | 0 | return *this; |
5179 | 0 | *p_ = *rhs.p_; |
5180 | 0 | return *this; |
5181 | 0 | } |
5182 | | |
5183 | 574k | XmpKey::UniquePtr XmpKey::clone() const { |
5184 | 574k | return UniquePtr(clone_()); |
5185 | 574k | } |
5186 | | |
5187 | 574k | XmpKey* XmpKey::clone_() const { |
5188 | 574k | return new XmpKey(*this); |
5189 | 574k | } |
5190 | | |
5191 | 18.4M | std::string XmpKey::key() const { |
5192 | 18.4M | return std::string(Exiv2::XmpKey::Impl::familyName_) + "." + p_->prefix_ + "." + p_->property_; |
5193 | 18.4M | } |
5194 | | |
5195 | 0 | const char* XmpKey::familyName() const { |
5196 | 0 | return Exiv2::XmpKey::Impl::familyName_; |
5197 | 0 | } |
5198 | | |
5199 | 160k | std::string XmpKey::groupName() const { |
5200 | 160k | return p_->prefix_; |
5201 | 160k | } |
5202 | | |
5203 | 310k | std::string XmpKey::tagName() const { |
5204 | 310k | return p_->property_; |
5205 | 310k | } |
5206 | | |
5207 | 0 | std::string XmpKey::tagLabel() const { |
5208 | 0 | const char* pt = XmpProperties::propertyTitle(*this); |
5209 | 0 | if (!pt) |
5210 | 0 | return tagName(); |
5211 | 0 | return pt; |
5212 | 0 | } |
5213 | | |
5214 | 0 | std::string XmpKey::tagDesc() const { |
5215 | 0 | const char* pt = XmpProperties::propertyDesc(*this); |
5216 | 0 | if (!pt) |
5217 | 0 | return ""; |
5218 | 0 | return pt; |
5219 | 0 | } |
5220 | | |
5221 | 0 | uint16_t XmpKey::tag() const { |
5222 | 0 | return 0; |
5223 | 0 | } |
5224 | | |
5225 | 0 | std::string XmpKey::ns() const { |
5226 | 0 | return XmpProperties::ns(p_->prefix_); |
5227 | 0 | } |
5228 | | |
5229 | | //! @cond IGNORE |
5230 | 1.53M | void XmpKey::Impl::decomposeKey(const std::string& key) { |
5231 | | // Get the family name, prefix and property name parts of the key |
5232 | 1.53M | if (!key.starts_with(familyName_)) |
5233 | 139 | throw Error(ErrorCode::kerInvalidKey, key); |
5234 | 1.53M | std::string::size_type pos1 = key.find('.'); |
5235 | 1.53M | std::string::size_type pos0 = pos1 + 1; |
5236 | 1.53M | pos1 = key.find('.', pos0); |
5237 | 1.53M | if (pos1 == std::string::npos) |
5238 | 0 | throw Error(ErrorCode::kerInvalidKey, key); |
5239 | 1.53M | std::string prefix = key.substr(pos0, pos1 - pos0); |
5240 | 1.53M | if (prefix.empty()) |
5241 | 0 | throw Error(ErrorCode::kerInvalidKey, key); |
5242 | 1.53M | std::string property = key.substr(pos1 + 1); |
5243 | 1.53M | if (property.empty()) |
5244 | 0 | throw Error(ErrorCode::kerInvalidKey, key); |
5245 | | |
5246 | | // Validate prefix |
5247 | 1.53M | if (XmpProperties::ns(prefix).empty()) |
5248 | 0 | throw Error(ErrorCode::kerNoNamespaceForPrefix, prefix); |
5249 | | |
5250 | 1.53M | property_ = std::move(property); |
5251 | 1.53M | prefix_ = std::move(prefix); |
5252 | 1.53M | } // XmpKey::Impl::decomposeKey |
5253 | | |
5254 | | // ************************************************************************* |
5255 | | // free functions |
5256 | | // ************************************************************************* |
5257 | | // free functions |
5258 | 0 | std::ostream& operator<<(std::ostream& os, const XmpPropertyInfo& propertyInfo) { |
5259 | | // CSV encoded I am \"dead\" beat" => "I am ""dead"" beat" |
5260 | 0 | std::string escapedDesc; |
5261 | 0 | escapedDesc.push_back('"'); |
5262 | 0 | for (char c : std::string_view(propertyInfo.desc_)) { |
5263 | 0 | if (c == '"') |
5264 | 0 | escapedDesc += "\"\""; |
5265 | 0 | else |
5266 | 0 | escapedDesc.push_back(c); |
5267 | 0 | } |
5268 | 0 | escapedDesc.push_back('"'); |
5269 | |
|
5270 | 0 | return os << stringFormat("{},{},{},{},{},{}\n", propertyInfo.name_, propertyInfo.title_, propertyInfo.xmpValueType_, |
5271 | 0 | TypeInfo::typeName(propertyInfo.typeId_), |
5272 | 0 | (propertyInfo.xmpCategory_ == xmpExternal ? "External" : "Internal"), escapedDesc); |
5273 | 0 | } |
5274 | | //! @endcond |
5275 | | |
5276 | | } // namespace Exiv2 |