問題タブ [root-node]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
php - PHP5: DOMDocument でルート ノードを見つける
PHP5 DOMDocument があり、(ルート要素ではなく) ルート ノードを見つけようとしています。
例:
たとえば、hasChildNodes を呼び出すことができるように、「test」の DOMNode を取得したいと考えています。「documentElement」を取得できますが、それは DOMElement です。多分私はそこから行くことができますか?
誰がギャップを埋めることができますか? 私は目が見えないようです。
(明らかに、私が呼び出したいのは hasChildNodes だけではありません。したがって、いいえ、ドキュメントに何かが含まれているかどうかを調べる別の方法を見つけるのに役立ちません。これは私の単純な例です。最後に DOMNode が必要です。)
wpf - ObservableCollection にバインドされた WPF TreeView がルート ノードを更新しない
申し訳ありませんが、私の質問はこれとほとんど同じですが、実行可能な回答が得られなかったため、他の誰かが新しいアイデアを持っていることを願っています.
単一のタイプの階層にバインドされた WPF TreeView があります。
Entity クラスは INotifyPropertyChanged を実装していますが、わかりやすくするためにこのコードは省略しています。
TreeView は ObservableCollection<Entity> にバインドされ、各 Entity インスタンスは含まれている Entity インスタンスのセットをその Children プロパティを介して公開します。
最初に、TreeView は期待どおりにバインドされ、複数レベルの階層が正しく表示されます。また、Children コレクションのいずれかのメンバーシップがプログラムによって変更されると、その変更は TreeView に正しく反映されます。
ただし、ルート メンバー レベルの ObservableCollection<Entity> のメンバーシップに対する変更は、TreeView に反映されません。
任意の提案をいただければ幸いです。
ありがとう、ティム
python - 矢印を表示しながらルートを表示せずにwxPython TreeCtrl
wxPython を使用して Python ツリー ビジュアライザーを作成しています。次のように使用されます。
正常に機能しましたが、値が「Tree」のルートが表示されます。複数のルートを作成するように作成しましたが、それが許可されていないことがわかりました。元のコードに戻しましたが、 this: から this: に変更しましself.tree = wx.TreeCtrl(self)
たself.tree = wx.TreeCtrl(self, style=wx.TR_HIDE_ROOT)
。それは機能しましたが、側面に小さな矢印が表示されなかったため、どのノードに子があるかわかりませんでした。ルート ノードを非表示にして矢印を保持する方法はありますか。注: 私は Mac で Python バージョン 2.5 と wxPython バージョン 2.8.4.0 を使用しています。
xslt - XPath/XQuery: 子のない属性を持つルート ノードを選択します
私はxmlを持っています:
子ノードなしで属性を持つルート ノードのみを選択したいと思います。
XPathでそのようなことは可能ですか?
wcf - ルートノードを変更する方法wcfrequest\ response
ゲートウェイとメッセージインスペクターを使用してWPFクライアントから呼び出そうとしているJavaWebサービスを呼び出しています。私が直面している問題は、Java Webサービスが要素としてリクエストxmlのルートノードを必要とすることですが、私のWCFリクエスト(MessageInspector-beforeSendRequestで検査している場合)にはルートノードとしてオペレーションコントラクト名が含まれています。
startおよびend操作名ノードをリクエストから削除し、startwithノードでリクエストを直接送信する方法はありますか?
サービスからの応答を受け取ったときに同じ問題があります
このコミュニティに参加しました。そして、私はそれを検索してみました。しかし、どういうわけか私へのポインタはありません。
sharepoint-2010 - SiteMapProvider 外の (PortalSiteMapNode) RootNode にアクセスする方法は?
経験豊富な共有ポイント開発者にとっては非常に単純な質問だと思います。
PortalSiteMapProvider 内では、次の方法で RootNode にアクセスできます。
私の質問は、プロバイダーへの参照なしで、他の場所からこのノードにアクセスするにはどうすればよいですか? のようなものはありますか
どうもありがとうございました!
c# - ツリーにはルート ノードが 1 つだけある必要があります
ツリー構造を表示したい。ユーザー/ツリーに、子供や子孫を追加できる「RootUnit」のような定義済みのハードコードされたルート ノードを本当に与える必要がありますか?
これは理にかなっていますか、それともノードを追加するときにのみ問題を引き起こしますか?
c# - ユーザー インターフェイスの階層/ツリービューのルート ノード設計
ツリービュー コントロールのユーザー インターフェイスに階層データを表示したいと考えています。
問題は、ユーザーが最初のルート ノード自体を自由に定義できるかどうかです。
ツリーがツリーになるルートノードを持っているかどうかは気にしません。
UI に定義済みのルート ノードがあるかどうかに関係なく、ユーザーにとってのメリットについて考えてみました。
ユーザビリティに不利な点があるか、またはユーザーが制限される可能性がありますか?
事前定義されたルート ノードを持つ特定の可能性はありますか?
私の意見では、ルート ノードには次の欠点があります。
- それはただの愚かなプレースホルダーであり、ただそこにいるので、子供たちはそこにいます...
- 通常は削除できないため、追加のチェックを行う必要があります...
- ルート ノードのクリエイティブ名を考えなければならない
必要はありません:
完全に問題ないはずです:
c# - C#Xmlのシリアル化、コレクション、ルート要素
私のアプリはストリーム内のオブジェクトをシリアル化します。これが私が必要とするもののサンプルです:
この場合、オブジェクトは「リンク」オブジェクトのコレクションです。
-----------最初のバージョン
最初はDataContractSerializerを使用しましたが、メンバーを属性としてシリアル化することはできません(ソース)
これがオブジェクトです:
そしてここに結果があります:
-----------2番目のバージョン
わかりました、私が望むものを静かにしないので、私は古典的なXmlSerializerを試しました、しかし...ああ、ルート要素がコレクションである場合、ルート要素とコレクションの要素の名前を指定することはできません...
コードは次のとおりです。
結果は次のとおりです。
-----------第3バージョン
XmlSerializer +ルート要素を使用する:
そしてその結果:
いいですが、そのルートノードは必要ありません!! コレクションをルートノードにします。
ここに制約があります:
- シリアル化コードはジェネリックであり、シリアル化可能なものなら何でも機能します
- 逆演算(逆シリアル化)も機能する必要があります
- 結果を正規表現したくない(出力ストリームで直接シリアル化する)
今の私の解決策は何ですか:
- 自分のXmlSerializerをコーディングする
- コレクションで動作するときにXmlSerializerをトリックします(XmlRootElementを見つけて、それを複数化して独自のXmlRootAttributeを生成するようにしましたが、逆シリアル化するときに問題が発生します+アイテム名はクラス名を保持します)
何か案が ?
その問題で本当に気になるのは、私が欲しいものは本当に本当に本当にシンプルに見えるということです...
xml - 派生要素の置換を使用している間、単一のルート ノード定義を保持する
XSD スキーマでは、要素をドキュメントの唯一の有効なルート ノードとして宣言することはできません。
それはPITAですが、私はそれについて知っています。
何年もの間、リンクされた回答で提案されていることを単純に実行します.s<simpleType>
と<complexType>
sのみを<element>
定義し、グローバルレベルで定義されているのは目的のルートノードだけです。
しかし、私は現在、XSD/XSLT コード ベースの素晴らしいリファクタリングを行っています。私がやりたいことの 1 つは、特定の要素を目的の型から派生した要素のみに制限することです。これらの派生物は異なるノード名を持つことができます。
ここでAChild
は、 を使用して他の型が派生する抽象基本型ですsubstitutionGroup
。
ここでの問題はsubstitutionGroup
、グローバル レベルで宣言された要素に対してのみ機能することです。これでtype
、グローバル レベルとして宣言された以前の internal の束ができました。これelement
により、 の可能な子が完全に制限されparentType
ますが、現在グローバルになっている子のいずれかがルート要素として提供されている場合、検証が成功することも意味します。したくない。
私が検討したオプションは次のとおりです。
- 継承を破棄し
substitutionGroup
、考えられるすべての子を別の名前空間に移動して、<xsd:any namespace="that namespace" />
. いい感じですが、追加の名前空間と定義の悪い制約は好きではありません。 - XSD レベルの問題を無視し、XSD テンプレートを使用するコードのルート ノード名と名前空間を確認します。ここで私が気に入らなかったのは、関心の分離を壊すことでした。私の設計では、XSD ファイルは呼び出しコードのブラック ボックスであり、ノード QName にハードコーディングされた依存関係を導入したくないからです。
常に 2 つの「メイン」XSD スキーマが存在するという原則を導入します。1 つは通常の方法でノードを検証し (私が現在行っている検証)、もう 1 つは最も緩い形式のトップレベル ノードの定義のみを含みます。
そして、両方のスキーマが検証された場合にのみ、私のドキュメントは正しくなります。
ここで私が気に入らないのは、それがベスト プラクティスにどれほど深く違反しているかわからないということです。リファクタリングをやめて、以前に持っていたものを保持します (そして、可能性のあるすべての子を に手動でリストする前に
<xs:choice>
)。
私の質問は、複数のグローバル レベル s を宣言せずに任意の派生要素制約を機能させる他の方法はありますか<element>
(そのため、唯一のルート ノード制約が再び機能するようになります)。また、リストされたオプションのいずれかを選択する方がよいと思われる場合は、回答を残してください.