public static void populateSchemaMapping(XMPMetadata meta) throws XmpParsingException
{
List<XMPSchema> schems = meta.getAllSchemas();
TypeMapping tm = meta.getTypeMapping();
StructuredType stPdfaExt = PDFAExtensionSchema.class.getAnnotation(StructuredType.class);
for (XMPSchema xmpSchema : schems)
{
if (xmpSchema.getNamespace().equals(stPdfaExt.namespace()))
{
// ensure the prefix is the preferred one (cannot use other
// definition)
if (!xmpSchema.getPrefix().equals(stPdfaExt.preferedPrefix()))
{
throw new XmpParsingException(ErrorType.InvalidPrefix,
"Found invalid prefix for PDF/A extension, found '" + xmpSchema.getPrefix()
+ "', should be '" + stPdfaExt.preferedPrefix() + "'");
}
// create schema and types
PDFAExtensionSchema pes = (PDFAExtensionSchema) xmpSchema;
ArrayProperty sp = pes.getSchemasProperty();
for (AbstractField af : sp.getAllProperties())