Ich versuche, Java-Klassen für in XBRL definierte Typen zu generieren.
Mein Build-Prozess basiert auf Maven 2, und hier sind meine Versuche. Ich füge nur den Abschnitt build
ein, der auf einigen Eigenschaften beruht:
package
ist der Name meines Zielpakets
catalog
ist der Pfad und Dateiname des Katalogs. weil ich keine Internetverbindung habe, habe ich amny Einträge, aber ich denke, das sind immer notwendig
xsd.path
ist das Verzeichnis, in dem sich das XSD befindet
xsd.file
ist der Dateiname der folgenden minimalistischen XSD
Alle Plugins, die ich getestet habe, können xl:nonEmptyURI
nicht importieren.
Aber xl
wird auf http://www.xbrl.org/2003/XLink
(das ist in meinem Katalog) abgebildet, die <import namespace="http://www.w3.org/1999/xlink" schemaLocation="xlink-2003-12-31.xsd"/>
importiert, was nonEmptyURI
Was ist los? Wie kann ich es beheben?
schlägt mit
fehl %Vor%Der Fehler ist der gleiche, ein wenig ausführlicher
%Vor%Gleicher Fehler, anders gesagt bei Xerces
%Vor%Sie müssen definitiv alle Schemas herunterladen und in Ihrem Fall zum Katalog hinzufügen. Ich hatte ein ähnliches Problem beim Generieren von Java-Klassen, aber ich habe überhaupt keine Kataloge verwendet, sondern einfach alle Schemata, die der XBRL verwendet, in den gleichen Ordner gelegt. So wie sie auf der XBRL-Site organisiert sind:
%Vor%Außerdem habe ich eine JAXB-Bindung hinzugefügt, wie Sie sehen, um einen Konflikt zu lösen, der während der Quellengenerierung auftritt und in den gleichen Ordner gelegt wird.
xbrl_bindings.xjb:
%Vor%
Maven Plugin Konfiguration:
%Vor%Genießen Sie XBRL:)
In Ihrem Katalog müssen Sie wahrscheinlich SYSTEM mit PUBLIC ändern.
Siehe auch: dieser Artikel
Gemäß diesem Artikel wird PUBLIC zum Abgleichen eines Namespace-URI verwendet:
%Vor%Haben Sie die XSD heruntergeladen und in einen Importordner gelegt?
Tags und Links jaxb jaxb2-maven-plugin maven-jaxb2-plugin xbrl cxf-xjc-plugin