switch ( tagInfo.getType() ) {
case META_UNDEFINED:
case META_UNKNOWN:
continue;
}
final ImageMetaValue value = tagInfo.createValue();
value.setIsChangeable( true );
try {
//
// First, check to see if the element has an rdf:Alt or rdf:Seq
// element as its child: if so, parse the sequence for multiple
// values.
//
final Node child = XMLUtil.getFirstChildOf(
dirElement, m_rdfListElementFilter
);
if ( child != null )
value.setValues( readSeqList( (Element)child ) );
else {
//
// Second, check to see if it has some other element(s) as
// its child(ren). If so, parse them recursively.
//
final Node[] children =
XMLUtil.getChildrenOf( dirElement, dirPrefixFilter );
if ( children != null && children.length > 0 ) {
parseElements( children, dirPrefixFilter, dir );
continue;
}
//
// Lastly, see if its child is a text node.
//
final String text =
XMLUtil.getTextOfFirstTextChildOf( dirElement );
if ( text != null )
value.setValues( text.trim() );
else
value.setValues( "" );
}
dir.putValue( tagInfo.getID(), value );
}
catch ( Exception e ) {