Hprimator 16.5

Késako ?

  • Hprimator permet de convertir un fichier RTF anonyme en un fichier HPRIM.
    • Correctement renommé (pour Médycs)
    • Et contenant une entête Hprim ordonnée (partiellement) reconstituée
  • Le fichier RTF est obtenu à partir d’un scanner de document générant du PDF et OCérisé par Omnipage
    1. La date de réalisation du document,
    2. ainsi que le nom
    3. le prénom
    4. et la date de naissance du patient
  • sont automatiquement reconnus dans le texte, selon un balisage intelligent qui dépend du type de document (mais surtout du type de correspondant – car on remarque que chaque correspondant formule toujours ses courriers de la même façon)
  • Plus on utilise Hprimator, et plus il devient performant car il apprend au fur et à mesure de son utilisation à baliser correctement les documents reçus. (C’est l’intérêt des nombreuses listes qui l’accompagne)

ALGORITHME :

  • A chaque type de document est associé un GABARIT,
    • Le Gabarit définit le balisage habituel des champs “Patients” dans un document
  • Le nom du Gabarit est donné par un extrait littéral spécifique du document, par exemple “Cabinet de Radiologie de Ploemeur“,
    • Tout l’art est donc de bien choisir “la signature” en choisissant “la bonne ligne”
    • Il ne faut pas hésiter à multiplier les gabarits pour augmenter la précision de la reconnaissance, car dans un même service, chaque médecin peut avoir son style.
      • La taille des disque durs et la puissance des processeurs ne justifie plus les économies de ce coté la.

h_titre

  • Pour Hprimator le nom de ce gabarit est appelé “TITRE
    • A chaque titre peut être associé un SOUS TITRE générique qui servira à donner une nom plus convivial  au fichier HPRIM
    • Par exemple :
      • Le TITRE : Cabinet de Radiologie de Ploemeur, peut être associé
      • Au SOUS TITRE: “RADIO
    • Car il est beaucoup plus convivial de dire
      • “Voila le résultat de la radio de Mme dupont”, que
      • “Voila le résultat du Cabinet de radiologie de Ploemeur pour Mme Dupont”.

Association d’un sous titre “court” convivial à chaque “Gabarit”

h_titrecourtDans le dossier LISTES du programme :

  • Sont créés autant de sous dossiers que de gabarits (création par exemple du dossier
    • LISTES\CABINET DE RADIOLOGIE DE PLOEMEUR)

h_gabarits_dossiers

  • Et dans chaque gabarit créé sont placés 4 fichiers textes :

h_balises_fichiers

  1. NOM = Toutes les balises utilisées par ce correspondant pour annoncer le “NOM DU PATIENT”
    1. (Par exemple Madame, Mme ou Mademoiselle)
  2. PRENOM = Toutes les balises utilisées par ce correspondant pour annoncer le “PRENOM DU PATIENT”
    1. (comme le prénom suit habituellement le NOM, la macro-balise <NOM> est utilisée par défaut,
    2. à l’usage <NOM> sera automatiquement remplacée par le NOM DU PATIENT, dès que celui ci sera argumenté. (Voir ici pour les autres macro-balises)
  3. DDN = Toutes les balises utilisées par ce correspondant pour annoncer la “DATE DE NAISSANCE DU PATIENT”
  4. DATE = Toutes les balises utilisées par ce correspondant pour annoncer la “DATE DU JOUR
Exemple de Balises annonçant un NOM
Compte rendu de l'examen de : Madame
Compte rendu de l'examen de :
Voici des nouvelles de Madame
Courrier concernant Madame
COMPTE RENDU de Madame
Votre patiente Madame
mon ayant droit :
de l'examen de :
Nom et Prénom :
Nom du Patient
Nom de naiss.
Nom, Prénom :
Mademoiselle
examen de :
Fiche de :
Patiente :
examen de
Je revois
Pour: Mme
MONSIEUR
Patient:
Madame
Melle
Nom :
Mine
Mlle
Mme.
Me.
MLE
Mme
Mr.
Nom
M.
Me
  • On remarque que les balises sont classées par taille et non par ordre alphabétique, c’est à dire du plus complexe au plus simple, ce qui correspond à un ordre logique “par élimination”,
    • Si ne ne trouve pas la “grande” balise 1, je passe à la balise 2 (plus simple) et ce de plus en plus simple jusqu’à ce que je trouve …
  • Retenons que la ponctuation est automatiquement supprimée du balisage, il n’est donc pas conseillé de laisser des points et des virgules

h_tri_longueur

Exemple de Balises annonçant un PRENOM
<NOM>
Prénom :
  • Le fichier est ici beaucoup plus “spartiate”, car grossièrement quand on a trouvé le NOM, trouver le prénom devient un jeu d’enfant
  • C’est :
    • Le Mot qui suit ou qui précède le NOM
      • Et
    • Qui appartient à la liste des Prénoms

Il est donc beaucoup plus judicieux de s’intéresser à cette liste des prénoms qui va s’étoffer au fur et à mesure de l"utilisation du programme

Liste_des_Prénoms
Adele
 Adelina
 Adeline
 Agathe
 Agnes
 Aicha
 Aimee
 Aimée
 Alain
 Alan
 Albane
 Albert
 Albertine
 Alexa
 Alexandra
 Alexandre
 Alexandrine
 Alexia
 Alexis
 Ali
 Alice
 Alice.
 Alicia
 Aline
 Aline-Marie
 Alisee
 Alissa
 Amandine
 Amelie
 Amie
 Anaelle
 Anais
 Anaïs
 Andre
 Andree
 Andrée
 Angela
 Angele
 Angelina
 Angelique
 Angélique
 Anita
 Ann
 Anna
 Annabel
 Annabelle
 Annaick
 Annaig
 Anne
 Anne Catherine
 Anne Cecile
 Anne Claire
 Anne Danielle
 Anne Francoise
 Anne Gaelle
 Anne Laure
 Anne Lise
 Anne Marie
 Anne Solenn
 Anne Sophie
 Anne-Laure
 Ann-Ellen
 Anne-Marie
 Annette
 Annick
 Annie
 Anthony
 Antoine
 Antoinette
 Ariane
 Arlette
 Armand
 Armande
 Armelle
 Arnaud
 Arnaude
 Arthur
 Astrid
 Astride
 Aude
 Audrey
 Augustine
 Aurelia
 Aurelie
 Aurélie
 Aurore
 Awa
 Axelle
 Aziliz
 Barbara
 Beatrice
 Béatrice
 Beauverger
 Benedicte
 Benjamin
 Benoit
 Berengere
 Bernadette
 Bernard
 Berthe
 Bertille
 Bertrand
 Bettina
 Betty
 Blandine
 Brice
 Brigitte
 Bruno
 Calrole
 Camille
 Candy
 Capucine
 Carine
 Carmen
 Carole
 Caroline
 Carolle
 Cassandre
 Catherine
 Cathie
 Cathy
 Catia
 Cecile
 Cécile
 Cecilia
 Cedric
 Celestine
 Celina
 Celine
 Céline
 Chantal
 Chantale
 Chanthy
 Charlene
 Charlène
 Charles
 Charline
 Charlotte
 Chloe
 Christel
 Christele
 Christelle
 Christian
 Christiane
 Christina
 Christine
 Christophe
 Chrystele
 Chrystelle
 Cindy
 Cinthya
 Claire
 Claire-Elise
 Clara
 Clarisse
 Claude
 Claudette
 Claudia
 Claudie
 Claudine
 Claudne
 Clemence
 Clementine
 Cloe
 Clotilde
 Colette
 Coralie
 Corine
 Corinne
 Coryne
 Cynthia
 Cyreille
 Cyrielle
 Cyrille
 Daisy
 Dalila
 Damien
 Daniel
 Daniele
 Daniella
 Danielle
 Dany
 Daphne
 David
 Deborah
 Delphine
 Denis
 Denise
 Diana
 Diane
 Didier
 Dominique
 Doriane
 Doris
 Dorothee
 Dujardin
 Eaurianne
 Eddy
 Edith
 Editions
 Edwige
 Elen
 Elena
 Eleonore
 Eliane
 Elisa
 Elisabeth
 Elise
 Elizabeth
 Ellen
 Elodi
 Elodie
 Elouard
 Elsa
 Emeline
 Emilia
 Emilie
 Emilienne
 Emma
 Emmanuel
 Emmanuella
 Emmanuelle
 Engy
 Enora
 Erell
 Eric
 Erwan
 Estelle
 Etiennette
 Eugene
 Eugenie
 Eva
 Eve
 Evelyne
 Fabienne
 Fabrice
 Fanny
 Fatima
 Fatma
 Fatou
 Fernande
 Fidan
 Fiona
 Flavie
 Flore
 Florence
 Florent
 Florentina
 Floriane
 France
 Francesca
 Francine
 Franck
 Francois
 François
 Francoise
 Françoise
 Frank
 Frederic
 Frederique
 Gabrielle
 Gael
 Gaelle
 Gaetane
 Gamra
 Gena
 Genevieve
 Geneviève
 Georges
 Georgette
 Geraldine
 Géraldine
 GERALDINE
 Gerard
 Germaine
 Gersende
 Ghislaine
 Ghyslaine
 Gilberte
 Gildas
 Gilles
 Ginette
 Gipsy
 Gisele
 Gisèle
 Gladys
 Graziella
 Gregory
 Guenael
 Guenaelle
 Guenoa
 Guenola
 Guillaume
 Guillemette
 Gursum
 Guy
 Guylaine
 Guylene
 Gwenael
 Gwenaele
 Gwenaelle
 Gwenaick
 Gwendoline
 Gwenn
 Gwennan
 Gwenola
 Gwladys
 Gyneco
 Haude
 Helena
 Helene
 Hélène
 Henri
 Henriette
 Hervé
 Hortense
 Huguette
 Ida
 IDOWOU
 Ika
 Ines
 Ingrid
 Irene
 Irma
 Isabel
 Isabelle
 J.Claude
 J.Jacques
 Jacky
 Jacqueline
 Jacques
 Jane
 Janick
 Janine
 Janique
 Jannick
 Jany
 Jasmine
 Jean
 Jean Claude
 Jean Francois
 Jean Luc
 Jean Marc
 Jean Marie
 Jean Michel
 Jean Noel
 Jean Paul
 Jean Philippe
 Jean Pierre
 Jeanine
 Jeanne
 Jeannette
 Jeannine
 Jennifer
 Jenny
 Jeremy
 Jerome
 Jerôme
 Jessica
 Jessie
 Jessy
 Jim
 Joanna
 Jocelyne
 Joel
 Joelle
 Johana
 Johanna
 Johanne
 Jose
 Joseph
 Josephine
 Josette
 Joshua
 Josiane
 Josyane
 Juanita
 Judicaelle
 Julia
 Juliana
 Julie
 Julien
 Julienne
 Juliette
 Juline
 Justine
 Kaelig
 Kamelia
 Karel'
 Karen
 Karene
 KARIMA
 Karin
 Karine
 Katel
 Katell
 Katherine
 Kathleen
 Kathy
 Katia
 Katy
 Kelly
 Ketty
 Kevin
 Kpie
 Kristel
 Kristell
 Kristelle
 Laetitia
 Laétitia
 Laêtitia
 Lanester
 Latifa
 Laura
 Laure
 Laurence
 Laurent
 Laurette
 Lauriane
 Laurianne
 Laurie
 Lea
 Leila
 Lena
 Lenaic
 Lenaick
 Lenaig
 Leone
 Leonie
 Leontine
 Leslie
 Lierre
 Liliane
 Lina
 Linda
 Lionel
 Lisa
 Lise
 Lisiane
 Liya
 Loic
 Loise
 Lolita
 Lora
 Loren
 Lorette
 Louis
 Louisa
 Louise
 Louisette
 Luce
 Lucette
 Lucie
 Lucienne
 Lucile
 Lucille
 Lucrecia
 Ludivine
 Ludovic
 Lydia
 Lydie
 Lynda
 Lysiane
 M.
 Madelaine
 Madeleine
 Maela
 Maelenn
 Maella
 Maelle
 Maeva
 Magali
 Magalie
 Maggy
 Mailys
 Maina
 Maiwenn
 Malado
 Malika
 Mallorie
 Manon
 Manuela
 Manuella
 Marc
 Marceau
 Marceline
 Marcelle
 Margaux
 Margot
 Marguerite
 Maria
 Mariana
 Mariane
 Marianne
 Mariannick
 Marie
 Marie Agnes
 Marie Andree
 Marie Ange
 Marie Anne
 Marie Annick
 Marie Antoinette
 Marie Bernadette
 Marie Caroline
 Marie Catherine
 Marie Cecile
 Marie Christine
 Marie Claire
 Marie Claude
 Marie Elisabeth
 Marie Elise
 Marie Eve
 Marie France
 Marie Francoise
 Marie Gabrielle
 Marie Helene
 Marie Jeanne
 Marie Jose
 Marie Josee
 Marie Joseph
 Marie Laure
 Marie Laurence
 Marie Line
 Marie Lise
 Marie Louise
 Marie Luce
 Marie Lyse
 Marie Madelaine
 Marie Madeleine
 Marie Michele
 Marie Noelle
 Marie Odile
 Marie Paule
 Marie Pierre
 Marie Reine
 Marie Renee
 Marie Rose
 Marie Therese
 Marie Veronique
 Marie Yvonne
 Marie-Bernadett
 Marie-Bernadette
 Marie-Claire
 Marie-Flore
 Marie-Helene
 Marie-Hélène
 Marie-Laure
 Marie-Line
 Marielle
 Marie-Lore
 Marie-Pierre
 Marie-Pol
 Mariette
 Marig
 Marilyn
 Marilyne
 Marina
 Marine
 Marinette
 Mario
 Marion
 Marjorie
 Marjory
 Marlene
 Marthe
 Martine
 Maryannick
 Marylene
 Maryline
 Marylise
 Maryse
 Maryvonne
 Mathieu
 Mathilde
 Maud
 Maude
 Maunela
 Maureen
 Mauricette
 Maxime
 Medical
 Megane
 Melanie
 Mélanie
 Melina
 Melinda
 Meline
 Melissa
 Mélisse
 Melody
 Mercedes
 Michel
 Michele
 Michèle
 Micheline
 Michelle
 Mickael
 Mie
 Mikael
 Mireille
 Mohamed
 Monique
 Montserrat
 Morena
 Morgan
 Morgane
 Mounia
 Mounie
 Mourtaria
 Muriel
 Murielle
 Murtia
 Mylee
 Mylene
 Myreille
 Myriam
 Nadege
 Nadia
 Nadine
 Nadjah
 Naig
 Nancy
 Natacha
 Nathalie
 Nelly
 Nicod
 Nicolas
 Nicole
 Nicolle
 Nina
 Ninon
 Noella
 Noelle
 NOËLLE
 Noemie
 Nolwen
 Nolwenn
 Nora
 Oceane
 Odette
 Odile
 Olga
 Olivia
 Olivier
 Ophelie
 Oriana
 P.Yves
 Paola
 Pascal
 Pascale
 Pascaline
 Patrice
 Patricia
 Patrick
 Paul
 Paule
 Paulette
 Pauline
 Peggy
 Perle
 Perles
 Perrine
 Philippe
 Philomene
 Pierre
 Pierrette
 Pierrick
 Prisca
 Priscilla
 Priscille
 Puech
 R.Helene
 Rachel
 Raphaelle
 Raymonde
 Rebecca
 Regine
 Reine
 Remy
 Renee
 Renée
 Richard
 Robert
 Robineau
 Roger
 Rolande
 Rollande
 Romuald
 Ronan
 Rosa
 Rosalie
 Rosanne
 Rosario
 Rose
 Rose Marie
 Roselyne
 Rosemary
 Rosine
 Rosita
 Roxane
 Rozelin
 Rozen
 Rozenn
 Sabine
 Sabrina
 Saida
 Salomon
 Samantha
 Samira
 Samuel
 Sandie
 Sandra
 Sandrine
 Sandy
 Sara
 Sarah
 Sebastien
 Segolene
 Selena
 Semrha
 Seraphine
 Serge
 Servane
 Servanne
 Severine
 Séverine
 Sharon
 Shirley
 Sidonie
 Simone
 Soazig
 Soizic
 Solange
 Solen
 Solene
 Solenn
 Solenne
 Sonia
 Sophie
 Soraya
 Stephane
 Stéphane
 Stephanie
 Stéphanie
 Sterenn
 Stessy
 Sullyan
 Suzanne
 Sylvain
 Sylvaine
 Sylvette
 Sylvia
 Sylviane
 Sylvie
 Tatiana
 Telecom
 Therese
 Thierry
 Tifenn
 Tiffany
 Tiphaine
 Toioussi
 Tony
 Typhaine
 Typhanie
 Valene
 Valentine
 Valeria
 Valerie
 Valérie
 Vanessa
 Vanille
 Veronique
 Véronique
 Victoria
 Vincent
 Violaine
 Violette
 Virgine
 Virginie
 Viviane
 Xavier
 Yaelle
 Yamina
 Yann
 Yannick
 Yoann
 Yohan
 Yohann
 Yolande
 Yveline
 Yvelise
 Yves
 Yvette
 Yvon
 Yvonne
 Zineb
 Zoe
  • On remarque qu'il y a plus de prénoms de filles que de garçons, (c'est normal dans un cabinet de gynécologie)
  • Et qu'il y a parfois plusieurs occurrences pour un même prénom
    • Avec ou sans accent
    • Avec ou sans faute de frappe (l'important n'est pas tant ce qui est écrit que ce que la machine a compris !)
      • Et il faut toujours tenter de comprendre pourquoi la machine n'a pas réagit correctement.
Exemple de Balises annonçant une Date de Naissance
Date de naissance du patient :
Date et lieu de naissance :
Date de naissance :
Date de Naissance :
Date de naissance:
Date de Naissance
Date Naissance :
Ddn patient:
né (e) le :
Né(e) le :
Né (e) le
Ne(e) le
Né(e) le
Née le :
Né() le
Née le
ans ,
DDN :
né le
Né(e)
DDN:
ans
DN:
^(
(

 

  • On note juste ici le Symbole
^
  • Qui signifie que la balise qui suit doit obligatoirement se trouver en “Début de ligne”
Exemple de Balises annonçant une Date de Rédaction
ECHOGRAPHIE ABDOMINALE ET PELVIENNE du
COMPTE RENDU D'ECHOGRAPHIE DU
Prélèvement effectué le
Date du prélèvement :
Edition complète le
Date de création :
Date échographie :
Document édité le
Ploemeur, le <JS>
Date d'analyse :
PLOEMEUR Le <JS>
Examen Elément
Examen fait le
A <VILLE>, le
Date examen :
Enregistré le
Prélèvement :
Prélevé le :
<VILLE> le,
<VILLE>, le
Début hosp.
Prescrit le
<VILLE> le
Dossier du
Edition du
Edition le
Menteur le
Prélevé le
Edition :
Signé le
Le <JS>
Prt du
) Le
Le :
^Le
_Du
ans
Le
  • On remarque 2 nouvelle macro commande
 <JS> pour jour de semaine, remplacera n'importe quel jour de la semaine en clair,

Par exemple "LORIENT le <JS> 14/07/1789" va tester successivement s'il trouve dans le texte
- Lorient le lundi 14/07
- Lorient le mardi 14/07 
jusqu'à ce qu'il est trouvé une correspondance.
La boucle s'arrête dès que le jour de la semaine correspond et la date qui suit est retournée
<VILLE> va tester toutes les villes dans l'ordre d’apparition sur la liste,

Si je reprends l'exemple précédent, je peux écrire <VILLE> le <JS> 14/07/1789
Le programme va chercher successivement :
- Brest le lundi, Brest le Mardi etc ...
- Puis Lorient le Lundi, Lorient le Mardi ...
- Puis Quimper le Lundi etc ...

Même s'il y a 1000 villes à tester pour les 7 jours de la semaine, 
la méga-vitesse du processeur rendra un résultat en une fraction de seconde,
d'autant que l'analyse s'arrête dès l’occurrence est trouvée.

Nouveautés de la version de Mai :

Le Titre Court

  • Le Titre du Gabarit (parfois un peu long, et parfois un peu ésotérique)
    • sert à argumenter le champ “CORRESPONDANT” de l’entête HPRIM
    • Il sert également à construire le Nom du fichier, pour obéir au standard de l’intégration d’un document HPRIM dans le logiciel Médical Médycs
  • Faire correspondre à chaque titre long, un titre plus court mais tout aussi explicite est le principal apport de la version 16.5

Comment faire ?

  • Le plus simple est d’écrire directement dans le camp “Titre Court” et d’appuyer sur TAB pour valider (attention par sur entrée, car c’est la touche qui valide la construction du fichier HPRIM)

h_titrecourt_2

  • Il suffit de valider la boite de confirmation :

h_titrecourt_conf

  • Par défaut la table des remplacement s’ouvre :

h_table_titrescourts

  • Un clic droit permet de trier les entrées pour les corriger

h_table_tri

Intégration des listes par Drag and Drop

  • Pour charger une liste (Prénoms, Balises)
    • Il suffit de déposer le fichier texte éponyme sur la liste,
      • (Attention le Fichier doit avoir le nom correct – sinon il est rejeté)

Laisser un commentaire