Modelo de conteúdo XML

O modelo de conteúdo XML fornece acesso a conteúdo baseado em XML.

O modelo de conteúdo XML suporta a capacidade de acessar componentes com base em expressões XPath. As expressões XPath são cadeias de caracteres que definem quais elementos ou atributos são exigidos pelo chamador. O modelo de conteúdo XML oculta os detalhes da construção de vários objetos e da compilação de expressões que normalmente são exigidas pelo suporte a XPath. É mais simples chamar do script Python .

O modelo de conteúdo XML inclui uma função que retorna o documento XML como uma sequência, portanto, os usuários do script Python podem usar sua biblioteca Python preferencial para analisar o XML.

Tabela 1. Métodos para o modelo de conteúdo XML
Método Tipos de retorno Descrição
getXMLAsString() String Retorna o XML como uma cadeia de caracteres.
getNumericValue(String xpath) number Retorna o resultado da avaliação do caminho com o tipo de retorno numérico (por exemplo, contar o número de elementos que correspondem à expressão do caminho).
getBooleanValue(String xpath) boolean Retorna o resultado booleano da avaliação da expressão de caminho especificada.
getStringValue(String xpath, String attribute) String Retorna o valor do atributo ou o valor do nó XML que corresponde ao caminho especificado.
getStringValues(String xpath, String attribute) List of strings Retorna uma lista de todos os valores de atributos ou valores de nós XML que correspondem ao caminho especificado.
getValuesList(String xpath, <List of strings> attributes, boolean includeValue) List of lists of strings Retorna uma lista de todos os valores de atributos que correspondem ao caminho especificado, juntamente com o valor do nó XML, se necessário.
getValuesMap(String xpath, String keyAttribute, <List of strings> attributes, boolean includeValue) Hash table (key:string, value:list of string) Retorna uma tabela de hash que usa o atributo chave ou o valor do nó XML como chave e a lista de valores de atributo especificados como valores de tabela.
isNamespaceAware() boolean Retorna se os analisadores XML devem estar cientes dos namespaces. O padrão é False.
setNamespaceAware(boolean value) void Define se os analisadores XML devem estar cientes dos namespaces. Isso também chama o site reset() para garantir que as alterações sejam captadas pelas chamadas subsequentes.
reset() void Limpa qualquer armazenamento interno associado a esse modelo de conteúdo (por exemplo, um objeto DOM armazenado em cache).

Nós e saídas

Esta tabela lista os nós que constroem saídas que incluem esse tipo de modelo de conteúdo

Tabela 2. Nós e saídas
Nome do nó Nome da saída ID do contêiner
Most model builders Most generated models "PMML"
"autodataprep" n/a "PMML"

Exemplo de script

O código de script Python para acessar o conteúdo pode ter a seguinte aparência:

results = []
modelbuilder.run(results)
modeloutput = results[0]
cm = modeloutput.getContentModel("PMML")

dataFieldNames = cm.getStringValues("/PMML/DataDictionary/DataField", "name")
predictedNames = cm.getStringValues("//MiningSchema/MiningField[@usageType='predicted']", "name")