exponenta event banner

matlab.io.xml.xpath.Evaluator класс

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

Вычислитель выражений XPath

Описание

Использование объекта matlab.io.xml.xpath.Evaluator для создания оценщика выражений XPath.

matlab.io.xml.xpath.Evaluator класс является handle класс.

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

ConstructOnLoad
true
HandleCompatible
true

Сведения об атрибутах класса см. в разделе Атрибуты класса.

Создание

Описание

пример

evaluator = matlab.io.xml.xpath.Evaluator() создает средство оценки выражения XPath.

Свойства

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

Пользовательский распознаватель префиксов, указанный как объект подкласса matlab.io.xml.xpath.PrefixResolver класс.

Атрибуты:

GetAccess
public
SetAccess
public
NonCopyable
true

Следует ли разрешать префиксы пространства имен, указанные как true или false. Если значение равно true, вычислитель пытается разрешить префиксы пространства имен, которые встречаются в выражении XPath. Если также установить setPrefixResolver , вычислитель использует указанный распознаватель для разрешения префиксов. Если не установить setPrefixResolver , вычислитель использует родительский документ для разрешения префиксов.

Атрибуты:

GetAccess
public
SetAccess
public
NonCopyable
true

Методы

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

Примеры

свернуть все

В этом примере вычисляется выражение XPath, которое находит узлы с именем Instrument в файле music.xml.

Файл music.xml содержит эту XML-разметку:

<MusicalEnsemble>
	<Ensemble>
		<Music>Jazz</Music>
            <BandName>Kool Katz</BandName>
		<Instrumentation>
			<Instrument type="wind">Trumpet
            </Instrument>
			<Instrument type="percussion">Piano
                <pianotype>concert grand</pianotype>
            </Instrument>
			<Instrument type="percussion">Drums
                <drumkit>Bass drum</drumkit>
                <drumkit>Floor tom</drumkit>
                <drumkit>Snare drum</drumkit>
                <drumkit>Hi-hat</drumkit>
                <drumkit>Ride cymbal</drumkit>
            </Instrument>
			<Instrument type="string">Bass
                <basstype>upright</basstype>
            </Instrument>
		</Instrumentation>
	</Ensemble>
    <Musicians>
        <Name role="trumpeter">Miles</Name>
        <Name role="vocalist">Roger</Name>
        <Name role="pianist">Diana</Name>
        <Name role="drummer">George</Name>
        <Name role="bassist">John</Name>
    </Musicians>
</MusicalEnsemble>

Определите выражение XPath и укажите XML-файл.

import matlab.io.xml.xpath.*

xpExpr = "//Instrument";
xmlFilePath = "music.xml";

Вычислите выражение XPath и верните узлы в виде вектора узловых объектов.

data = evaluate(Evaluator,xpExpr,xmlFilePath,EvalResultType.NodeSet)
data=1×4 object
  1x4 Element array with properties:

    TagName
    HasAttributes
    TextContent
    Children

Представлен в R2021a