Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 02.06.2011, 14:44   #1
k_a_m_a_z
Пользователь
 
Регистрация: 09.06.2010
Сообщений: 17
Вопрос XML в HTML

здравствуйте, появилась необходимость связать страницу с файлом XML
вот так:
Код HTML:
<XML ID="dsoBook" SRC="Book.xml"></XML>
<SPAN DATASRC="#dsoBook" DATAFLD="TITLE"></SPAN>
делать нельзя, ибо работает только в IE

слышал про DOM но не совсем понимаю что это, и где про это почитать.
погуглить не помогает, на w3.org не понятно

пожалуйста, пошлите меня туда, где есть какаято статья, рассматривающая данный вопрос.
либо подскажите как ещё можно отображать XML в HTML файле
заранее спасибо.
k_a_m_a_z вне форума Ответить с цитированием
Старый 02.06.2011, 20:07   #2
k_a_m_a_z
Пользователь
 
Регистрация: 09.06.2010
Сообщений: 17
По умолчанию

скажите, я задаю вопросы не правильно, или они слишком сложны, чтобы писать их тут?
(уже который раз нету коментариев длительное время...)
k_a_m_a_z вне форума Ответить с цитированием
Старый 02.06.2011, 20:44   #3
stck
Пользователь
 
Аватар для stck
 
Регистрация: 14.06.2010
Сообщений: 84
По умолчанию

Вам в помощь XSL
stck вне форума Ответить с цитированием
Старый 02.06.2011, 20:45   #4
stck
Пользователь
 
Аватар для stck
 
Регистрация: 14.06.2010
Сообщений: 84
По умолчанию

По поводу статьи - Вот сюда
Просто так не опишешь. Еще бы желательно использовать Altova XML Spy
stck вне форума Ответить с цитированием
Старый 02.06.2011, 21:10   #5
k_a_m_a_z
Пользователь
 
Регистрация: 09.06.2010
Сообщений: 17
По умолчанию

насколько я помню, XSL это чтото типо CSS, только для XML
т.е. в нём можно задавать стили и прочую фигню для вывода XML документа

НО! мне не нужно выводить XML, мне нужно встроить его в HTML страницу.
т.е. у меня есть таблица на HTML, в её ячейки нужно запихать данные из XML файла.
или там такое тоже возможно?
k_a_m_a_z вне форума Ответить с цитированием
Старый 02.06.2011, 21:14   #6
stck
Пользователь
 
Аватар для stck
 
Регистрация: 14.06.2010
Сообщений: 84
По умолчанию

Трансформация из XML в XHTML

Входной XML-документ:
Код:
<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" href="my-style.xsl"?>
 
<domains>
    <sun.com ownedBy="Sun Microsystems Inc.">
        <host>
            www
            <use>World Wide Web site</use>
        </host>
        <host>
            java
            <use>Java info</use>
        </host>
    </sun.com>
 
    <w3.org ownedBy="The World Wide Web Consortium">
        <host>
            www
            <use>World Wide Web site</use>
        </host>
        <host>
            validator
            <use>web developers who want to get it right</use>
        </host>
    </w3.org>
</domains>
Стиль для XSLT-трансформации:
Код:
<?xml version="1.0" encoding="UTF-8" ?>
 
<xsl:stylesheet version="1.0" 
        xmlns:xsl="http://www.w3.org/1999/XSL/Transform" 
        xmlns="http://www.w3.org/1999/xhtml">
    <xsl:output method="xml" indent="yes"
        doctype-public="-//W3C//DTD XHTML 1.0 Strict//EN" 
        doctype-system="http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"/>
 
    <!--XHTML document outline--> 
    <xsl:template match="/">
        <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
            <head>
                <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
                <title>test1</title>
                <style type="text/css">
                    h1          { padding: 10px; padding-width: 100%; background-color: silver }
                    td, th      { width: 40%; border: 1px solid silver; padding: 10px }
                    td:first-child, th:first-child  { width: 20% } 
                    table       { width: 650px }
                </style>
            </head>
            <body>
                <xsl:apply-templates/>
            </body>
        </html>
    </xsl:template>
 
    <!--Table headers and outline-->
    <xsl:template match="domains/*">
        <h1><xsl:value-of select="@ownedBy"/></h1>
        <p>The following host names are currently in use at
          <strong><xsl:value-of select="local-name(.)"/></strong>
        </p>
        <table>
            <tr><th>Host name</th><th>URL</th><th>Used by</th></tr>
            <xsl:apply-templates/>
        </table>
    </xsl:template>
 
    <!--Table row and first two columns-->
    <xsl:template match="host">
        <!--Create variable for 'url', as it's used twice-->
        <xsl:variable name="url" select=
            "normalize-space(concat('http://', normalize-space(node()), '.', local-name(..)))"/>
        <tr>
            <td><xsl:value-of select="node()"/></td>
            <td><a href="{$url}"><xsl:value-of select="$url"/></a></td>
            <xsl:apply-templates select="use"/>
        </tr>
    </xsl:template>
 
    <!--'Used by' column-->
    <xsl:template match="use">
        <td><xsl:value-of select="."/></td>
    </xsl:template>
 
</xsl:stylesheet>
XHTML, который мы получаем на выходе (пробелы были добавлены для ясности):
Код:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
                      "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="en" xml:lang="en">
  <head>
    <meta content="text/html;charset=UTF-8" http-equiv="Content-Type" />
    <title>test1</title>
    <style type="text/css">
      h1          { padding: 10px; padding-width: 100%; background-color: silver }
      td, th      { width: 40%; border: 1px solid silver; padding: 10px }
      td:first-child, th:first-child  { width: 20% } 
      table       { width: 650px }
    </style>
  </head>
  <body>
    <h1>Sun Microsystems Inc.</h1>
    <p>The following host names are currently in use at <strong>sun.com</strong></p>
    <table>
        <tr>
          <th>Host name</th>
          <th>URL</th>
          <th>Used by</th>
        </tr>
        <tr>
          <td>www</td>
          <td><a href="http://www.sun.com">http://www.sun.com</a></td>
          <td>World Wide Web site</td>
        </tr>
        <tr>
          <td>java</td>
          <td><a href="http://java.sun.com">http://java.sun.com</a></td>
          <td>Java info</td>
        </tr>
    </table>
 
    <h1>The World Wide Web Consortium</h1>
    <p>The following host names are currently in use at <strong>w3.org</strong></p>
    <table>
      <tr>
        <th>Host name</th>
        <th>URL</th>
        <th>Used by</th>
      </tr>
      <tr>
        <td>www</td>
        <td><a href="http://www.w3.org">http://www.w3.org</a></td>
        <td>World Wide Web site</td>
      </tr>
      <tr>
        <td>validator</td>
        <td><a href="http://validator.w3.org">http://validator.w3.org</a></td>
        <td>web developers who want to get it right</td>
      </tr>
    </table>
  </body>
</html>
stck вне форума Ответить с цитированием
Старый 02.06.2011, 21:20   #7
k_a_m_a_z
Пользователь
 
Регистрация: 09.06.2010
Сообщений: 17
По умолчанию

я, кажется, вкурил)
большое Вам спасибо, буду изучать!

ЗЫ: в нашем колледже никто не знает XML, хотя его преподают) спасибо нашему преподавателю
k_a_m_a_z вне форума Ответить с цитированием
Старый 02.06.2011, 21:24   #8
stck
Пользователь
 
Аватар для stck
 
Регистрация: 14.06.2010
Сообщений: 84
По умолчанию

Удачи с изучением
stck вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Экспорт содержимого Dbgrid в html и xml Discovery-24 БД в Delphi 0 03.05.2011 21:26
XML в HTML k_a_m_a_z Помощь студентам 0 30.01.2011 18:22
сформировать xml-файл на основе другого xml-файла NieL Общие вопросы Delphi 2 21.12.2010 15:49
Функция для преобразования HTML в валидный XML alexplato Фриланс 0 02.12.2010 19:46