public class XMPSchema extends Object
Modifier and Type | Field and Description |
---|---|
static String |
NS_NAMESPACE
The standard xmlns namespace.
|
protected String |
prefix
The XML schema prefix.
|
protected Element |
schema
The DOM representation of this object.
|
Constructor and Description |
---|
XMPSchema(Element element,
String aPrefix)
Create schema from an existing XML element.
|
XMPSchema(XMPMetadata parent,
String namespaceName,
String namespaceURI)
Create a new blank schema that can be populated.
|
Modifier and Type | Method and Description |
---|---|
void |
addBagValue(String bagName,
String bagValue)
Add an entry to a bag property.
|
void |
addSequenceDateValue(String seqName,
Calendar date)
Add a date sequence value to the list.
|
void |
addSequenceValue(String seqName,
Elementable seqValue)
Add a new value to a sequence property.
|
void |
addSequenceValue(String seqName,
String seqValue)
Add a new value to a sequence property.
|
String |
getAbout()
Get the RDF about attribute.
|
List<String> |
getBagList(String bagName)
Get all the values of the bag property.
|
Boolean |
getBooleanProperty(String propertyName)
Get the value of the property as a boolean.
|
Calendar |
getDateProperty(String propertyName)
Get the value of the property as a date.
|
Element |
getElement()
Get the XML element that is represented by this schema.
|
List<ResourceEvent> |
getEventSequenceList(String seqName)
Get a list of ResourceEvent objects.
|
Integer |
getIntegerProperty(String propertyName)
Get the value of the property as an integer.
|
String |
getLanguageProperty(String propertyName,
String language)
Get the value of a multi-lingual property.
|
List<String> |
getLanguagePropertyLanguages(String propertyName)
Get a list of all languages that are currently defined for a specific
property.
|
List<Calendar> |
getSequenceDateList(String seqName)
Get all the date values in a sequence property.
|
List<String> |
getSequenceList(String seqName)
Get all the values in a sequence property.
|
String |
getTextProperty(String propertyName)
Get the value of a simple text property.
|
Thumbnail |
getThumbnailProperty(String propertyName,
String language)
Get the value of a multi-lingual property.
|
void |
merge(XMPSchema xmpSchema)
A basic schema merge, it merges bags and sequences and replace everything
else.
|
void |
removeBagValue(String bagName,
String bagValue)
Remove all matching entries with the given value from the bag.
|
void |
removeSequenceDateValue(String seqName,
Calendar date)
Remove a date sequence value from the list.
|
void |
removeSequenceValue(String seqName,
Elementable seqValue)
Remove a value from a sequence property.
|
void |
removeSequenceValue(String seqName,
String seqValue)
Remove all matching values from a sequence property.
|
void |
setAbout(String about)
Set the RDF 'about' attribute.
|
void |
setBooleanProperty(String propertyName,
Boolean bool)
Set the value of the property as a boolean.
|
void |
setDateProperty(String propertyName,
Calendar date)
Set the value of the property as a date.
|
void |
setIntegerProperty(String propertyName,
Integer intValue)
Set the value of the property as an integer.
|
void |
setLanguageProperty(String propertyName,
String language,
String value)
Set the value of a multi-lingual property.
|
void |
setTextProperty(String propertyName,
String propertyValue)
Set a simple text property on the schema.
|
void |
setThumbnailProperty(String propertyName,
String language,
Thumbnail value)
Set the value of a multi-lingual property.
|
public static final String NS_NAMESPACE
protected String prefix
protected Element schema
public XMPSchema(XMPMetadata parent, String namespaceName, String namespaceURI)
parent
- The parent XMP document that this schema will be part of.namespaceName
- The name of the namespace, ie pdf,dc,...namespaceURI
- The URI of the namespace, ie "http://ns.adobe.com/pdf/1.3/"public Element getElement()
public String getAbout()
public void setAbout(String about)
about
- The new RFD about value.public void setTextProperty(String propertyName, String propertyValue)
propertyName
- The name of the property, it must contain the namespace
prefix, ie "pdf:Keywords"propertyValue
- The value for the property, can be any string. Passing null
will remove the property.public String getTextProperty(String propertyName)
propertyName
- The name of the property to get, it must include the namespace
prefix. ie "pdf:Keywords".public Calendar getDateProperty(String propertyName) throws IOException
propertyName
- The fully qualified property name for the date.IOException
- If there is an error converting the value to a date.public void setDateProperty(String propertyName, Calendar date)
propertyName
- The fully qualified property name for the date.date
- The date to set, or null to clear.public Boolean getBooleanProperty(String propertyName)
propertyName
- The fully qualified property name for the boolean.public void setBooleanProperty(String propertyName, Boolean bool)
propertyName
- The fully qualified property name for the boolean.bool
- The boolean to set, or null to clear.public Integer getIntegerProperty(String propertyName)
propertyName
- The fully qualified property name for the integer.public void setIntegerProperty(String propertyName, Integer intValue)
propertyName
- The fully qualified property name for the integer.intValue
- The int to set, or null to clear.public void removeBagValue(String bagName, String bagValue)
bagName
- The name of the bag, it must include the namespace prefix. ie
"pdf:Keywords".bagValue
- The value to remove from the bagList.public void addBagValue(String bagName, String bagValue)
bagName
- The name of the bag, it must include the namespace prefix. ie
"pdf:Keywords".bagValue
- The value to add to the bagList.public List<String> getBagList(String bagName)
bagName
- The name of the bag property to get, it must include the
namespace prefix. ie "pdf:Keywords"public void removeSequenceValue(String seqName, String seqValue)
seqName
- The name of the sequence property. It must include the
namespace prefix. ie "pdf:Keywords".seqValue
- The value to remove from the list.public void removeSequenceValue(String seqName, Elementable seqValue)
seqName
- The name of the sequence property. It must include the
namespace prefix. ie "pdf:Keywords".seqValue
- The value to remove from the list.public void addSequenceValue(String seqName, String seqValue)
seqName
- The name of the sequence property, it must include the
namespace prefix. ie "pdf:Keywords"seqValue
- The value to add to the sequence.public void addSequenceValue(String seqName, Elementable seqValue)
seqName
- The name of the sequence property, it must include the
namespace prefix. ie "pdf:Keywords"seqValue
- The value to add to the sequence.public List<String> getSequenceList(String seqName)
seqName
- The name of the sequence property, it must include the
namespace prefix. ie "pdf:Keywords".public List<ResourceEvent> getEventSequenceList(String seqName)
seqName
- The name of the sequence to retrieve.public void removeSequenceDateValue(String seqName, Calendar date)
seqName
- The name of the sequence property, it must include the
namespace prefix. ie "pdf:Keywords"date
- The date to remove from the sequence property.public void addSequenceDateValue(String seqName, Calendar date)
seqName
- The name of the sequence property, it must include the
namespace prefix. ie "pdf:Keywords"date
- The date to add to the sequence property.public List<Calendar> getSequenceDateList(String seqName) throws IOException
seqName
- The name of the sequence property, it must include the
namespace prefix. ie "pdf:Keywords".IOException
- If there is an error converting the value to a date.public void setLanguageProperty(String propertyName, String language, String value)
propertyName
- The name of the property, it must include the namespace
prefix. ie "pdf:Keywords"language
- The language code of the value. If null then "x-default" is
assumed.value
- The value of the property in the specified language.public String getLanguageProperty(String propertyName, String language)
propertyName
- The name of the property, it must include the namespace
prefix. ie "pdf:Keywords"language
- The language code of the value. If null then "x-default" is
assumed.public void setThumbnailProperty(String propertyName, String language, Thumbnail value)
propertyName
- The name of the property, it must include the namespace
prefix. ie "pdf:Keywords"language
- The language code of the value. If null then "x-default" is
assumed.value
- The value of the property in the specified language.public Thumbnail getThumbnailProperty(String propertyName, String language)
propertyName
- The name of the property, it must include the namespace
prefix. ie "pdf:Keywords"language
- The language code of the value. If null then "x-default" is
assumed.public List<String> getLanguagePropertyLanguages(String propertyName)
propertyName
- The name of the property, it must include the namespace
prefix. ie "pdf:Keywords"public void merge(XMPSchema xmpSchema) throws IOException
xmpSchema
- The schema to merge.IOException
- If there is an error during the merge.Copyright © 2002–2015 The Apache Software Foundation. All rights reserved.