YAML or Phenopacket as input
How should users choose between YAML and Phenopackets as an input format? In general, we recommend that users choose Phenopackets as the input format. YAML is a simple format that can easily be edited by hand in a text editor and is suitable for testing and demonstration, but is not as flexible or robust as Phenopackets. We have provided a simple tool that creates Phenopackets for use by LIRICAL and other similar software (PhenopacketGenerator). As a convenience, we present the same simple case in first YAML and then Phenopacket format.
YAML version
The data represents an individual with some characteristic manifestations of
neurofibromatosis type 2, in whom
Tibial pseudoarthrosis (HP:0009736
), a characteristic feature of
neurofibromatosis type 1, has been ruled out.
sampleId: NF2-example
hpoIds: ['HP:0002321', 'HP:0000365', 'HP:0000360', 'HP:0009589', 'HP:0002858']
negatedHpoIds: ['HP:0009736']
Save this file as example.yml
and then run LIRICAL as
$ lirical yaml -y example.yml
Phenopackets version
The identical data can be represented in Phenopacket format (in which only required fields are used) as follows:
{
"id": "proposita",
"subject": {
"id": "NF2-example",
"sex": "FEMALE"
},
"phenotypicFeatures": [ {
"type": {
"id": "HP:0000360",
"label": "Tinnitus"
}
},{
"type": {
"id": "HP:0002321",
"label": "Vertigo"
}
}, {
"type": {
"id": "HP:0000365",
"label": "Hearing impairment"
}
}, {
"type": {
"id": "HP:0009589",
"label": "Bilateral vestibular Schwannoma"
}
}, {
"type": {
"id": "HP:0002858",
"label": "Meningioma"
}
},{
"type": {
"id": "HP:0009736",
"label": "Tibial pseudoarthrosis"
},
"negated" : "true"
}],
"metaData": {
"createdBy": "Hpo Case Annotator",
"submittedBy": "HP:probinson",
"resources": [{
"id": "hp",
"name": "human phenotype ontology",
"url": "http://purl.obolibrary.org/obo/hp.owl",
"version": "2018-03-08",
"namespacePrefix": "HP",
"iriPrefix": "http://purl.obolibrary.org/obo/HP_"
}],
"phenopacketSchemaVersion": "2.0.0"
}
}
Save this file as example.json
and then run LIRICAL as:
lirical phenopacket -p example.json
Identical results should be obtained for both cases.