matlab.io.xml.xpath.PrefixResolver class

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

Абстрактный базовый класс для пространства имен снабжает префиксом преобразователи

Описание

matlab.io.xml.xpath.PrefixResolver класс является абстрактным базовым классом для получения преобразователя, который разрешает префиксы пространства имен, которые происходят в выражениях XPath. Сконфигурировать matlab.io.xml.xpath.Evaluator возразите, чтобы использовать префиксный преобразователь, установить PrefixResolver свойство Evaluator возразите против объекта производного класса и набора ResolvePrefixes свойство к true.

matlab.io.xml.xpath.PrefixResolver классом является handle класс.

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

Abstract
true
HandleCompatible
true
ConstructOnLoad
true

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

Методы

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

Примеры

свернуть все

Реализуйте преобразователь префикса пространства имен и используйте его, чтобы разрешить префиксы в выражениях XPath, оцененных matlab.io.xml.xpath.Evaluator объект.

Выведите myPrefixResolver класс от matlab.io.xml.xpath.PrefixResolver класс. Задайте getNamespaceForPrefix и getURL методы.

classdef myPrefixResolver < matlab.io.xml.xpath.PrefixResolver
    
    methods
        function url = getNamespaceForPrefix(resolver,prefix)
            if prefix == "a"
                url = "https://mycompany.com/ns/namespacea";
                            else
                url = "https://mycompany.com/ns/namespaceb";
                            end
        end
        function url = getURL(resolver)
            url = "https://mycompany.com";
        end
    end

end

Задайте средство анализа выражения XPath и установите PrefixResolver свойство к myPrefixResolver объект.

import matlab.io.xml.xpath.*
evalObj = Evaluator();
evalObj.PrefixResolver = myPrefixResolver;

Предположим тот myXML.xml содержит XML, чтобы искать. Этот код выполняет выражение, которое использует префикс в пространстве имен, заданном myPrefixResolver методы объекта.

data = evaluate(evalObj,"//a:Instrument","myXML.xml",EvalResultType.NodeSet);

Смотрите также

Введенный в R2021a