初心者のものです。
XMLでテーブルを作成して文字を入れたのですが、
文字がないところは線がでてこなくなりました。
文字を入れると線がでてくるので、
空白かスペースを入れたいと思うのですが、
普通に入れても認識されません。何か良い方法はないでしょうか?
とても困ってます。
よろしくお願いします。

このQ&Aに関連する最新のQ&A

A 回答 (2件)

jo-jiさんも書かれてますが、XML自体にテーブル表示する機能があるわけではないです。

しかしながら線(セルのボーダー?)が出る、出ないという質問になるということは、、、
●なんらかの入力支援ツールを使用している。
●ツールが自動生成したXSLを使用している。
●自動で関連付けされているため、XMLに表示機能があると誤解してしまった。
という推測で書き込みます。推測で書いてますので、外してたらごめんなさい。

#どうしてもセルのボーダーが必要なら、XSLファイルを変更しましょう。

多分、生成されたXMLファイルと同じフォルダ内に、xxx「.xsl」というファイルがあると思います。テキストエディタで開いてみて下さい。
XML文書を表示するための処理が書かれています。

この中から、HTMLの<td>要素の中の<xsl:value-of />を探します。
<table>
 <tr>
  <th>
  </th>
 </tr>
 <tr>
  <td>
--------------------
   <xsl:value-of />
--------------------
  </td>

この一行のみを、下の4行と入れ替えます。コピペして使って下さい。

<xsl:choose>
<xsl:when test=".[text()]"><xsl:value-of /></xsl:when>
<xsl:otherwise>空白です</xsl:otherwise>
</xsl:choose>

これで空のセルには全て「空白です」が入るはずです。
動作を確認できたら、あとは「空白です」を「全角スペース」に変更すれば出来上がり。

#識者の方に怒られそうな解答だな、我ながら。
#仕様を無視した気分。
    • good
    • 0
この回答へのお礼

ありがとうございます。
おっしゃる通りXSLを使用しています。
空白はこのようにするのですね。
意味のわからないままXMLやXSLを使ってました。すいません。
ありがとうございます。

お礼日時:2001/09/27 13:51

 まずXMLの基本的な所から(知っていたら無視してください)。


XML文書は、XMLプロセッサによって解析され、その結果がアプリケーションに渡されます。その際、プロセッサ側では、属性値に含まれる空白以外、すべての空白文字(スペースとタブと改行)をアプリケーションに渡します。つまり、空白文字が認識されるかどうかはアプリケーション側の問題です。別な言い方をすれば、XML自体というよりもむしろ個々のアプリケーションの問題です。

 以上を踏まえた上で、まずあなたがXMLをテーブルで表示するのに何を使用しているのか(つまりXMLデータを処理するアプリケーションが何であるか)が重要となります。その情報を書いておくと、より良い回答が得られると思います。XML自体にテーブル表示する機能があるわけではありませんし。

 一般的には、xml:lang="preserve"という属性指定を使うことで、空白を保持して欲しいということをアプリケーション側に示すことができます(ただし、それを尊重してくれるかどうかはアプリケーション側の裁量に任されています)。
    • good
    • 0
この回答へのお礼

XSLファイルを使ってました。
XMLの基礎を知らずに使っていたので説明が出来てませんでした。
丁寧に指摘していただきありがとうございます。
ありがとうございました。

お礼日時:2001/09/27 13:55

このQ&Aに関連する人気のQ&A

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aを見た人が検索しているワード

このQ&Aと関連する良く見られている質問

QデリカスペースギヤへCDオートチェンジャー取り付け

デリカスペースギヤ型式6G72へ手持ちのCDオートチェンジャーの取り付け、配線をする。この時の正面ハウジングの外し方、電源以外のCD側の配線が分解前に知りたい。

Aベストアンサー

これで合ってると思いますが
http://www.alpine-fit.jp/alpine/result2.cgi?YEARS=944&SEND=%81@%82n%82j%81@

QXMLの空白要素をJavascriptのif文で条件分けする

JavascriptもXMLも始めたばかりの者です。
分からないことがあり、皆様にご教授頂ければと思い投稿しました。

XMLで生成したファイルから各要素を取り出してHTMLに置き換えるスクリプトをJavascriptで作ろうと思います。

~XMLファイル~宣言省略

<links>
<link>
<url>http://www.○○○.com/</url>
<title>○○○~</title>
<ban>http://www.○○○.com/XX.gif</ban>
</link>
<link>
<url>http://www.×××.com/</url>
<title>×××~</title>
<ban></ban>//←画像データ空欄
</link>
</links>


~Javascript~前後省略

var a = obj.responseXML;
var xmlDoc = a.documentElement;
var links = xmlDoc.getElementById("links").length;

for(var i=0; i<links; i++) {
var link = xmlDoc.getElementsByTagName("link")[i].firstChild.nodeValue;
var title = xmlDoc.getElementsByTagName("title")[i].firstChild.nodeValue;
var image = xmlDoc.getElementsByTagName("image")[i].firstChild.nodeValue;
var html = Html(link,title,image);
}

function Html(link,title,image) {
~中略~
if(image != ""){
html += '<a href="' + link + '"><img src="' + image + '" alt="' + title + '" /></a>';
}
return html;
}

この後、html内の「<div id="html"></div>」に表示させるのですが、function Html(~)では、画像の有無は絶対条件ではない為if文で条件分けしています。
ですが、この「if(image != "")」で「has no properties」エラ-になります。

ちなみに空欄だった画像データ欄に文字列を入れるときちんと動作します。
XMLタグに文字列が入らない場合、配列には""(空)が返されないのでしょうか?
何か良い方法はありましたら、よろしくご教授くださいませ。
よろしくお願いいたします。

JavascriptもXMLも始めたばかりの者です。
分からないことがあり、皆様にご教授頂ければと思い投稿しました。

XMLで生成したファイルから各要素を取り出してHTMLに置き換えるスクリプトをJavascriptで作ろうと思います。

~XMLファイル~宣言省略

<links>
<link>
<url>http://www.○○○.com/</url>
<title>○○○~</title>
<ban>http://www.○○○.com/XX.gif</ban>
</link>
<link>
<url>http://www.×××.com/</url>
<title>×××~</title>
<ban></ban>//←画像データ空欄
</link>
</l...続きを読む

Aベストアンサー

エラーですが、

if(image != "")

ではなくて

var image = xmlDoc.getElementsByTagName("image")[i].firstChild.nodeValue;

のところで起こってませんか?

そうであればfirstChildの中身がnullなのでnodeValueにアクセスできないということです。nullチェックして、nullならimage=""で結構かと。

QスペースシャワーTVでのCD音源

スペースシャワーTVに登録しました。

そこで編集して車で曲(動画ではなく曲だけ)を聴きたいと思ってるんですが、
できればPV音源ではなくCD音源がいいです。

CD音源の番組ってありますか?
ご存知の方よろしくお願いします。

Aベストアンサー

残念ながらCD音源(リニアPCM44.1メガヘルツ16ビットステレオ)であっても伝送路の問題で圧縮されてしまいます。

PVのマスター音源はCD以上の音質で録画されていますので残念です。

QXMLのネームスペースの指定・変更・削除ができません。。

Javascriptを使ってMathMLの<math></math>にタグを追加したいと考えています。
ファイル名:sample.xhtml
ソース:
<?xml version="1.0" encoding="Shift_JIS" ?>
<!DOCTYPE html PUBLIC
"-//W3C//DTD XHTML 1.1 plus MathML 2.0//EN"
"http://www.w3.org/TR/MathML2/dtd/xhtml-math11-f.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="ja">
<head>
<meta http-equiv="content-type" content="text/html;charset=shift_jis" />
<meta http-equiv="content-script-type" content="text/javascript" />
</head>
<body>
<math id="math" xmlns="http://www.w3.org/1998/Math/MathML">

</math>
<br />
<script>
function moji(){
var info = document.getElementById("math");
var element = document.createElement("mi");
element.innerHTML= "x";
info.appendChild(element);
}
</script>

<form>
<input type = "button" value="x" onclick ="moji()" />
</form>

</body>
</html>

これを実行し、ボタンを押すと"X"は表示されるんですが、

javascript: void window.open("","","").document.write("<textarea cols=80 rows=20>" + document.body.parentNode.innerHTML + "</textarea>")

これを使ってテキストに結果を吐き出してみると
<math id="math" xmlns="http://www.w3.org/1998/Math/MathML">

<mi xmlns="http://www.w3.org/1999/xhtml">x</mi>
</math>
このような感じで追加されてしまいます。

ネームスペースの問題だと思うんですが、解決方法がまったく分かりません。
element.removeAttributeNS(null,"xmlns");でネームスペースを削除しようと思いましたが、削除されませんでした。
こういった場合、どうしたらいいでしょうか。
よろしくおねがいします。

Javascriptを使ってMathMLの<math></math>にタグを追加したいと考えています。
ファイル名:sample.xhtml
ソース:
<?xml version="1.0" encoding="Shift_JIS" ?>
<!DOCTYPE html PUBLIC
"-//W3C//DTD XHTML 1.1 plus MathML 2.0//EN"
"http://www.w3.org/TR/MathML2/dtd/xhtml-math11-f.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="ja">
<head>
<meta http-equiv="content-type" content="text/html;charset=shift_jis" />
<meta http-equiv="content-script-type" content="te...続きを読む

Aベストアンサー

既に解決していると思うが、
すまん,
第一引数の名前空間コピペミスったorz
XHTMLの名前空間じゃなくてMathMLの名前空間じゃなきゃいけませんねorz

QマイスペースCDについて

マイスペースCDで自作曲を販売できるそうですが、今からでも登録することは可能なのでしょうか。

Aベストアンサー

※販売登録の新規受付は2010年6月30日をもちまして終了させて
いただきました。

となっています。

参考URLの一番下です。

参考URL:http://www.myspace.com/myspacecdjp

QXSLTを使用したXML->XML変換で...

XSLTを使用したXMLからXMLへの変換で、やり方が分からないのでどなたかお教え願います。

以下にXMLを記述します。

----[入力側]-----
<INPUT>
<IN1>
<old>100</old>
<new>100</new>
</IN1>
<IN2>
<IN21>
<old>200</old>
<new>200</new>
</IN21>
<IN22>
<old>300</old>
<new>300</new>
</IN22>
</IN2>
</INPUT>

----[出力側]-----
<OUTPUT>
<OUT1>
<OUT11>
<old>100</old>
<new>100</new>
</OUT11>
<OUT12>
<OUT121>
<old>200</old>
<new>200</new>
</OUT121>
<OUT122>
<old>300</old>
<new>300</new>
</OUT122>
</OUT12>
</OUT1>
</OUTPUT>


【質問内容】
 集団項目でないタグ(入力側のIN1およびIN2)を集団項目として出力したい

XSLTを使用したXMLからXMLへの変換で、やり方が分からないのでどなたかお教え願います。

以下にXMLを記述します。

----[入力側]-----
<INPUT>
<IN1>
<old>100</old>
<new>100</new>
</IN1>
<IN2>
<IN21>
<old>200</old>
<new>200</new>
</IN21>
<IN22>
<old>300</old>
<new>300</new>
</IN22>
</IN2>
</INPUT>

----[出力側]-----
<OUTPUT>
<OUT1>
<OUT11>
<old>100</old>
<new>100</new>
</OUT11>...続きを読む

Aベストアンサー

> 入力側のIN1,IN2が複数回繰り返された場合、
> 出力側もOUT1が複数回繰り返されるって感じです。

IN1とIN2が必ず1対1に対応するという条件でいいなら(複数の組が存在しても可)これでいけるでしょう。



IN1およびIN2以下の構造はオリジナルのまま出力されます。

<xsl:template match="INPUT">
 <OUTPUT>
  <xsl:apply-templates />
 </OUTPUT>
</xsl:template>
<xsl:template match="IN1">
 <xsl:text disable-output-escaping="yes">&lt;OUT&gt;</xsl:text>
  <xsl:copy-of select="." />
</xsl:template>
<xsl:template match="IN2">
 <xsl:copy-of select="." />
 <xsl:text disable-output-escaping="yes">&lt;/OUT&gt;</xsl:text>
</xsl:template>

> 入力側のIN1,IN2が複数回繰り返された場合、
> 出力側もOUT1が複数回繰り返されるって感じです。

IN1とIN2が必ず1対1に対応するという条件でいいなら(複数の組が存在しても可)これでいけるでしょう。



IN1およびIN2以下の構造はオリジナルのまま出力されます。

<xsl:template match="INPUT">
 <OUTPUT>
  <xsl:apply-templates />
 </OUTPUT>
</xsl:template>
<xsl:template match="IN1">
 <xsl:text disable-output-escaping="yes">&lt;OUT&gt;</xsl:text>
  <xsl:copy-of sele...続きを読む

QCD-ROMからDVD-RAMドライブに交換したい(省スペースPC)

IBM6826-43J(省スペース)を使っています。
何もわからずにDVD-RAMドライブ(IO DATA DVR-ABH8BK内臓型)を買ってしまいました。
CD-ROMからDVD-RAMドライブに交換したいのですが、やり方がわからず困っています。壊したくないので業者の人に頼もうかなとも考えています。
交換できる方法を知っている方がいらっしゃったら、自分でやろうかと思っています。
もしくは安全にドライブ交換をやってくれるところを教えていただければと思います。ちなみに私は溝の口(川崎市)に住んでいるので持っていくならなるべく近くがいいです。

Aベストアンサー

省スペース型ですがサイズ的には問題ないようです。
http://ss.iodata.co.jp/Matching?scene=Category&makercd=003&typecd=102&pccode=60120&catecd=181

ドライブの交換は“それほど”難しいものではないと思います。ただあなたのスキルが全くわかりませんので、難しさの度合いも人それぞれと思います。
自分でPCを開けてしまえば保証は効かなくなることを念頭に置いて下さい。あとは勢いです。時間をかけて、広々としたスペースを作って、ケースはドライバーで簡単に開くと思います。ネジを外したら箱を上に持ち上げて外すのか、スライドさせるのかは見てみないとわかりません。
開けて見ると、省スペース型ですからスッキリと収まっていると思います。ドライブは脇でネジ止めされていると思います。今までのを外したら、新しいドライブのマスター・スレーブ設定をそれに合わせて組み込みます。

それだけです。

あとは添付ソフト(B's Recorder GOLD BASIC Ver.7が入っていますね)をインストール。これがなきゃ焼けませんので。

一度PCを開けるとクセになると思います。
メモリも128MBでは心許ないので増設された方がいいと思います。
http://kakaku.com/prdsearch/detail.asp?PrdKey=05206010480

参考URL:http://www.iodata.jp/sp/setup/page/naibu_c.html

省スペース型ですがサイズ的には問題ないようです。
http://ss.iodata.co.jp/Matching?scene=Category&makercd=003&typecd=102&pccode=60120&catecd=181

ドライブの交換は“それほど”難しいものではないと思います。ただあなたのスキルが全くわかりませんので、難しさの度合いも人それぞれと思います。
自分でPCを開けてしまえば保証は効かなくなることを念頭に置いて下さい。あとは勢いです。時間をかけて、広々としたスペースを作って、ケースはドライバーで簡単に開くと思います。ネジを外したら箱を上に...続きを読む

QXMLの子要素やテキストにテーブルデータをもつことはできますか

<xml>
1 abc jiro taro
2 exe tosi sabu
</xml>

この場合<xml>のテキストがテーブルとして認識させたいのです。

Aベストアンサー

>アプリケーションあるいはプログラムが必要でしょうか?
とりあえず、IEでそれらしいサンプルを作ってみました、
どれほどの意味があるかどうかはわかりません。
>MySQLやPostgre
ちょっとやったことがないので、わかりませんが、
XMLをデータベースとして扱うことができるデータベースがあったような気がします。
その場合、現在の様な構造だとダメなような気がします。
--------------------------------------------------------------------
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<meta HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=SHIFT_JIS">
<title>Sample for IE</title>
<script language="VBScript">
<!--
sub makeTable()
dim root
dim FD, RD
dim record, field
dim newTR, newTD
dim i, j

set root=xmldata.documentElement
if root.hasChildNodes() then
FD=root.getAttribute("fd")
RD=root.getAttribute("rd")
record=Split(root.text, RD)
for i=0 to UBOUND(record)
set newTR = list.insertRow
field=Split(record(i), FD)
for j=0 to UBOUND(field)
set newTD = newTR.insertCell
newTD.innerTEXT = field(j)
next
next
else
set newTR = list.insertRow
set newTD = newTR.insertCell
newTD.colspan=4
newTD.innerTEXT = "データなし"
exit sub
end if
end sub
'-->
</script>
</head>
<body onload="makeTable()">
<xml id="xmldata">
<data fieldname="none" fd=" " rd="
">
1 abc jiro taro
2 exe tosi sabu
</data>
</xml>
<TABLE style="border:solid 1px yellow">
<col style="color:crimson;text-align:center"><col><col><col>
<THEAD STYLE="background-color:lightSkyBlue;text-align:center">
<TR><TD>No</TD><TD>種類</TD><TD>名</TD><TD>姓</TD></TR>
</THEAD>
<TBODY ID="list" STYLE="background-color:lightcyan;">
</TBODY>
</body>
</html>

>アプリケーションあるいはプログラムが必要でしょうか?
とりあえず、IEでそれらしいサンプルを作ってみました、
どれほどの意味があるかどうかはわかりません。
>MySQLやPostgre
ちょっとやったことがないので、わかりませんが、
XMLをデータベースとして扱うことができるデータベースがあったような気がします。
その場合、現在の様な構造だとダメなような気がします。
--------------------------------------------------------------------
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Tran...続きを読む

Q省スペース機にCD-RからDVDに入れ替え。

書き込み型DVD機を現在のCD-R(W)機と入れ替えを考えています。
マシンはWIN2000でCPUはPENIII800mhzの省スペース機です。
ベースは富士通のFMVですが、HDD、OS,メモリー等入れ替えてますのでもう保証はありません。

さて入れ替えようのDVDデッキですが、店頭で見たところ、動作環境等ほとんど書いてなくて、対応OSくらいの表示しかない商品がほとんどでした。
本題ですが、私のパソコンスペックでも十分使い物になるのでしょうか?
DVDの使い方は、昔の8mmビデオをDVD保存用に変換することを主な目的としています。

しかしながら、現状ではそのための知識も殆ど無くてデッキを入れ替えてから一から勉強です。
互換とかのことも教えていただけると幸いです。

Aベストアンサー

皆さんお答えの通りDVDドライブへの交換は簡単に出来るでしょう。

エンコード(動画[圧縮を含む]変換)やオーサリング(パソコンで見れる動画[aviやmpg等]を家庭用DVDで見れるVIDEO_TS形式に変換する事)に非常に時間がかかります。
自分の経験では、デジタルビデオカメラの編集作業がAthlonXP2000+のCPUでなんとか、2時間のものが倍の4時間で終わったと憶えてます。Pentium3の1Gで作業した時は寝て起きても自動編集してたような記憶が有ります。
今ならばCPUは3G以上のスペックをお勧めしますネ。

Q妥当なXML(Valid XML)のチェックについて

妥当な文書にするためにチェックを行っているのですが
http://validator.w3.org/
ここれでやるとThis page is not Valid (no Doctype found)!といわれ

omitted tag minimization parameter can be omitted only if OMITTAG NO is specified.

などとエラーがでてしまいます。

しかし、http://www.stg.brown.edu/service/xmlvalid/でやるときちんとValidになります。


先生からはhttp://validator.w3.org/でチェックをするときいたのですがどうしてもエラーがでるので
やはりhttp://validator.w3.org/はXHTMLだけでXMLのチェックというものはできないのでしょうか?
XMLのValidかどうかのチェックはhttp://www.stg.brown.edu/service/xmlvalid/でやればいいのでしょうか?

妥当な文書にするためにチェックを行っているのですが
http://validator.w3.org/
ここれでやるとThis page is not Valid (no Doctype found)!といわれ

omitted tag minimization parameter can be omitted only if OMITTAG NO is specified.

などとエラーがでてしまいます。

しかし、http://www.stg.brown.edu/service/xmlvalid/でやるときちんとValidになります。


先生からはhttp://validator.w3.org/でチェックをするときいたのですがどうしてもエラーがでるので
やはりhttp://validator.w3.or...続きを読む

Aベストアンサー

>ファイルをアップロードしてチェックした場合だとSorry! This document can not be checked.

再現した(笑)
[原因]
どうやらファイルアップロードはXML宣言にShift_JISって書いてあっても
us-ascii扱いになってしまうようだ。
で、そのために「ごめんね、マルチバイトの文字は読めないの」って謝られるの。
[回避策]
Extended File Upload Interfaceって奴にアクセスすると
色々指定できる。チェックする時にアップロードして
Encoding:の欄を(detect automatically) [自動的に検出する→us-asciiと検出される]からshift_jisを明示してあげると検証が行われる。

俺は大抵BOM付UTF-8で文書を作ってきちんと自動認識されていたと思う。(BOMなしだとus-asciiとかその他のエンコードだと思われかねないから)
=======================
>This page is not Valid (no Doctype found)!

[原因]
テキスト入力だと「DOCTYPE宣言書け」って書いてあるくせに、
内部サブセットだとDOCTYPE宣言だと認識できず
要素型宣言等をタグだと思い込みやがるらしい。
(当然終了タグに該当するものがないので「きちんと閉じやがれ」って言ってる)
[回避策]
なし。多分仕様。

>ファイルをアップロードしてチェックした場合だとSorry! This document can not be checked.

再現した(笑)
[原因]
どうやらファイルアップロードはXML宣言にShift_JISって書いてあっても
us-ascii扱いになってしまうようだ。
で、そのために「ごめんね、マルチバイトの文字は読めないの」って謝られるの。
[回避策]
Extended File Upload Interfaceって奴にアクセスすると
色々指定できる。チェックする時にアップロードして
Encoding:の欄を(detect automatically) [自動的に検出する→us-asciiと検出...続きを読む


人気Q&Aランキング

おすすめ情報