La méthode matchCandidateWithSuspectsXML() est utilisée pour faire correspondre un enregistrement dans un document XML à des enregistrements candidats intégrés dans le même document XML. Cette méthode ajoutera l'attribut « matchPattern » à un enregistrement de candidat considéré comme correspondant ou suspect. L'attribut « matchPattern » sera affecté de la valeur du modèle de correspondance approprié. Cette méthode renvoie à la fois les correspondances et les correspondances suspectes. Pour ne renvoyer que les correspondances, utilisez la méthode matchCandidateXML.
Syntaxe
public void matchCandidateWithSuspectsXML(int handle,
java.lang.String rootTag,
java.lang.String inputXML,
java.lang.StringBuffer outputXML,
int retCode[]); Paramètres
|
Nom |
Type |
Utilisation |
Longueur |
Description |
|---|---|---|---|---|
|
handle |
entier |
Entrée |
–– |
Handle vers un serveur de programme de correspondance Director. |
|
rootTag |
string[ ] |
Entrée |
n* |
Balise racine XML. |
|
inputXML |
string[ ] |
Entrée |
n* |
Chaîne XML contenant les données à comparer. |
|
outputXML |
string[ ] |
Sortie |
n* |
StringBuffer où le XML correspondant est renvoyé. |
|
retCode |
int[ ] |
Sortie |
4 |
Code d'erreur indiquant le statut de l'appel de la méthode. |
n* indique que la longueur dépend de la plateforme sur laquelle le programme est exécuté.
Exemple
TrilTGenClient testClient = new TrilTGenClient();
// Return code and handle
int[] retCode= new int[1];
int handle = 0;
// System and Server ID for attach()
char systemID = 'G';
String serverName = "RMatcher";
// Root Tag of XML document
String rootTag = "CustomerData/PrimaryCustomer";
// This is the input (dirty) XML document
String inputXML =
"<?xml version = '1.0' encoding = 'ISO-8859-1' standalone = 'no'?>" +
"<CustomerData>" +
"<REQUESTTYPE>RMatch</REQUESTTYPE>" +
"<PrimaryCustomer>" +
"<Name>John Smith</Name>" +
"<Address>" +
"<StreetLine1>11 falk</StreetLine1>" +
"<StreetLine2 />" +
"<City>pompton lakes</City>" +
"<State>NJ</State>" +
"<Country>US</Country>" +
"<ZipCode></ZipCode>" +
"</Address>" +
"</PrimaryCustomer>" +
"<Candidate>" +
"<Name>J Smith</Name>" +
"<Address>" +
"<StreetLine1>10 falk</StreetLine1>" +
"<StreetLine2 />" +
"<City>pompton lakes</City>" +
"<State>NJ</State>" +
"<Country>US</Country>" +
"<ZipCode></ZipCode>" +
"</Address>" +
"</Candidate>" +
"<Candidate>" +
"<Name>Tom Romeo</Name>" +
"<Address>" +
"<StreetLine1>11 falk</StreetLine1>" +
"<StreetLine2 />" +
"<City>pompton lakes</City>" +
"<State>NJ</State>" +
"<Country>US</Country>" +
"<ZipCode></ZipCode>" +
"</Address>" +
"</Candidate>" +
"</CustomerData>;
// Attach and initialize matcher server using openMatcherEx()
handle = testClient.openMatcherEx(systemID, serverName, retCode);
if (retCode[0] == 0) {
StringBuffer outputXML = new StringBuffer ("");
testClient.matchCandidateWithSuspectsXML(handle, rootTag, inputXML,
outputXML, retCode);
if (retCode[0] != 0) {
System.out.println("matchCandidateWithSuspectsXML method returned" +
retCode[0]);
} else {
// Process matched data in outputXML
}
// Close and release matcher server
testClient.closeMatcherEx(handle, retCode);
}