Guida alla codifica di xPathSto tentando di apprendere / utilizzare xPath per recuperare elementi dall'output di visualizzazione di JMP.Per il mio apprendimento, ho un output bivariato molto semplice e sto tentando di recuperare la formula di previsione, direttamente dall'output del display.

Il JSL
names default to here(1);
dt = Open("$Sample_Data/big class.jmp");
ow = Bivariate(
Y( :weight ),
X( :height ),
Fit Line( {Line Color( "Medium Dark Green" )} )
);
Il problema:
Posso facilmente recuperare la formula utilizzando la chiamata Display Tree di
zap = report(ow)["Linear Fit"][TextBox(1)] << get text;
Posso anche accedervi recuperando il testo dal 4 ° TextBox da un recupero xPath
zip = (report(ow) << XPath("//TextEditBox"))[4] << get text ;
Ma poiché il valore di 4 per il pedice, può cambiare se vengono aggiunti adattamenti aggiuntivi ecc.Vorrei utilizzare xPath per recuperare la prima casella di testo dopo una casella di contorno che ha il valore di "Linear Fit"
Qualcuno di voi esperti di xPath ha una soluzione.
ScriptingRi: aiuto per la codifica di xPathDovresti essere in grado di fare tutto con XPath. Il primo esempio ti dà tutti i testi. Il secondo esempio tenta di utilizzare una funzione XPath, ma non riesco a far funzionare la sintassi.
Names Default to Here( 1 );
dt = Open( "$SAMPLE_DATA/Big Class.jmp" );
biv = dt << Bivariate( Y( :weight ), X( :height ), Fit Line( 1 ) );
biv rep = biv << Report;
// get all texts in a list
biv rep << XPath( "//TextEditBox//text()" );
// get specific text
target = "=";
biv rep << XPath( "//TextEditBox/[contains(text(),target)]/text()" );
Ri: aiuto per la codifica di xPathAha! Questa sintassi funziona!
biv rep << XPath( "//TextEditBox[contains(text(),\!"=\!")]/text()" );
Ri: aiuto per la codifica di xPathSuper......
Sto ancora pensando che ci debba essere un modo per restituire il valore da un TextEditBox dopo aver rilevato uno specifico OutlineBox, iereturn la prima casella di testo dopo una specifica Outline Box
Ri: aiuto per la codifica di xPathrpt=ow<<REPORT></REPORT>
Ri: aiuto per la codifica di xPathGrazie mille!Ri: aiuto per la codifica di xPathEcco alcune altre espressioni xpath che ho trovato utili per la navigazione nella struttura ad albero.
// Note: the * in these examples can also be replaced by the class of
// the element you are looking for e.g. TableBox, OutlineBox
rpt = report(ow);
// Gets immediate children of the Outlinebox (ItsTableBox)
rpt << xpath("//OutlineBox[text()='Summary of Fit']/*");
// Gets all descendants of the Outlinebox (TableBox AND all of its ColBoxes)
rpt << xpath("//OutlineBox[text()='Summary of Fit']//*");
// Gets following elements at the same level of the tree
//(Lack of Fit, Analysis of Variances, Parameter Estimates OutlineBoxes)
rpt << xpath("//OutlineBox[text()='Summary of Fit']/following-sibling::*")
// Gets preceding elements at the same level of the tree (TextEditBox with formula)
rpt << xpath("//OutlineBox[text()='Summary of Fit']/preceding-sibling::*")
// Gets ancestors of the box (ListBox, OutlineBox["Linear Fit"], IfBox, OutlineBox["Bivariate Fit..."])
rpt << xpath("//OutlineBox[text()='Summary of Fit']/ancestor::*")Questa è la struttura ad albero su cui si naviga negli esempi.

Questo poster ha ancora più esempi https://community.jmp.com/t5/Discovery-Summit-2015/JMP-Discovery-2015-Mining-JMP-Reports-v10-pdf/ta-p/22595
Ri: aiuto per la codifica di xPathPuoi avvicinarti in quel modo, Jim, ma in questo modo sovverte il senso del linguaggio XPath. Dovrebbe fare tutto il lavoro per te.