問題タブ [fxsl]
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.
c# - エラーメッセージURIは外部Javaクラスを識別しません
私はXSLを初めて使用するため、XSL内でスクリプトを使用するのは初めてです。
サンプルコード(これもC#を使用)を使用して、自分で使用できるように調整しましたが、機能しません。
編集:このコードはVisual Studioで機能します。エラーはOxygenでのみ生成されます...私はまだOxygenでエラーが発生しないようにしたいので、洞察をいただければ幸いです。
エラーメッセージは次のとおりです。URIurn:cs-scriptsは外部Javaクラスを識別しません
私が持っている関連コードは次のとおりです。
.net - パーサーを実装する手順と関与 (.Net - この場合は XPath 2.0)
Linq to XML に基づいた .Net ビルド用の優れた無料の XPath 2.0 実装がないため、(これも経験のために) 自分で実装することを考えました。しかし、明確にするために(存在するものを構築するのではなく)、これらは私が見つけたXPath 2.0の実装です:
- サクソン.Net
- Query Machine - これには問題がありました - 例の例外
- XQSharp - 良いかもしれませんが、商用です (単一の開発者で ~300 $)
ここで、XPath 2.0 式などの言語を実装することがいかに難しいかについて考えてみたいと思います。XPath 2.0 式の EBNF を持つこのリンクを見つけました: http://www.w3.org/TR/2007/REC-xpath20-20070123/#id-grammarで、F# で作成することを考えています。 fslex/fsyacc の組み合わせ。
私のバックグラウンド(主観的): 以前にこれらのツールで遊んだことがありますが、いくつかの単純な式と非常に単純なプログラミング言語についてのみでした。さらに、Dragon book と Appel の最新コンパイラの ML 実装のほとんどを読みましたが、残念ながら、読みながら理論を実践していません。私は 1 年間コンピューター サイエンスを勉強しており、 ex とアルゴリズムに関する理論のコースを修了しfinite automaton
てCFL
いますが、大学に入る前から何年もの間開発者でした (プロの仕事で数年間 - 主に Web サイトのバックエンド)。
さて、解析の手順と私がカバーする傾向があるもの:
- Lex - 解析 - リダクション: FsLex/FsYacc。最初は Xpath 2.0 のすべてを適切にカバーするつもりはありませんが、少なくとも XPath 1.0 でできることのすべてに加えて、もう少し詳しく説明します。
- セマティック分析 - これにどれだけの意味があるかわかりません
- 最適化 - 私はこれをカバーする傾向がありません (少なくとも最初はそうではありません)。
- 実際のトラバースなど
- ...?
さて、上記に加えて具体的な質問:
- このサイズのパーサーを作成するのはどれほど難しいでしょうか? 私のバックグラウンドに基づいて、私はそれをすることができますか?
- 特に XPath 2.0 に関して見逃した重要な手順はありますか?
- 私が見逃したテクノロジーはありますか?
XDocument
パーサーを作成するには、XPath 2.0 など以外のこともカバーする必要がありますか?
明確XDocument
にするために、XPath 2.0式パーサーを作成し、この解析された式でトラバースなどを行いたいと考えています。組み合わせたのはクエリエンジンだと思います。
更新:これを見つけました: http://www.w3.org/2007/01/applets/xpathApplet.htmlには、解析とトラバースのコードが含まれています。良いスタートや参考になると思います:-)
あなたの答えは高く評価されます。
xslt - xsltでトリミングするには?
の左右の空白を削除したい:
<xsl:value-of select="Datas/Data[@key='Name']/string"/>
どうやってやるの?
xslt - xsl:key key() 関数のルックアップより大きい/より小さい
greaterthan/lessthan を使用して key() ルックアップを行う方法はありますか?
例: key('akeyname', <8) は、キー文字列値が 8 未満のすべてのノードを返します。
xslt - XSLT XPath で「/..」表記を使用する
ここで初心者の質問です。この XPath 式の/..
意味は何ですか? 常に空のノードセットを選択しますか?
このパターンがFXSLライブラリで広く使用されていることに気付きました。たとえば、次のようになります。
/..
ここでパラメータの値に指定する必要がありますか?
xslt - XSLT FXSL foldl: 関数のリスト?
私は最近、XSLT 1.0 で関数型プログラミング構造を使用することについて学んでいます。だから私は FXSL についてもっと学んでいて、foldl についていくつか質問があります。
私の質問は、vFunResult
変数に関係しています。$pFunc
テンプレートを使用して「関数」アプリケーションを作成していることが[1]
わかりますが、なぜセレクターであり、テンプレート呼び出しの arg0 が に設定されているの$pFunc[position > 0]
ですか? に複数の「関数」を渡していると予想されます$pFunc
かfoldl
?
私が見たすべての関数型プログラミングの例では、パラメーター f はリストとしてではなく単独で渡されます。この Haskell 部分関数定義: foldl f z (x:xs) = foldl f (f z x) xs
xml - FXSL または同等の機能を使用して複雑な文字列を解析する方法
私はXSLが初めてです。ここを見ると、問題の解決に役立つ FXSL ライブラリが見つかりましたが、その方法がわかりません。
次のような XML があります。アプリケーションは、いくつかの外部パラメーターを使用して XSL を実行します。XML 内には、特別な意味を持ついくつかのキーワードがあります。
- {MY_EXT_PAR} : MY_EXT_PAR という名前の外部パラメーターを参照します。
- {1}、{2}、...: PAR1、PAR2、... という名前の外部パラメータを参照しています。
- @LINK1(key1)、@LINK2(key1,key2) : 指定されたキーに関連する値 (説明) を返すリンク タグへのリンクです。多くのリンクは、さまざまな数のキーで定義できます。
- テキストをフォーマットするためのキーワードがいくつかあるはずです (例: キャリッジ リターンの \n)。
サンプル XML 入力:
これにはいくつかの例がありますか?