.NET 3.5はXPATH 2.0またはXSLT 2.0を完全にはサポートしていません。これらの2つが将来の.NETバージョンに含まれ、完全にサポートされるかどうか誰かが知っていますか?
.NET 3.5はXPATH 2.0またはXSLT 2.0を完全にはサポートしていません。これらの2つが将来の.NETバージョンに含まれ、完全にサポートされるかどうか誰かが知っていますか?
回答:
XPath 2.0やXSLT 2.0のサポートがすぐに追加されるとは思いません。
ただし、サードパーティの実装が利用可能である限り、これらがBCLの一部ではない場合でも問題はありません。
マイクロソフトは顧客指向です。顧客がそれを望まなければ、彼らはそれを作りません。
2009-11-18:私はここのXMLチームに連絡し、 この応答を得ました:
XMLは今後もプラットフォームの重要な部分ですが、現時点ではXSLT 2.0の実装を追求しないことにしました。達成しようとしている特定のXSLTタスクがあり、XSLT 1.0で問題が発生している場合は、お知らせください。できる限りのお手伝いをさせていただきます。
このリストは現在github.com/maxtoroq/dotnet-xmlで管理されています
このブログ投稿を見る
XSLT 2.0とXPath 2.0を実装しない理由はいくつかあります
3つのテクノロジー(XQuery、XSLT 2.0、XPath 2.0)をすべて実装するには、多くの労力とリソースが必要です。私たちの指針となる原則は、XMLクエリテクノロジーの急増を作成することはエンドユーザーを混乱させると信じていました。.NET Frameworkに既に存在するXPath 1.0とXSLT 1.0に加えて、さらに3つのXMLクエリと変換言語をサポートおよび説明する必要があるよりも、人々に学習させる1つの言語を実装したいと考えています。お客様とサポート担当者が3つの高度なXMLクエリ言語の複雑さに対処する必要があるため、2つは似ていますが、XPath 2.0とXQueryの場合の動作はまったく異なり、それほど有益ではないように見えました。
XslCompiledTransform
用途XPathNavigator
ノード表現のために、後者は完全にXDMを実装して、あなたが実際に(事業者のように、すべてのXPath2機能を実装することができます<<
し、>>
その上にカスタム関数など)。
私の理解では、多くのMicrosoft XMLリソースはXSLT 2.0からLINQ to XMLに転用されており、私の見解では、XSLTと同じ問題領域にはまったく対応していません。
LINQ to XSDはLINQ to XMLを強化するはずでしたが(XMLスキーマの利点と同様に、構文はそれほど醜くありません)、これは少し前にMicrosoftによってCodePlexにオープンソース化されたものであり、コミュニティのサポートはないようです。
また、MicrosoftがXSLT 2.0エディターとデバッガーをVisual Studioに統合せずに新しいXSLT 2.0プロセッサーを起動する可能性は低いため、「採用しない」という決定を元に戻すにはかなりの労力/時間が必要になります。
そのため、代わりにSaxon.NETがあります。これは、比類のない標準準拠の評判があり、.NETに優れた拡張性オプションを提供します。
マイクロソフトは、.NETでXPath / XSLT 2.0のサポートをリリースする予定はありません。
XQSharpは、XPath 2.0、XSLT 2.0、およびXQuery for .NETのサードパーティ実装を提供します。
[編集:XQSharp 2.0ベータ(XSLT 2.0付き)がリリースされました]
それらはW3Cのコア技術であるため、それらがいつの段階にあるとは思えません。しかし、私はこれらへの現在の参照を見つけることができません(かなり前に投稿された情報のみ)。
近い将来、必要なXpath / XSLTバージョンをサポートするSaxonを確認する必要があります。