• 締切済み

XMLSchema この要素以外はOK

質問します。 XMLSchemaで 名前空間とは関係無しに (あるいは同一名前空間の要素同士について) 要素Aの子として、 要素B以外は何でもOK、 という指定はできますでしょうか? 要素Aの子として 名前空間Cの要素以外はOKというのはわかったのですが、 質問に上げたことについて、 やり方が分かりません。 よろしくお願いします。

  • XML
  • 回答数1
  • ありがとう数23

みんなの回答

  • seastar3
  • ベストアンサー率69% (99/142)
回答No.1

 確かめていないのですが、maxOccurs 属性を0回と指定して、[除外要素]要素を一つも埋め込めないように指定することができるかもしれません。 <xsd:element name="除外要素" type="xsd:string" maxOccurs="0"/>  ただし、XMLSchema の要素のオーバーライドや要素の順番違いで感知しないことが発生するかもしれません。かなり曖昧な助言で申し訳ありません。

hercle
質問者

お礼

ご回答、ありがとうございます。 ご回答していただいてすいませんが、 maxOccurs="0"を設定すると 「maxOccursは1以上」というエラーが発生するのです。 Nokogiri::XML::SyntaxError: Element '{http://www.w3.org/2001/XMLSchema}element', attribute 'maxOccurs': The value must be greater than or equal to 1.

関連するQ&A

  • XMLSchemaの記述法で質問です。

    当方XMLSchemaを使用しているのですが、以下の表現ができなくて困っています。(b要素とc要素はどちらが先でも構わない) <a> <b>b要素必須</b> <c>c要素は必須でない</c> </a> どうもXMLSchemaのall要素は、その子にelement要素しか持つことができないようで、上記の表現ができません。 何かよい記法教えて頂けないでしょうか。

    • 締切済み
    • XML
  • DOMでの要素名の変更

    初歩的なことかもしれませんが、なんだかGoogleなどで検索してもなかなかひっかかってくれません。 そこで質問です。。 1つの要素オブジェクト(Element)があって、その下にDOMツリーがたくさんあるとします。 そしてその下のDOMツリーは保持したまま、親の要素オブジェクトの要素名を変更することは可能でしょうか? 例えば <a><b><c></c></b></a> を <a2><b><c></c></b></a2> とするような感じです。 NodeクラスのcloneNodeを使用しても、要素名は変わらないので、ダメですよね。 もしかすると、任意の名前の空要素を1つ用意しておいて、その後子ノードをばんばん追加する処理を書かなくてはダメなのでしょうか。 以上、よろしくお願いします。

    • 締切済み
    • XML
  • 配列要素へのリファレンスと、要素の追加・削除について

    ActivePerl v5.8.8 build 820 を使用しています。 配列要素へのリファレンスを取得し、その後要素の追加又は削除を行った場合 元の要素を参照し続けます。 (1) 要素の追加 @list = qw/a b c d/; $p = \$list[1]; print("$$p\n"); splice(@list, 1, 0, 'x'); print("$$p\n"); # 'b' が表示される # $list[2] を参照 ($list[1] ではない) (2) 要素の削除 @list = qw/a b c d/; $p = \$list[1]; print("$$p\n"); splice(@list, 1, 1); print("$$p\n"); # 'b' が表示される 質問1 これは perl の仕様としての動作でしょうか? それとも、実行系やバージョン などの環境に依存するものでしょうか? 質問2 要素の削除の場合、削除直後なのでたまたま元の値が表示されただけで、 削除した要素 'b' が格納されたメモリ空間はいつ上書きされるかわからない 状態なのでしょうか? それとも、上書きされることはないのでしょうか?

    • ベストアンサー
    • Perl
  • Jqueryで特定のa要素を持つ親要素の取得について

    Jqueryで特定のa要素を持つ親要素の取得について <div id="shop"> <p><a href="http://www.aaaa.jp">お店の名前</a></p> <p>あああああああああ</p> </div> <div id="shop"> <p><a href="http://www.bbbb.jp">お店の名前</a></p> <p>あああああああああ</p> </div> ここから、『http://www.bbbb.jp』のリンクを持つdivを指定するとして・・・ $('a[href*="http://www.bbbb.jp"]').parent().parent().css("background-color","#ccc"); こんな風に書きました。 これでもOKなんですけど、『.parent().parent()』親の親って・・・(汗) もう少しよい親子関係の指定があれば、ぜひ教えていただきたいです!

  • イテレータの要素を交換したい。

     こんにちは。 C++で、STLを使わず、イテレータの要素を交換したいのですが、中々いい方法が浮かびません。 イテレータの要素で、  A、B、C、D が並んでいるとして、D、B、C、A、順に実行したいのです。 (この要素は関数です) AのポインタとDのポインタを入れ替えればいいと思ってやったんですが、結果的には変化ありませんでした。 どうやったら要素だけを交換して、実行順をD、B、C、Aにできるんでしょうか? STLのitr_swapを使わずにお願いします。

  • 子要素の取得

    <h2 class="highlight"> <span>あああああああ</span> </h2> 今、上記のようなhtmlに対してjaascriptで指定をしているのですが、クラスhighlightの子要素であるspanへの適用について悩んでいます。 getElementByClassの代わりのようなものはできているのですが、ある程度柔軟なスクリプトにしたいと思っていて、childNodesは改行も含めてしまうようなのでちょっと都合が悪い部分が出ています。 確実に子要素を選択するようにするにはどうしたらよいでしょうか? 一応 <h2><a href="#">あああああ</a></h2> という感じに改行なし、子要素はspan以外の要素がくることも想定しています。

  • 配列の要素追加について

    配列Aがあり、その配列に別の要素を加えた配列Bを作成するためにはどのようにすればよいのでしょうか? Aをコピーしたものに要素を一つ加えてと考えたのですが。。。 つまり char[] a = {'a', 'b', 'c'}; char ch = 'd'; とあったときに、aにchを加えて char[] b = {'a', 'b', 'c', 'd'}; を作成したいです。 よろしくお願い致します。

    • ベストアンサー
    • Java
  • 水分が蒸発していくのに必要な要素を教えてください。

    水分が蒸発していくのに必要な要素を教えてください。 Aさんは風が重要だといいます。 Bさんは温度だといいます。 Cさんは湿度だといいます。 例えば、同じ温度の室内で風が有る無しを比較すると ある方がいいと思いますが、温度が低く風が有る場合と温度が高く風が無い場合は どちらが蒸発するのか、や、 A~Cさんの要素以外で必要なもの、関係、重要な順位等 詳しい方、教えていただけませんでしょうか? ことの発端は、塗料を乾かす時、寒い外に置いた方がいいのか、 暖かい室内に置いた方がいいのか、というところから始まりました。

  • 集合の要素

    数学を学んでいる学生です。集合の基本的な部分で悩んでいます。 集合A={a, b, c}と定義されたとき、 集合B={{x}|x∈A}とされていた場合には、a一文字なので Bの要素はB={{a},{b},{c}}のみですか? それともBはAの部分集合の集合、という意味なのでしょうか? 回答よろしくお願いいたします。

  • 配列要素の演算

    初歩的な質問ですみません。Ruby初心者です。 Rubyの配列を使って以下のようなことをしたいのですが可能でしょうか? a = [2, 4, 6] b = 2 c = a / b # => [1, 2, 3] 配列aの全要素を定数bで割ろうとしています。 NArrayを使えば可能なようですが、 Ruby標準の配列でこのようなことはできますか? 可能でしたらその方法をご教授ください。

    • ベストアンサー
    • Ruby