freshman2017
Goto Top

XML via Powershell erstellen (Doppelpunkt darf nicht in den Namen?)

Guten Tag,

mit:

        $itm1 = $xml.CreateElement($cols[$index+4])
        $itm1.SetAttribute($cols[$index+1],$cols[$index+1])
        [void]$itemsnode1.AppendChild($itm1)

erstelle ich ein Element aus einer TXT:

<Test Shipping-123="Shipping-123"/>  

Allerdings möchte ich gerne zusätzlich folgendes bewirken:

<Test Shipping:123="Shipping-123"/>  

Leider können aber keine : in Powershell in XML übergeben werden?
Bekomme dabei die Fehlermeldung, dass ein : nicht im Namen enthalten sein darf?

Content-Key: 613143

Url: https://administrator.de/contentid/613143

Printed on: April 20, 2024 at 13:04 o'clock

Member: chgorges
chgorges Oct 15, 2020 at 13:44:38 (UTC)
Goto Top
Zitat von @freshman2017:

Guten Tag,
Moin,
Bekomme dabei die Fehlermeldung, dass ein : nicht im Namen enthalten sein darf?

Was schon seit eh und je so ist und war
2020-10-15 15_43_31-window

VG
Member: freshman2017
freshman2017 Oct 15, 2020 at 13:51:14 (UTC)
Goto Top
Moin,

aber der Doppelpunkt steht ja ja nicht im Dateinamen, sondern würde ich in einem Attribut eines Elements. Greift es dort ebenfalls?
Mitglied: 146189
146189 Oct 15, 2020 updated at 14:08:21 (UTC)
Goto Top
Leider können aber keine : in Powershell in XML übergeben werden?
Der Grund ist weil das ein sogenannter "XML-Namespace" ist. Du musst also erst einen Namespace mit URI erstellen (NamespaceManager) den diesem oder einem übergeordnen Konten zuordnen und dann kannst du einem Knoten einen Namespace zuweisen. Findet sich hier im Forum.
Member: freshman2017
freshman2017 Oct 15, 2020 at 14:13:50 (UTC)
Goto Top
Zitat von @146189:

Leider können aber keine : in Powershell in XML übergeben werden?
Der Grund ist weil das ein sogenannter "XML-Namespace" ist. Du musst also erst einen Namespace mit URI erstellen (NamespaceManager) den diesem oder einem übergeordnen Konten zuordnen und dann kannst du einem Knoten einen Namespace zuweisen. Findet sich hier im Forum.


Wie würde das dann aussehen in meinem Beispiel?
Mitglied: 146189
146189 Oct 15, 2020 at 14:27:09 (UTC)
Goto Top
Member: freshman2017
freshman2017 Oct 15, 2020 at 14:31:18 (UTC)
Goto Top

Danke.

Kannst Du mir helfen, wie ich das in meine Falle anwenden kann?
Mitglied: 146189
146189 Oct 15, 2020 updated at 14:39:04 (UTC)
Goto Top
Copy n Paste bringt dich nicht weiter
Lerne erst mal die XML Grundlagen
https://www.w3schools.com/xml/xml_namespaces.asp
Das was du brauchst habe ich dir genannt, verstehe und setze es selbst um, bringt dir am Ende des Tages mehr.
Member: mayho33
mayho33 Oct 15, 2020 at 15:35:37 (UTC)
Goto Top
Was ist denn mit ConvertTo-XML ?

https://docs.microsoft.com/en-us/powershell/module/microsoft.powershell. ...

Wenn du schon ein so passables Object hast würde sich das anbieten. Dann kannst du dir auch das Namespace-Gedöns sparen.

Grüße!