org.apache.xmpbox.schema

## Class ExifSchema

- java.lang.Object
- - org.apache.xmpbox.type.AbstractField
  - - org.apache.xmpbox.type.AbstractComplexProperty
    - - org.apache.xmpbox.type.AbstractStructuredType
      - - org.apache.xmpbox.schema.XMPSchema
        - - org.apache.xmpbox.schema.ExifSchema

    public class ExifSchema
    extends XMPSchema

Representation of an Exif Schema

### Field Summary

Fields
`static String` `APERTURE_VALUE`
`static String` `BRIGHTNESS_VALUE`
`static String` `CFA_PATTERN`
`static String` `CFA_PATTERN_TYPE`
`static String` `COLOR_SPACE`
`static String` `COMPONENTS_CONFIGURATION`
`static String` `COMPRESSED_BPP`
`static String` `CONTRAST`
`static String` `CUSTOM_RENDERED`
`static String` `DATE_TIME_DIGITIZED`
`static String` `DATE_TIME_ORIGINAL`
`static String` `DEVICE_SETTING_DESCRIPTION`
`static String` `DIGITAL_ZOOM_RATIO`
`static String` `EXIF_VERSION`
`static String` `EXPOSURE_BIAS_VALUE`
`static String` `EXPOSURE_INDEX`
`static String` `EXPOSURE_MODE`
`static String` `EXPOSURE_PROGRAM`
`static String` `EXPOSURE_TIME`
`static String` `F_NUMBER`
`static String` `FILE_SOURCE`
`static String` `FLASH`
`static String` `FLASH_ENERGY`
`static String` `FLASH_PIX_VERSION`
`static String` `FOCAL_LENGTH`
`static String` `FOCAL_LENGTH_IN_3_5MM_FILM`
`static String` `FOCAL_PLANE_RESOLUTION_UNIT`
`static String` `FOCAL_PLANE_XRESOLUTION`
`static String` `FOCAL_PLANE_YRESOLUTION`
`static String` `GAIN_CONTROL`
`static String` `GPS_ALTITUDE`
`static String` `GPS_ALTITUDE_REF`
`static String` `GPS_AREA_INFORMATION`
`static String` `GPS_DEST_BEARING`
`static String` `GPS_DEST_BEARING_REF`
`static String` `GPS_DEST_DISTANCE`
`static String` `GPS_DEST_DISTANCE_REF`
`static String` `GPS_DEST_LATITUDE`
`static String` `GPS_DEST_LONGITUDE`
`static String` `GPS_DIFFERENTIAL`
`static String` `GPS_DOP`
`static String` `GPS_IMG_DIRECTION`
`static String` `GPS_IMG_DIRECTION_REF`
`static String` `GPS_LATITUDE`
`static String` `GPS_LONGITUDE`
`static String` `GPS_MAP_DATUM`
`static String` `GPS_MEASURE_MODE`
`static String` `GPS_PROCESSING_METHOD`
`static String` `GPS_SATELLITES`
`static String` `GPS_SPEED`
`static String` `GPS_SPEED_REF`
`static String` `GPS_STATUS`
`static String` `GPS_TIME_STAMP`
`static String` `GPS_TRACK`
`static String` `GPS_TRACK_REF`
`static String` `GPSVERSION_ID`
`static String` `IMAGE_UNIQUE_ID`
`static String` `ISO_SPEED_RATINGS`
`static String` `LIGHT_SOURCE`
`static String` `MAX_APERTURE_VALUE`
`static String` `METERING_MODE`
`static String` `OECF`
`static String` `PIXEL_X_DIMENSION`
`static String` `PIXEL_Y_DIMENSION`
`static String` `RELATED_SOUND_FILE`
`static String` `SATURATION`
`static String` `SCENE_CAPTURE_TYPE`
`static String` `SCENE_TYPE`
`static String` `SENSING_METHOD`
`static String` `SHARPNESS`
`static String` `SHUTTER_SPEED_VALUE`
`static String` `SPATIAL_FREQUENCY_RESPONSE`
`static String` `SPECTRAL_SENSITIVITY`
`static String` `SUBJECT_AREA`
`static String` `SUBJECT_DISTANCE`
`static String` `SUBJECT_DISTANCE_RANGE`
`static String` `SUBJECT_LOCATION`
`static String` `USER_COMMENT`
`static String` `WHITE_BALANCE`

### Fields inherited from class org.apache.xmpbox.type.AbstractStructuredType

`STRUCTURE_ARRAY_NAME`

### Constructor Summary

Constructors
Constructor and Description
`ExifSchema(XMPMetadata metadata)`
`ExifSchema(XMPMetadata metadata, String ownPrefix)`

### Method Summary

All Methods Instance Methods Concrete Methods
`String` `getUserComment()` Return the default value for the UserComment property.
`String` `getUserComment(String lang)` Return a language value for the UserComment property.
`List<String>` `getUserCommentLanguages()` Return a list of languages defined in the UserComment property.
`ArrayProperty` `getUserCommentProperty()` Return the Lang Alt UserComment property

### Methods inherited from class org.apache.xmpbox.schema.XMPSchema

`addBagValue, addBagValueAsSimple, addQualifiedBagValue, addSequenceDateValueAsSimple, addUnqualifiedSequenceDateValue, addUnqualifiedSequenceValue, addUnqualifiedSequenceValue, getAboutAttribute, getAboutValue, getAbstractProperty, getBooleanProperty, getBooleanPropertyValue, getBooleanPropertyValueAsSimple, getDateProperty, getDatePropertyValue, getDatePropertyValueAsSimple, getIntegerProperty, getIntegerPropertyValue, getIntegerPropertyValueAsSimple, getUnqualifiedArrayList, getUnqualifiedBagValueList, getUnqualifiedLanguagePropertyLanguagesValue, getUnqualifiedLanguagePropertyValue, getUnqualifiedSequenceDateValueList, getUnqualifiedSequenceValueList, getUnqualifiedTextProperty, getUnqualifiedTextPropertyValue, instanciateSimple, merge, removeUnqualifiedArrayValue, removeUnqualifiedBagValue, removeUnqualifiedSequenceDateValue, removeUnqualifiedSequenceValue, removeUnqualifiedSequenceValue, reorganizeAltOrder, setAbout, setAboutAsSimple, setBooleanProperty, setBooleanPropertyValue, setBooleanPropertyValueAsSimple, setDateProperty, setDatePropertyValue, setDatePropertyValueAsSimple, setIntegerProperty, setIntegerPropertyValue, setIntegerPropertyValueAsSimple, setTextProperty, setTextPropertyValue, setTextPropertyValueAsSimple, setUnqualifiedLanguagePropertyValue`

### Methods inherited from class org.apache.xmpbox.type.AbstractStructuredType

`addSimpleProperty, createArrayProperty, createTextType, getDatePropertyAsCalendar, getNamespace, getPreferedPrefix, getPrefix, getPropertyValueAsString, setNamespace, setPrefix`

### Methods inherited from class org.apache.xmpbox.type.AbstractComplexProperty

`addNamespace, addProperty, getAllNamespacesWithPrefix, getAllProperties, getArrayProperty, getContainer, getFirstEquivalentProperty, getNamespacePrefix, getProperty, removeProperty`

### Methods inherited from class org.apache.xmpbox.type.AbstractField

`containsAttribute, getAllAttributes, getAttribute, getMetadata, getPropertyName, removeAttribute, setAttribute, setPropertyName`

### Methods inherited from class java.lang.Object

`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

### Field Detail

#### USER_COMMENT

    public static final String USER_COMMENT

See Also:
  Constant Field Values

#### EXIF_VERSION

    public static final String EXIF_VERSION

See Also:
  Constant Field Values

#### FLASH_PIX_VERSION

    public static final String FLASH_PIX_VERSION

See Also:
  Constant Field Values

#### COLOR_SPACE

    public static final String COLOR_SPACE

See Also:
  Constant Field Values

#### COMPONENTS_CONFIGURATION

    public static final String COMPONENTS_CONFIGURATION

See Also:
  Constant Field Values

#### COMPRESSED_BPP

    public static final String COMPRESSED_BPP

See Also:
  Constant Field Values

#### PIXEL_X_DIMENSION

    public static final String PIXEL_X_DIMENSION

See Also:
  Constant Field Values

#### PIXEL_Y_DIMENSION

    public static final String PIXEL_Y_DIMENSION

See Also:
  Constant Field Values

#### RELATED_SOUND_FILE

    public static final String RELATED_SOUND_FILE

See Also:
  Constant Field Values

#### DATE_TIME_ORIGINAL

    public static final String DATE_TIME_ORIGINAL

See Also:
  Constant Field Values

#### DATE_TIME_DIGITIZED

    public static final String DATE_TIME_DIGITIZED

See Also:
  Constant Field Values

#### EXPOSURE_TIME

    public static final String EXPOSURE_TIME

See Also:
  Constant Field Values

#### F_NUMBER

    public static final String F_NUMBER

See Also:
  Constant Field Values

#### EXPOSURE_PROGRAM

    public static final String EXPOSURE_PROGRAM

See Also:
  Constant Field Values

#### SPECTRAL_SENSITIVITY

    public static final String SPECTRAL_SENSITIVITY

See Also:
  Constant Field Values

#### ISO_SPEED_RATINGS

    public static final String ISO_SPEED_RATINGS

See Also:
  Constant Field Values

#### SHUTTER_SPEED_VALUE

    public static final String SHUTTER_SPEED_VALUE

See Also:
  Constant Field Values

#### APERTURE_VALUE

    public static final String APERTURE_VALUE

See Also:
  Constant Field Values

#### BRIGHTNESS_VALUE

    public static final String BRIGHTNESS_VALUE

See Also:
  Constant Field Values

#### EXPOSURE_BIAS_VALUE

    public static final String EXPOSURE_BIAS_VALUE

See Also:
  Constant Field Values

#### MAX_APERTURE_VALUE

    public static final String MAX_APERTURE_VALUE

See Also:
  Constant Field Values

#### SUBJECT_DISTANCE

    public static final String SUBJECT_DISTANCE

See Also:
  Constant Field Values

#### METERING_MODE

    public static final String METERING_MODE

See Also:
  Constant Field Values

#### LIGHT_SOURCE

    public static final String LIGHT_SOURCE

See Also:
  Constant Field Values

#### FLASH_ENERGY

    public static final String FLASH_ENERGY

See Also:
  Constant Field Values

#### FOCAL_LENGTH

    public static final String FOCAL_LENGTH

See Also:
  Constant Field Values

#### FOCAL_PLANE_XRESOLUTION

    public static final String FOCAL_PLANE_XRESOLUTION

See Also:
  Constant Field Values

#### FOCAL_PLANE_YRESOLUTION

    public static final String FOCAL_PLANE_YRESOLUTION

See Also:
  Constant Field Values

#### SUBJECT_AREA

    public static final String SUBJECT_AREA

See Also:
  Constant Field Values

#### FOCAL_PLANE_RESOLUTION_UNIT

    public static final String FOCAL_PLANE_RESOLUTION_UNIT

See Also:
  Constant Field Values

#### SUBJECT_LOCATION

    public static final String SUBJECT_LOCATION

See Also:
  Constant Field Values

#### EXPOSURE_INDEX

    public static final String EXPOSURE_INDEX

See Also:
  Constant Field Values

#### SENSING_METHOD

    public static final String SENSING_METHOD

See Also:
  Constant Field Values

#### FILE_SOURCE

    public static final String FILE_SOURCE

See Also:
  Constant Field Values

#### SCENE_TYPE

    public static final String SCENE_TYPE

See Also:
  Constant Field Values

#### CUSTOM_RENDERED

    public static final String CUSTOM_RENDERED

See Also:
  Constant Field Values

#### WHITE_BALANCE

    public static final String WHITE_BALANCE

See Also:
  Constant Field Values

#### EXPOSURE_MODE

    public static final String EXPOSURE_MODE

See Also:
  Constant Field Values

#### DIGITAL_ZOOM_RATIO

    public static final String DIGITAL_ZOOM_RATIO

See Also:
  Constant Field Values

#### FOCAL_LENGTH_IN_3_5MM_FILM

    public static final String FOCAL_LENGTH_IN_3_5MM_FILM

See Also:
  Constant Field Values

#### SCENE_CAPTURE_TYPE

    public static final String SCENE_CAPTURE_TYPE

See Also:
  Constant Field Values

#### GAIN_CONTROL

    public static final String GAIN_CONTROL

See Also:
  Constant Field Values

#### CONTRAST

    public static final String CONTRAST

See Also:
  Constant Field Values

#### SATURATION

    public static final String SATURATION

See Also:
  Constant Field Values

#### SHARPNESS

    public static final String SHARPNESS

See Also:
  Constant Field Values

#### SUBJECT_DISTANCE_RANGE

    public static final String SUBJECT_DISTANCE_RANGE

See Also:
  Constant Field Values

#### IMAGE_UNIQUE_ID

    public static final String IMAGE_UNIQUE_ID

See Also:
  Constant Field Values

#### GPSVERSION_ID

    public static final String GPSVERSION_ID

See Also:
  Constant Field Values

#### GPS_SATELLITES

    public static final String GPS_SATELLITES

See Also:
  Constant Field Values

#### GPS_STATUS

    public static final String GPS_STATUS

See Also:
  Constant Field Values

#### GPS_MEASURE_MODE

    public static final String GPS_MEASURE_MODE

See Also:
  Constant Field Values

#### GPS_MAP_DATUM

    public static final String GPS_MAP_DATUM

See Also:
  Constant Field Values

#### GPS_SPEED_REF

    public static final String GPS_SPEED_REF

See Also:
  Constant Field Values

#### GPS_TRACK_REF

    public static final String GPS_TRACK_REF

See Also:
  Constant Field Values

#### GPS_IMG_DIRECTION_REF

    public static final String GPS_IMG_DIRECTION_REF

See Also:
  Constant Field Values

#### GPS_DEST_BEARING_REF

    public static final String GPS_DEST_BEARING_REF

See Also:
  Constant Field Values

#### GPS_DEST_DISTANCE_REF

    public static final String GPS_DEST_DISTANCE_REF

See Also:
  Constant Field Values

#### GPS_PROCESSING_METHOD

    public static final String GPS_PROCESSING_METHOD

See Also:
  Constant Field Values

#### GPS_AREA_INFORMATION

    public static final String GPS_AREA_INFORMATION

See Also:
  Constant Field Values

#### GPS_ALTITUDE

    public static final String GPS_ALTITUDE

See Also:
  Constant Field Values

#### GPS_DOP

    public static final String GPS_DOP

See Also:
  Constant Field Values

#### GPS_SPEED

    public static final String GPS_SPEED

See Also:
  Constant Field Values

#### GPS_TRACK

    public static final String GPS_TRACK

See Also:
  Constant Field Values

#### GPS_IMG_DIRECTION

    public static final String GPS_IMG_DIRECTION

See Also:
  Constant Field Values

#### GPS_DEST_BEARING

    public static final String GPS_DEST_BEARING

See Also:
  Constant Field Values

#### GPS_DEST_DISTANCE

    public static final String GPS_DEST_DISTANCE

See Also:
  Constant Field Values

#### GPS_ALTITUDE_REF

    public static final String GPS_ALTITUDE_REF

See Also:
  Constant Field Values

#### GPS_DIFFERENTIAL

    public static final String GPS_DIFFERENTIAL

See Also:
  Constant Field Values

#### GPS_TIME_STAMP

    public static final String GPS_TIME_STAMP

See Also:
  Constant Field Values

#### OECF

    public static final String OECF

See Also:
  Constant Field Values

#### SPATIAL_FREQUENCY_RESPONSE

    public static final String SPATIAL_FREQUENCY_RESPONSE

See Also:
  Constant Field Values

#### GPS_LATITUDE

    public static final String GPS_LATITUDE

See Also:
  Constant Field Values

#### GPS_LONGITUDE

    public static final String GPS_LONGITUDE

See Also:
  Constant Field Values

#### GPS_DEST_LATITUDE

    public static final String GPS_DEST_LATITUDE

See Also:
  Constant Field Values

#### GPS_DEST_LONGITUDE

    public static final String GPS_DEST_LONGITUDE

See Also:
  Constant Field Values

#### CFA_PATTERN

    public static final String CFA_PATTERN

See Also:
  Constant Field Values

#### FLASH

    public static final String FLASH

See Also:
  Constant Field Values

#### CFA_PATTERN_TYPE

    public static final String CFA_PATTERN_TYPE

See Also:
  Constant Field Values

#### DEVICE_SETTING_DESCRIPTION

    public static final String DEVICE_SETTING_DESCRIPTION

See Also:
  Constant Field Values

### Constructor Detail

#### ExifSchema

    public ExifSchema(XMPMetadata metadata)

#### ExifSchema

    public ExifSchema(XMPMetadata metadata,
                      String ownPrefix)

### Method Detail

#### getUserCommentProperty

    public ArrayProperty getUserCommentProperty()

Return the Lang Alt UserComment property

Returns:
  user comment property

#### getUserCommentLanguages

    public List<String> getUserCommentLanguages()
                                         throws BadFieldValueException

Return a list of languages defined in the UserComment property.

Returns:
  list of UserComment languages values defined or null if it doesn't exist.
Throws:
  `BadFieldValueException` - If the UserComment property is not a multi-lingual property.

#### getUserComment

    public String getUserComment(String lang)
                          throws BadFieldValueException

Return a language value for the UserComment property.

Parameters:
  `lang` - language concerned
Returns:
  the UserComment value for specified language or null if it doesn't exist.
Throws:
  `BadFieldValueException` - If the UserComment property is not a multi-lingual property.

#### getUserComment

    public String getUserComment()
                          throws BadFieldValueException

Return the default value for the UserComment property.

Returns:
  the default value for the UserComment property or null if it doesn't exist.
Throws:
  `BadFieldValueException` - If the UserComment property is not a multi-lingual property.
See Also:
  `getUserComment(String)`