mirror of
https://github.com/Alfresco/alfresco-transform-core.git
synced 2025-05-19 17:14:47 +00:00
ATS-900 Update IPTCMetadataExtractor_metadata_extract.properties (#373)
This commit is contained in:
parent
5ce59d9c04
commit
2d38805d90
@ -27,10 +27,13 @@
|
|||||||
package org.alfresco.transformer.metadataExtractors;
|
package org.alfresco.transformer.metadataExtractors;
|
||||||
|
|
||||||
import java.io.IOException;
|
import java.io.IOException;
|
||||||
|
import java.io.Serializable;
|
||||||
|
import java.util.Map;
|
||||||
|
|
||||||
import org.alfresco.transform.exceptions.TransformException;
|
import org.alfresco.transform.exceptions.TransformException;
|
||||||
import org.alfresco.transformer.tika.parsers.ExifToolParser;
|
import org.alfresco.transformer.tika.parsers.ExifToolParser;
|
||||||
import org.apache.tika.exception.TikaException;
|
import org.apache.tika.exception.TikaException;
|
||||||
|
import org.apache.tika.metadata.Metadata;
|
||||||
import org.apache.tika.parser.Parser;
|
import org.apache.tika.parser.Parser;
|
||||||
import org.slf4j.Logger;
|
import org.slf4j.Logger;
|
||||||
import org.slf4j.LoggerFactory;
|
import org.slf4j.LoggerFactory;
|
||||||
@ -51,8 +54,20 @@ public class IPTCMetadataExtractor extends AbstractTikaMetadataExtractor
|
|||||||
return new ExifToolParser();
|
return new ExifToolParser();
|
||||||
} catch (IOException | TikaException e) {
|
} catch (IOException | TikaException e) {
|
||||||
logger.error(e.getMessage(), e);
|
logger.error(e.getMessage(), e);
|
||||||
throw new TransformException(500, "Error creating IPTC parser");
|
throw new TransformException(500, "Error creating IPTC parser: " + e.getMessage());
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Because some of the mimetypes that IPTCMetadataExtractor now parse, were previously handled
|
||||||
|
* by TikaAutoMetadataExtractor we call the TikaAutoMetadataExtractor.extractSpecific method to
|
||||||
|
* ensure that the returned properties contains the expected entries.
|
||||||
|
*/
|
||||||
|
@Override
|
||||||
|
protected Map<String, Serializable> extractSpecific(Metadata metadata, Map<String, Serializable> properties,
|
||||||
|
Map<String, String> headers) {
|
||||||
|
|
||||||
|
properties = new TikaAutoMetadataExtractor().extractSpecific(metadata, properties, headers);
|
||||||
|
return properties;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
@ -26,6 +26,10 @@
|
|||||||
*/
|
*/
|
||||||
package org.alfresco.transformer.tika.parsers;
|
package org.alfresco.transformer.tika.parsers;
|
||||||
|
|
||||||
|
import static java.nio.charset.StandardCharsets.UTF_8;
|
||||||
|
import static org.alfresco.transform.client.model.Mimetype.MIMETYPE_IMAGE_JPEG;
|
||||||
|
import static org.alfresco.transform.client.model.Mimetype.MIMETYPE_IMAGE_TIFF;
|
||||||
|
|
||||||
import java.io.BufferedReader;
|
import java.io.BufferedReader;
|
||||||
import java.io.File;
|
import java.io.File;
|
||||||
import java.io.FileInputStream;
|
import java.io.FileInputStream;
|
||||||
@ -35,25 +39,28 @@ import java.io.InputStreamReader;
|
|||||||
import java.io.OutputStream;
|
import java.io.OutputStream;
|
||||||
import java.io.Reader;
|
import java.io.Reader;
|
||||||
import java.net.URL;
|
import java.net.URL;
|
||||||
|
import java.util.Map;
|
||||||
import java.util.regex.Matcher;
|
import java.util.regex.Matcher;
|
||||||
import java.util.regex.Pattern;
|
import java.util.regex.Pattern;
|
||||||
|
|
||||||
import org.apache.tika.metadata.Metadata;
|
|
||||||
|
|
||||||
import org.apache.tika.exception.TikaException;
|
import org.apache.tika.exception.TikaException;
|
||||||
import org.apache.tika.io.IOUtils;
|
import org.apache.tika.io.IOUtils;
|
||||||
import org.apache.tika.io.NullOutputStream;
|
import org.apache.tika.io.NullOutputStream;
|
||||||
import org.apache.tika.io.TemporaryResources;
|
import org.apache.tika.io.TemporaryResources;
|
||||||
import org.apache.tika.io.TikaInputStream;
|
import org.apache.tika.io.TikaInputStream;
|
||||||
|
import org.apache.tika.metadata.Metadata;
|
||||||
|
import org.apache.tika.mime.MediaType;
|
||||||
import org.apache.tika.parser.ParseContext;
|
import org.apache.tika.parser.ParseContext;
|
||||||
|
import org.apache.tika.parser.Parser;
|
||||||
import org.apache.tika.parser.external.ExternalParser;
|
import org.apache.tika.parser.external.ExternalParser;
|
||||||
import org.apache.tika.parser.external.ExternalParsersFactory;
|
import org.apache.tika.parser.external.ExternalParsersFactory;
|
||||||
|
import org.apache.tika.parser.image.ImageParser;
|
||||||
|
import org.apache.tika.parser.image.TiffParser;
|
||||||
|
import org.apache.tika.parser.jpeg.JpegParser;
|
||||||
import org.apache.tika.sax.XHTMLContentHandler;
|
import org.apache.tika.sax.XHTMLContentHandler;
|
||||||
import org.xml.sax.ContentHandler;
|
import org.xml.sax.ContentHandler;
|
||||||
import org.xml.sax.SAXException;
|
import org.xml.sax.SAXException;
|
||||||
|
|
||||||
import static java.nio.charset.StandardCharsets.UTF_8;
|
|
||||||
|
|
||||||
public class ExifToolParser extends ExternalParser {
|
public class ExifToolParser extends ExternalParser {
|
||||||
|
|
||||||
private static final String EXIFTOOL_PARSER_CONFIG = "parsers/external/config/exiftool-parser.xml";
|
private static final String EXIFTOOL_PARSER_CONFIG = "parsers/external/config/exiftool-parser.xml";
|
||||||
@ -84,14 +91,33 @@ public class ExifToolParser extends ExternalParser {
|
|||||||
throws IOException, SAXException, TikaException {
|
throws IOException, SAXException, TikaException {
|
||||||
XHTMLContentHandler xhtml = new XHTMLContentHandler(handler, metadata);
|
XHTMLContentHandler xhtml = new XHTMLContentHandler(handler, metadata);
|
||||||
|
|
||||||
|
MediaType mediaType = MediaType.parse(metadata.get(Metadata.CONTENT_TYPE));
|
||||||
TemporaryResources tmp = new TemporaryResources();
|
TemporaryResources tmp = new TemporaryResources();
|
||||||
try {
|
try {
|
||||||
parse(TikaInputStream.get(stream, tmp), xhtml, metadata, tmp);
|
TikaInputStream tis = TikaInputStream.get(stream, tmp);
|
||||||
|
parse(tis, xhtml, metadata, tmp);
|
||||||
|
switch (mediaType.getType()+"/"+mediaType.getSubtype()) {
|
||||||
|
case MIMETYPE_IMAGE_JPEG:
|
||||||
|
parseAdditional(new JpegParser(), tis, handler, metadata, context, mediaType);
|
||||||
|
break;
|
||||||
|
case MIMETYPE_IMAGE_TIFF:
|
||||||
|
parseAdditional(new TiffParser(), tis, handler, metadata, context, mediaType);
|
||||||
|
break;
|
||||||
|
default:
|
||||||
|
parseAdditional(new ImageParser(), tis, handler, metadata, context, mediaType);
|
||||||
|
}
|
||||||
} finally {
|
} finally {
|
||||||
tmp.dispose();
|
tmp.dispose();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private void parseAdditional(Parser parser, TikaInputStream tis, ContentHandler handler, Metadata metadata, ParseContext context,
|
||||||
|
MediaType mediaType) throws IOException, SAXException, TikaException {
|
||||||
|
if (parser.getSupportedTypes(context).contains(mediaType)) {
|
||||||
|
parser.parse(tis, handler, metadata, context);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
private void parse(TikaInputStream stream, XHTMLContentHandler xhtml, Metadata metadata, TemporaryResources tmp)
|
private void parse(TikaInputStream stream, XHTMLContentHandler xhtml, Metadata metadata, TemporaryResources tmp)
|
||||||
throws IOException, SAXException, TikaException {
|
throws IOException, SAXException, TikaException {
|
||||||
boolean inputToStdIn = true;
|
boolean inputToStdIn = true;
|
||||||
|
@ -1,308 +1,141 @@
|
|||||||
#
|
#
|
||||||
# IPTCMetadataExtracter - default mapping
|
# IPTCMetadataExtracter - default mapping
|
||||||
#
|
#
|
||||||
# author: David Edwards
|
# author: David Edwards
|
||||||
|
|
||||||
# TODO Complete mappings (currently copied from other files)
|
# Namespaces
|
||||||
|
namespace.prefix.cm=http://www.alfresco.org/model/content/1.0
|
||||||
# Namespaces
|
|
||||||
namespace.prefix.cm=http://www.alfresco.org/model/content/1.0
|
# IPTC
|
||||||
namespace.prefix.audio=http://www.alfresco.org/model/audio/1.0
|
namespace.prefix.iptcxmp=http://www.alfresco.org/model/content/metadata/IPTCXMP/1.0
|
||||||
namespace.prefix.video=http://www.alfresco.org/model/video/1.0
|
namespace.prefix.dc=http://purl.org/dc/elements/1.1/
|
||||||
namespace.prefix.custom=MyCustomNameSpace
|
namespace.prefix.Iptc4xmpCore=http://iptc.org/std/Iptc4xmpCore/1.0/xmlns/
|
||||||
|
namespace.prefix.Iptc4xmpExt=http://iptc.org/std/Iptc4xmpExt/2008-02-29/
|
||||||
# Dump of most namespaces returned by the exifTool for testing
|
namespace.prefix.photoshop=http://ns.adobe.com/photoshop/1.0/
|
||||||
# TODO ATS-900
|
namespace.prefix.plus=http://ns.useplus.org/ldf/xmp/1.0/
|
||||||
namespace.prefix.File=File
|
namespace.prefix.xmpRights=http://ns.adobe.com/xap/1.0/rights/
|
||||||
namespace.prefix.IFD0=IFD0
|
namespace.prefix.stDim=http://ns.adobe.com/xap/1.0/sType/Dimensions
|
||||||
namespace.prefix.ExifIFD=ExifIFD
|
|
||||||
namespace.prefix.IFD1=IFD1
|
# Exif
|
||||||
namespace.prefix.Photoshop=Photoshop
|
namespace.prefix.exif=http://www.alfresco.org/model/exif/1.0
|
||||||
namespace.prefix.IPTC=IPTC
|
|
||||||
namespace.prefix.ICC-header=ICC-header
|
# Mappings from TikaAutoExtractor
|
||||||
namespace.prefix.ICC_Profile=ICC_Profile
|
author=cm:author
|
||||||
namespace.prefix.ICC-view=ICC-view
|
title=cm:title
|
||||||
namespace.prefix.ICC-meas=ICC-meas
|
description=cm:description
|
||||||
namespace.prefix.XMP-x=XMP-x
|
created=cm:created
|
||||||
namespace.prefix.XMP-photoshop=XMP-photoshop
|
|
||||||
namespace.prefix.XMP-xmp=XMP-xmp
|
geo\:lat=cm:latitude
|
||||||
namespace.prefix.XMP-iptcCore=XMP-iptcCore
|
geo\:long=cm:longitude
|
||||||
namespace.prefix.XMP-dc=XMP-dc
|
|
||||||
namespace.prefix.XMP-xmpRights=XMP-xmpRights
|
tiff\:ImageWidth=exif:pixelXDimension
|
||||||
namespace.prefix.XMP-xmpMM=XMP-xmpMM
|
tiff\:ImageLength=exif:pixelYDimension
|
||||||
namespace.prefix.XMP-illustrator=XMP-illustrator
|
tiff\:Make=exif:manufacturer
|
||||||
namespace.prefix.XMP-mediapro=XMP-mediapro
|
tiff\:Model=exif:model
|
||||||
namespace.prefix.XMP-aux=XMP-aux
|
tiff\:Software=exif:software
|
||||||
namespace.prefix.XMP-iptcExt=XMP-iptcExt
|
tiff\:Orientation=exif:orientation
|
||||||
namespace.prefix.XMP-plus=XMP-plus
|
tiff\:XResolution=exif:xResolution
|
||||||
namespace.prefix.XMP-custom=XMP-custom
|
tiff\:YResolution=exif:yResolution
|
||||||
namespace.prefix.Adobe=Adobe
|
tiff\:ResolutionUnit=exif:resolutionUnit
|
||||||
namespace.prefix.Composite=Composite
|
exif\:Flash=exif:flash
|
||||||
|
exif\:ExposureTime=exif:exposureTime
|
||||||
# Core mappings
|
exif\:FNumber=exif:fNumber
|
||||||
# There is overlap with the TikaAutoMetadatorExtractor. These core mappings should still be included for backwards compatability.
|
exif\:FocalLength=exif:focalLength
|
||||||
# TODO ATS-900
|
exif\:IsoSpeedRatings=exif:isoSpeedRatings
|
||||||
XMP-dc\:Creator=cm:author
|
exif\:DateTimeOriginal=exif:dateTimeOriginal
|
||||||
XMP-dc\:Title=cm:title
|
|
||||||
XMP-dc\:Description=cm:description
|
# IPTC Mappings
|
||||||
created=cm:created
|
XMP-dc\:Description=dc:description
|
||||||
|
XMP-dc\:Subject=dc:subject
|
||||||
# Dump of most namespaces returned by the exifTool for testing
|
XMP-dc\:Creator=dc:creator
|
||||||
# TODO ATS-900
|
XMP-dc\:Rights=dc:rights
|
||||||
ExifTool\:ExifToolVersion=custom:ExifToolVersion
|
XMP-dc\:Title=dc:title
|
||||||
File\:FileType=File:FileType
|
XMP-iptcCore\:CountryCode=Iptc4xmpCore:CiAdrCtry
|
||||||
File\:FileTypeExtension=File:FileTypeExtension
|
XMP-iptcCore\:CountryCode=Iptc4xmpCore:CountryCode
|
||||||
File\:MIMEType=File:MIMEType
|
XMP-iptcCore\:CreatorAddress=Iptc4xmpCore:CiAdrExtadr
|
||||||
File\:ExifByteOrder=File:ExifByteOrder
|
XMP-iptcCore\:CreatorCity=Iptc4xmpCore:CiAdrCity
|
||||||
File\:CurrentIPTCDigest=File:CurrentIPTCDigest
|
XMP-iptcCore\:CreatorPostalCode=Iptc4xmpCore:CiAdrPcode
|
||||||
File\:ImageWidth=File:ImageWidth
|
XMP-iptcCore\:CreatorRegion=Iptc4xmpCore:CiAdrRegion
|
||||||
File\:ImageHeight=File:ImageHeight
|
XMP-iptcCore\:CreatorWorkEmail=Iptc4xmpCore:CiEmailWork
|
||||||
File\:EncodingProcess=File:EncodingProcess
|
XMP-iptcCore\:CreatorWorkTelephone=Iptc4xmpCore:CiTelWork
|
||||||
File\:BitsPerSample=File:BitsPerSample
|
XMP-iptcCore\:CreatorWorkURL=Iptc4xmpCore:CiUrlWork
|
||||||
File\:ColorComponents=File:ColorComponents
|
XMP-iptcCore\:IntellectualGenre=Iptc4xmpCore:IntellectualGenre
|
||||||
File\:YCbCrSubSampling=File:YCbCrSubSampling
|
XMP-iptcCore\:Location=Iptc4xmpCore:Location
|
||||||
IFD0\:PhotometricInterpretation=IFD0:PhotometricInterpretation
|
XMP-iptcCore\:Scene=Iptc4xmpCore:Scene
|
||||||
IFD0\:ImageDescription=IFD0:ImageDescription
|
XMP-iptcCore\:SubjectCode=Iptc4xmpCore:SubjectCode
|
||||||
IFD0\:Orientation=IFD0:Orientation
|
XMP-photoshop\:AuthorsPosition=photoshop:AuthorsPosition
|
||||||
IFD0\:SamplesPerPixel=IFD0:SamplesPerPixel
|
XMP-photoshop\:CaptionWriter=photoshop:CaptionWriter
|
||||||
IFD0\:XResolution=IFD0:XResolution
|
XMP-photoshop\:Category=photoshop:Category
|
||||||
IFD0\:YResolution=IFD0:YResolution
|
XMP-photoshop\:City=photoshop:City
|
||||||
IFD0\:ResolutionUnit=IFD0:ResolutionUnit
|
XMP-photoshop\:Country=photoshop:Country
|
||||||
IFD0\:Software=IFD0:Software
|
XMP-photoshop\:Credit=photoshop:Credit
|
||||||
IFD0\:ModifyDate=IFD0:ModifyDate
|
XMP-photoshop\:DateCreated=photoshop:DateCreated
|
||||||
IFD0\:Artist=IFD0:Artist
|
XMP-photoshop\:Headline=photoshop:Headline
|
||||||
IFD0\:Copyright=IFD0:Copyright
|
XMP-photoshop\:Instructions=photoshop:Instructions
|
||||||
ExifIFD\:Make=ExifIFD:Make
|
XMP-photoshop\:Source=photoshop:Source
|
||||||
ExifIFD\:Model=ExifIFD:Model
|
XMP-photoshop\:State=photoshop:State
|
||||||
ExifIFD\:ExposureTime=ExifIFD:ExposureTime
|
XMP-photoshop\:SupplementalCategories=photoshop:SupplementalCategories
|
||||||
ExifIFD\:FNumber=ExifIFD:FNumber
|
XMP-photoshop\:TransmissionReference=photoshop:TransmissionReference
|
||||||
ExifIFD\:ExposureProgram=ExifIFD:ExposureProgram
|
XMP-photoshop\:Urgency=photoshop:Urgency
|
||||||
ExifIFD\:ISO=ExifIFD:ISO
|
XMP-xmpRights\:UsageTerms=xmpRights:UsageTerms
|
||||||
ExifIFD\:ExifVersion=ExifIFD:ExifVersion
|
|
||||||
ExifIFD\:DateTimeOriginal=ExifIFD:DateTimeOriginal
|
XMP-iptcExt\:AdditionalModelInformation=Iptc4xmpExt:AddlModelInfo
|
||||||
ExifIFD\:CreateDate=ExifIFD:CreateDate
|
XMP-iptcExt\:ArtworkCopyrightNotice=Iptc4xmpExt:AOCopyrightNotice
|
||||||
ExifIFD\:ComponentsConfiguration=ExifIFD:ComponentsConfiguration
|
XMP-iptcExt\:ArtworkCreator=Iptc4xmpExt:AOCreator
|
||||||
ExifIFD\:ShutterSpeedValue=ExifIFD:ShutterSpeedValue
|
XMP-iptcExt\:ArtworkDateCreated=Iptc4xmpExt:AODateCreated
|
||||||
ExifIFD\:ApertureValue=ExifIFD:ApertureValue
|
XMP-iptcExt\:ArtworkSource=Iptc4xmpExt:AOSource
|
||||||
ExifIFD\:ExposureCompensation=ExifIFD:ExposureCompensation
|
XMP-iptcExt\:ArtworkSourceInventoryNo=Iptc4xmpExt:AOSourceInvNo
|
||||||
ExifIFD\:MaxApertureValue=ExifIFD:MaxApertureValue
|
XMP-iptcExt\:ArtworkTitle=Iptc4xmpExt:AOTitle
|
||||||
ExifIFD\:MeteringMode=ExifIFD:MeteringMode
|
XMP-iptcExt\:ControlledVocabularyTerm=Iptc4xmpExt:CVterm
|
||||||
ExifIFD\:Flash=ExifIFD:Flash
|
XMP-iptcExt\:DigitalImageGUID=Iptc4xmpExt:DigImageGUID
|
||||||
ExifIFD\:FocalLength=ExifIFD:FocalLength
|
XMP-iptcExt\:DigitalSourceFileType=Iptc4xmpExt:DigitalSourcefileType
|
||||||
ExifIFD\:SubSecTime=ExifIFD:SubSecTime
|
XMP-iptcExt\:DigitalSourceType=Iptc4xmpExt:DigitalSourceType
|
||||||
ExifIFD\:SubSecTimeOriginal=ExifIFD:SubSecTimeOriginal
|
XMP-iptcExt\:Event=Iptc4xmpExt:Event
|
||||||
ExifIFD\:SubSecTimeDigitized=ExifIFD:SubSecTimeDigitized
|
XMP-iptcExt\:IPTCLastEdited=Iptc4xmpExt:IptcLastEdited
|
||||||
ExifIFD\:FlashpixVersion=ExifIFD:FlashpixVersion
|
XMP-iptcExt\:LocationCreatedCity=Iptc4xmpExt:LocationCreatedCity
|
||||||
ExifIFD\:ColorSpace=ExifIFD:ColorSpace
|
XMP-iptcExt\:LocationCreatedCountryCode=Iptc4xmpExt:LocationCreatedCountryCode
|
||||||
ExifIFD\:ExifImageWidth=ExifIFD:ExifImageWidth
|
XMP-iptcExt\:LocationCreatedCountryName=Iptc4xmpExt:LocationCreatedCountryName
|
||||||
ExifIFD\:ExifImageHeight=ExifIFD:ExifImageHeight
|
XMP-iptcExt\:LocationCreatedProvinceState=Iptc4xmpExt:LocationCreatedProvinceState
|
||||||
ExifIFD\:FocalPlaneXResolution=ExifIFD:FocalPlaneXResolution
|
XMP-iptcExt\:LocationCreatedSublocation=Iptc4xmpExt:LocationCreatedSublocation
|
||||||
ExifIFD\:FocalPlaneYResolution=ExifIFD:FocalPlaneYResolution
|
XMP-iptcExt\:LocationCreatedWorldRegion=Iptc4xmpExt:LocationCreatedWorldRegion
|
||||||
ExifIFD\:FocalPlaneResolutionUnit=ExifIFD:FocalPlaneResolutionUnit
|
XMP-iptcExt\:LocationShownCity=Iptc4xmpExt:LocationShownCity
|
||||||
ExifIFD\:CustomRendered=ExifIFD:CustomRendered
|
XMP-iptcExt\:LocationShownCountryCode=Iptc4xmpExt:LocationShownCountryCode
|
||||||
ExifIFD\:ExposureMode=ExifIFD:ExposureMode
|
XMP-iptcExt\:LocationShownCountryName=Iptc4xmpExt:LocationShownCountryName
|
||||||
ExifIFD\:WhiteBalance=ExifIFD:WhiteBalance
|
XMP-iptcExt\:LocationShownProvinceState=Iptc4xmpExt:LocationShownProvinceState
|
||||||
ExifIFD\:SceneCaptureType=ExifIFD:SceneCaptureType
|
XMP-iptcExt\:LocationShownSublocation=Iptc4xmpExt:LocationShownSublocation
|
||||||
ExifIFD\:SerialNumber=ExifIFD:SerialNumber
|
XMP-iptcExt\:LocationShownWorldRegion=Iptc4xmpExt:LocationShownWorldRegion
|
||||||
ExifIFD\:LensInfo=ExifIFD:LensInfo
|
XMP-iptcExt\:MaxAvailHeight=Iptc4xmpExt:MaxAvailHeight
|
||||||
ExifIFD\:LensModel=ExifIFD:LensModel
|
XMP-iptcExt\:MaxAvailWidth=Iptc4xmpExt:MaxAvailWidth
|
||||||
ExifIFD\:LensSerialNumber=ExifIFD:LensSerialNumber
|
XMP-iptcExt\:ModelAge=Iptc4xmpExt:ModelAge
|
||||||
IFD1\:Compression=IFD1:Compression
|
XMP-iptcExt\:OrganisationInImageCode=Iptc4xmpExt:OrganisationInImageCode
|
||||||
IFD1\:ThumbnailOffset=IFD1:ThumbnailOffset
|
XMP-iptcExt\:OrganisationInImageName=Iptc4xmpExt:OrganisationInImageName
|
||||||
IFD1\:ThumbnailLength=IFD1:ThumbnailLength
|
XMP-iptcExt\:PersonInImage=Iptc4xmpExt:PersonInImage
|
||||||
IFD1\:ThumbnailImage=IFD1:ThumbnailImage
|
XMP-iptcExt\:RegistryItemID=Iptc4xmpExt:RegItemId
|
||||||
IPTC\:CodedCharacterSet=IPTC:CodedCharacterSet
|
XMP-iptcExt\:RegistryOrganisationID=Iptc4xmpExt:RegOrgId
|
||||||
IPTC\:ApplicationRecordVersion=IPTC:ApplicationRecordVersion
|
XMP-plus\:CopyrightOwnerID=plus:CopyrightOwnerID
|
||||||
IPTC\:Caption-Abstract=IPTC:Caption-Abstract
|
XMP-plus\:CopyrightOwnerName=plus:CopyrightOwnerName
|
||||||
IPTC\:Writer-Editor=IPTC:Writer-Editor
|
XMP-plus\:ImageCreatorID=plus:ImageCreatorID
|
||||||
IPTC\:SpecialInstructions=IPTC:SpecialInstructions
|
XMP-plus\:ImageCreatorName=plus:ImageCreatorName
|
||||||
IPTC\:By-line=IPTC:By-line
|
XMP-plus\:ImageSupplierID=plus:ImageSupplierID
|
||||||
IPTC\:By-lineTitle=IPTC:By-lineTitle
|
XMP-plus\:ImageSupplierImageID=plus:ImageSupplierImageID
|
||||||
IPTC\:ObjectName=IPTC:ObjectName
|
XMP-plus\:ImageSupplierName=plus:ImageSupplierName
|
||||||
IPTC\:TimeCreated=IPTC:TimeCreated
|
XMP-plus\:LicensorCity=plus:LicensorCity
|
||||||
IPTC\:Sub-location=IPTC:Sub-location
|
XMP-plus\:LicensorCountry=plus:LicensorCountry
|
||||||
IPTC\:Province-State=IPTC:Province-State
|
XMP-plus\:LicensorEmail=plus:LicensorEmail
|
||||||
IPTC\:Country-PrimaryLocationName=IPTC:Country-PrimaryLocationName
|
XMP-plus\:LicensorExtendedAddress=plus:LicensorExtendedAddress
|
||||||
IPTC\:Country-PrimaryLocationCode=IPTC:Country-PrimaryLocationCode
|
XMP-plus\:LicensorID=plus:LicensorID
|
||||||
IPTC\:OriginalTransmissionReference=IPTC:OriginalTransmissionReference
|
XMP-plus\:LicensorName=plus:LicensorName
|
||||||
IPTC\:Keywords=IPTC:Keywords
|
XMP-plus\:LicensorPostalCode=plus:LicensorPostalCode
|
||||||
IPTC\:CopyrightNotice=IPTC:CopyrightNotice
|
XMP-plus\:LicensorRegion=plus:LicensorRegion
|
||||||
IPTC\:FixtureIdentifier=IPTC:FixtureIdentifier
|
XMP-plus\:LicensorStreetAddress=plus:LicensorStreetAddress
|
||||||
IPTC\:EditStatus=IPTC:EditStatus
|
XMP-plus\:LicensorTelephone1=plus:LicensorTelephone1
|
||||||
IPTC\:Contact=IPTC:Contact
|
XMP-plus\:LicensorTelephone2=plus:LicensorTelephone2
|
||||||
Photoshop\:IPTCDigest=Photoshop:IPTCDigest
|
XMP-plus\:LicensorURL=plus:LicensorURL
|
||||||
Photoshop\:DisplayedUnitsX=Photoshop:DisplayedUnitsX
|
XMP-plus\:MinorModelAgeDisclosure=plus:MinorModelAgeDisclosure
|
||||||
Photoshop\:DisplayedUnitsY=Photoshop:DisplayedUnitsY
|
XMP-plus\:ModelReleaseID=plus:ModelReleaseID
|
||||||
Photoshop\:PrintStyle=Photoshop:PrintStyle
|
XMP-plus\:ModelReleaseStatus=plus:ModelReleaseStatus
|
||||||
Photoshop\:PrintPosition=Photoshop:PrintPosition
|
XMP-plus\:PLUSVersion=plus:Version
|
||||||
Photoshop\:PrintScale=Photoshop:PrintScale
|
XMP-plus\:PropertyReleaseID=plus:PropertyReleaseID
|
||||||
Photoshop\:GlobalAngle=Photoshop:GlobalAngle
|
XMP-plus\:PropertyReleaseStatus=plus:PropertyReleaseStatus
|
||||||
Photoshop\:GlobalAltitude=Photoshop:GlobalAltitude
|
|
||||||
Photoshop\:CopyrightFlag=Photoshop:CopyrightFlag
|
stDim\:unit=stDim:unit
|
||||||
Photoshop\:URL=Photoshop:URL
|
|
||||||
Photoshop\:URL_List=Photoshop:URL_List
|
|
||||||
Photoshop\:SlicesGroupName=Photoshop:SlicesGroupName
|
|
||||||
Photoshop\:NumSlices=Photoshop:NumSlices
|
|
||||||
Photoshop\:PixelAspectRatio=Photoshop:PixelAspectRatio
|
|
||||||
Photoshop\:PhotoshopThumbnail=Photoshop:PhotoshopThumbnail
|
|
||||||
Photoshop\:HasRealMergedData=Photoshop:HasRealMergedData
|
|
||||||
Photoshop\:WriterName=Photoshop:WriterName
|
|
||||||
Photoshop\:ReaderName=Photoshop:ReaderName
|
|
||||||
Photoshop\:PhotoshopQuality=Photoshop:PhotoshopQuality
|
|
||||||
Photoshop\:PhotoshopFormat=Photoshop:PhotoshopFormat
|
|
||||||
Photoshop\:ProgressiveScans=Photoshop:ProgressiveScans
|
|
||||||
XMP-x\:XMPToolkit=XMP-x:XMPToolkit
|
|
||||||
XMP-photoshop\:LegacyIPTCDigest=XMP-photoshop:LegacyIPTCDigest
|
|
||||||
XMP-photoshop\:AuthorsPosition=XMP-photoshop:AuthorsPosition
|
|
||||||
XMP-photoshop\:Headline=XMP-photoshop:Headline
|
|
||||||
XMP-photoshop\:CaptionWriter=XMP-photoshop:CaptionWriter
|
|
||||||
XMP-photoshop\:DateCreated=XMP-photoshop:DateCreated
|
|
||||||
XMP-photoshop\:City=XMP-photoshop:City
|
|
||||||
XMP-photoshop\:State=XMP-photoshop:State
|
|
||||||
XMP-photoshop\:Country=XMP-photoshop:Country
|
|
||||||
XMP-photoshop\:TransmissionReference=XMP-photoshop:TransmissionReference
|
|
||||||
XMP-photoshop\:Instructions=XMP-photoshop:Instructions
|
|
||||||
XMP-photoshop\:Credit=XMP-photoshop:Credit
|
|
||||||
XMP-photoshop\:Source=XMP-photoshop:Source
|
|
||||||
XMP-photoshop\:Category=XMP-photoshop:Category
|
|
||||||
XMP-photoshop\:ColorMode=XMP-photoshop:ColorMode
|
|
||||||
XMP-photoshop\:ICCProfileName=XMP-photoshop:ICCProfileName
|
|
||||||
XMP-photoshop\:SupplementalCategories=XMP-photoshop:SupplementalCategories
|
|
||||||
XMP-xmp\:CreatorTool=XMP-xmp:CreatorTool
|
|
||||||
XMP-xmp\:MetadataDate=XMP-xmp:MetadataDate
|
|
||||||
XMP-iptcCore\:IntellectualGenre=XMP-iptcCore:IntellectualGenre
|
|
||||||
XMP-iptcCore\:Location=XMP-iptcCore:Location
|
|
||||||
XMP-iptcCore\:CountryCode=XMP-iptcCore:CountryCode
|
|
||||||
XMP-iptcCore\:CreatorAddress=XMP-iptcCore:CreatorAddress
|
|
||||||
XMP-iptcCore\:CreatorCity=XMP-iptcCore:CreatorCity
|
|
||||||
XMP-iptcCore\:CreatorRegion=XMP-iptcCore:CreatorRegion
|
|
||||||
XMP-iptcCore\:CreatorPostalCode=XMP-iptcCore:CreatorPostalCode
|
|
||||||
XMP-iptcCore\:CreatorCountry=XMP-iptcCore:CreatorCountry
|
|
||||||
XMP-iptcCore\:CreatorWorkTelephone=XMP-iptcCore:CreatorWorkTelephone
|
|
||||||
XMP-iptcCore\:CreatorWorkEmail=XMP-iptcCore:CreatorWorkEmail
|
|
||||||
XMP-iptcCore\:CreatorWorkURL=XMP-iptcCore:CreatorWorkURL
|
|
||||||
XMP-iptcCore\:Scene=XMP-iptcCore:Scene
|
|
||||||
XMP-iptcCore\:SubjectCode=XMP-iptcCore:SubjectCode
|
|
||||||
XMP-dc\:Format=XMP-dc:Format
|
|
||||||
XMP-dc\:Title=XMP-dc:Title
|
|
||||||
XMP-dc\:Subject=XMP-dc:Subject
|
|
||||||
XMP-dc\:Creator=XMP-dc:Creator
|
|
||||||
XMP-dc\:Rights=XMP-dc:Rights
|
|
||||||
XMP-dc\:Description=XMP-dc:Description
|
|
||||||
XMP-xmpRights\:WebStatement=XMP-xmpRights:WebStatement
|
|
||||||
XMP-xmpRights\:Marked=XMP-xmpRights:Marked
|
|
||||||
XMP-xmpRights\:UsageTerms=XMP-xmpRights:UsageTerms
|
|
||||||
XMP-xmpMM\:DocumentID=XMP-xmpMM:DocumentID
|
|
||||||
XMP-xmpMM\:InstanceID=XMP-xmpMM:InstanceID
|
|
||||||
XMP-xmpMM\:OriginalDocumentID=XMP-xmpMM:OriginalDocumentID
|
|
||||||
XMP-xmpMM\:HistoryAction=XMP-xmpMM:HistoryAction
|
|
||||||
XMP-xmpMM\:HistoryInstanceID=XMP-xmpMM:HistoryInstanceID
|
|
||||||
XMP-xmpMM\:HistoryWhen=XMP-xmpMM:HistoryWhen
|
|
||||||
XMP-xmpMM\:HistorySoftwareAgent=XMP-xmpMM:HistorySoftwareAgent
|
|
||||||
XMP-xmpMM\:HistoryChanged=XMP-xmpMM:HistoryChanged
|
|
||||||
XMP-illustrator\:StartupProfile=XMP-illustrator:StartupProfile
|
|
||||||
XMP-mediapro\:Status=XMP-mediapro:Status
|
|
||||||
XMP-mediapro\:People=XMP-mediapro:People
|
|
||||||
XMP-aux\:Lens=XMP-aux:Lens
|
|
||||||
XMP-iptcExt\:AdditionalModelInformation=XMP-iptcExt:AdditionalModelInformation
|
|
||||||
XMP-iptcExt\:MaxAvailWidth=XMP-iptcExt:MaxAvailWidth
|
|
||||||
XMP-iptcExt\:MaxAvailHeight=XMP-iptcExt:MaxAvailHeight
|
|
||||||
XMP-iptcExt\:DigitalSourceType=XMP-iptcExt:DigitalSourceType
|
|
||||||
XMP-iptcExt\:LocationCreatedSublocation=XMP-iptcExt:LocationCreatedSublocation
|
|
||||||
XMP-iptcExt\:LocationCreatedCity=XMP-iptcExt:LocationCreatedCity
|
|
||||||
XMP-iptcExt\:LocationCreatedProvinceState=XMP-iptcExt:LocationCreatedProvinceState
|
|
||||||
XMP-iptcExt\:LocationCreatedCountryName=XMP-iptcExt:LocationCreatedCountryName
|
|
||||||
XMP-iptcExt\:LocationCreatedCountryCode=XMP-iptcExt:LocationCreatedCountryCode
|
|
||||||
XMP-iptcExt\:LocationCreatedWorldRegion=XMP-iptcExt:LocationCreatedWorldRegion
|
|
||||||
XMP-iptcExt\:Event=XMP-iptcExt:Event
|
|
||||||
XMP-iptcExt\:ModelAge=XMP-iptcExt:ModelAge
|
|
||||||
XMP-iptcExt\:ArtworkDateCreated=XMP-iptcExt:ArtworkDateCreated
|
|
||||||
XMP-iptcExt\:ArtworkSource=XMP-iptcExt:ArtworkSource
|
|
||||||
XMP-iptcExt\:ArtworkSourceInventoryNo=XMP-iptcExt:ArtworkSourceInventoryNo
|
|
||||||
XMP-iptcExt\:ArtworkCopyrightNotice=XMP-iptcExt:ArtworkCopyrightNotice
|
|
||||||
XMP-iptcExt\:ArtworkTitle=XMP-iptcExt:ArtworkTitle
|
|
||||||
XMP-iptcExt\:ArtworkCreator=XMP-iptcExt:ArtworkCreator
|
|
||||||
XMP-iptcExt\:RegistryOrganisationID=XMP-iptcExt:RegistryOrganisationID
|
|
||||||
XMP-iptcExt\:RegistryItemID=XMP-iptcExt:RegistryItemID
|
|
||||||
XMP-iptcExt\:OrganisationInImageName=XMP-iptcExt:OrganisationInImageName
|
|
||||||
XMP-iptcExt\:OrganisationInImageCode=XMP-iptcExt:OrganisationInImageCode
|
|
||||||
XMP-iptcExt\:PersonInImage=XMP-iptcExt:PersonInImage
|
|
||||||
XMP-iptcExt\:LocationShownSublocation=XMP-iptcExt:LocationShownSublocation
|
|
||||||
XMP-iptcExt\:LocationShownCity=XMP-iptcExt:LocationShownCity
|
|
||||||
XMP-iptcExt\:LocationShownProvinceState=XMP-iptcExt:LocationShownProvinceState
|
|
||||||
XMP-iptcExt\:LocationShownCountryName=XMP-iptcExt:LocationShownCountryName
|
|
||||||
XMP-iptcExt\:LocationShownCountryCode=XMP-iptcExt:LocationShownCountryCode
|
|
||||||
XMP-iptcExt\:LocationShownWorldRegion=XMP-iptcExt:LocationShownWorldRegion
|
|
||||||
XMP-plus\:PropertyReleaseStatus=XMP-plus:PropertyReleaseStatus
|
|
||||||
XMP-plus\:ImageSupplierImageID=XMP-plus:ImageSupplierImageID
|
|
||||||
XMP-plus\:MinorModelAgeDisclosure=XMP-plus:MinorModelAgeDisclosure
|
|
||||||
XMP-plus\:ModelReleaseStatus=XMP-plus:ModelReleaseStatus
|
|
||||||
XMP-plus\:PLUSVersion=XMP-plus:PLUSVersion
|
|
||||||
XMP-plus\:ImageSupplierName=XMP-plus:ImageSupplierName
|
|
||||||
XMP-plus\:ImageSupplierID=XMP-plus:ImageSupplierID
|
|
||||||
XMP-plus\:ImageCreatorName=XMP-plus:ImageCreatorName
|
|
||||||
XMP-plus\:ImageCreatorID=XMP-plus:ImageCreatorID
|
|
||||||
XMP-plus\:ModelReleaseID=XMP-plus:ModelReleaseID
|
|
||||||
XMP-plus\:PropertyReleaseID=XMP-plus:PropertyReleaseID
|
|
||||||
XMP-plus\:CopyrightOwnerName=XMP-plus:CopyrightOwnerName
|
|
||||||
XMP-plus\:CopyrightOwnerID=XMP-plus:CopyrightOwnerID
|
|
||||||
XMP-plus\:LicensorName=XMP-plus:LicensorName
|
|
||||||
XMP-plus\:LicensorID=XMP-plus:LicensorID
|
|
||||||
XMP-plus\:LicensorTelephone1=XMP-plus:LicensorTelephone1
|
|
||||||
XMP-plus\:LicensorTelephone2=XMP-plus:LicensorTelephone2
|
|
||||||
XMP-plus\:LicensorEmail=XMP-plus:LicensorEmail
|
|
||||||
XMP-plus\:LicensorURL=XMP-plus:LicensorURL
|
|
||||||
XMP-custom\:Text=XMP-custom:Text
|
|
||||||
XMP-custom\:TextML=XMP-custom:TextML
|
|
||||||
ICC-header\:ProfileCMMType=ICC-header:ProfileCMMType
|
|
||||||
ICC-header\:ProfileVersion=ICC-header:ProfileVersion
|
|
||||||
ICC-header\:ProfileClass=ICC-header:ProfileClass
|
|
||||||
ICC-header\:ColorSpaceData=ICC-header:ColorSpaceData
|
|
||||||
ICC-header\:ProfileConnectionSpace=ICC-header:ProfileConnectionSpace
|
|
||||||
ICC-header\:ProfileDateTime=ICC-header:ProfileDateTime
|
|
||||||
ICC-header\:ProfileFileSignature=ICC-header:ProfileFileSignature
|
|
||||||
ICC-header\:PrimaryPlatform=ICC-header:PrimaryPlatform
|
|
||||||
ICC-header\:CMMFlags=ICC-header:CMMFlags
|
|
||||||
ICC-header\:DeviceManufacturer=ICC-header:DeviceManufacturer
|
|
||||||
ICC-header\:DeviceModel=ICC-header:DeviceModel
|
|
||||||
ICC-header\:DeviceAttributes=ICC-header:DeviceAttributes
|
|
||||||
ICC-header\:RenderingIntent=ICC-header:RenderingIntent
|
|
||||||
ICC-header\:ConnectionSpaceIlluminant=ICC-header:ConnectionSpaceIlluminant
|
|
||||||
ICC-header\:ProfileCreator=ICC-header:ProfileCreator
|
|
||||||
ICC-header\:ProfileID=ICC-header:ProfileID
|
|
||||||
ICC_Profile\:ProfileCopyright=ICC_Profile:ProfileCopyright
|
|
||||||
ICC_Profile\:ProfileDescription=ICC_Profile:ProfileDescription
|
|
||||||
ICC_Profile\:MediaWhitePoint=ICC_Profile:MediaWhitePoint
|
|
||||||
ICC_Profile\:MediaBlackPoint=ICC_Profile:MediaBlackPoint
|
|
||||||
ICC_Profile\:RedMatrixColumn=ICC_Profile:RedMatrixColumn
|
|
||||||
ICC_Profile\:GreenMatrixColumn=ICC_Profile:GreenMatrixColumn
|
|
||||||
ICC_Profile\:BlueMatrixColumn=ICC_Profile:BlueMatrixColumn
|
|
||||||
ICC_Profile\:DeviceMfgDesc=ICC_Profile:DeviceMfgDesc
|
|
||||||
ICC_Profile\:DeviceModelDesc=ICC_Profile:DeviceModelDesc
|
|
||||||
ICC_Profile\:ViewingCondDesc=ICC_Profile:ViewingCondDesc
|
|
||||||
ICC_Profile\:Luminance=ICC_Profile:Luminance
|
|
||||||
ICC_Profile\:Technology=ICC_Profile:Technology
|
|
||||||
ICC_Profile\:RedTRC=ICC_Profile:RedTRC
|
|
||||||
ICC_Profile\:GreenTRC=ICC_Profile:GreenTRC
|
|
||||||
ICC_Profile\:BlueTRC=ICC_Profile:BlueTRC
|
|
||||||
ICC-view\:ViewingCondIlluminant=ICC-view:ViewingCondIlluminant
|
|
||||||
ICC-view\:ViewingCondSurround=ICC-view:ViewingCondSurround
|
|
||||||
ICC-view\:ViewingCondIlluminantType=ICC-view:ViewingCondIlluminantType
|
|
||||||
ICC-meas\:MeasurementObserver=ICC-meas:MeasurementObserver
|
|
||||||
ICC-meas\:MeasurementBacking=ICC-meas:MeasurementBacking
|
|
||||||
ICC-meas\:MeasurementGeometry=ICC-meas:MeasurementGeometry
|
|
||||||
ICC-meas\:MeasurementFlare=ICC-meas:MeasurementFlare
|
|
||||||
ICC-meas\:MeasurementIlluminant=ICC-meas:MeasurementIlluminant
|
|
||||||
Adobe\:DCTEncodeVersion=Adobe:DCTEncodeVersion
|
|
||||||
Adobe\:APP14Flags0=Adobe:APP14Flags0
|
|
||||||
Adobe\:APP14Flags1=Adobe:APP14Flags1
|
|
||||||
Adobe\:ColorTransform=Adobe:ColorTransform
|
|
||||||
Composite\:Aperture=Composite:Aperture
|
|
||||||
Composite\:ImageSize=Composite:ImageSize
|
|
||||||
Composite\:Megapixels=Composite:Megapixels
|
|
||||||
Composite\:ShutterSpeed=Composite:ShutterSpeed
|
|
||||||
Composite\:SubSecModifyDate=Composite:SubSecModifyDate
|
|
||||||
Composite\:DateTimeCreated=Composite:DateTimeCreated
|
|
||||||
Composite\:FocalLength35efl=Composite:FocalLength35efl
|
|
||||||
Composite\:LightValue=Composite:LightValue
|
|
||||||
Composite\:LensID=Composite:LensID
|
|
@ -529,9 +529,24 @@
|
|||||||
{
|
{
|
||||||
"transformerName": "IPTCMetadataExtractor",
|
"transformerName": "IPTCMetadataExtractor",
|
||||||
"supportedSourceAndTargetList": [
|
"supportedSourceAndTargetList": [
|
||||||
{"sourceMediaType": "image/jpeg", "priority": 60, "targetMediaType": "alfresco-metadata-extract"},
|
{"sourceMediaType": "image/gif", "priority": 60, "targetMediaType": "alfresco-metadata-extract"},
|
||||||
{"sourceMediaType": "image/png", "priority": 60, "targetMediaType": "alfresco-metadata-extract"}
|
{"sourceMediaType": "image/jp2", "priority": 60, "targetMediaType": "alfresco-metadata-extract"},
|
||||||
],
|
{"sourceMediaType": "image/jpeg", "priority": 60, "targetMediaType": "alfresco-metadata-extract"},
|
||||||
|
{"sourceMediaType": "image/png", "priority": 60, "targetMediaType": "alfresco-metadata-extract"},
|
||||||
|
{"sourceMediaType": "image/tiff", "priority": 60, "targetMediaType": "alfresco-metadata-extract"},
|
||||||
|
{"sourceMediaType": "image/webp", "priority": 60, "targetMediaType": "alfresco-metadata-extract"},
|
||||||
|
{"sourceMediaType": "image/x-raw-adobe", "priority": 60, "targetMediaType": "alfresco-metadata-extract"},
|
||||||
|
{"sourceMediaType": "image/x-raw-canon", "priority": 60, "targetMediaType": "alfresco-metadata-extract"},
|
||||||
|
{"sourceMediaType": "image/x-raw-fuji", "priority": 60, "targetMediaType": "alfresco-metadata-extract"},
|
||||||
|
{"sourceMediaType": "image/x-raw-hasselblad", "priority": 60, "targetMediaType": "alfresco-metadata-extract"},
|
||||||
|
{"sourceMediaType": "image/x-raw-kodak", "priority": 60, "targetMediaType": "alfresco-metadata-extract"},
|
||||||
|
{"sourceMediaType": "image/x-raw-minolta", "priority": 60, "targetMediaType": "alfresco-metadata-extract"},
|
||||||
|
{"sourceMediaType": "image/x-raw-nikon", "priority": 60, "targetMediaType": "alfresco-metadata-extract"},
|
||||||
|
{"sourceMediaType": "image/x-raw-olympus", "priority": 60, "targetMediaType": "alfresco-metadata-extract"},
|
||||||
|
{"sourceMediaType": "image/x-raw-panasonic", "priority": 60, "targetMediaType": "alfresco-metadata-extract"},
|
||||||
|
{"sourceMediaType": "image/x-raw-pentax", "priority": 60, "targetMediaType": "alfresco-metadata-extract"},
|
||||||
|
{"sourceMediaType": "image/x-raw-sony", "priority": 60, "targetMediaType": "alfresco-metadata-extract"}
|
||||||
|
],
|
||||||
"transformOptions": [
|
"transformOptions": [
|
||||||
"metadataOptions"
|
"metadataOptions"
|
||||||
]
|
]
|
||||||
|
Loading…
x
Reference in New Issue
Block a user