.NET 3.5 nie obsługuje w pełni XPATH 2.0 lub XSLT 2.0, co jest po prostu złe. Czy ktoś wie, czy te dwa będą włączone i w pełni obsługiwane w przyszłych wersjach .NET?XPath i XSLT 2.0 dla .NET?
Odpowiedz
Nie sądzę, że dodadzą wsparcie dla XPath 2.0 lub XSLT 2.0 w najbliższym czasie.
Jednak nie powinien czuć się źle, jeśli nie są one częścią plc, tak długo, jak masz implementacje 3rd party dostępny:
- Saxon: XPath 3.1, XQuery 3.1, XSLT 3.0
- XmlPrime: XPath 3.1 XQuery 3.1 XSLT 2,0
- QueryMachine: XPath 2,0 XQuery 1,0
- Lightweight XPath2 for .NET: XPath 2,0
- Exselt: XSLT 3.0
Microsoft jest zorientowany na klienta. Jeśli klienci tego nie chcą, nie zrobią tego.
2009-11-18: Skontaktowałem się z zespołem XML here i dostał tej odpowiedzi:
Chociaż XML nadal jest kluczowym elementem naszej platformy w przyszłości, mamy nie zdecydował realizować implementację XSLT 2.0 w tym czasie. Jeśli istnieje to konkretne zadanie XSLT, które próbujesz wykonać, aby uzyskać i masz trudność z XSLT 1.0, poinformuj nas o tym , a my dołożymy wszelkich starań, aby Ci pomóc.
Ta lista jest teraz utrzymywana na github.com/maxtoroq/dotnet-xml
Początkowo obiecywali implementację - to jest powód, dla którego jest tylko kilka implementacji, ponieważ gdy duża firma taka jak Microsoft powie, że to zrobimy, a my damy ją każdemu jako część systemu Windows, nie ma powodu, aby ją programować. Ale wtedy MS straciło kilka kluczowych osób w zespole XML i od tego czasu wsparcie 2.0 jest martwe. – CodeRipper
Ta odpowiedź wygląda znajomo - kilka lat temu zadałem podobne pytanie i otrzymałem tę samą odpowiedź. Shame - XSLT 2.0 wygląda na dość ważną poprawę użyteczności językowej. –
Lekki XPath2 dla .NET jest teraz na https://github.com/StefH/XPath2.Net – rakensi
Nie mogę uwierzyć, że nie będą na jakimś etapie, ponieważ są podstawowymi technologiami W3C. Jednak nie mogę znaleźć żadnego odniesienia do nich (tylko informacje zamieszczone dawno temu).
W najbliższej przyszłości powinieneś spojrzeć na numer Saxon, który obsługuje wymagane wersje Xpath/XSLT.
Używałbym AltovaXML zamiast: http://www.altova.com/altovaxml.html Jest bezpłatny i obsługuje Java, .NET i WIN32 przez COM. Po prostu miałem nadzieję, że .NET będzie ją wspierać natywnie. –
AltovaXML API jest bezużyteczny, a ponadto jest to kod natywny, a Saxon jest zarządzany. –
Altova też jest wolniejsza. –
Zobacz ten blog post
Istnieje kilka powodów, dla których nie są wykonawcze XSLT 2.0 i XPath 2,0
To zajmuje sporo wysiłku i zasobów wdrożyć wszystkie 3 (technologie XQuery, XSLT 2.0 & XPath 2.0). Zgodnie z naszą zasadą , uważamy, że tworzy proliferację zapytań XML. Technologie są mylące dla użytkowników końcowych . Wolimy wdrożyć jedną język że my popychać ludzi do nauki niż mają na celu wspieranie i wyjaśnić trzy więcej kwerendy XML i transformacji językach, oprócz XPath 1.0 & XSLT 1.0, która już istnieje w NET Framework . Mając klientom i wspierać osoby mają do czynienia z złożoność 3 wyrafinowanych XML zapytań języków, z których dwa są wyglądać podobnego, ale zachowują się zupełnie inaczej w przypadku XPath 2.0 i XQuery wydawało nam nie było tak, że korzystny.
To już 5 lat temu z bloga "Dlaczego nie zobaczysz XSLT 2.0 lub XPath 2.0 w * Następnej * wersji .NET Framework" (mój nacisk) –
Dzięki! Nie zauważyłem tego! Nie zaakceptowałem tej odpowiedzi ponownie, mając nadzieję na nowe wyjaśnienie. (Chociaż jest to dobre wytłumaczenie, więc +1 pozostaje.) –
Nic się tak naprawdę nie zmieniło od tego czasu; to niestety ostatni komunikat na ten temat. –
mojego zrozumienia jest to, że wiele zasobów Microsoft XML były przekazywane z XSLT 2.0 na LINQ do XML, które - moim zdaniem - nie odnosi się to samo problem-przestrzeń jak XSLT w ogóle.
LINQ to XSD miało wzmocnić LINQ do XML (a także korzyści wynikające z Schemy XML, składnia jest mniej brzydka), ale zostało to otwarte przez Microsoft na CodePlex jakiś czas temu i wydaje się nie mieć wsparcia społeczności.
Ponadto, jest mało prawdopodobne, że Microsoft wprowadziłby nowy procesor XSLT 2.0 bez edytora XSLT 2.0 i debuggera zintegrowanego z Visual Studio, więc potrzeba sporo czasu/wysiłku, aby odwrócić decyzję o "nieprzyjęciu".
Zamiast tego mamy Saxon.NET, który ma niezrównaną reputację zgodną ze standardami i zapewnia doskonałe możliwości rozszerzania .NET.
Microsoft nie planuje udostępnienia obsługi XPath/XSLT 2.0 w .NET.
XQSharp zapewnia zewnętrzną implementację XPath 2.0, XSLT 2.0 i XQuery dla .NET.
[Edycja: XQSharp 2,0 P (z XSLT 2.0) został zwolniony]
@ Oliver-Hallam: Czy ta prognoza jest nadal ważna? Jesteś na dobrej drodze? –
@ Oliver-Hallam: Czy XQSharp-XSLT 2.0 będzie szybszy od Saxon.NET? –
@ Dimitre-Novatchev - Zabawne, o co teraz pytasz; powinniśmy udostępnić wersję beta naszej implementacji XSLT w ciągu najbliższych kilku godzin! Jeśli chodzi o szybkość, uważamy, że nasze wyniki są tak dobre, jak Saxon, choć jesteśmy stronniczy, więc chcielibyśmy niezależnej opinii! –
- 1. XSLT, XPath i InStr
- 2. xpath 2.0 dla java możliwe
- 3. Uaktualnij procesor PHP XSLT do XSLT 2.0
- 4. Jak używać parametru w xslt jako XPath?
- 5. XPath 2.0: Otwarte implementacje
- 6. Jakie narzędzia XSLT 2.0 istnieją?
- 7. Jakie przeglądarki obsługują Xpath 2.0?
- 8. Funkcje i przestrzenie nazw XSLT
- 9. Jak uzyskać moduł liczby w XPath/XSLT?
- 10. Sprawdzanie XPath w .NET
- 11. Niezawodne biblioteki HTTP dla wdrażania .NET 2.0
- 12. SAML z .NET 2.0
- 13. wsparcie XSLT 2.0 w trybie emacs nxml
- 14. .net 2.0 składnik IRC
- 15. XSLT 2.0 Zewnętrzne wyszukiwanie za pomocą klawisza() i dokumentu()
- 16. Kompatybilność wsteczna .NET Compact 3.5 i 2.0
- 17. Visual Studio 2012 Express i .NET 2.0
- 18. Usługi IIS 7.5 i ASP .NET 2.0
- 19. Czy mogę używać xpath 2.0 z firefox i selenem?
- 20. Jak obsługiwać .NET 2.0 i .NET 4.0 w jednej aplikacji?
- 21. JDOM 2 i XPath
- 22. XSLT: Tworzenie mapy w XSLT
- 23. Aktualizacja projektu .Net 2.0 do .Net 4.0
- 24. Jak porównać ciągi z Xpath 1.0?
- 25. XSLT - policzyć liczbę elementów podrzędnych za pomocą XPath
- 26. Bieżący węzeł kontra węzeł kontekstu w XSLT/XPath?
- 27. XPath i wybór pojedynczy węzeł
- 28. Dlaczego definicja kropki (.) Zmieniła się między XPath 1.0 a 2.0?
- 29. XSLT 2.0 generuje błąd: "element kontekstowy jest niezdefiniowany"
- 30. Zespoły .NET 2.0 mogą działać w środowisku .NET 4.0?
http://www.codeproject.com/Articles/24766/Using-Saxon-XSL-2-0-and-XQuery- 1-0-w-NET Biblioteka Java saxon implementuje XSL 2.0 i XQuery 1.0. Korzystając z IKVM i GNU Classpath, możesz uzyskać dostęp do tej biblioteki w .NET. Jednak interfejsy do używania Saxona bardzo różnią się od tych, z których korzystasz w .NET. Na tej stronie artykułu można pobrać adaptery interfejsu, które pomagają wypełnić lukę między interfejsem Saxona i .NET XslCompiledTransform. To z kolei znacznie ułatwia kod portu z używania .NET XSL 1.0 do Saxon XSL 2.0. – gls123
Możesz wysłać tę prośbę o funkcję na [uservoice] (http://visualstudio.uservoice.com/forums/121579-visual-studio/suggestions/3795831-native-support-for-xpath-2-0-or-xslt- 2-0-w-net) przez Microsoft –