私は実際に以前に別の形でこの質問をしました。素晴らしい答えは得られましたが、もっと明確にする必要があると思ったので、もう一度全体の形で質問します。
ユーザーは次のようなスクリプトを作成します。
$ABC->Command(100, 100);
my $group = "1";
my $id = "1";
my $value1 = "Some Process A Happened";
$rep->getParameter($group, $id, $value1);
$ABC->Command(100, 100);
my $group = "1";
my $id = "2";
my $value1 = "Some Process B Happened";
$rep->getParameter($group, $id, $value1);
$ABC->Command(100, 100);
my $group = "2";
my $id = "1";
my $value1 = "Some Process A Happened";
$rep->getParameter($group, $id, $value1);
$ABC->Command(100, 100);
my $group = "2";
my $id = "1";
my $value1 = "Some Process Happened";
$rep->getParameter($group, $id, $value1);
$ABC->Command(100, 100);
my $group = "3";
my $id = "1";
my $value1 = "Some Process Happened";
$rep->getParameter($group, $id, $value1);
$ABC->SomeImage($image) $desc = "Some info";
$rep->getImage($image, $desc);
$rep->getResult("Pass")
これは、次のようなXMLを生成する必要があります。
<?xml version="1.0" encoding="UTF-8" ?>
<TestResult xmlns="http://test.com/automate" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://test.com/automate">
<Result>Pass</Result>
<Comments>Executed Successfully</Comments>
<Parameters>
<ParameterGroup ID="Group1">
<Parameter key="Key1">Some Value</Parameter>
<Parameter key="Key2">Some Value</Parameter>
<Parameter key="Key3">Some Value</Parameter>
</ParameterGroup>
<ParameterGroup ID="Group2">
<Parameter key="Key1">Some Value</Parameter>
<Parameter key="Key2">Some Value</Parameter>
<Parameter key="Key3">Some Value</Parameter>
</ParameterGroup>
<ParameterGroup ID="Group3">
<Parameter key="Key1">Some Value</Parameter>
<Parameter key="Key2">Some Value</Parameter>
<Parameter key="Key3">Some Value</Parameter>
</ParameterGroup>
</Parameters>
<Images>
<Image key="ImageTag1">info</Image>
<Image key="ImageTag2">info</Image>
<Image key="ImageTag3">info</Image>
</Images>
</TestResult>
画像値とパラメータ値は異なる時点で入力されます。Images
ただし、の場合と同様に、要素内に収集して配置する必要がありParameters
ます。ここではどのようなアプローチに従う必要がありますか?いくつかのコードサンプルをお願いします。
編集:
私は次のようなものを持っています
$xml = {
ParameterGroup => [
{
ID => 'Group1',
Parameter => {
Key1 => {content => 'Some Value'},
Key2 => {content => 'Some Value'},
Key3 => {content => 'Some Value'},
},
},
{
ID => 'Group2',
Parameter => {
Key1 => {content => 'Some Value'},
Key2 => {content => 'Some Value'},
Key3 => {content => 'Some Value'},
},
},
]
};
print XMLout(
$xml,
RootName => 'Parameters',
KeyAttr => 'value',
);
構造としてですが、これらは固定構造です。ユーザーの要件に合わせてこれを動的にするにはどうすればよいですか?