• Nenhum resultado encontrado

Criar um ficheiro de mapeamento de elementos XML para a estrutura de análise comum

No documento IBM OmniFind Enterprise Edition (páginas 40-45)

Numficheirodemapeamento deXMLparaaestruturadeanálisecomum,pode utilizarointervalo completodeopçõesde configuraçãoparaomapeamento de XMLparatiposdedadosUIMA.

Acercadestatarefa

Oficheirode mapeamentodeXMLparaaestruturadeanálisecomumémostrado noseguinteexemplo.

Orelatóriopolicialdeamostra temcontrolosXMLparaotipode crime,datado crime,localizaçãodocrime,agenteprincipal,aesquadradepolícia ondeestá colocadooagentepolicial, adescriçãodosuspeitoe outrasinformações.Estas indicaçõessãoseguidas porumasecção decorpo.Porexemplo:

<relatório>

<doc>

<tipoCrime>Roubo de carro</tipoCrime>

<dataCrime>23/04/05 21:23</dataCrime>

<localizaçãoCrime>R. Principal 27, Porto Covo, Sines, Setúbal</localizaçãoCrime>

<posto agentePrincipal="Ten">Joaquim

<apelido>Costa</apelido>

</agentePrincipal>

<esquadraPolícia>14ª Esquadra</esquadraPolícia>

<descriçãoSuspeito>Masculino, cabelo escuro, óculos escuros,

calças de ganga azuis com um casaco escuro, provavelmente

preto</descriçãoSuspeito>

<outrasinformações>Um Mercedes CLK foi roubado no dia 23/04/2005 de um parque de

estacionamento em frente ao Restaurante Lagoa Azul na

R. Principal 27, Porto Covo.(número de série: 32 2761 50871)</outrasinformações>

<corpo>Um Mercedes CLK foi roubado no dia 23/04/2005 de um parque de

estacionamento em frente ao Restaurante Lagoa Azul na R. Principal 27,

Porto Covo.(número de série: 32 2761 50871)

É preto e tem pneus largos da Michelin.

Testemunhas na frente do restaurante viram dois homens com roupa escura ir embora no carro a alta velocidade. O carro foi encontrado

abandonado na Av. Almirante em Grândola. O depósito de gasolina estava vazio.

Os bancos estavam muito manchados e o banco de trás foi vandalizado.

Nada foi roubado de dentro do carro....</corpo>

</doc>

<image>

<--! imagem do local do crime como cadeia codificada em base64 -->

</image>

</relatório>

Combase norelatórioamostra,umficheirodemapeamento deXMLparaa estruturadeanálisecomumpode teraseguinteestrutura.Aamostrautilizao sistematipo definidoparao cenáriodeum relatóriopolicial.

<?xml version="1.0"?>

<elementToTypeMapping>

<element>//doc//agentePrincipal</element>

<type>com.ibm.omnifind.types.Pessoa</type>

<featureValueAssignment>

<feature>função</feature>

<basicValue default="Agente principal">

</basicValue>

</featureValueAssignment>

<featureValueAssignment>

<feature>género</feature>

<basicValue default="masculino"

useAttributeValue="sexo"/>

</featureValueAssignment>

<featureValueAssignment>

<feature>sobrenome</feature>

<values concatenate="true" delimiter=" ">

<basicValue useAttributeValue="posto"

default="Ten"/>

<basicValue useElementContent="apelido"/>

</values>

</featureValueAssignment>

</elementToTypeMapping>

<elementToTypeMapping>

<element>//doc</element>

<type>com.ibm.omnifind.types.RelatórioPolicial</type>

<featureValueAssignment>

<feature>descriçãoCrime</feature>

<basicValue useElementContent="abstract"

trim="true">

</basicValue>

</featureValueAssignment>

</elementToTypeMapping>

</elementToTypeMappings>

</xmlCasInitializerConfiguration>

Restrições

Oficheirodemapeamento estádivididoemduassecções:

Elemento<contentElements>

Utilize esteelementosepretendera extracçãodeconteúdoespecífico.O ficheirode mapeamentodeamostra extraio conteúdona secção<doc>de um documentoeignoraoutrassecçõesnodocumento.Norelatóriopolicial de XML,aimagempodeser demasiadograndeenãomuitoútilparao processamentode texto.Aoespecificar<doc> comoelementosdeconteúdo enão <image>,aimageméfiltradaantesde seriniciadoqualquer

processamentode texto.

<elementToTypeMappings>

Utilize esteelementoparaespecificarquaisoselementosdeXML individuais(especificadosnumelemento<elementToTypeMapping>)no documentoa mapearparadeterminadasestruturasfuncionaisnaestrutura de análisecomum.

Seutilizara opçãodeextracçãodo conteúdo,oselementosXMLquesão especificadosnasecção <elementToTypeMappings>têmdeestarcontidos no âmbito doselementos XMLespecificadosnasecção <contentElements>. Procedimento

Paracriar umficheirodemapeamento deXMLparaaestruturade análisecomum:

1. CrieumficheiroXML.Paraevitar errosdesintaxeXML,utilizeum editorde XMLouferramentadecriaçãodeXMLparavalidaroXML.OesquemaXSD paraoficheirodemapeamento denomina-seXMLCasInitSchema.xsde encontra-sena instalaçãodo EnterpriseSearchemES_INSTALL_ROOT/

packages/uima/configuration_xsd/.

2. Incluaosmapeamentosnumelemento<xmlCasInitializerConfiguration xmlns=″http://www.ibm.com/2005/uima/jedii_ci_xml″>.Oespaçodenomes (especificado noatributoxmlns) temdeestarexactamenteconformemostrado.

3. Adicioneum elemento<contentElements> sepretenderextrairconteúdo específicodassecçõesnodocumentoeum elemento<elementToTypeMappings>

queespecificaquaisoselementosXMLindividuaisquepretendemapearpara determinadasestruturasfuncionaisnaáreadeanálisecomum.

4. Adicioneum elemento<identifier>eum elemento<description>.O identificadordeterminaqual omapeamentoa utilizarparadeterminados documentos XML.Umidentificador temdeconter oelementoraizdo

documento,talcomodoc.Seoidentificador estiverdefinidocomoPredefinição (Default),oelementoraiz dodocumentoéirrelevantee omapeamentoé aplicadoaqualquerdocumentoXML.

5. Adicioneum elemento<contentElements> sepretenderextrairinformações contidasapenasnaspartesrelevantes deumdocumento.Temoseguinte elementocomponente:

v Umoumais elementos<element>quecontenhamo caminhodeum elementoXMLnodocumentoeseguea sintaxeXPath,porexemplo

<element>/doc/tipoCrime</element>.

6. Adicioneum elemento<elementToTypeMappings>sepretenderespecificarquais oselementosXMLnodocumento quepretendemapearparadeterminadas estruturasfuncionaisnaestruturade análisecomum.Temosseguintes elementosde componente:

v Umoumais elementos<elementToTypeMapping>.Esteelementotemdeteros seguintes elementosimbricados:

Umelemento<element>queéutilizadoparaespecificarocaminhode um elementoXMLesegueasintaxeXPath:Umabarrainicial(/)significaque éfornecidoum caminhocompleto.Porexemplo,outrasinformaçõessobo elementoraizdoc.Duas barras(//)significamqualquersubconjuntodo caminho.Porexemplo,dataNascimentotem deocorrernoâmbito de agentePrincipal,apesarde outroselementospoderemocorrerentreestes dois.

Umelemento<type>,queespecificaumtipo queédefinidona descrição dosistematipo.Temde serdotipo Annotation.

Zerooumais elementos<featureValueAssignment>.

7. Numelemento<featureValueAssignment>,atribuaum nomedotipoCadeia (String)noelemento<feature>atribua umvalornoelemento<basicValue>. Várioselementos<basicValue>podemseradicionadosentreumelemento

<values>.

Oelemento<basicValue>pode teratributos.QueincluemuseAttributeValue, useElementContent,defaulte trim.

Utilize useAttributeValuesepretenderutilizarovalorde umatributocomovalor paraumafuncionalidade.Oseguinteexemplo

<elementToTypeMapping>

<element>/doc//agentePrincipal</element>

<type>com.ibm.omnifind.types.Pessoa</type>

<featureValueAssignment>

<feature>função</feature>

<basicValue default="Agente principal"/>

</featureValueAssignment>

<featureValueAssignment>

<feature>género</feature>

<basicValue default="masculino" useAttributeValue="sexo"/>

</featureValueAssignment>

</elementToTypeMapping>

resultanaseguintesaída:

v ParacadacontroloXML<agentePrincipal>,queocorrealguresnoâmbitode umcontroloXML<doc> nodocumento,é criadaumaestruturafuncionaldotipo com.ibm.omnifind.types.Pessoa.

v Seocontrolo<agentePrincipal>contiverumatributosexo,afuncionalidade génerodarecémcriadaestruturafuncional édefinidacomo valordoatributo.

Utilize oatributouseElementContentparaadicionarconteúdocomovalor deuma funcionalidade. Porexemplo,noseguintefragmentodemapeamento:

<elementToTypeMapping>

<element>//doc</element>

<type>com.ibm.omnifind.types.RelatórioPolicial</type>

<featureValueAssignment>

<feature>descriçãoCrime</feature>

<basicValue useElementContent="abstract" trim="true"/>

</featureValueAssignment>

</elementToTypeMapping>

Otextoabrangidopeloelemento<outras informações>em <doc>torna-seovalor daestruturafuncionaldescriçãoCrime.Todososespaçosembrancoiniciaisede seguimento sãoremovidos.

Podeserespecificado maisdoqueumvalor entreoelemento<values>paraos seguintes casos:

v Afuncionalidadea serdefinidaédo tipoStringArray.

v Muitascadeiassãoconcatenadasnuma sócadeiautilizandoo atributo delimitadore,destemodo, mapeieparaumafuncionalidadedo tipoCadeia (String).Porexemplo,otítuloSr.éumaconstante,onomepróprioéovalorde umatributoeoapelidoéabrangidoporumelementoXML:

<elementToTypeMapping>

<element>//doc//agentePrincipal</element>

<type>com.ibm.omnifind.types.Pessoa</type>

<featureValueAssignment>

<feature>sobrenome</feature>

<values concatenate="true" delimiter=" ">

<basicValue default="Sr."/>

<basicValue useAttributeValue="posto"

default="Ten."/>

<basicValue useElementContent="apelido"/>

</values>

</featureValueAssignment>

</elementToTypeMapping>

Os valoresdafuncionalidadedacadeiasãoextraídosdo ficheirodemapeamento talcomoestão.Osvaloresretêmquaisquerespaçosembranco iniciaisoude seguimento. Noentanto,osnomesdetiposefuncionalidadessãoaparadosde quaisquer espaçosembranco.Porexemplo,

<type>com.ibm.omnifind.types.Pessoa</type> torna-se

<type>com.ibm.omnifind.types.Pessoa</type>.

Defina ascondiçõesnosatributosutilizandoo elemento<condition>.Porexemplo, a estruturafuncional dotipo com.ibm.omnifind.types.Pessoaécriadaapenasse

<descriçãoSuspeito> ocorrernodocumentocomoatributoarmadodefinidocomo sim:

<elementToTypeMapping>

<element>//descriçãoSuspeito</element>

<type>com.ibm.omnifind.types.Pessoa</type>

<condition attribute="armado" value="sim"/>

</elementToTypeMapping>

Combase norelatóriopolicialde amostraenoficheirodemapeamento definido, sãocriadas asseguintesestruturasfuncionais:

com.ibm.omnifind.types.RelatórioPolicial

v textoabrangido:″Roubodecarro23/04/0521:23,R.Principal27-Porto Covo-Sines-Setúbal,JoaquimCosta14ªEsquadra,Masculino,cabelo escuro,óculosescuros,calçasdeganga azuiscomumcasacoescuro, provavelmentepreto.UmMercedesCLKfoi...Nadafoiroubadode dentrodo carro.

v início=2 v fim=904

v suspeitosConhecidos=nenhum

v descriçãoCrime=″UmMercedesCLKfoiroubadonodia23/04/2005de umparquede estacionamentoemfrenteaoRestauranteLagoaAzulna R.Principal27,PortoCovo.(númerodesérie:32276150871)″

com.ibm.omnifind.types.Pessoa

v textoabrangido=″JoaquimCosta″

v início=112 v fim=127

v função=″Agenteprincipal″

v nomePróprio=nenhum v sobrenome=″TenCosta″

v género=″masculino″

Após criaroficheirodemapeamento, temdecarregá-lonoEnterpriseSearche seleccionaro ficheirodemapeamentode XMLparaa estruturadeanálisecomum comasoutrasselecçõesdeanálisepersonalizadautilizandoa consolade

administração doEnterpriseSearch.

Conceitosrelacionados

“MarcaçãoXMLnaanáliseeprocura”napágina 30

Podemapear informaçõesemestruturasXMLnumdocumentodirectamente paraumaestruturadeanálisecomumsemescreverumanotadordeUIMA.

Referênciasrelacionadas

“Amostradadescriçãodo sistematipo”na página27

Adescriçãodosistematipodescreveasestruturasfuncionais(asestruturasde dadossubjacentesquerepresentam osresultadosdaanálise)utilizadasna análisepersonalizada.

No documento IBM OmniFind Enterprise Edition (páginas 40-45)