Asfuncionalidadesincorporadas sãonomesde funcionalidadepredefinidos com semântica especial.Podemserutilizadasparaacedera informaçõesquenão estão contidasnaestruturafuncionalem si,porexemplo,otipodeestruturafuncional ou otextoabrangidode umaanotação.Podemserutilizadasnumcaminhode funcionalidadecomooúltimoou únicoelemento.
Asseguintes funcionalidadesincorporadaspodemserutilizadasemambos os ficheiros deconfiguraçãodomapeamento:
v fsId()devolveo IDdaestruturafuncional.OIDdevolvidoéum número inteiro(32bits).Utilize estafuncionalidadeincorporadaparaacederapartesde umdocumentosquecorrespondamexactamenteàconsulta.
v typeName()devolveotipo deobjectodaestruturadeanálisecomum comouma cadeia.Otipo éonomede tipototalmentequalificadoincluindo quaisquer prefixosdeespaçodenomes, porexemplo,uima.tcas.Annotation.Nocontexto dabasede dados,typeName()éespecialmenteútilsearmazenartiposesubtipos namesmacoluna epretenderconhecerumtiporealdeumaanotaçãoou estruturafuncional.Oseguinteexemploarmazenaotipode pessoa,talcomo, suspeitooutestemunha,na colunadafunção.
<explicitMappingRule applyToSubTypes="false">
<type>com.ibm.omnifind.types.Pessoa</type>
<table>sample.pessoa</table>
<featureMappings>
<featureMapping>
<feature>typeName()</feature>
<column>função</column>
</featureMapping>
</featureMappings>
</explicitMappingRule>
v coveredText()devolveotextoqueéexpandidopeloobjectodeanálisecomum.
coveredText()estádisponívelapenasparaanotaçõeserespectivossubtipos.Não utilizeestafuncionalidadeincorporadaemestruturasfuncionaisquenão sejam sub-somadaspelotipode anotação.Oseguinteexemploarmazenaonomede umsuspeitonacoluna nomeSuspeito.
<implicitMappingRule applyToSubTypes="false">
<type>com.ibm.omnifind.types.Suspeito</type>
<relation>sample.pessoa</relation>
<featureMappings>
<featureMapping>
<feature>coveredText()</feature>
<column>nomeSuspeito</column>
<length>128</length>
</featureMapping>
</featureMappings>
</implicitMappingRule>
v []devolveumparâmetroidentificadoràentradadocontentor actual(matrizou lista).Afuncionalidadeimplicaumaiteração,oquesignificaqueumaentradaé efectuadanatabelade basesde dadosouíndiceparacadaelementonamatriz oulista.Oseguinteexemploé retiradode umficheirodemapeamento da estruturadeanálisecomum paraa basededados noqualafunçãoincorporada [:index]também épermitida.
<implicitMappingRule applyToSubTypes="false">
<type>uima.cas.FSArray</type>
<table>sample.suspeitosConhecidos</table>
<featureMappings>
<featureMapping>
<feature>uniqueId()</feature>
<column>arrayId</column>
</featureMapping>
<featureMapping>
<feature>[:index]</feature>
<column>arrayIndex</column>
</featureMapping>
<featureMapping>
<feature>[]/com.ibm.omnifind.types.Suspeito:uniqueId()</feature>
<column>IDsuspeito</column>
</featureMapping>
</featureMappings>
</implicitMappingRule>
Asseguintes funcionalidadesincorporadaspodemserutilizadasapenasnoficheiro de mapeamentodaestruturade análisecomumparaabasede dados:
v uniqueId()devolveo IDexclusivoglobaldaestruturafuncional. OIDexclusivo devolvidoéumacadeiadecomprimento fixo(27caracteres)e éuma
concatenaçãodoresultadodo fsId(),docId(),docTimestamp()edo númeroda parteactual,umavezqueosdocumentospodemserdivididos empartesde váriasestruturasdeanálisecomumnoEnterpriseSearch.
Acadeia devolvidapode incluirquaisquercaracteres entre″a-z″e ″A-Z″,os números″0-9″,pontoevírgula(″;″)edoispontos(″:″).
Oresultado deuniqueId()podeser utilizadocomochaveprincipalparatabelas.
v objectId()devolveo IDdaanotaçãoouestruturafuncional. objectId()é semelhanteauniqueId(),exceptoquenão contémoresultado de
docTimestamp().OIDdevolvidoéexclusivoapenasnuma colecçãoem queos documentossãoanalisadosumavez.Se requererexclusividadeemtodosos documentoseversõesdedocumentos,tem deutilizaruniqueId().
Acadeia devolvidadafuncionalidadeincorporadaobjectId()temum
comprimentofixode 16caracteresepode incluirquaisquercaracteresentre″a-z″
e″A-Z″,osnúmeros″0-9″,pontoevírgula(″;″)edoispontos(″:″).
SeouniqueId()ouobjectId()fizeremreferênciaàsestruturasfuncionaisque estãovazias,ovalor predefinidoestabelecido nadefiniçãodatabeladebasesde dadoséretirado,nãosãoarmazenadosobjectos vaziosdeumtipo referenciado.
v docId()devolveoIDdedocumento.Ovalorderetornoédotipo denúmero inteiro(32bits).
Oseguinteexemplomostraestasfuncionalidadesincorporadas:
<explicitMappingRule applyToSubTypes="true">
<type>com.ibm.omnifind.types.RelatórioPolicial</type>
<table>sample.RelatórioPolicial</table>
<featureMappings>
<featureMapping>
<feature>uniqueId()</feature>
<column>IDRelatórioPolicial</column>
</featureMapping>
<featureMapping>
<feature>docId()</feature>
<column>IDdocRelatórioPolicial</column>
</featureMapping>
</featureMappings>
</explicitMappingRule>
v docUri()devolveo URIdedocumento.
v docTimestamp()devolvea hora(emmilissegundos)em queodocumentofoi processado.Estafuncionalidadeincorporadaéútilpararastrearversõesde documentos,porexemplo,sepretendersabersea versãodo documentoqueestá autilizaréa maisrecenteprocessada pelaferramentadesequênciasde
hiperligações.
<explicitMappingRule applyToSubTypes="false">
<type>com.ibm.omnifind.types.RelatórioPolicial</type>
<relation>amostra.RelatórioPolicial</relation>
<featureMappings>
<featureMapping>
<feature>uniqueId()</feature>
<column>IDRelatórioPolicial</column>
</featureMapping>
<featureMapping>
<feature>docTimestamp()</feature>
<column>versãoRelatório</column>
</featureMapping>
</featureMappings>
</explicitMappingRule>
v parentId()devolveofsId()daestruturafuncional queinclui ummapeamento decontentor.parentId()éválidoapenasnoâmbitodocontexto deum
mapeamentodecontentor.
v uniqueParentId()devolveouniqueId()daanotaçãoouestruturafuncional incluídanummapeamentodecontentor.Estafuncionalidadeincorporada tambéméválidaapenasnoâmbito docontextode mapeamentodecontentor.
v [:index]devolveo índicedaentradadocontentor actual(matrizoulista).
Tarefasrelacionadas
“Obterpartesdeum documentoquecorrespondamaumaconsultadeprocura semântica”napágina61
Podeobter apenasaspartesdeumdocumentoquecorrespondamexactamente àconsultaatravésdomapeamentodasestruturasfuncionaisrelevantesparao índiceebase dedadoseespecificandoa expansãonaconsultadeprocura semântica.
Filtros
Os filtrossãoutilizadospararestringirregrasdemapeamento nosficheirosde mapeamento daestruturadeanálisecomumparaoíndice enosficheirosde mapeamento daestruturadeanálisecomumparaa basededados.Apenasquando o filtroestádefinidocomoverdadeiro(true)sãoadicionadososresultadosda análiseaoíndiceoua umatabelaJDBC.
Oelemento<filter>éopcionaleutilizadopararestringirosmapeamentosapenas parafuncionalidadescomdeterminado valordeatributo.Éútilsepretenderque um atributofuncionecomo umparâmetroparaindicaroqueseráparaindexarou adicionar àbasede dados.Porexemplo,aspessoaseorganizaçõespodemser registadas numaanotaçãodotipo EntityAnnotation.Arespectiva funcionalidade
denominadatypeestádefinidacomopessoaouorganização.Paraextrair apenas aspessoasenão asorganizações,pode adicionaroseguintefiltroà regrade mapeamento:
<filter syntax="FeatureValue">type = "pessoa"</filter>
Cadaexpressãodefiltro tomaaforma:
<FeaturePath> <Operador> <Literal>
em que:
v FeaturePath,correspondea umcaminhode funcionalidadenaestruturade análisecomum.
v Operador,correspondea=,!=,<,<=,>ou>=.Tenhaematençãoque<(e apenas<)temdeser expressocomo <.
v Literal,éumnúmerointeiro,númerodevírgulaflutuante(não ésuportada qualquersintaxeexpoente)ouliteraldecadeia,colocadoentreaspas, comaspas incorporadasebarras invertidasantecedidasporumabarrainvertida.
<FeaturePath>,<Operador>e<Literal> têmdeser separadosporumespaçoem branco.
Os seguintesexemplossãofiltrosválidos:
v <filter syntax="FeatureValue"> foo = "olá mundo" </filter>
Afuncionalidade″foo″contémacadeia″olámundo″.
v <filter syntax="FeatureValue"> foo < 42 </filter>
Afuncionalidade″foo″contémumvalorinteiroinferiora42.
v <filter syntax="FeatureValue"> marca/empresa = "Chevrolet" </filter>
Ocaminho defuncionalidade″marca/empresa″ emquea funcionalidade
″marca″contémumaestruturafuncional comumafuncionalidade″empresa″
comovalor″Chevrolet″.
v <filter syntax="FeatureValue"> bar7 >= 0,5 </filter>
Afuncionalidade″bar7″ contémum valorflutuantesuperiorou iguala 0,5.