Interface StructType

  • All Superinterfaces:
    PropertyType, java.io.Serializable

    public interface StructType
    extends PropertyType
    Describes an XMP array property. There are four types of arrays:
    • Bag
    • (unorderen array)
    • Seq
    • (ordered array)
    • Alt
    • (alternative array)
    • Alt-Text
    • (language alternative, syntactically equal to Alt, but contains only text properties with a language qualifier)
    Additionally, a rule can be added to contrain an array to have a minimum and/or maximum number of Items (LengthRule).
    • Method Detail

      • getDefaultNamespaceURI

        java.lang.String getDefaultNamespaceURI()
        The default namespace is the namespace that most struct fields are in. All structs defined in the XMP Specifications contain field only from a single namespace. Though, the XMP data model allows structs that contain fields of multiple namespaces.
        Returns:
        Returns the default namespace of the struct.
      • addField

        void addField​(PropertyDescription field)
        Adds a struct field. If the field has no namespace defined, it inherits the default namespace of the struct.
        Parameters:
        field - the struct field to add
      • getField

        PropertyDescription getField​(java.lang.String namespaceURI,
                                     java.lang.String localName)
        Returns a struct field by namespace and local name.
        Parameters:
        namespaceURI - a namespace
        localName - the name of a struct field
        Returns:
        Returns the struct field if found, null otherwise.
      • getFields

        java.util.List<PropertyDescription> getFields()
        Returns:
        Returns a collection of all struct fields. The order of the added fields should be kept.
      • removeField

        void removeField​(java.lang.String namespaceURI,
                         java.lang.String localName)
        Removes a struct field by namespace and local name. If it is not existing, the call is ignored.
        Parameters:
        namespaceURI - a namespace
        localName - the name of the struct field to delete