|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
public interface XMPSchemaRegistry
The schema registry keeps track of all namespaces and aliases used in the XMP metadata. At initialisation time, the default namespaces and default aliases are automatically registered. Namespaces must be registered before used in namespace URI parameters or path expressions. Within the XMP Toolkit the registered namespace URIs and prefixes must be unique. Additional namespaces encountered when parsing RDF are automatically registered. The namespace URI should always end in an XML name separator such as '/' or '#'. This is because some forms of RDF shorthand catenate a namespace URI with an element name to form a new URI.
Aliases in XMP serve the same purpose as Windows file shortcuts, Macintosh file aliases, or UNIX file symbolic links. The aliases are simply multiple names for the same property. One distinction of XMP aliases is that they are ordered, there is an alias name pointing to an actual name. The primary significance of the actual name is that it is the preferred name for output, generally the most widely recognized name.
The names that can be aliased in XMP are restricted. The alias must be a top level property name, not a field within a structure or an element within an array. The actual may be a top level property name, the first element within a top level array, or the default element in an alt-text array. This does not mean the alias can only be a simple property. It is OK to alias a top level structure or array to an identical top level structure or array, or to the first item of an array of structures.
Method Summary | |
---|---|
void |
deleteNamespace(java.lang.String namespaceURI)
Deletes a namespace from the registry. |
XMPAliasInfo |
findAlias(java.lang.String qname)
Searches for registered aliases. |
XMPAliasInfo[] |
findAliases(java.lang.String aliasNS)
Collects all aliases that are contained in the provided namespace. |
java.util.Map |
getAliases()
|
java.lang.String |
getNamespacePrefix(java.lang.String namespaceURI)
Obtain the prefix for a registered namespace URI. |
java.util.Map |
getNamespaces()
|
java.lang.String |
getNamespaceURI(java.lang.String namespacePrefix)
Obtain the URI for a registered namespace prefix. |
java.util.Map |
getPrefixes()
|
java.lang.String |
registerNamespace(java.lang.String namespaceURI,
java.lang.String suggestedPrefix)
Register a namespace URI with a suggested prefix. |
XMPAliasInfo |
resolveAlias(java.lang.String aliasNS,
java.lang.String aliasProp)
Determines if a name is an alias, and what it is aliased to. |
Method Detail |
---|
java.lang.String registerNamespace(java.lang.String namespaceURI, java.lang.String suggestedPrefix) throws XMPException
Note: No checking is presently done on either the URI or the prefix.
namespaceURI
- The URI for the namespace. Must be a valid XML URI.suggestedPrefix
- The suggested prefix to be used if the URI is not yet
registered. Must be a valid XML name.
XMPException
- If the parameters are not accordingly setjava.lang.String getNamespacePrefix(java.lang.String namespaceURI)
It is not an error if the namespace URI is not registered. The output namespacePrefix string is not modified if the namespace URI is not registered.
namespaceURI
- The URI for the namespace. Must not be null or the empty
string.
java.lang.String getNamespaceURI(java.lang.String namespacePrefix)
It is not an error if the namespace prefix is not registered. The output namespaceURI string is not modified if the namespace prefix is not registered.
namespacePrefix
- The prefix for the namespace. Must not be null or the empty
string.
java.util.Map getNamespaces()
java.util.Map getPrefixes()
void deleteNamespace(java.lang.String namespaceURI)
Does nothing if the URI is not registered, or if the namespaceURI parameter is null or the empty string.
Note: Not yet implemented.
namespaceURI
- The URI for the namespace.XMPAliasInfo resolveAlias(java.lang.String aliasNS, java.lang.String aliasProp)
aliasNS
- The namespace URI of the alias. Must not be null
or the empty
string.aliasProp
- The name of the alias. May be an arbitrary path expression
path, must not be null
or the empty string.
XMPAliasInfo
for the given alias namespace and property or
null
if there is no such alias.XMPAliasInfo[] findAliases(java.lang.String aliasNS)
aliasNS
- a schema namespace URI
XMPAliasInfo findAlias(java.lang.String qname)
qname
- an XML conform qname
java.util.Map getAliases()
XMPAliasInfo
-object.
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |