すいません。まったくXMLに関して無知です。
一応基本的な書き方についてWebで調べたのですが、どうしてもわからなかったので教えて頂ければと思います。
ある場所でのイベントの時間をXMLでまとめてプログラムで出力したいのですが、
<place>
<name>渋谷</name>
<monday>
<time>0</time>
<time>1</time>
<time>2</time>
</monday>
<tuesday>
<time>0</time>
<time>6</time>
<time>12</time>
</tuesday>
・・・
<sunday>
<time>12</time>
<time>13</time>
<time>14</time>
</sunday>
</place>
<place>
<name>新宿</name>
<monday>
<time>0</time>
<time>1</time>
<time>2</time>
</monday>
<tuesday>
<time>0</time>
<time>6</time>
<time>12</time>
</tuesday>
・・・
<sunday>
<time>12</time>
<time>13</time>
<time>14</time>
</sunday>
</place>
のような感じで、場所と曜日と時間の紐付けをしたいのですが、このような書き方でいいのでしょうか。
プログラムのほうできちんと読み込めないので質問してみました。
もちろんプログラムが間違っている可能性もあるのですが、<time>が先頭しか読まれないようなので、こういう”いくつかわからないけどデータがある”ような場合、XMLではどのように記述すれば良いかご教授願えますでしょうか。
よろしくお願いいたします。
No.2ベストアンサー
- 回答日時:
プログラムはSAXですか?DOMですか?
あるいはXSLTとか?
どんなプログラムなのか書かれていないのでわかりませんが
処理するのはプログラムなのでXMLに罪はありません。
XMLは単なるテキストですからそれ自身がどうこうということはありません。
そんなわけで
>こういう”いくつかわからないけどデータがある”ような場合、XMLではどのように記述すれば良いかご教授願えますでしょうか。
別に質問内容通りのXMLの書き方で特に問題は無いです。
(まぁ私なら
<place name="渋谷">
<time>0</time>
・
・
とか
<place>
<name>渋谷</name>
<event>
<time>0</time>
・
・
とかにしますけど。まぁこんなのは好みの問題です。)
ひとつしか取らないのなら、プログラムのロジックがひとつしか取らないようになっているんだと思います。
例えばDOMを使っているのならgetElementsByTagName("time")とかで
リスト形式で取れるはずです。
もちろん書き方は開発言語とかにもよって違ってきますけど。
おそらく渋谷は渋谷でtimeを取得したいでしょうし、
sundayはsundayで取得したいとかあると思います。
そんなわけでXQueryとか取れるメソッドを使って取ってくることも多いです。
ご回答ありがとうございます。
やはりXML的には問題ないということで^^
わからない単語がたくさん出てきたのでまた調べてみます。
なんかXMLってやさしく解説されているところでもいろいろな書き方があってやさしい解説を読みながらも?なところがたくさんあって敷居が高いです。
少しずつ学習していきたいと思います。
今回は、わけがわからないのでXMLではなく別な形式に変えてプログラムすることにします。
ありがとうございました。
No.1
- 回答日時:
書き方というか、XMLの概念としては間違っていませんが、
XMLは読み込むソフトによってフォーマットが変わってくるので、
これで合ってるかどうかというのは言えません。
現状ではあなた以外にはおそらく誰にもわかりません。
例えばInDesign用のXMLでしたら、
---------------------------
<?xml version="1.0" encoding="UTF-8" standalone="yes"?><rss><group>
<list xmlns:aid="http://ns.adobe.com/AdobeInDesign/4.0/" aid:table="table" aid:trows="4" aid:tcols="2">
<line aid:table="cell" aid:crows="1" aid:ccols="1">0001</line><line aid:table="cell" aid:crows="1" aid:ccols="1">192.168.1.10</line>
<line aid:table="cell" aid:crows="1" aid:ccols="1">0002</line><line aid:table="cell" aid:crows="1" aid:ccols="1">192.168.1.11</line>
<line aid:table="cell" aid:crows="1" aid:ccols="1">0003</line><line aid:table="cell" aid:crows="1" aid:ccols="1">192.168.1.12</line>
<line aid:table="cell" aid:crows="1" aid:ccols="1">0004</line><line aid:table="cell" aid:crows="1" aid:ccols="1">192.168.1.13</line>
</list>
</group></rss>
---------------------------
といったかんじになります。
なるほど、そうですか・・・
InDesignのをみると属性なんかも同じものが複数回設定されてますね。
そうするとプログラム側で同じタグの中身をどうやって取り出すか、ですね。
ありがとうございました。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- 英語 「this is the/my first time~」の文法上の制約について 1 2023/04/06 09:48
- PHP 共通の処理をまとめる方法がわからないのでアドバイスお願いします。 1 2022/12/19 20:20
- 英語 提示した名言の文の構造について(waste one hour of time) 5 2023/05/20 15:22
- 英語 Think back to the last time you gave a little pres 3 2023/01/29 23:50
- CGI perlで書いたcgiでsqliteの使い方を教えてください 2 2023/05/08 21:29
- 英語 「初めて〜する」と言いたいとき This is my first time to 不定詞 より Th 3 2022/05/10 09:54
- 英語 「今日 ひさしぶりに本を読みました」を自然な英語で。 2 2022/04/14 11:01
- Excel(エクセル) Excel2007での条件付き書式について 6 2023/05/02 10:56
- 英語 Yes, l've just got time. Here they are.... BBC Lea 2 2023/08/28 18:45
- 英語 ナレーションの聞き取れない部分について 1 2023/01/14 22:04
関連するカテゴリからQ&Aを探す
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
COleDateTime とtime_t
-
Perlのフリーソフトの掲示板
-
クッキーの発行と取得
-
ログインについて
-
ログインに関するフラグについて
-
ブラウザ間でCookieを共有する...
-
ゲームノベルのような分岐のあ...
-
ポインター引数の関数でコンパ...
-
Excel VBA メール作成について ...
-
10Mバイトて文字数に すると何...
-
char str[256]の256の意味は?
-
UTF-8で5~6バイトになる文字コ...
-
DataGridViewの特定列に入力さ...
-
Excel 1セル当りの文字数が2...
-
html→aspxへのタグ変換方法
-
printfの%eで指数部分の桁数を...
-
エクセルシート名の制限を変更...
-
1KBが1024byteな理由
-
COBOLのCOMP形式について
-
stable diffusionのエラー
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
異なるドメインのサイトでcooki...
-
なんでブラウザでPHPを動かすた...
-
COleDateTime とtime_t
-
ブラウザ間でCookieを共有する...
-
PHPのCookieが有るか無いかで、...
-
クッキーを連想配列で扱う方法...
-
ゲームノベルのような分岐のあ...
-
XML文書の書き方
-
クッキーが消せない
-
javascriptでcookieを削除するには
-
クッキーの喪失??
-
LWP::Simple;でWebページを取得...
-
ポインター引数の関数でコンパ...
-
10Mバイトて文字数に すると何...
-
UTF-8で5~6バイトになる文字コ...
-
エクセルシート名の制限を変更...
-
COBOLのCOMP形式について
-
stable diffusionのエラー
-
ビットスワップとバイトスワッ...
-
char str[256]の256の意味は?
おすすめ情報