matlab.io.xml.dom.DocumentType class

Пакет: matlab.io.xml.dom

Описание

Объект matlab.io.xml.dom.DocuementType класс представляет тип документа.

getDoctype метод matlab.io.xml.dom.Document объект возвращает matlab.io.xml.dom.DocumentType возразите если Document объект был создан синтаксическим анализатором из разметки XML, которая содержит определение типа документа (DTD).

Примечание

DocumentType объект наследовал методы и свойства от matlab.io.xml.dom.Node класс, которые неэффективны или вызывают ошибки, когда используется с DocumentType объект. Используйте только методы и свойства, зарегистрированные на этой странице.

matlab.io.xml.dom.DocumentType классом является handle класс.

Атрибуты класса

ConstructOnLoad
true
HandleCompatible
true

Для получения информации об атрибутах класса см. Атрибуты класса.

Свойства

развернуть все

Имя типа документа в виде вектора символов.

Атрибуты:

GetAccess
public
SetAccess
immutable
Transient
true
NonCopyable
true

Общедоступный ID типа документа в виде вектора символов.

Атрибуты:

GetAccess
public
SetAccess
immutable
Transient
true
NonCopyable
true

Системный ID типа документа в виде вектора символов.

Атрибуты:

GetAccess
public
SetAccess
immutable
Transient
true
NonCopyable
true

Локально определенные сущности и обозначения в виде вектора символов. Локально определенные сущности и обозначения заданы в разметке, от которой был проанализирован тип документа.

Атрибуты:

GetAccess
public
SetAccess
immutable
Transient
true
NonCopyable
true

Методы

развернуть все

Примеры

свернуть все

В этом примере показано, как получить доступ к типу документа и информации о сущности в документе DOM, который был проанализирован от разметки XML, которая содержит определение типа документа (DTD).

Пример использует эти файлы, которые должны все быть в той же папке:

  • book.xml содержит определение типа документа, которое объявляет что ресурс для chapter сущностью является chapter.xml.

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE book [
<!ENTITY chapter SYSTEM "chapter.xml">
]>
<book>
    &chapter;
</book>
  • chapter.xml содержит разметку для главы.

<?xml version="1.0" encoding="UTF-8"?>
<chapter><title color="red">Introduction</title></chapter>

Проанализируйте XML в matlab.io.xml.dom.Document объект.

import matlab.io.xml.dom.*

doc = parseFile(Parser,'book.xml');

Чтобы получить информацию о типе документа, используйте getDoctype метод Document объект.

docTypeObj = getDoctype(doc)
docTypeObj = 
  DocumentType with properties:

              Name: 'book'
          PublicID: ''
          SystemID: ''
    InternalSubset: '...'
       TextContent: ''
          Children: [1x0 matlab.io.xml.dom.Node]

Чтобы получить информацию о сущностях, заданных типом документа, используйте getEntities метод DocumentType объект. Метод возвращает список сущностей как NamedNodeMap объект.

namedNodeMapObj = getEntities(docTypeObj);

Возвратить matlab.io.xm.dom.Entity объекты, которые представляют сущности, используют item метод NamedNodeMap объект. Задайте первый индекс как 0.

n = getLength(namedNodeMapObj)-1;
for i=0:n
    item(namedNodeMapObj,i)
end
ans = 
  Entity with properties:

    InputEncoding: 'UTF-8'
         PublicID: ''
         SystemID: 'chapter.xml'
      XMLEncoding: 'UTF-8'
       XMLVersion: '1.0'
      TextContent: '...'
         Children: [1x2 matlab.io.xml.dom.Node]

Введенный в R2021a