投稿日:2024.10.15
更新日:2024.10.15
…以降未定
前回は各List要素について触れました。
今回は前回の続きとしてOrderedList要素が持つnumberContinued属性について触れたいと思います。
numberContinued属性はどのような場合に使用するかというと、下記の様な記述に際して使用します
項目を跨いで子の項目番号が振られている記述ですね。
あまり見かけることのない記述かと思います。
さて、この記述をXMLで表現しようとした場合、OrderedList要素で項目番号を振りたいのですが、構造的には
と
との二つの項目に分かれています。
通常のOrderedList要素では連番を表すために、子のItem要素が並列に並んでいる必要があるため、「●●の場合」などのヘッダの記述が再現できません。
また、Item要素の間にヘッダとなる要素を割り込む方法も考えられますが、項目単位でのまとまりが無くなる為、以前説明した項目が取得しやすいというメリットが無くなってしまいます。
そこでnumberContinued属性を使用します。
numberContinued属性は名の通り項目番号を継続させる為のフラグです。
これは実際に見ないと分かりずらいので、まずはXML構造の例を見てみましょう。
<SimpleList> <Item> <Header> <Lang xml:lang="ja">●●の場合</Lang> </Header> <OrderedList> <Item id="HDR_ContraIndications_1" heading="free"> <Detail> <Lang xml:lang="ja">いろはにほへと ちりぬるを</Lang> </Detail> </Item> <Item id="HDR_ContraIndications_2" heading="free"> <Detail> <Lang xml:lang="ja">わかよたれそ つねならむ</Lang> </Detail> </Item> </OrderedList> </Item> <Item> <Header> <Lang xml:lang="ja">■■の場合</Lang> </Header> <OrderedList numberContinued="true"> <Item id="HDR_ContraIndications_3" heading="free"> <Detail> <Lang xml:lang="ja">うゐのおくやま けふこえて</Lang> </Detail> </Item> <Item id="HDR_ContraIndications_4" heading="free"> <Detail> <Lang xml:lang="ja">あさきゆめみし ゑひもせすん</Lang> </Detail> </Item> </OrderedList> </Item> </SimpleList>
今回の例ではSimpleList要素を親に使用し、「●●の場合」と「■■の場合」をそれぞれを別の項目とした上で、各項目内でOrderedList要素を使用しています。
この場合「●●の場合」内のOrderedList要素が一旦閉じられてしまい、Item要素の連番が途切れてしまいますが、再び登場する「■■の場合」内のOrderedList要素にnumberContinued属性が記述されることで、項目番号が継続されるというものです。
これで構造を保持したまま、項目番号を継続することが可能となります。
現状、numberContinued属性に関しては明確な使用例・条件が示されておらず、込み入った説明ができませんが、使い方はおおよそ理解して頂けたかと思います。