Образовательный портал Claw.ru
Всё для учебы, работы и отдыха
» Шпаргалки, рефераты, курсовые
» Сочинения и изложения
» Конспекты и лекции
» Энциклопедии

Здесь я использовал новую аннотированную схему и шаблон трансформации.

Аннотированная схема:

<?xml version="1.0" encoding="windows-1251" ?>

<Schema xmlns="urn:schemas-microsoft-com:xml-data"

 xmlns:sql="urn:schemas-microsoft-com:xml-sql"

 xmlns:dt="urn:schemas-microsoft-com:datatypes">

 

 <ElementType name="Авторы" sql:relation="authors">

  <AttributeType name="Имя" dt:type="string" />

  <AttributeType name="Фамилия" dt:type="string" />

  <AttributeType name="Адрес" dt:type="string" />

  <attribute type="Имя" sql:field="au_fname" />

  <attribute type="Фамилия" sql:field="au_lname" />

  <attribute type="Адрес" sql:field="address" />

 </ElementType>

</Schema>

Шаблон трансформации:

<?xml version="1.0" encoding="windows-1251" ?>

<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">

 

 <xsl:template match = "*">

  <xsl:apply-templates />

 </xsl:template>

 <xsl:template match = "/">

  <html>

  <body>

   <table border="1" style="table-layout:fixed" width="600">

   <tr bgcolor="teal">

     <th><font color="white">Имя</font></th>

     <th><font color="white">Фамилия</font></th>

     <th><font color="white">Адрес</font></th>

   </tr>

    <xsl:for-each select="my_root/Авторы">

    <tr>

     <td><font color="teal"><xsl:value-of select="@Имя"/></font></td>

     <td><font color="teal"><xsl:value-of select="@Фамилия"/></font></td>

     <td><font color="teal"><xsl:value-of select="@Адрес"/></font></td>

    </tr>

    </xsl:for-each>

   </table>

  </body>

  </html>

 </xsl:template>

</xsl:stylesheet>

XML-документ на стороне клиента

Предположим, ваш SQL Server работает в очень напряженном режиме, и вы не хотите нагружать его еще больше, заставляя формировать XML-документы. Можно сделать так: создать обычный рекордсет и загрузить его в формате XML в объект DOMDocument или какой-либо другой. Решение на первый взгляд здравое, однако, поработав немного с таким документом, вы поймете, что это не то. Во-первых, структура такого XML-документа задается жестко без возможности изменения. Во-вторых, схема сохраняется в формате XDR, а он уже стар и может не удовлетворять вашим потребностям. К тому же возникают проблемы с выполнением шаблонов и XPath-запросами. Для решения этих (и многих других) проблем был создан новый сервисный провайдер – SQLXMLOLEDB. Как и другие сервисные провайдеры (например, MSDataShape) он предназначен только для преобразования результирующего набора строк в нужный формат. Так как SQLXMLOLEDB ничего не знает о форматах протоколов обмена данными с SQL-серверами, он использует для этого соответствующий провайдер. К сожалению, провайдер SQLXMLOLEDB пока умеет работать совместно только с SQLOLEDB-провайдером для SQL Server, однако в будущем (по крайней мере, я очень надеюсь) он сможет работать с другими провайдерами, например, MSDAORA (провайдер для Oracle). Если такая поддержка будет встроена, у нас будет возможность получать XML-документы от источников, которые не поддерживают XML напрямую.


Рекомендуем скачать другие рефераты по теме: права человека реферат, реферат влияние.


Категории:




Предыдущая страница реферата | 25  26  27  28  29  30  31  32  33  34  35 |


Поделитесь этой записью или добавьте в закладки

   



Рефераты от А до Я


Полезные заметки

  •