El modelo de contenido XML proporciona acceso a contenido basado en XML.
El modelo de contenido XML permite acceder a componentes utilizando expresiones XPath. Las expresiones XPath son series que definen qué elementos o atributos son necesarios para el solicitante. El modelo de contenido XML hace que sea transparente la creación de diversos objetos y expresiones de compilación que normalmente son necesarios para el soporte de XPath. Es más sencillo llamar desde scripts Python .
El modelo de contenido XML incluye una función que devuelve el documento XML como una serie, por lo que los usuarios del script Python pueden utilizar su biblioteca Python preferida para analizar el XML.
Método | Tipos de retorno | Descripción |
---|---|---|
getXMLAsString() |
String |
Devuelve el XML en forma de serie de caracteres. |
getNumericValue(String xpath) |
number |
Devuelve un resultado de tipo numérico al analizar la vía de acceso (por ejemplo, contar el número de elementos que coinciden con la expresión de vía de acceso). |
getBooleanValue(String xpath) |
boolean |
Devuelve un resultado de tipo booleano al evaluar la expresión de vía de acceso especificada. |
getStringValue(String xpath, String attribute) |
String |
Devuelve el valor de atributo o valor de nodo XML que coincide con la vía de acceso especificada. |
getStringValues(String xpath, String attribute) |
List of strings |
Devuelve una lista de todos los valores de atributo o valores de nodo XML que coinciden con la vía de acceso especificada. |
getValuesList(String xpath, <List of strings> attributes, boolean
includeValue) |
List of lists of strings |
Devuelve una lista de todos los valores de atributo que coinciden con la vía de acceso especificada junto con el valor de nodo XML si es necesario. |
getValuesMap(String xpath, String keyAttribute, <List of strings>
attributes, boolean includeValue) |
Hash table (key:string, value:list of string) |
Devuelve una tabla hash que utiliza el atributo de clave o valor de nodo XML como clave y la lista de valores de atributo especificados como valores de la tabla. |
isNamespaceAware() |
boolean |
Indica si los analizadores XML deben tener en cuenta los espacios de
nombres. El valor predeterminado es False . |
setNamespaceAware(boolean value) |
void |
Establece si los analizadores XML deben tener en cuenta los espacios de
nombres. Esto también llama a reset() para asegurarse de que los cambios se aplican en llamadas posteriores. |
reset() |
void |
Desecha cualquier almacenamiento interno asociado con el modelo de contenido (por ejemplo, un objeto DOM almacenado en memoria caché). |
Nodos y datos de salida
Esta tabla lista los nodos que generan salidas que incluyen este tipo de modelo de contenido.
Nombre de nodo | Nombre de salida | ID de contenedor |
---|---|---|
Most model builders |
Most generated models |
"PMML" |
"autodataprep" |
n/a |
"PMML" |
Script de ejemplo
El código del script Python para acceder al contenido puede tener este aspecto:
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")