2017-08-02 5 views
0

私は再編成しようとしているXML文書を持っています。私は酸素のリファクタリングツールを使用して特定の要素または要素のグループをラップしようとしていました。しかし、目的の要素をまとめてグループ化するのではなく、各要素を個別にラップするだけです。XPathを使用して酸素中のxmlをリファクタリングする

ラップ要素ツールを使用して、最初の3つのチャンク要素をs要素にまとめるXPath式を記述するにはどうすればいいですか?これに

<system> 
    <n>1057</n> 
    <chunk>X1</chunk> 
    <chunk>C6HF5</chunk> 
    <chunk>Pentafluorbenzol</chunk> 

    <chunk>C6H2F41,2,3,5-Tetrafluorbenzol</chunk> 
    <chunk>Äquimolare Mischung: </chunk> 
    <chunk/> 
    <r>[F5]</r> 
    <c>25°C</c> 
    <chunk>ΔHM = 1,84 cal/mol Misch. = 7,7 J/mol Misch.</chunk> 

:/システム/システム/チャンク[位置()< 4]へ:XPath式を使用し

<system> 
    <n>1057</n> 
    <s><chunk>X1</chunk> 
    <chunk>C6HF5</chunk> 
    <chunk>Pentafluorbenzol</chunk></s> 

    <chunk>C6H2F41,2,3,5-Tetrafluorbenzol</chunk> 
    <chunk>Äquimolare Mischung: </chunk> 
    <chunk/> 
    <r>[F5]</r> 
    <c>25°C</c> 
    <chunk>ΔHM = 1,84 cal/mol Misch. = 7,7 J/mol Misch.</chunk> 

これから行く

最初の3つのチャンク要素を選択し、それらをsタグで囲みます。それは適切なチャンクを選択するが、個別に各チャンクをラップ

<system> 
    <n>1057</n> 
    <s><chunk>X1</chunk></s> 
    <s><chunk>C6HF5</chunk></s> 
    <s><chunk>Pentafluorbenzol</chunk></s> 

    <chunk>C6H2F41,2,3,5-Tetrafluorbenzol</chunk> 
    <chunk>Äquimolare Mischung: </chunk> 
    <chunk/> 
    <r>[F5]</r> 
    <c>25°C</c> 
    <chunk>ΔHM = 1,84 cal/mol Misch. = 7,7 J/mol Misch.</chunk> 

:私はリファクタリングコマンドでこれを実行するとしかし、私はこれを取得します。すべての要素をタグにまとめる方法についてご提案がありましたら教えてください。または、これを達成するために酸素xmlを使用すべきでない場合でも。

+1

" 'その変換を実行します。 –

答えて

0

oXygenには、必要なものに対してデフォルトのXMLリファクタリング操作がありません。しかし、あなたが望むならあなた自身の操作を定義することができます(oXygen user's guide参照)。そして、操作のスクリプトとしてMartin HonnenのXSL(あなたの投稿に対する最初のコメント)を使用することができます。

関連する問題