Utilizzo di XML

IBM® SDK contiene i programmi di analisi XML4J e XL XP-J, il compilatore XL TXE-J 1.0 XSLT e l'interprete XSLT XSLT4J . Questi strumenti consentono di analizzare, convalidare, trasformare e serializzare i documenti XML indipendentemente da qualsiasi implementazione di elaborazione XML.

Utilizzare i finder di produzione per individuare le implementazioni delle classi di produzione astratte, come descritto in Selezione di un processore XML. Utilizzando gli strumenti di ricerca factory, è possibile selezionare una libreria XML diversa senza modificare il codice Java™ .

Librerie XML disponibili

L'SDK IBM contiene le seguenti librerie XML:

XML4J 4.5
XML4J è un programma di analisi di convalida che fornisce supporto per i seguenti standard:
  • XML 1.0 (4th edizione)
  • Spazi dei nomi in XML 1.0 (2nd edizione)
  • XML 1.1 (2nd edizione)
  • Spazi dei nomi in XML 1.1 (2nd edizione)
  • W3C Schema XML 1.0 (2nd Edition)
  • XInclude 1.0 (2nd Edition)
  • Cataloghi XML OASIS 1.0
  • SAX 2.0.2
  • DOM Livello 3 Core, Carica e Salva
  • DOM Livello 2 Core, Eventi, Traversal e Range
  • JAXP 1.6

XML4J 4.5 è basato su Apache Xerces-J 2.9.0. Per ulteriori informazioni, consultare http://xerces.apache.org/xerces2-j/ .

XL XP - J 1.1

XL XP - J 1.1 è un programma di analisi non convalidato ad alte prestazioni che fornisce supporto per StAX 1.0 (JSR 173). StAX è un'API bidirezionale per la serializzazione pull - parsing e streaming di documenti XML 1.0 e XML 1.1 . Consultare la sezione Informazioni di riferimento XL XP - J per ulteriori dettagli su ciò che è supportato da XL XP - J 1.1.

XL TXE-J 1.0

Per la Versione 6 e successive, IBM SDK for Java include XL TXE-J. XL TXE-J include l'interprete XSLT4J 2.7.8 e un nuovo compilatore XSLT. Il nuovo programma di compilazione viene utilizzato per impostazione predefinita. Il compilatore XSLT4J non è più incluso con IBM SDK for Java. Consultare Migrazione a XL - TXE - J per informazioni sulla migrazione a XL TXE-J.

XL TXE-J fornisce il supporto per i seguenti standard:
  • XSLT 1.0
  • XPath 1.0
  • JAXP 1.6

Selezione di un processore XML

La scelta del processore XML viene eseguita utilizzando i provider di servizi. Quando si utilizza uno strumento di ricerca factory, Java cerca nelle seguenti posizioni, in questo ordine, per vedere quale provider di servizi utilizzare:
  1. La proprietà di sistema con lo stesso nome del provider del servizio.
  2. Il fornitore del servizio specificato in un file delle proprietà.
    • Solo per XMLEventFactory, XMLInputFactorye XMLOutputFactory Il valore del provider del servizio nel seguente file:
      • AIX: /etc/java8[_64]/jre/lib/stax.properties
      • Linux: /opt/ibm/java-<arch>-80/jre/lib/stax.properties
      • Windows: C:\Program Files\IBM\Java80\jre\lib\stax.properties
      • z/OS: /usr/lpp/java/J8.0[_64]/jre/lib/stax.properties
      .
    • Per altri factory. Il valore del provider del servizio nel seguente file:
      • AIX: /etc/java8[_64]/jre/lib/jaxp.properties
      • Linux: /opt/ibm/java-<arch>-80/jre/lib/jaxp.properties
      • Windows: C:\Program Files\IBM\Java80\jre\lib\jaxp.properties
      • z/OS: /usr/lpp/java/J8.0[_64]/jre/lib/jaxp.properties
  3. Il contenuto del file META-INF/services/<service.provider> .
  4. Il fornitore del servizio predefinito.
I seguenti service provider controllano le librerie di elaborazione XML utilizzate da Java:
javax.xml.parsers.SAXParserFactory
Seleziona il programma di analisi SAX. Per default, viene utilizzato org.apache.xerces.jaxp.SAXParserFactoryImpl dalla libreria XML4J .
javax.xml.parsers.DocumentBuilderFactory
Seleziona il builder di documenti. Per default, viene utilizzato org.apache.xerces.jaxp.DocumentBuilderFactoryImpl dalla libreria XML4J .
javax.xml.datatype.DatatypeFactory
Seleziona la produzione tipo di dati. Per default, viene utilizzato org.apache.xerces.jaxp.datatype.DatatypeFactoryImpl dalla libreria XML4J .
javax.xml.stream.XMLEventFactory
Seleziona la produzione eventi StAX . Per impostazione predefinita, viene utilizzato com.ibm.xml.xlxp.api.stax.XMLEventFactoryImpl dalla libreria XP - J XL.
javax.xml.stream.XMLInputFactory
Seleziona il programma di analisi StAX . Per impostazione predefinita, viene utilizzato com.ibm.xml.xlxp.api.stax.XMLInputFactoryImpl dalla libreria XP - J XL.
javax.xml.stream.XMLOutputFactory
Seleziona il serializer StAX . Per impostazione predefinita, viene utilizzato com.ibm.xml.xlxp.api.stax.XMLOutputFactoryImpl dalla libreria XP - J XL.
javax.xml.transform.TransformerFactory
Seleziona il processore XSLT. I valori possibili sono:
com.ibm.xtq.xslt.jaxp.compiler.TransformerFactoryImpl
Utilizzare il compilatore XL TXE-J. Questo è il valore predefinito.
org.apache.xalan.processor.TransformerFactoryImpl
Utilizzare l'interprete XSLT4J .
javax.xml.validation.SchemaFactory:http://www.w3.org/2001/XMLSchema
Seleziona il factory di schemi per il linguaggio di schema XML W3C . Per default, viene utilizzato org.apache.xerces.jaxp.validation.XMLSchemaFactory dalla libreria XML4J .
javax.xml.xpath.XPathFactory
Seleziona il processore XPath. Per impostazione predefinita, viene utilizzato org.apache.xpath.jaxp.XPathFactoryImpl dalla libreria XSLT4J .
Nota: l'implementazione XML IBM è obsoleta in IBM SDK, Java Technology Edition, Versione 8 e verrà sostituita dall'implementazione XML Oracle in una release futura.