Для документа не обнаружено грамматических ограничений (DTD или XML-схема) - PullRequest
181 голосов
/ 29 декабря 2010

У меня есть это dtd: http://fast -code.sourceforge.net / template.dtd Но когда я включаю в XML, я получаю предупреждение: Для документа не обнаружено грамматических ограничений (DTD или XML-схема). XML это:

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE templates PUBLIC "//UNKNOWN/" "http://fast-code.sourceforge.net/template.dtd">

<templates>
<template type="INSTANCE_OF_CLASS">
    <description>Used to Create instance of class</description>
    <variation>asasa</variation>
    <variation-field>asasa</variation-field>
    <class-pattern>asasa</class-pattern>
    <getter-setter>setter</getter-setter>
    <allowed-file-extensions>java</allowed-file-extensions>
    <number-required-classes>1</number-required-classes>
    <allow-multiple-variation>false</allow-multiple-variation>
    <template-body>
        <![CDATA[
            // Creating new instance of ${class_name}
            final ${class_name} ${instance} = new ${class_name}();
            #foreach ($field in ${fields})
                ${instance}.${field.setter}(${field.value});
            #end
        ]]>
    </template-body>
</template>
</templates>

РЕДАКТИРОВАТЬ : Я изменил xml, сейчас я получаю эту ошибку:

Содержимое типа элемента "шаблон" должно совпадать "(описание, вариант?, Поле вариации?, Allow- множественное изменение?, класс-шаблон?, геттер-сеттер? разрешенный-файл-расширение?, номер-required- классы?, шаблоны тело)».

Ответы [ 18 ]

2 голосов
/ 31 декабря 2010

Это может быть связано с отключением проверки в затмении.

1 голос
/ 22 июня 2018

У меня тоже была такая же проблема в eclipse с использованием файла web.xml
, он показал мне это "нет грамматических ограничений, на которые есть ссылки в документе"

, но это можно решить, добавив тег
послетег xml, т.е. <?xml version = "1.0" encoding = "UTF-8"?>

1 голос
/ 26 января 2018

Я использовал относительный путь в xsi: noNamespaceSchemaLocation для предоставления локального файла xsd (поскольку я не мог использовать пространство имен в экземпляре xml).

<?xml version="1.0" encoding="UTF-8"?>
<root xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xsi:noNamespaceSchemaLocation="../project/schema.xsd">
</root>

Проверка работи предупреждение исправлено (не игнорируется).

https://www.w3schools.com/xml/schema_example.asp

1 голос
/ 17 октября 2011

Решена эта проблема в Eclipse 3.5.2. Две полностью идентичные схемы, одна из которых имела предупреждение. Закрыл все вкладки и при повторном открытии предупреждение исчезло.

1 голос
/ 15 января 2016
  1. скопируйте весь код в блокнот.
  2. временно сохранить файл с любым именем [при сохранении файла используйте «encoding» = UTF-8 (или выше, но UTF)].
  3. закрыть файл.
  4. открой его снова.
  5. скопируйте и вставьте его обратно в свой код.

ошибка должна исчезнуть.

0 голосов
/ 19 мая 2018

Я удалил предупреждение в окне проблем. Он не вернулся до сих пор.

0 голосов
/ 11 мая 2013

Вот рабочее решение для этой проблемы:


Шаг 1: Щелкните правой кнопкой мыши по проекту и перейдите к свойствам

Шаг 2: Перейдите в «библиотеки» и удалите «проект»Системная библиотека JRE '

Шаг 3: Нажмите «Добавить библиотеку» -> «Системная библиотека JRE» -> выберите «Рабочая среда по умолчанию JRE»

Шаг 3: Перейти к «Заказ иЭкспортируйте »и отметьте только что добавленную« Системную библиотеку JRE »

Шаг 4. Обновите и очистите проект

Eureka!Работает :)

0 голосов
/ 10 декабря 2014

То, что я нашел решением, было очень простым делом, которое, я думаю, вам следует попробовать, прежде чем изменять предпочтения. В моем случае у меня была эта проблема в строковом файле, который имел в качестве базового тега «ресурсы» ... все, что я сделал, это удалил тег сверху и снизу, очистил проект, сохранил файл и заново вставил тег. С тех пор проблема исчезла и никогда не давала мне никаких предупреждений. Это может показаться простым, чтобы быть правдой, но эй, иногда это самые простые вещи, которые решают проблемы. Приветствия

...