Interface IIOMetadataFormat

All Known Implementing Classes:
IIOMetadataFormatImpl

public interface IIOMetadataFormat
An object describing the structure of metadata documents returned from IIOMetadata.getAsTree and passed to IIOMetadata.setFromTree and mergeTree. Document structures are described by a set of constraints on the type and number of child elements that may belong to a given parent element type, the names, types, and values of attributes that may belong to an element, and the type and values of Object reference that may be stored at a node.

N.B: classes that implement this interface should contain a method declared as public static getInstance() which returns an instance of the class. Commonly, an implementation will construct only a single instance and cache it for future invocations of getInstance.

In the event that the plugin is provided as part of a named module, that module must export the package containing the implementation class to the

java.desktop
module via a qualified export. An unqualified export is not recommended unless also needed for some other reason. Failing to export the package will result in access failure at runtime.

The structures that may be described by this class are a subset of those expressible using XML document type definitions (DTDs), with the addition of some basic information on the datatypes of attributes and the ability to store an Object reference within a node. In the future, XML Schemas could be used to represent these structures, and many others.

The differences between IIOMetadataFormat-described structures and DTDs are as follows:

  • Elements may not contain text or mix text with embedded tags.
  • The children of an element must conform to one of a few simple patterns, described in the documentation for the CHILD_* constants;
  • The in-memory representation of an elements may contain a reference to an Object. There is no provision for representing such objects textually.

  • Field Summary

    Fields
    Modifier and Type
    Field
    Description
    static final int
    A constant returned by getChildPolicy to indicate that an element must have a single instance of each of its legal child elements, in order.
    static final int
    A constant returned by getChildPolicy to indicate that an element must have zero or one children, selected from among its legal child elements.
    static final int
    A constant returned by getChildPolicy to indicate that an element may not have any children.
    static final int
    The largest valid CHILD_POLICY_* constant, to be used for range checks.
    static final int
    A constant returned by getChildPolicy to indicate that an element must have zero or more instances of its unique legal child element.
    static final int
    A constant returned by getChildPolicy to indicate that an element must have a sequence of instances of any of its legal child elements.
    static final int
    A constant returned by getChildPolicy to indicate that an element must have zero or one instance of each of its legal child elements, in order.
    static final int
    A constant returned by getAttributeDataType indicating that the value of an attribute is one of the boolean values 'true' or 'false'.
    static final int
    A constant returned by getAttributeDataType indicating that the value of an attribute is a string representation of a double-precision decimal floating-point number.
    static final int
    A constant returned by getAttributeDataType indicating that the value of an attribute is a string representation of a decimal floating-point number.
    static final int
    A constant returned by getAttributeDataType indicating that the value of an attribute is a string representation of an integer.
    static final int
    A constant returned by getAttributeDataType indicating that the value of an attribute is a general Unicode string.
    static final int
    A constant returned by getAttributeValueType and getObjectValueType to indicate that the attribute or user object may be set a single, arbitrary value.
    static final int
    A constant returned by getAttributeValueType and getObjectValueType to indicate that the attribute or user object may be set one of a number of enumerated values.
    static final int
    A constant returned by getAttributeValueType and getObjectValueType to indicate that the attribute or user object may be set to a list or array of values.
    static final int
    A constant returned by getObjectValueType to indicate the absence of a user object.
    static final int
    A constant returned by getAttributeValueType and getObjectValueType to indicate that the attribute or user object may be set a range of values.
    static final int
    A constant returned by getAttributeValueType and getObjectValueType to indicate that the attribute or user object may be set to a range of values.
    static final int
    A value that may be or'ed with VALUE_RANGE to obtain VALUE_RANGE_MAX_INCLUSIVE, and with VALUE_RANGE_MIN_INCLUSIVE to obtain VALUE_RANGE_MIN_MAX_INCLUSIVE.
    static final int
    A constant returned by getAttributeValueType and getObjectValueType to indicate that the attribute or user object may be set to a range of values.
    static final int
    A value that may be or'ed with VALUE_RANGE to obtain VALUE_RANGE_MIN_INCLUSIVE, and with VALUE_RANGE_MAX_INCLUSIVE to obtain VALUE_RANGE_MIN_MAX_INCLUSIVE.
    static final int
    A constant returned by getAttributeValueType and getObjectValueType to indicate that the attribute or user object may be set a range of values.
  • Method Summary

    Modifier and Type
    Method
    Description
    boolean
    canNodeAppear(String elementName,