問題タブ [xerces]
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.
java - XPath 式で exsl:node-set/set:distinct を使用して取得したノードの値を使用できないのはなぜですか?
xslt-stylesheet では、メソッドexsl:node-set
とset:distinct
を使用して、結果ツリー フラグメントを含む変数から一意のノードにアクセスしてフィルター処理しています。これらのノードの値を出力ファイルに書き込むことができます。例:
予想どおり、キーの値が出力に書き込まれます。ただし、XPath 式で値を使用しようとすると、失敗します。
現在、出力は空ですが、input-xml に XPath 式で選択する必要がある「somenode」があり、その値が空ではないことがわかっています。
今私の質問は:なぜこれが起こるのですか?
Java 1.6、Xerces 2.7、および Xalan 2.7 を使用しています。
更新: 要求に応じて、例の一部のデータ: xml doc には以下が含まれます。
getNodes テンプレート:
java - Java からの libxml2
この質問は 、Java の小さくて単純なドキュメント用の最速の XML パーサーに多少関連しています が、さらにいくつかの詳細があります。
私は、多数 (数千万) の小さな (約 300k) xml ドキュメントを解析する必要があるアプリケーションに取り組んでいます。現在の実装では xerces-j を使用しており、1.5 GHz のマシンで xml ドキュメントごとに約 2.5 ミリ秒かかります。この性能を上げたい。この記事に出会いました
http://www.xml.com/pub/a/2007/05/16/xml-parser-benchmarks-part-2.html
libxml2 はどの Java パーサーよりも約 1 桁速く解析できると主張しています。信じられるかどうかわかりませんが、私の注意を引きました。 jvm から libxml2 を使用しようとした人はいますか? もしそうなら、Java dom 解析 (xerces) より速いですか? 私はまだ Java DOM 構造が必要だと考えていますが、C 構造の DOM から Java-DOM へのコピーにはそれほど時間はかからないと思います。java-dom が必要です。この場合、sax は役に立ちません。
更新: libxml2 のテストを作成したところ、xerces よりも高速ではありませんでした...確かに、私の C コーディング能力は非常にさびています。
更新ここで質問を少し広げました: なぜ sax 解析は dom 解析よりも速いのですか? そしてstaxはどのように機能しますか? ドムを捨てる可能性もある。
ありがとう
c++ - Xerces C++ XML: エスケープは本当に難しい?
私はXercesライブラリを使用しています。すべて問題なく使用できますが、XML文字列をエスケープしたいのですが、そのために使用されるXMLFormatterクラスがあることがわかりました。ドキュメントを掘り下げた後、コンストラクターから使用するのは本当に難しいことがわかりました視点。私が欲しいのは2つの機能だけです:
文字列エスケープ (文字列);
文字列 unescape(文字列);
なぜ xerces はこれを行うのが難しいのですか?
c++ - Xercesからスキーマデータ型を取得する
Xerces C ++でSAX2を使用しており、スキーマで定義されているタイプがわかるように、要素を処理しながらXMLスキーマデータを取得したいと考えています。どうすればこれを達成できますか?
java - XMLカタログの解決/resolver.jarとcom.sun.org.apache.xml.internal.resolver
親愛なるフォーラム、含まれているJDKの違いは何ですか
およびApacheXercesプロジェクトに含まれているもの
単純なカタログ解決に後者を使用する利点はありますか?私がウィキペディアで読んだことから、後者を使用することに利点がないことは私には明らかであるように思われます。
org.apache.xml.resolver.tools.CatalogResolverは、外部エンティティをローカルにキャッシュされたインスタンスに解決するために使用されます。このリゾルバーはApacheXercesに由来しますが、現在はSunJavaランタイムに含まれています。
とにかく、qizxのようないくつかのXML関連プロジェクトは別のresolver.jarを提供します。ご協力いただきありがとうございます。マイケル
java - Glassfish (jasper) TldScanner での DTD フェッチの失敗を防ぎ、Web アプリケーションの起動時に例外が発生するのを防ぎます。
Jersey ベースの Web アプリケーションを起動しようとすると、添付のスタック トレースで例外が発生することがあります。
これは、Glassfish に読み込まれている Web アプリケーション内の xerces XML 解析で、Jersey に含まれる JSP タグ lib 定義の DTD ファイルを取得できないことが原因であると考えられます。明らかに、.tld DTD をホストするサーバーに問題が発生するたびにアプリケーションの起動に失敗することは望ましくありません。
この DTD フェッチを無効にする方法を知っている人はいますか? または、それらをローカルにキャッシュする方法などですか? または、この問題に対する他の解決策はありますか?
c++ - 生のポインタをclone_ptrに変換します
この質問に示されているように、clone_ptrの実装があり、関数から返された生のポインターからclone_ptrを作成する必要があるという問題があります。
コードは次のとおりです。
document
&impl
が次のように宣言されている場合:
上記のcreateDocument
関数はrawポインターを返しDOMDocument
、ローカル変数doc
に割り当てられます。ここで、ドキュメントclone_ptrを取得し、実際にcreatedocument関数から取得したrawポインターを渡します。ただし、コンパイラは次のように言っているので、これにあまり満足していないようです。
だから私の質問は、生のポインタを明示的または暗黙的に変換できるようにするにはどうすればよいclone_ptr
ですか?編集:
クローンの専門分野:
xml - 古い (1999 年) スキーマ バージョンを使用して JAXP で XML を解析/検証するにはどうすればよいですか?
古いバージョンの XML 仕様 (http://www.w3.org/1999/XMLSchema) で構築された XML スキーマがあります。スキーマを使用して XML メッセージを解析しようとしています (以下を参照)。デフォルトでは、Xerces 1.1 パーサーはアプリ ドメインのルート ディレクトリでスキーマを検索します。スキーマを Web ディレクトリのパブリックな場所に移動しようとしています。Xerces 1.1 ライブラリを使用する解析プログラムで、スキーマの場所として URL を指定できないようです。
そこで、JAXP DocumentBuilderFactory とその setSchema() メソッドを使用するようにプログラムをアップグレードしようとしました。これは、私が提供したスキーマ URL を使用してスキーマを見つけるようですが、スキーマが (おそらく) 仕様の新しいバージョンに準拠していないため、解析エラーが発生します (たとえば、Ticket 要素がないためエラーが発生します)。そのメンバーを xs:Sequence 内にラップします)。
現時点では、メッセージを送信するアプリを外部の顧客に強制的に書き直すことはできないため、スキーマをアップグレードできません。
JAXP を使用して、古い学校のバージョンのスキーマ仕様を使用して正常に解析/検証する方法を誰か教えてもらえますか? あるいは、Xerces 1.1 DOMParser に (ファイルの場所ではなく) URL で定義されたスキーマを使用するように指示する方法はありますか?
スキーマがどのように見えるかのサンプルを次に示します。
XML ドキュメントは次のようになります。
ありがとう!
xerces - Xerces での解析後に EOL が失われる
eol 文字は、属性値の xerces パーサーによって空白に置き換えられます
eolを維持する方法はありますか?
java - Xerces2-j XML スキーマ属性/要素宣言データ型
XSD を解析するために Apache の Xerces2-j を使用しています。XSD の要素/属性宣言のデータ型情報を取得しようとしています。
XSD の例を次に示します。
この場合、 Flavor属性とProductID属性のデータ型を取得したいと考えています。W3C スキーマ APIとその Xerces2-j 実装によると、XSAttributeDeclaration の getActualVCType() は、私が望むものを取得します。しかし、私にとっては、そのメソッドは常にUNAVAILABLE_DTである 45 を返します。これは Xerces2-j のバグですか、それとも API の理解が間違っているだけですか? もしそうなら、誰かが私をここで正しい方向に向けることができれば幸いです。