/** * This interface provides base level definitions for all metadata components. * * @version 2.3 */ public interface Metadata { /** * Add a vendor extension to this metadata component. * * @param vendor Identifier for the vendor * @param key The extension key * @param value Value for the extension * @return The ExtensionMetaData */ ExtensionMetadata newExtensionMetaData(String vendor, String key, String value); /** * Number of extensions on this component. * * @return Number of extensions */ int getNumberOfExtensions(); /** * Accessor for the defined extensions for this component * * @return The extensions */ ExtensionMetadata[] getExtensions(); /** * Accessor for the parent metadata component. * * @return The parent */ Metadata getParent(); }