`handle-generic-xml` roottag option does not work with namespace-prefix
|handle-generic-xml(emitnamespace="true",attributemarker="@",recordtagname="mets:mets") does not work:
https://metafacture.org/playground/?flux=%22https%3A//raw.githubusercontent.com/TobiasNx/metafacture_workflows/b2f8776294ee50aa2e14a43fc2a08d6bfdc81775/replaceXSLTTransformation/xsltOutput/UBi_01_Beispiel_Ergebnis.xml%22%0A%7Copen-http%0A%7Cdecode-xml%0A%7Chandle-generic-xml%28emitnamespace%3D%22true%22%2Cattributemarker%3D%22@%22%2Crecordtagname%3D%22mets%3Amets%22%29%0A%7Cencode-json%28prettyPrinting%3D%22true%22%29%0A%7Cprint%0A%3B
while |handle-generic-xml(emitnamespace="true",attributemarker="@",recordtagname="mets") works: https://metafacture.org/playground/?flux=%22https%3A//raw.githubusercontent.com/TobiasNx/metafacture_workflows/b2f8776294ee50aa2e14a43fc2a08d6bfdc81775/replaceXSLTTransformation/xsltOutput/UBi_01_Beispiel_Ergebnis.xml%22%0A%7Copen-http%0A%7Cdecode-xml%0A%7Chandle-generic-xml%28emitnamespace%3D%22true%22%2Cattributemarker%3D%22@%22%2Crecordtagname%3D%22mets%22%29%0A%7Cencode-json%28prettyPrinting%3D%22true%22%29%0A%7Cprint%0A%3B
Not sure how problematic this is, but at least it should be documented.
I think it works as intended, as the recordtagname is matched against the "localName", i.e. the field names bare a namespace. See
https://github.com/metafacture/metafacture-core/blob/master/metafacture-xml/src/main/java/org/metafacture/xml/GenericXmlHandler.java#L177 .
So mets:mets doesn't exists , as it expects "$anyNamespace:mets:mets (thus don't yield a result (your first example)) while your second example ("mets") identifies <$anyNamespace:mets>...</$whatever.mets> as a record.