Вы также можете решить эту проблему следующим образом.
Не удалось найти канал 'translate'. В Ionic 4 отображается ошибка
Это лучший способ применить функцию щелчка и использовать переводчик.
Это решит ваш запрос.
xsi: nil - это правильный способ представления значения, такого что: Когда выдается вызов getElementValue () DOM уровня 2, возвращается значение NULL. xsi: nil также используется для указания допустимого элемента без содержимого, даже если тип содержимого этого элемента обычно не допускает пустых элементов.
Если используется пустой тег, getElementValue () возвращает пустую строку ("") Если тег опущен, то никакого авторского тега даже нет. Это может семантически отличаться от установки значения «nil» (например, установка «Series» в значение «nil» может означать, что книга не принадлежит ни одной серии, в то время как отсутствие серии может означать, что ряд является неприменимым элементом к текущему элементу.)
От: XML-схема W3C
: Структуры вводят механизм сигнализации о том, что элемент должен быть принят как · действительный · когда он не имеет содержания, несмотря на тип контента, который не требует или даже обязательно разрешить пустой контент. Элемент может быть · действительным · без содержание, если оно имеет атрибут xsi: nil со значением true. элемент с меткой должен быть пустым, но может нести атрибуты, если это разрешено соответствующий комплексный тип.
Пояснение:
Если у вас есть элемент book xml и один из дочерних элементов - book: series, у вас есть несколько вариантов при его заполнении:
Канонического ответа не существует, поскольку у XML принципиально нет нулевой концепции.
Но я предполагаю, что вы хотите сопоставление Xml / Object (поскольку графы объектов имеют нулевые значения); так что ответ для вас "все, что использует ваш инструмент". Если вы пишете обработку, это означает, что вы предпочитаете. Для инструментов, которые используют XML-схему, xsi: nil
- путь. Для большинства картографов пропуск соответствующего элемента / атрибута является способом сделать это.
Это зависит от того, как вы проверяете свой XML. Если вы используете проверку XML-схемы, правильный способ представления значений null
- это атрибут xsi: nil
.
[ Источник ]
Вы используете xsi: nil
, когда ваша семантика схемы указывает, что элемент имеет значение по умолчанию и что значение по умолчанию следует использовать, если элемент отсутствует. Я должен предположить, что есть умные люди, для которых предыдущее предложение не является самоочевидной ужасной идеей, но для меня это звучит как девять видов зла. Каждый формат XML, с которым я когда-либо работал, представляет нулевые значения, пропуская элемент. (Или атрибут, и удачи, отмечая атрибут с помощью xsi: nil
.)
Простое пропускание атрибута или элемента хорошо работает в менее формальных данных.
Если вам нужна более сложная информация, схемы GML добавляют атрибут nilReason, например: в GeoSciML :
xsi: nil
со значением "true" используется для указания того, что значение недоступно nilReason
может использоваться для записи дополнительной информации о пропущенных значениях; это может быть одна из стандартных причин GML ( отсутствует, неприменимо, скрыто, неизвестно
), или текст с добавлением другого:
, или может быть ссылкой URI на более подробное объяснение. Когда вы обмениваетесь данными, роль, для которой обычно используется XML, данные, отправляемые одному получателю или для определенной цели, могут скрывать содержимое, которое было бы доступно кому-то другому, кто заплатил или имел другую аутентификацию. Знание причины пропажи контента может быть очень важным.
Ученые также обеспокоены тем, почему информация отсутствует. Например, если он был удален по соображениям качества, они могут захотеть увидеть исходные неверные данные.
Во многих случаях целью значения Null является использование значения данных, которого не было в предыдущей версии вашего приложения.
Итак, у вас есть файл XML из вашего приложение «ReportMaster» версия 1.
Теперь в ReportMaster версии 2 добавлено еще несколько атрибутов, которые могут быть или не быть определены.
Если вы используете представление «no tag означает null», вы получаете автоматическую обратную совместимость для чтения ваш файл ReportMaster 1 xml.
В документации по ссылке w3
http://www.w3.org/TR/REC-xml/#sec-starttags
говорится, что это рекомендуемые формы.
<test></test>
<test/>
Атрибут, упомянутый в другом ответе, является механизмом проверки, а не представлением состояния. Пожалуйста, обратитесь к http://www.w3.org/TR/xmlschema-1/#xsi_nil
XML-схеме: структуры вводят механизм для сигнализации о том, что элемент должен быть принят как · действительный · , когда он не имеет содержимого, несмотря на тип контента, который не требует или даже обязательно разрешает пустой содержание. Элемент может быть · действительным · без содержимого, если он имеет атрибут xsi: nil со значением true. Элемент с такой маркировкой должен быть пусто , но может содержать атрибуты, если это разрешено соответствующим сложный тип.
Чтобы уточнить этот ответ: содержание
<Book>
<!--Invalid construct since the element attribute xsi:nil="true" signal that the element must be empty-->
<BuildAttributes HardCover="true" Glued="true" xsi:nil="true">
<anotherAttribute name="Color">Blue</anotherAttribute>
</BuildAttributes>
<Index></Index>
<pages>
<page pageNumber="1">Content</page>
</pages>
<!--Missing ISBN number could be confusing and misguiding since its not present-->
</Book>
</Books>