Alle,
Ich habe XML, das ich gerne mit JSL analysieren möchte. Ich bin mit XML nicht vertraut, also entschuldigen Sie meine Unwissenheit.
Was ich versucht habe, ist Folgendes: Parse XML( Test,
On Element( "Table", Start Tag( New Table( XML Attr( "Table" ) ) ) ),
On Element("Rule",End Tag( New Column( XML Attr( "DayName" ), Set Values( Parse( XML Text() ) ) ) ) )
);Ich weiß, ich müsste mithilfe von „On Element“ eine weitere Regel hinzufügen, um das Attribut „Val1“ zu analysieren, aber das funktioniert nicht. Ich möchte, dass die Ausgabe so aussieht: Betreff: XML-Hilfe analysierenTestdaten
Test =
"\[
]\";
So können Sie bekommen, wonach Sie gefragt haben:
Parse XML( Test,
On Element( "Table", Start Tag( dt1 = New Table( XML Attr( "Table" ) ) ) ),
On Element( "Rule", End Tag( New Column( XML Attr( "DayName" ), Set Values( Eval List( {XML Attr( "Val1" )} ) ) ) ) )
);
one wayone wayEinweg
Aber ich denke, eine bessere Interpretation der Datei könnte so aussehen:
Parse XML( Test,
On Element( "Table", Start Tag( dt2 = New Table( XML Attr( "Table" ), New Column( "DayName" ), New Column( "Val1" ) ) ) ),
On Element(
"Rule",
End Tag(
dt2 << addrow( 1 );
dt2:DayName = XML Attr( "DayName" );
dt2:Val1 = XML Attr( "Val1" );
)
)
);
Another wayAnother wayEin anderer Weg
(Sie wollen das Parse(...) nicht; das Beispiel im Skriptindex, das es verwendet, hat auch eine JSL-Matrix in der XML-Datei, die das Parsen benötigt. Ihr Beispiel enthält eine einzelne Zahl in Anführungszeichen. Sie können die Funktion num() verwenden, um die Konvertierung so durchzuführen, dass die Spalte numerisch ist.dt2:Val1 = Num ( XML Attr( "Val1" )); )