Ah. The PDF/A spec contains The Answer (which doesn't do you much good unless someone paid money to get it). You could dig the same info out of iText's source... which may actually be easier. Reading that spec is worth avoiding if at all possible. ;)
First of all, iText will get you the metadata xml, but the "xmp" package is meant for reading XMP only so that iText can modify it as needed before saving it out again. It doesn't actually contain any "get" functions. Replace, set, save... no "get".
So you get the XMP metadata thusly:
PdfReader reader = new PdfReader(pdfPath);
byte metaBytes[] = reader.getMetadata();
It's up to your XML parsing library of choice to get the "pdfaid:conformance" value ("A" or "B") out. XPath would be good. I'm not sure if that's an element body's value, or an attribute. I'm leaning towards element: <pdfaid:conformance>A</pdfaid:conformance>
If you're willing to cut corners and if the doc so much as declares the pdfaid namespace (http://www.aiim.org/pdfa/ns/id), it's a safe bet it's going to use it to claim A or B.
To do more and check if the document is compliant, you can use https://github.com/gba-awl/padaf to validate against the Isartor test suite. See also How can I test a PDF document if it is PDF/A compliant?
with the help of extension filter and the extension for PDF/A files is .pdf
Get XML Metadata (not byte[]):
Ah. The PDF/A spec contains The Answer (which doesn't do you much good unless someone paid money to get it). You could dig the same info out of iText's source... which may actually be easier. Reading that spec is worth avoiding if at all possible. ;)
First of all, iText will get you the metadata xml, but the "xmp" package is meant for reading XMP only so that iText can modify it as needed before saving it out again. It doesn't actually contain any "get" functions. Replace, set, save... no "get".
So you get the XMP metadata thusly:
It's up to your XML parsing library of choice to get the "pdfaid:conformance" value ("A" or "B") out. XPath would be good. I'm not sure if that's an element body's value, or an attribute. I'm leaning towards element:
<pdfaid:conformance>A</pdfaid:conformance>
If you're willing to cut corners and if the doc so much as declares the
pdfaid
namespace (http://www.aiim.org/pdfa/ns/id), it's a safe bet it's going to use it to claim A or B.