XMLプログラミング
■ このスレッドは過去ログ倉庫に格納されています
0001デフォルトの名無しさん
NGNG00461000
NGNGXML非常に面倒
0047名無しさん@Emacs
NGNGそれ採用.
まぁstandardって意味ではXMLでいいのかもしれん.
>>44
いや, 乗り越えてくれるならそれが一番良いんだよ….
0048デフォルトの名無しさん
NGNGXMLだけでプログラミングできるの?
0049デフォルトの名無しさん
NGNGだったらSGMLとDSSSL(Schemeベースのスタイル記述)使えよ
#以上、退行現象
0051デフォルトの名無しさん
NGNGこんなの便利か?
0052デフォルトの名無しさん
NGNGデータの互換性以外はメリットも無いし。
0053デフォルトの名無しさん
NGNG0054デフォルトの名無しさん
NGNG開発経緯や判断・選択の内容を知らないから、
ちっとやそっとの努力では理解できなくなっちまう
って事ですね。
技術キャッチアップをサボっていると、どうゆう結末になるか、
という良い標本ですな
0055デフォルトの名無しさん
NGNG0056///
NGNGプログラムならいかもしれんが、まともなアプリならそれなりに
可搬性のある表現で落す方法を用意する。(でないと、将来的にも不便)
XMLは、広く認められた表現だし、APIも整ってるので、
これを積極的に使っていかないのは損だぞ。
まあグラフ構造向きではないわな。最初から見抜けよそれくらい…。
0057/../../
NGNGつか、構造体でもポインタで記述するしかねぇんだから、
スマート・ポインタの一亜種として、部分構造ラベル使うって事でおっけじゃん?
0058デフォルトの名無しさん
NGNG0059デフォルトの名無しさん
NGNG0060デフォルトの名無しさん
NGNGXMLには参照の代用となる記述法が用意されています。
0061デフォルトの名無しさん
NGNG0062デフォルトの名無しさん
NGNGあれのどこが?
0063デフォルトの名無しさん
NGNG0064デフォルトの名無しさん
NGNG他者とのインタフェイスには有用。APIがあるから便利というのはろくにコードが書けない馬鹿のたわごと。
0065デフォルトの名無しさん
NGNGみんなそれくらい理解していると思われ。何を偉そうにしゃべってるか知らんが。
俺も意外とあっけなく理解できてビビったけどな。
0066デフォルトの名無しさん
NGNG0067質問
NGNGXMLでもともと構造化されている文書を記述したのですが,思った通りに
表現できません.調べたんですが,よくわかりません...
ちなみにプログラムの知識はまったくないです.
やりたいことは,下のXMLのtag3について,IDが1であるものだけをとり出し
て文章を表示させたいです.(つまり,「あえおおお」と表示したい)
文章はtag3の中に直接書き込んでしまったんですが,これがいけないので
しょうか...?
わかる方,よろしくお願いします.
XML----------------------------------------------------------------
<root>
<tag1>
<tag2>
<tag3 ID="1">あ
<tag3 ID="2">い
<tag3 ID="3">う
<tag3 ID="1">え</tag3>
</tag3>
</tag3>
おおお
</tag3>
</tag2>
</tag1>
</root>
---------------------------------------------------------------------
0068質問(上の続き)
NGNG<xsl:template match="/">
<HTML>
<HEAD><TITLE>テスト</TITLE></HEAD>
<BODY><xsl:apply-templates select="root"/></BODY>
</HTML>
</xsl:template>
<xsl:template match="root/tag1/tag2">
<xsl:for-each select="//tag3">
<xsl:value-of select="@ID"/>
<xsl:value-of select="tag3"/>
</xsl:for-each>
</xsl:template>
</xsl:stylesheet>
--------------------------------------------------------------------
0069デフォルトの名無しさん
NGNG0070デフォルトの名無しさん
NGNGテキストも子エレメントも持たないものの3種類の内のどれか。
0071デフォルトの名無しさん
NGNG0072デフォルトの名無しさん
NGNG0073デフォルトの名無しさん
NGNG<xsl:apply-templates select="tag3"/>
</xsl:template>
<xsl:template match="text()">
<xsl:if test="../@ID='1'">
<xsl:value-of select="."/>
</xsl:if>
</xsl:template>
0077デフォルトの名無しさん
NGNG0078デフォルトの名無しさん
NGNG0079デフォルトの名無しさん
NGNG普通にDTD作ってIE開いても整形のXMLインスタンスだったら
表示されてしまってエラーにならないんだけど
DTD自体の構文が間違ってたらエラーになるけど
DTDとインスタンスが違っててもエラーにならない。
XSVとか使ってるの?
一番シンプルな検証方法をキボンヌ
0080デフォルトの名無しさん
NGNG普通にDTDを作ってIEを起動させても検証してないみたい。
DTDとインスタンスがちゃんと一致してなくても表示される。
DTD自体の構文が違うとエラーにはなるけど
XSVとか使ってるの?
一番シンプルなスキーマ検証方法キボンヌ
0081デフォルトの名無しさん
NGNG微妙に違うけど
鬱ダシ脳
0082デフォルトの名無しさん
NGNGおながいします。
XML、XSL、XSLT、DOM、SAX
0083デフォルトの名無しさん
NGNG0084デフォルトの名無しさん
NGNG____ ________
/ \ /
| \XML/ |〜<俺を馬鹿にしやがって・・・
川川==◆=◆〜 \_______
川川 _ (・・) / ___
_; \ | 曲| . | | |\_
/ \ _/ . | | | | |\
/ / | | | | | | |::::|
( ( / \_ .| | | | |::::|
\ \ /\  ̄ ̄\ | | | | |::::|
/:\ \  ̄\っ)))) 〜| | | | |::::|
/::: \ つ_ | ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄|
|::: \___ )  ̄ ̄| ________ |
|:::: .| | . |.|
0085デフォルトの名無しさん
NGNGXSLとXSLTは同じではないの?
スタイルシートとそのトランスレータ?
0086デフォルトの名無しさん
NGNG0087デフォルトの名無しさん
NGNG先にXSLTだけ世に出たから
0088デフォルトの名無しさん
NGNG008967-68
NGNG>>73
のをやってたらできました!!!
超感動です!
なんと言っていいかわかりませんが,本当にありがとうございます!!!
2chをやってて一番うれしかったかも(笑).
レスくれた人達,ありがとうございました!
0090デフォルトの名無しさん
NGNGExcelの拡張子はxlsだし、混乱してます。
0091デフォルトの名無しさん
NGNGhttp://www.users.gr.jp/ml/archive/xml/571.asp
>XMLの利点に関して
>(省略)
>しかし、パフォーマンスは置いといて、データの汎用性という点について
>考えてみるとどうでしょうか?
>例えばAccessで作成したファイルをOracleに移行するとなると、移行プログラムを
>作成したり、いったんCSV形式に変換してからOracleで取り込むなどの手間が
>必要ですよね。同期を考えると定期的に移行バッチ処理も流さないといけませんよね。
> これを元データをXMLで持たせておいて、AccessとOracleの両方で読み込む
>方式にすれば、データの持たせ方もはるかにスッキリしますし、同期処理も考えなくて
>いいですよね。
DB同士のマージに比べたら、XMLに移行する手間って相当なもんだと思うけど。
パフォーマンスの話どっかいっちゃってるし。
それに汎用性とか言ってるけど、何にでも適用できる汎用的なデータなんて
作れる気がしないんだが。
結局はパーサが同じで済むってぐらいの利点しか今のところ見出せない。
XMLの使い所ってなんなんだろうね?
0092デフォルトの名無しさん
NGNGひでーなそれ。
今のところ「データ部分は XML 使ってます!」っていうセールストークにしか
なっていない。まぁ繰り返しやツリー構造を成すデータ構造の保管には便利っちゃ
便利なんだが、大抵は name=value の ini 形式と CVS でどうにかなっちゃう
のも事実。
0093デフォルトの名無しさん
NGNGこっちでやってくれ
http://pc3.2ch.net/test/read.cgi/tech/1014718263/l50
009467-68
NGNGこの前質問した者です.
>>73で教えてもらった方法でうまくいったのですが,その後に続いてID=2,ID=3も
表示させようと思って,
<xsl:template match="/root/tag1/tag2">
<xsl:apply-templates select="tag3"/>
</xsl:template>
<xsl:template match="text()">
<xsl:if test="../@ID='1'">
<xsl:value-of select="."/>
</xsl:if>
</xsl:template>
<xsl:template match="text()">
<xsl:if test="../@ID='2'">
<xsl:value-of select="."/>
</xsl:if>
</xsl:template>
としたら,ID=2のテキストしか表示されませんでした.
本とかを見て,
<xsl:choose>
<xsl:when test="../@ID='2'">・・・</xsl:when>
<xsl:otherwise>・・・</xsl:otherwise>
</xsl:choose>
ってやつでもやってみたんですが,だめでした.なぜ順番に表示されないのでしょうか...
将来的には(もうちょっとわかってきたら)IDの数を読み込んで,その人数分だけID
別にテキストを表示させたいと思っていますが,とりあえずID別ににテキストを表示
させたいです.
たびたび申し訳ないのですが,わかる方よろしくお願いします.
0095デフォルトの名無しさん
NGNGネタですか?
XSLとExcelは無関係です。拡張子が似ているだけ。
0096デフォルトの名無しさん
NGNGつかXで始まる拡張氏は全て、Excel用に予約してるんじゃないかと
0097デフォルトの名無しさん
NGNG文系でプログラミング経験無しです。
0098デフォルトの名無しさん
NGNG何したいんだか知らないけどさ、多分板違いだと思うんだよね。
こっちで聞いてみれば?
http://pc.2ch.net/php/
http://pc3.2ch.net/hp/
0099デフォルトの名無しさん
NGNGありがとうございます!!
0100デフォルトの名無しさん
NGNGhttp://www.asahi-net.or.jp/~ps8a-okzk/xml/xslt10_1/conflict_resolution.html
> これでもなお最も高い優先順位を持ったテンプレートルールが複数存在する場合、 エラ
> ーとなる可能性があります。 XSLT仕様書を読むと、エラーとするか、一番最後に書かれ
> たテンプレートルールを採用するかを、 XSLTプロセッサが選択することになっています。
という理由。
なんか教えてあげたやつがどういう風に動いてるか理解してないんじゃないか
という気もするんだけど、とりあえずこうやればできるよ。
<xsl:template match="/root/tag1/tag2">
<xsl:apply-templates select="tag3//text()">
<xsl:with-param name="i">1</xsl:with-param>
</xsl:apply-templates>
<xsl:apply-templates select="tag3//text()">
<xsl:with-param name="i">2</xsl:with-param>
</xsl:apply-templates>
</xsl:template>
<xsl:template match="text()">
<xsl:param name="i" />
<xsl:if test="../@ID=$i">
<xsl:value-of select="."/>
</xsl:if>
</xsl:template>
あるいはその奇妙な書き方のXMLをやめて入門書の例を
真似てみたほうがいいかも?
0101デフォルトの名無しさん
NGNG0102デフォルトの名無しさん
NGNGこのサイトに書かれていた例文を入力しても、普通に「3 x」と表示されるだけです。
なんかもっと違う表示のされ方を期待したのですが、これでいいのでしょうか。
ソース
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="ja" lang="ja">
<head>
<title>例</title>
</head>
<body>
<math xmlns="http://www.w3.org/1998/Math/MathML">
<apply> <log />
<logbase>
<cn> 3 </cn>
</logbase>
<ci> x </ci>
</apply>
</math>
</body>
</html>
0103デフォルトの名無しさん
NGNG0104デフォルトの名無しさん
NGNG010594
NGNGレスありがとうございます!!!
さっそくやってみます!
0106デフォルトの名無しさん
NGNGmozilla 使っているならこのサイトを見れ。
http://pear.math.pitt.edu/mathzilla/
0107デフォルトの名無しさん
NGNG0108デフォルトの名無しさん
NGNGサイトなどがあったら教えて頂けませんか?
0109デフォルトの名無しさん
NGNG0110デフォルトの名無しさん
NGNG011194
NGNGできました!!!
たびたびすみません...ありがとうございます.
67のXML,そんなに変ですか...?
確かに本に書いてあるやつとは全然違うなぁとは思うんですけど,同じタグや属性を複数の階層に
渡って使うというのがいけないのでしょうか.<本にはそういう例がない
扱う文書がそのような構造になってるのでそのままやってみました.
0112デフォルトの名無しさん
NGNG0113CM
NGNGノリ返セヨ〜
∧_∧ ― / ̄\ ―
(´∀` *) ― (´∀` ;) ―
⊂ つ ― と と) ―
ヽ■ ヽ ― Y 人 ―
(__ノ `J ― (__ノ`J ―
0114102
NGNG結局どうなんですか?ieでもnnでもoperaでも試しましたが、一向に>>102のソースは「3 x」と表示されるだけです。これでいいのでしょうか。
0115デフォルトの名無しさん
NGNGbrで改行されたXHTMLをlineに置き換えるXSLTってどう書いたら委員だろ?
↓こういうの。
<p>
1行目<br>
2行目<strong>強調</strong>。<br>
3行目<img src="bg.gif"><br>
</p>
↓
<p>
<line>1行目</line>
<line>2行目<strong>強調</strong>。</line>
<line>3行目<img src="bg.gif"></line>
</p>
0116デフォルトの名無しさん
NGNG# 個人的には要らんと思う。今まで使ったコトもないし。
0117デフォルトの名無しさん
NGNG0118デフォルトの名無しさん
NGNG0119デフォルトの名無しさん
NGNGXSLは知らんのでschemeで。
アルゴリズム的な話に絞ればこれと似たコードになるんじゃないかなあ。
(define (br->line s)
(let loop ((x (cdr s))(stack '())(r '()))
(cond
((null? x)
(cons (car s)(reverse (append stack r))))
((and (pair? (car x)) (eq?(caar x)'br))
(loop (cdr x) '() (cons (cons 'line (reverse stack))r)))
(else (loop (cdr x) (cons
(if (pair? (car x)) (br->line (car x)) (car x)) stack) r)))))
;test1
(br->line '(p a b c (br) d e f (br)))
=>(p (line a b c) (line d e f))
;test2
(spexpr->html(br->line(html->sexpr
"<p> a b c <br/> d e f <br/></p>")))
=>"<p><line> a b c </line><line> d e f </line></p>"
だれかXSLに変換してくれ。
0120つかってみるとか
NGNGWEBの翻訳(無料)
http://www.excite.co.jp/world/url/
0121属性の有無を調べるには
NGNG要素の属性名がわかっていて、その名前の属性をIXMLDOMElementPtr
が保持しているかどうかを調べるのにはどうしたらいいですか。
getAttribute()をつかってアクセスしようとすると属性が存在しない場合
例外が発生してしまいます。
0122デフォルトの名無しさん
NGNGアプリの設定を保存するにしてもイマイチだし、
DTDだとかXSLだとか無関係に感じるんだけど。
ホントの初歩だと、どこからはいるのが良いんでしょ?
0123デフォルトの名無しさん
NGNGXMLなんかやめて、LISPやるのがいいと思います。
0124デフォルトの名無しさん
NGNGelispとschemeをちょっとだけやってます。
でも、今はXMLについて知りたいので。
0125デフォルトの名無しさん
NGNG0126デフォルトの名無しさん
NGNGxmlをやるとパーサを作りたくなる。
車輪の再発名万歳
0127デフォルトの名無しさん
NGNGSAXって何か保存する手段ないんですか?
0128デフォルトの名無しさん
NGNG0129デフォルトの名無しさん
NGNGじゃあ例外を捕捉してあげてください
>>122
アプリ間の連結に使いましょう。
例えば貧弱なパイプ機構を強化するために、unixコマンドに
--xmlオプションが付いたバージョンを自作するなんて
どうでしょうか?XMLなら再利用が簡単です。
>>123
勧誘はよそでやれ
>>125
いつかはPerlに内臓されるかもしれません。この際、覚えてみましょう。
>>126
そんな君に万歳
>>127
SAXは保存を考慮しないで高速な解析を目指したもののような気がします。
>>129
ムキになって答えてみました。嘘は見抜いてください。
0130
NGNGPerlのXMLモジュールは使いやすいよ。
0131デフォルトの名無しさん
NGNG0132デフォルトの名無しさん
NGNGそうでないと妥当性検証できないじゃん
0133デフォルトの名無しさん
NGNG0134デフォルトの名無しさん
NGNG>>115の質問にも答えてくれ。
0136131
NGNG社内文書のスキーマとか。
0137デフォルトの名無しさん
NGNG文書定義を書くってだけか?
0138デフォルトの名無しさん
NGNGなんて言う方が馬鹿
0139デフォルトの名無しさん
NGNGえ、なんで?
0140デフォルトの名無しさん
NGNG0141デフォルトの名無しさん
NGNG0142デフォルトの名無しさん
NGNG検証なしの SAX パーサなら Java でも高速・省メモリにできる。
0143デフォルトの名無しさん
NGNG>検証なしの SAX パーサなら Java でも高速・省メモリにできる。
検証なしの SAX パーサなら 単なるおもちゃのオナニーライブラリ止まりだと思われ。
ってことで。
0144デフォルトの名無しさん
NGNG0145デフォルトの名無しさん
NGNGcgiが使えるレンタルサーバで使いたいんだけど。
■ このスレッドは過去ログ倉庫に格納されています