Проблемы парсинга XML с XSL в нем - PullRequest
4 голосов
/ 23 января 2011

При попытке прочитать мой xml с веб-страницы я получаю: «Ошибка: в строке 8, столбец 23: несвязанный префикс» Ниже мой xml:

<?xml version="1.0"?>
<outertag>
<innertag sampleattribute="innertagAttribute">
    <Retailer>
        RetailerName:
        <xsl:template match="link">
            <a href="LinkGoesHere">Link</a>
        </xsl:template>
    </Retailer>
</innertag>

Любые идеичто не так?Могу ли я не использовать xsl: template в моем xml?Любая помощь с благодарностью.

1 Ответ

4 голосов
/ 23 января 2011

При попытке прочитать мой XML из веб-страница, которую я получаю: «Ошибка: в строке 8, колонка 23: несвязанный префикс "ниже мой XML:

<?xml version="1.0"?>
<outertag>
  <innertag sampleattribute="innertagAttribute">
      <Retailer>RetailerName: 
          <xsl:template match="link">
              <a href="LinkGoesHere">Link</a>
          </xsl:template>
      </Retailer>
  </innertag>
</outertag>

Есть идеи, что не так? Могу я не использовать xsl: template в моем xml?

Предоставленный документ не правильно сформирован, и сообщение об ошибке очень хорошо объясняет причину:

Существует элемент с именем xsl:template, однако во всем документе нет объявления пространства имен, связывающего префикс xsl: с любым пространством имен.

Решение

Исправьте неправильно сформированный текст в правильно сформированном XML-документе, предоставив объявление пространства имен для пространства имен XSLT:

<outertag>
    <innertag sampleattribute="innertagAttribute">
        <Retailer>RetailerName: 
            <xsl:template match="link"
             xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
                <a href="LinkGoesHere">Link</a>
            </xsl:template>
        </Retailer>
    </innertag>
</outertag>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...