XUpdate: Unterschied zwischen den Versionen

aus GlossarWiki, der Glossar-Datenbank der Fachhochschule Augsburg
Keine Bearbeitungszusammenfassung
Keine Bearbeitungszusammenfassung
 
(2 dazwischenliegende Versionen desselben Benutzers werden nicht angezeigt)
Zeile 1: Zeile 1:
[[Kategorie:Programmierung]]
==Definition==
 
XUpdate (Namespace: [http://www.xmldb.org/xupdate http://www.xmldb.org/xupdate]) wurde von der Initiative [http://xmldb-org.sourceforge.net XML:DB] entwickelt, die ebenfalls eine API für XUpdate zur Verfügung stellt. XUpdate ermöglicht es dem Programmierer, ändernd auf Daten und Dateien zuzugreifen.
XUpdate (Namespace: [http://www.xmldb.org/xupdate http://www.xmldb.org/xupdate]) wurde von der Initiative [http://xmldb-org.sourceforge.net XML:DB] entwickelt, die ebenfalls eine API für XUpdate zur Verfügung stellt. XUpdate ermöglicht es dem Programmierer, ändernd auf Daten und Dateien zuzugreifen.


== Sprachelemente ==
==Sprachelemente==


XUpdate ist eine deklarative Sprache, deren Anweisungen im XML-Format geschrieben werden. Für die Navigation innerhalb der Dokumente werden XPath und dessen Funktionen verwendet.
XUpdate ist eine deklarative Sprache, deren Anweisungen im XML-Format geschrieben werden. Für die Navigation innerhalb der Dokumente werden XPath und dessen Funktionen verwendet.
Zeile 19: Zeile 20:
Mit '''<code>xupdate:node</code>''' wird ein Knoten definiert, <code>node</code> kann je nach gewünschtem Knotentyp die Ausprägungen '''<code>element</code>''', '''<code>attribute</code>'''oder '''<code>text</code>'''annehmen.
Mit '''<code>xupdate:node</code>''' wird ein Knoten definiert, <code>node</code> kann je nach gewünschtem Knotentyp die Ausprägungen '''<code>element</code>''', '''<code>attribute</code>'''oder '''<code>text</code>'''annehmen.


folgenden Beispiel wird aus einem XML-Dokument der Nachname von Otto in der Konstanten <code>$last</code> gespeichert. Anschließend wird ein neuer Personen-Knoten für Susi Müller hinzugefügt. Danach werden alle Personen, die nicht Müller heißen, aus dem Dokument gelöscht.
Im folgenden Beispiel wird aus einem XML-Dokument der Nachname von Otto in der Konstanten <code>$last</code> gespeichert. Anschließend wird ein neuer Personen-Knoten für Susi Müller hinzugefügt. Danach werden alle Personen, die nicht Müller heißen, aus dem Dokument gelöscht.


  ...
  ...
Zeile 48: Zeile 49:
  </person>
  </person>
  ...
  ...


== Quellen ==
== Quellen ==
Zeile 59: Zeile 59:
* [http://www.info.uni-karlsruhe.de/~i44www/lehre/XML-WS-01-02/Vortrag15/note016.htm http://www.info.uni-karlsruhe.de/~i44www/lehre/XML-WS-01-02/Vortrag15/note016.htm]
* [http://www.info.uni-karlsruhe.de/~i44www/lehre/XML-WS-01-02/Vortrag15/note016.htm http://www.info.uni-karlsruhe.de/~i44www/lehre/XML-WS-01-02/Vortrag15/note016.htm]
* [http://www.zdnet.de/builder/print_this.htm?pid=39118709-20000202c http://www.zdnet.de/builder/print_this.htm?pid=39118709-20000202c]
* [http://www.zdnet.de/builder/print_this.htm?pid=39118709-20000202c http://www.zdnet.de/builder/print_this.htm?pid=39118709-20000202c]
[[Kategorie:XML]]
[[Kategorie:Glossar]]
{{{{SITENAME}}-konformer Artikel}}
{{Quellenangaben verbessern
| Formatierung        = true
}}
{{Verbesserungswürdiger Inhalt
| Anmerkung1 = Die Definition sollte überarbeitet werden!
}}

Aktuelle Version vom 15. Mai 2019, 15:21 Uhr

Definition

XUpdate (Namespace: http://www.xmldb.org/xupdate) wurde von der Initiative XML:DB entwickelt, die ebenfalls eine API für XUpdate zur Verfügung stellt. XUpdate ermöglicht es dem Programmierer, ändernd auf Daten und Dateien zuzugreifen.

Sprachelemente

XUpdate ist eine deklarative Sprache, deren Anweisungen im XML-Format geschrieben werden. Für die Navigation innerhalb der Dokumente werden XPath und dessen Funktionen verwendet.

Die Anweisungen werden nach dem folgenden Muster aufgebaut:

<xupdate:type select="expr">
  <xupdate:node>...</xupdate:node>
  ...
</xupdate:type>

Mit Beginn des Elements xupdate:type wird die Art der Modifikation angegeben. Es stehen verschiedene XUpdate-Funktionen zum Einfügen eines neuen Knotens (insert-before, insert-after, append) und zum Ändern (update, rename) oder Löschen (remove) eines bereits bestehenden Knotens zur Verfügung. Zusätzlich können Knoten in einer Konstanten gespeichert (variable) oder ihr Wert ausgelesen (value-of) werden. Auch das Einfügen von Kommentaren (comment) ist möglich.

Im select-Attribut wird für expr ein XPath-Ausdruck angegeben. Es kann im Dokument navigiert und Elemente ausgewählt werden. Hierbei können auch die von XPath zur Verfügung gestellten Funktionen und Bedingungsangaben benutzt werden.

Mit xupdate:node wird ein Knoten definiert, node kann je nach gewünschtem Knotentyp die Ausprägungen element, attributeoder textannehmen.

Im folgenden Beispiel wird aus einem XML-Dokument der Nachname von Otto in der Konstanten $last gespeichert. Anschließend wird ein neuer Personen-Knoten für Susi Müller hinzugefügt. Danach werden alle Personen, die nicht Müller heißen, aus dem Dokument gelöscht.

...
<person gender=“m“>
  <last>Müller</last>
  <first>Otto</first>
</person>
...
<xupdate:variable name=“last“ select=“//person[first=’Otto’]/last“>
<xupdate:append select=“/personen“>
  <xupdate:element name=“person“>
    <xupdate:attribute>f</xupdate:attribute>
    <xupdate:element name=“last“><xupdate:value-of select="$last"/></xupdate:element>
    <xupdate:element name=“first“>Susi</xupdate:element>
  </xupdate:element>
</xupdate:append>
<xupdate:remove select=“//person[last!='Müller']“/>
...
<person gender=“f“>
  <last>Müller</last>
  <first>Susi</first>
</person>
<person gender=“m“>
  <last>Müller</last>
  <first>Otto</first>
</person>
...

Quellen


Dieser Artikel ist GlossarWiki-konform.
In diesem Artikel sollten die Quellenangaben überarbeitet werden.
Bitte die Regeln der GlossarWiki-Quellenformatierung beachten.
Dieser Artikel sollte überarbeitet werden.
Die Definition sollte überarbeitet werden!