# How mappings works

## How are mappings saved/computed

Mappings are generated in the `generate_missing_labels`  step of the submission process. Where we iterate over all the labels and append two triples to the current submission graph


1. First triple :   `<class_id> http://data.bioontology.org/metadata/def/mappingLoom> loomLabel`
2. Second triple :   `<class_id> http://data.bioontology.org/metadata/def/mappingSameURI> <class_id>`

All the generated new triples will be also saved in parallel in the `mappings.ttl` file inside the submission folder.

## How are mappings fetched

```sql

SELECT DISTINCT ?s1 ?s2 ?g ?source ?o
WHERE {
 {  
     GRAPH <http://data.bioontology.org/ontologies/E-PHY/submissions/1> {     
      ?s1 <http://bioportal.bioontology.org/ontologies/umls/cui> ?o .
     } 
     GRAPH ?g {      
       ?s2 <http://bioportal.bioontology.org/ontologies/umls/cui> ?o .  
     }  
     BIND ('CUI' AS ?source) 
 } 
 UNION 
 { 
     GRAPH <http://data.bioontology.org/ontologies/E-PHY/submissions/1> {
      ?s1 <http://data.bioontology.org/metadata/def/mappingSameURI> ?o .
     } 
     GRAPH ?g {
      ?s2 <http://data.bioontology.org/metadata/def/mappingSameURI> ?o .
     } 
     BIND ('SAME_URI' AS ?source 
} 
UNION
{  
    GRAPH <http://data.bioontology.org/ontologies/E-PHY/submissions/1> { 
     ?s1 <http://data.bioontology.org/metadata/def/mappingLoom> ?o .
    } 
    GRAPH ?g {
     ?s2 <http://data.bioontology.org/metadata/def/mappingLoom> ?o .
    }
    BIND ('LOOM' AS ?source)
 } 
 UNION 
 { 
    GRAPH <http://data.bioontology.org/ontologies/E-PHY/submissions/1> { 
     ?s1 <http://data.bioontology.org/metadata/def/mappingRest> ?o . 
	  } 
    GRAPH ?g {
     ?s2 <http://data.bioontology.org/metadata/def/mappingRest> ?o .  
    }  
    BIND ('REST' AS ?source)}
 }
 FILTER ((?s1 != ?s2) || (?source = 'SAME_URI'))
 FILTER (!STRSTARTS(str(?g),'http://data.bioontology.org/ontologies/E-PHY'))
} 
OFFSET 0 LIMIT 50
```

## Mapping result example

| s1 (source concepts) | s2  (target concept) | g (target graph) | type | o (commun subject) |
|----------------------|----------------------|------------------|------|--------------------|
| <http://www.d2kab.org/ontologies/ephy#PhraseRisque> | <http://www.d2kab.org/ontologies/ephy#PhraseRisque> | <http://data.bioontology.org/ontologies/ITAB/submissions/1> | SAME_URI | <http://www.d2kab.org/ontologies/ephy#PhraseRisque> |
| <http://www.d2kab.org/ontologies/ephy#PPP> | <http://www.d2kab.org/ontologies/ephy#PPP> | <http://data.bioontology.org/ontologies/ITAB/submissions/1> | SAME_URI | <http://www.d2kab.org/ontologies/ephy#PPP> |
| <http://www.d2kab.org/ontologies/ephy#Intrant> | <http://www.d2kab.org/ontologies/ephy#Intrant> | <http://data.bioontology.org/ontologies/ITAB/submissions/1> | SAME_URI | <http://www.d2kab.org/ontologies/ephy#Intrant> |
| <http://www.d2kab.org/ontologies/ephy#Culture> | <http://ontology.inrae.fr/frenchcropusage/Crop> | <http://data.bioontology.org/ontologies/FCU/submissions/8> | LOOM | culture^^http://www.w3.org/2001/XMLSchema#string |
| <http://www.d2kab.org/ontologies/ephy#Culture> | <http://www.d2kab.org/ontologies/ephy#Culture> | <http://data.bioontology.org/ontologies/ITAB/submissions/1> | SAME_URI | <http://www.d2kab.org/ontologies/ephy#Culture> |
| <http://www.d2kab.org/ontologies/ephy#Culture> | <https://dbpedia.org/page/Category:Crops> | <http://data.bioontology.org/metadata/ExternalMappings> | REST | <http://data.bioontology.org/rest_backup_mappings/ff7d9c60-2384-013a-fd76-5254007cab39> |
| <http://www.d2kab.org/ontologies/ephy#Culture> | <http://purl.lirmm.fr/ontology/MDRFRE/10061447> | <http://data.bioontology.org/ontologies/MDRFRE/submissions/6> | LOOM | culture^^http://www.w3.org/2001/XMLSchema#string |
| <http://www.d2kab.org/ontologies/ephy#Dose> | <http://www.d2kab.org/ontologies/ephy#Dose> | <http://data.bioontology.org/ontologies/ITAB/submissions/1> | SAME_URI | <http://www.d2kab.org/ontologies/ephy#Dose> |
| <http://www.d2kab.org/ontologies/ephy#Dose> | <http://sweetontology.net/propMass/Dose> | <http://data.bioontology.org/ontologies/SWEET/submissions/10> | LOOM | dose^^http://www.w3.org/2001/XMLSchema#string |
| <http://www.d2kab.org/ontologies/ephy#Dose> | <http://www.eionet.europa.eu/gemet/concept/2308> | <http://data.bioontology.org/ontologies/JEROME_3/submissions/2> | LOOM | dose^^http://www.w3.org/2001/XMLSchema#string |
| <http://www.d2kab.org/ontologies/ephy#Dose> | <http://www.eionet.europa.eu/gemet/concept/2308> | <http://data.bioontology.org/ontologies/JEROME_1/submissions/1> | LOOM | dose^^http://www.w3.org/2001/XMLSchema#string |
| <http://www.d2kab.org/ontologies/ephy#Dose> | <http://www.eionet.europa.eu/gemet/concept/2308> | <http://data.bioontology.org/ontologies/JEROME_6/submissions/1> | LOOM | dose^^http://www.w3.org/2001/XMLSchema#string |
| <http://www.d2kab.org/ontologies/ephy#Dose> | <http://www.eionet.europa.eu/gemet/concept/2308> | <http://data.bioontology.org/ontologies/GEMET2/submissions/3> | LOOM | dose^^http://www.w3.org/2001/XMLSchema#string |
| <http://www.d2kab.org/ontologies/ephy#Dose> | <http://www.eionet.europa.eu/gemet/concept/2308> | <http://data.bioontology.org/ontologies/JEROME_3/submissions/10> | LOOM | dose^^http://www.w3.org/2001/XMLSchema#string |
| <http://www.d2kab.org/ontologies/ephy#Dose> | <http://www.eionet.europa.eu/gemet/concept/2308> | <http://data.bioontology.org/ontologies/JEROME_5/submissions/1> | LOOM | dose^^http://www.w3.org/2001/XMLSchema#string |
| <http://www.d2kab.org/ontologies/ephy#Dose> | <http://www.eionet.europa.eu/gemet/concept/2308> | <http://data.bioontology.org/ontologies/JEROME_3/submissions/1> | LOOM | dose^^http://www.w3.org/2001/XMLSchema#string |
| <http://www.d2kab.org/ontologies/ephy#Dose> | <http://www.eionet.europa.eu/gemet/concept/2308> | <http://data.bioontology.org/ontologies/JEROME_3/submissions/6> | LOOM | dose^^http://www.w3.org/2001/XMLSchema#string |
| <http://www.d2kab.org/ontologies/ephy#Dose> | <http://www.eionet.europa.eu/gemet/concept/2308> | <http://data.bioontology.org/ontologies/GEMET2/submissions/4> | LOOM | dose^^http://www.w3.org/2001/XMLSchema#string |
| <http://www.d2kab.org/ontologies/ephy#Dose> | <http://www.eionet.europa.eu/gemet/concept/2308> | <http://data.bioontology.org/ontologies/JEROME_4/submissions/1> | LOOM | dose^^http://www.w3.org/2001/XMLSchema#string |
| <http://www.d2kab.org/ontologies/ephy#Dose> | <http://www.eionet.europa.eu/gemet/concept/2308> | <http://data.bioontology.org/ontologies/JEROME_3/submissions/4> | LOOM | dose^^http://www.w3.org/2001/XMLSchema#string |
| <http://www.d2kab.org/ontologies/ephy#MELANGE> | <http://www.d2kab.org/ontologies/ephy#MELANGE> | <http://data.bioontology.org/ontologies/ITAB/submissions/1> | SAME_URI | <http://www.d2kab.org/ontologies/ephy#MELANGE> |
| <http://purl.obolibrary.org/obo/CHEBI_24431> | <http://purl.obolibrary.org/obo/CHEBI_24431> | <http://data.bioontology.org/ontologies/JEROME_2/submissions/1> | SAME_URI | <http://purl.obolibrary.org/obo/CHEBI_24431> |
| <http://purl.obolibrary.org/obo/CHEBI_24431> | <http://purl.obolibrary.org/obo/CHEBI_24431> | <http://data.bioontology.org/ontologies/AGRO/submissions/1> | SAME_URI | <http://purl.obolibrary.org/obo/CHEBI_24431> |
| <http://purl.obolibrary.org/obo/CHEBI_24431> | <http://purl.obolibrary.org/obo/CHEBI_24431> | <http://data.bioontology.org/ontologies/ITAB/submissions/1> | SAME_URI | <http://purl.obolibrary.org/obo/CHEBI_24431> |
| <http://purl.obolibrary.org/obo/CHEBI_24431> | <http://purl.obolibrary.org/obo/CHEBI_24431> | <http://data.bioontology.org/ontologies/AGROVOC/submissions/2> | SAME_URI | <http://purl.obolibrary.org/obo/CHEBI_24431> |
| <http://purl.obolibrary.org/obo/CHEBI_24431> | <http://purl.obolibrary.org/obo/CHEBI_24431> | <http://data.bioontology.org/ontologies/ENVO/submissions/1> | SAME_URI | <http://purl.obolibrary.org/obo/CHEBI_24431> |
| <http://purl.obolibrary.org/obo/CHEBI_24431> | <http://purl.obolibrary.org/obo/CHEBI_24431> | <http://data.bioontology.org/ontologies/FOODON/submissions/1> | SAME_URI | <http://purl.obolibrary.org/obo/CHEBI_24431> |
| <http://www.d2kab.org/ontologies/ephy#ADJUVANT> | <http://www.d2kab.org/ontologies/ephy#ADJUVANT> | <http://data.bioontology.org/ontologies/ITAB/submissions/1> | SAME_URI | <http://www.d2kab.org/ontologies/ephy#ADJUVANT> |
| <http://www.d2kab.org/ontologies/ephy#ADJUVANT> | <http://aims.fao.org/aos/agrovoc/c_16381> | <http://data.bioontology.org/ontologies/AGROVOC/submissions/3> | LOOM | adjuvant^^http://www.w3.org/2001/XMLSchema#string |
| <http://www.d2kab.org/ontologies/ephy#ADJUVANT> | <http://aims.fao.org/aos/agrovoc/c_16381> | <http://data.bioontology.org/ontologies/AGROVOC/submissions/1> | LOOM | adjuvant^^http://www.w3.org/2001/XMLSchema#string |
| <http://www.w3.org/2004/02/skos/core#Concept> | <http://www.w3.org/2004/02/skos/core#Concept> | <http://data.bioontology.org/ontologies/GEMET/submissions/1> | SAME_URI | <http://www.w3.org/2004/02/skos/core#Concept> |
| <http://www.w3.org/2004/02/skos/core#Concept> | <http://www.w3.org/2004/02/skos/core#Concept> | <http://data.bioontology.org/ontologies/TOP/submissions/1> | SAME_URI | <http://www.w3.org/2004/02/skos/core#Concept> |
| <http://www.w3.org/2004/02/skos/core#Concept> | <http://www.w3.org/2004/02/skos/core#Concept> | <http://data.bioontology.org/ontologies/GEMET/submissions/3> | SAME_URI | <http://www.w3.org/2004/02/skos/core#Concept> |
| <http://www.w3.org/2004/02/skos/core#Concept> | <http://www.w3.org/2004/02/skos/core#Concept> | <http://data.bioontology.org/ontologies/ITAB/submissions/1> | SAME_URI | <http://www.w3.org/2004/02/skos/core#Concept> |
| <http://www.w3.org/2004/02/skos/core#Concept> | <http://www.w3.org/2004/02/skos/core#Concept> | <http://data.bioontology.org/ontologies/ATC/submissions/4> | SAME_URI | <http://www.w3.org/2004/02/skos/core#Concept> |
| <http://www.w3.org/2004/02/skos/core#Concept> | <http://www.w3.org/2004/02/skos/core#Concept> | <http://data.bioontology.org/ontologies/GEMET/submissions/2> | SAME_URI | <http://www.w3.org/2004/02/skos/core#Concept> |
| <http://www.w3.org/2004/02/skos/core#Concept> | <http://www.w3.org/2004/02/skos/core#Concept> | <http://data.bioontology.org/ontologies/GEMET3/submissions/1> | SAME_URI | <http://www.w3.org/2004/02/skos/core#Concept> |
| <http://www.w3.org/2004/02/skos/core#Concept> | <http://www.w3.org/2004/02/skos/core#Concept> | <http://data.bioontology.org/ontologies/GEOSPARQL/submissions/4> | SAME_URI | <http://www.w3.org/2004/02/skos/core#Concept> |
| <http://www.w3.org/2004/02/skos/core#Concept> | <http://www.w3.org/2004/02/skos/core#Concept> | <http://data.bioontology.org/ontologies/FCU/submissions/8> | SAME_URI | <http://www.w3.org/2004/02/skos/core#Concept> |
| <http://www.d2kab.org/ontologies/ephy#Usage> | <http://www.d2kab.org/ontologies/ephy#Usage> | <http://data.bioontology.org/ontologies/ITAB/submissions/1> | SAME_URI | <http://www.d2kab.org/ontologies/ephy#Usage> |
| <http://www.d2kab.org/ontologies/ephy#Substance> | <http://purl.bioontology.org/ontology/STY/T167> | <http://data.bioontology.org/ontologies/STY/submissions/2> | LOOM | substance^^http://www.w3.org/2001/XMLSchema#string |
| <http://www.d2kab.org/ontologies/ephy#Substance> | <http://purl.bioontology.org/ontology/STY/T167> | <http://data.bioontology.org/ontologies/STY_1/submissions/1> | LOOM | substance^^http://www.w3.org/2001/XMLSchema#string |
| <http://www.d2kab.org/ontologies/ephy#Substance> | <http://purl.lirmm.fr/ontology/STY/T167> | <http://data.bioontology.org/ontologies/STY/submissions/1> | LOOM | substance^^http://www.w3.org/2001/XMLSchema#string |
| <http://www.d2kab.org/ontologies/ephy#Substance> | <http://www.d2kab.org/ontologies/ephy#Substance> | <http://data.bioontology.org/ontologies/ITAB/submissions/1> | SAME_URI | <http://www.d2kab.org/ontologies/ephy#Substance> |
| <http://www.d2kab.org/ontologies/ephy#Substance> | <http://sweetontology.net/matr/Substance> | <http://data.bioontology.org/ontologies/SWEET/submissions/10> | LOOM | substance^^http://www.w3.org/2001/XMLSchema#string |
| <http://www.d2kab.org/ontologies/ephy#SubstanceActive> | <http://www.d2kab.org/ontologies/ephy#SubstanceActive> | <http://data.bioontology.org/ontologies/ITAB/submissions/1> | SAME_URI | <http://www.d2kab.org/ontologies/ephy#SubstanceActive> |
| <http://www.d2kab.org/ontologies/ephy#UsageCatalogue> | <http://www.d2kab.org/ontologies/ephy#UsageCatalogue> | <http://data.bioontology.org/ontologies/ITAB/submissions/1> | SAME_URI | <http://www.d2kab.org/ontologies/ephy#UsageCatalogue> |
| <http://www.d2kab.org/ontologies/ephy#ClasseDanger> | <http://www.d2kab.org/ontologies/ephy#ClasseDanger> | <http://data.bioontology.org/ontologies/ITAB/submissions/1> | SAME_URI | <http://www.d2kab.org/ontologies/ephy#ClasseDanger> |
| <http://www.d2kab.org/ontologies/ephy#CulturePreconise> | <http://www.d2kab.org/ontologies/ephy#CulturePreconise> | <http://data.bioontology.org/ontologies/ITAB/submissions/1> | SAME_URI | <http://www.d2kab.org/ontologies/ephy#CulturePreconise> |
| <http://www.d2kab.org/ontologies/ephy#ConditionEmploiProduit> | <http://www.d2kab.org/ontologies/ephy#ConditionEmploiProduit> | <http://data.bioontology.org/ontologies/ITAB/submissions/1> | SAME_URI | <http://www.d2kab.org/ontologies/ephy#ConditionEmploiProduit> |

---

**Documents**

- [💁‍♂️ Acknowledgments](https://wiki.agroportal.eu/s/e6158eda-c109-4385-852c-51a42de9a412/doc/acknowledgments-15GdRXLQdm)
- [📚Publications and references](https://wiki.agroportal.eu/s/e6158eda-c109-4385-852c-51a42de9a412/doc/publications-and-references-87tEoeoGKy)
- [🗽Terms & Conditions](https://wiki.agroportal.eu/s/e6158eda-c109-4385-852c-51a42de9a412/doc/terms-conditions-naDsDo2Zxq)
- [🧞‍♂️Metadata guidelines and recommendations](https://wiki.agroportal.eu/s/e6158eda-c109-4385-852c-51a42de9a412/doc/metadata-guidelines-and-recommendations-pOFbK9sIfp)
- [📜 AgroPortal Release Notes](https://wiki.agroportal.eu/s/e6158eda-c109-4385-852c-51a42de9a412/doc/agroportal-release-notes-btKjZk5tU2)
- [ 👩‍🚀 User Guide](https://wiki.agroportal.eu/s/e6158eda-c109-4385-852c-51a42de9a412/doc/user-guide-ZszoBwfjGF)
- [📎 API Documentation](https://wiki.agroportal.eu/s/e6158eda-c109-4385-852c-51a42de9a412/doc/api-documentation-kMCurGKD97)
- [🤖 Developer Documentation](https://wiki.agroportal.eu/s/e6158eda-c109-4385-852c-51a42de9a412/doc/developer-documentation-LhsrucqGTa)
- [🗃External Documentation](https://wiki.agroportal.eu/s/e6158eda-c109-4385-852c-51a42de9a412/doc/external-documentation-vNPQCdArrr)
- [AgroPortal infrastructure](https://wiki.agroportal.eu/s/e6158eda-c109-4385-852c-51a42de9a412/doc/agroportal-infrastructure-ietsAU4kPs)