Инструменты VS 2010 для работы с XML языком • XML редактор. • XSLT отладчик • XSLT Profiler, инструмент позволяющий разработчикам измерять, оценивать и решать проблемы с производительностью в XSLT коде путем создания детальных отчетов по производительности XSLT. XML редактор • • • XML редактор включает следующие дополнительные возможности работы с XML документами: – проверку синтаксиса XML 1.0; – проверку схемы при создании документа; – вставку XML блоков кода (snippets), включая блоки, сформированные на основе схемы; – поддержку работы с Document Type Definition (DTD); – Поддержку работы с языком описаниями схем на языке XML Schema (XSD); – Создание схем на языке XML Schema на основе экземпляра XML документа; – преобразование описания схем на языках DTD или XML-Data Reduced (XDR) в схему на языке XML Schema; – проверку синтаксиса языка XSLT 1.0; – отображение XML документов с возможностью свертывания и развертывания его элементов; – интеграцию с обозревателем XML Schema (XML Schema Explorer), что предоставляет иерархическое представление схем на языке XML Schema. XML Editor настраивается для вызова на широко распространенные расширения, такие, как .xml, .xsd, .xsl и .config. Он также вызывается на любые не известные расширения файлов, если кажется, что файл содержит XML документ. Можно также открыть любой файл с помощью XML Editor используя опцию «Open With» и выбирая XML Editor редактор из списка. Меню и окно XML редактора Выполнение отладки XSLT таблицы стилей • Закрыть в VS все проекты. • В File меню выбрать команду Open-> File. • В диалоговом окне выбрать файл, например, belowAvg.xsl и нажать кнопку Open. – Таблица преобразования будет показываться в окне XML Editor. • В окне свойств таблицы преобразования (XML Document) в поле Input нажать кнопку (...), чтобы выбрать XML файл, к которому будет применяться данное преобразование. – Выбрать файл с XML документом, например, books.xml и нажать кнопку Open. • Для запуска отладки нажать кнопку «Start XSLT Debugging» в инструментальной полосе XML редактора (XML Editor). • Отладчик позволяет выполнять пошаговый переход во время выполнения преобразования. Для этого нужно нажимать кнопку F10. • Можно устанавливать точки прерывания, например, выбрать тэг xsl:for-each и нажать клавиша F9. Специальные окна XSLT отладчика • В процессе отладки можно открывать специальные окна, используемые отладчиком: – Окно Locals показывает значения всех локальных переменных. К ним относятся переменные, определенные в таблице стилей и переменные используемые отладчиком для отслеживания узлов (nodes), которые находятся в контексте. – Окно XSL Output (вывода результата преобразования ). Это окно отделено от Output окне Visual Studio. – Окно Watch. Для появления данного окна нужно выбрать команду Debug>Windows->Watch 1. • Если в поле Name ввести название переменной, например, $bookAverage и нажать ENTER, то значение данной переменной будет показываться в окне Watch 1. – В поле Name можно вводить предопределенные контекстные переменные , которая отслеживает текущий контекст. Начальным значением self::node() является корневой узел. Имя Описание last() Размер контекста (количество выбранных узлов). position() Положение (position) или номер индекса контекстного узла (context node), относительно размера контекста. self::node() Значение контекстного узла. Начальным значением является корневой узел. Текущее значение будет меняться по мере выполнения преобразования. Использование XSLT отладчика в программном коде • Отладку в XSLT можно также выполнять при отладке программ. При нажатии F11 на вызове метода System.Xml.Xsl.XslCompiledTransform.Transform отладчик будет переходить в XSLT код. • (Отметим, что переход к XSLT коду из класса XslTransform не поддерживается. Класс XslCompiledTransform является единственным XSLT-процессором, который поддерживает при отладке переход к XSLT). • Для того, чтобы начать отладку XSLT приложения нужно в программе конструктору объекта класса XslCompiledTransform передать параметру true, что заставляет XSLT-процессор включать отладочную информацию при компиляции кода. XslCompiledTransform xslt = new XslCompiledTransform(true); • Для того, чтобы перейти к XSLT колу при выполнении трансформации в программе нужно нажать клавишу F11: xslt.Transform(sourceFile, null, outputStream); Анализ выполнения XPath выражений • Для анализа выполнения XPath выражения требуется: – Установить точку прерывания (breakpoint) у начального тэга элемента «xsl:if». – Щелкнуть по кнопке «Start XSLT Debugging» в инструментальной полосе XML Editor. – Отладчик начинает работать и остановится на тэге xsl:if. – Щелкнуть правой кнопкой и выберать QuickWatch. Появится диалоговое окно «QuickWatch». – Ввести в поле «Expression» XPath выражение, например «./price/text()», и нажать кнопку «Reevaluate». – Значение анализируемого выражения (например, цена текущей книги) появится в окне Value. – Можно ввести логическое выражение, использующее XPath выражение, например - «./price/text() < $bookAverage» и нажать кнопку «Reevaluate». В поле Value будет показано выполнение данного логического выражения (true, false). How to: Edit XML Files XML Document Validation XML Editor Intellisense Features XML Snippets How to: Use XML Snippets How to: Generate an XML Snippet From an XML Schema How to: Create XML Snippets Редактирование XSLT таблиц стилей How to: Execute an XSLT Transformation From the XML Editor How to: Create an XML Schema from an XML Document How to: Select the XML Schema(s) to Use for Validation Walkthrough: Using the XML Editor Features