Elemente und Sequenzen mit der XItemFactory erstellen
Mit der XItemFactory können Sie neue Elemente und Sequenzen mit Elementen verschiedener Typen erstellen.
Vorgehensweise
- Mit der Methode getItemFactory der XFactory-Klasse können Sie Instanzen der
XItemFactory erstellen und die entsprechende Elementmethode aufrufen, um ein Element eines bestimmten Typs
zu erstellen.
Ein Element kann ein Knoten oder ein atomarer Wert (z. B. Integer, String oder Boolean) sein.
Im Folgenden sehen Sie ein Beispiel für die Verwendung von XItemFactory zum Erstellen neuer Elemente verschiedener Typen.// XFactory erstellen XFactory factory = XFactory.newInstance(); // XItemFactory erstellen XItemFactory itemFactory = factory.getItemFactory(); // Neues atomares Element eines Typs erstellen, der der Standardzuordnung des integrierten Typs xs:string zu java.lang.String entspricht XItemView stringItem = itemFactory.item("Lets see"); // Neues atomares Element vom Typ int erstellen XItemView intItem = itemFactory.item(3, XTypeConstants.INT_QNAME); // Neues atomares Element vom Typ boolean erstellen boolean boolValue = false; XItemView booleanItem = itemFactory.item(boolValue, XTypeConstants.BOOLEAN_QNAME); // Knotentyp erstellen DocumentBuilderFactory dbf = DocumentBuilderFactory.newInstance(); DocumentBuilder db = dbf.newDocumentBuilder(); // Eingabedatei syntaktisch analysieren Document doc = db.parse(INPUT_File); Node node = doc.getFirstChild(); XItemView item =itemFactory.item(node) // Neues Element eines komplexen Typs aus einer Quelle erstellen StreamSource source = new StreamSource(INPUT_File); XItemView complexItem = itemFactory.item(source);
Sie können, wie im Beispiel gezeigt, eine Elementmethode mit einem Argument als Wert der Methode verwenden. Die Auswertung des Typs erfolgt gemäß den Zuordnungsregeln für integrierte Typen und Java™-Typen.
- Mit der Methode getItemFactory der XFactory-Klasse können Sie Instanzen der
XItemFactory erstellen und die entsprechende Sequenzmethode aufrufen, um einen XSequenceCursor zu erstellen, der eine Sequenz von Elementen repräsentiert, die den Cursorzugriff auf die Elemente in der Sequenz
ermöglicht. Im Folgenden sehen Sie ein Beispiel für die Verwendung von XItemFactory zum Erstellen einer homogenen Sequenz.
// XFactory erstellen XFactory factory = XFactory.newInstance(); // XItemXFactory erstellen XItemFactory itemFactory =xfactory.getItemFactory(); // Sequenz mit Integer-Werten erstellen XSequenceCursor intSeq = xfactory.sequence(new int[]{1,2,3}); // Sequenz mit String-Werten erstellen XSequenceCursor stringSeq = xfactory.sequence(new String[]{"This", "is", "a", "test"},XTypeConstants.STRING_QNAME );
Im Folgenden sehen Sie ein Beispiel für die Verwendung von XItemFactory zum Erstellen einer Sequenz von Elementen unterschiedlicher Typen.// XFactory erstellen XFactory factory = XFactory.newInstance(); // XItemXFactory erstellen XItemFactory itemFactory = factory.getItemFactory(); // Array mit den neu erstellten Elementen erstellen XItemView[] items = new XItemView[2]; items[0] =itemFactory.item(boolValue, XTypeConstants.BOOLEAN_QNAME); items[1] = itemFactory.item(intValue, XTypeConstants.INT_QNAME); // Sequenz mit Elementen erstellen XSequenceCursor seq = itemFactory.sequence(items);


http://www14.software.ibm.com/webapp/wsbroker/redirect?version=cord&product=was-nd-mp&topic=txml_xitemfact
Dateiname:txml_xitemfact.html