PREFIX owl: <http://www.w3.org/2002/07/owl#>
PREFIX rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#>
PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#>
PREFIX xsd: <http://www.w3.org/2001/XMLSchema#>
PREFIX portable_microhaplotype_object: <https://plasmogenepi.github.io/portable-microhaplotype-object/>
PREFIX linkml: <https://w3id.org/linkml/>
PREFIX biolink: <https://w3id.org/biolink/>
PREFIX schema: <http://schema.org/>
PREFIX PATO: <http://purl.obolibrary.org/obo/PATO_>
PREFIX example: <https://example.org/>
PREFIX dcterms: <http://purl.org/dc/terms/>
PREFIX skos: <http://www.w3.org/2004/02/skos/core#>
PREFIX sh: <http://www.w3.org/ns/shacl#>
PREFIX vann: <http://purl.org/vocab/vann/>

<https://plasmogenepi.github.io/portable-microhaplotype-object> a owl:Ontology ;
  rdfs:label "portable-microhaplotype-object" ;
  rdfs:comment "A schema to define the minimum amount of data needed to export a microhaplotype calling pipeline analysis with associated metadata" ;
  rdfs:seeAlso <https://PlasmoGenEpi.github.io/portable-microhaplotype-object> ;
  dcterms:license "GNU GPL v3.0" ;
  vann:preferredNamespacePrefix "portable_microhaplotype_object" ;
  vann:preferredNamespaceUri "https://plasmogenepi.github.io/portable-microhaplotype-object/"^^xsd:anyURI ;
  sh:declare [
    sh:prefix "portable_microhaplotype_object" ;
    sh:namespace "https://plasmogenepi.github.io/portable-microhaplotype-object/"^^xsd:anyURI
  ] , [
    sh:prefix "linkml" ;
    sh:namespace "https://w3id.org/linkml/"^^xsd:anyURI
  ] , [
    sh:prefix "biolink" ;
    sh:namespace "https://w3id.org/biolink/"^^xsd:anyURI
  ] , [
    sh:prefix "schema" ;
    sh:namespace "http://schema.org/"^^xsd:anyURI
  ] , [
    sh:prefix "PATO" ;
    sh:namespace "http://purl.obolibrary.org/obo/PATO_"^^xsd:anyURI
  ] , [
    sh:prefix "example" ;
    sh:namespace "https://example.org/"^^xsd:anyURI
  ] .

portable_microhaplotype_object:MarkerOfInterest a owl:Class ;
  rdfs:comment "A specific genomic location of interest, e.g. drug resistance, or other phenotypical marker" ;
  rdfs:subClassOf [
    a owl:Restriction ;
    owl:onProperty portable_microhaplotype_object:marker_location ;
    owl:allValuesFrom portable_microhaplotype_object:GenomicLocation
  ] , [
    a owl:Restriction ;
    owl:onProperty portable_microhaplotype_object:marker_location ;
    owl:cardinality "1"^^xsd:nonNegativeInteger
  ] , [
    a owl:Restriction ;
    owl:onProperty portable_microhaplotype_object:associations ;
    owl:allValuesFrom [
      a rdfs:Datatype ;
      owl:onDatatype xsd:string ;
      owl:withRestrictions ( _:o11 )
    ]
  ] .

_:o11 xsd:pattern "[A-z-._0-9]+" .

portable_microhaplotype_object:TargetInfo a owl:Class ;
  rdfs:comment "Information about a specific targeted microhaplotype" ;
  rdfs:subClassOf [
    a owl:Restriction ;
    owl:onProperty portable_microhaplotype_object:gene_name ;
    owl:allValuesFrom [
      a rdfs:Datatype ;
      owl:onDatatype xsd:string ;
      owl:withRestrictions ( _:o14 )
    ]
  ] , [
    a owl:Restriction ;
    owl:onProperty portable_microhaplotype_object:gene_name ;
    owl:maxCardinality "1"^^xsd:nonNegativeInteger
  ] , [
    a owl:Restriction ;
    owl:onProperty portable_microhaplotype_object:target_name ;
    owl:allValuesFrom [
      a rdfs:Datatype ;
      owl:onDatatype xsd:string ;
      owl:withRestrictions ( _:o18 )
    ]
  ] , [
    a owl:Restriction ;
    owl:onProperty portable_microhaplotype_object:target_name ;
    owl:cardinality "1"^^xsd:nonNegativeInteger
  ] , [
    a owl:Restriction ;
    owl:onProperty portable_microhaplotype_object:insert_location ;
    owl:allValuesFrom portable_microhaplotype_object:GenomicLocation
  ] , [
    a owl:Restriction ;
    owl:onProperty portable_microhaplotype_object:insert_location ;
    owl:maxCardinality "1"^^xsd:nonNegativeInteger
  ] , [
    a owl:Restriction ;
    owl:onProperty portable_microhaplotype_object:forward_primer ;
    owl:allValuesFrom portable_microhaplotype_object:PrimerInfo
  ] , [
    a owl:Restriction ;
    owl:onProperty portable_microhaplotype_object:forward_primer ;
    owl:cardinality "1"^^xsd:nonNegativeInteger
  ] , [
    a owl:Restriction ;
    owl:onProperty portable_microhaplotype_object:reverse_primer ;
    owl:allValuesFrom portable_microhaplotype_object:PrimerInfo
  ] , [
    a owl:Restriction ;
    owl:onProperty portable_microhaplotype_object:reverse_primer ;
    owl:cardinality "1"^^xsd:nonNegativeInteger
  ] , [
    a owl:Restriction ;
    owl:onProperty portable_microhaplotype_object:markers_of_interest ;
    owl:allValuesFrom portable_microhaplotype_object:MarkerOfInterest
  ] , [
    a owl:Restriction ;
    owl:onProperty portable_microhaplotype_object:target_attributes ;
    owl:allValuesFrom xsd:string
  ] .

_:o14 xsd:pattern "[A-z-._0-9:]+" .

_:o18 xsd:pattern "[A-z-._0-9]+" .

portable_microhaplotype_object:ReactionInfo a owl:Class ;
  rdfs:comment "information on a panel of targeted amplicon primer pairs" ;
  rdfs:subClassOf [
    a owl:Restriction ;
    owl:onProperty portable_microhaplotype_object:panel_targets ;
    owl:allValuesFrom [
      a rdfs:Datatype ;
      owl:onDatatype xsd:integer ;
      owl:withRestrictions ( _:o30 )
    ]
  ] , [
    a owl:Restriction ;
    owl:onProperty portable_microhaplotype_object:panel_targets ;
    owl:minCardinality "1"^^xsd:nonNegativeInteger
  ] , [
    a owl:Restriction ;
    owl:onProperty portable_microhaplotype_object:reaction_name ;
    owl:allValuesFrom [
      a rdfs:Datatype ;
      owl:onDatatype xsd:string ;
      owl:withRestrictions ( _:o34 )
    ]
  ] , [
    a owl:Restriction ;
    owl:onProperty portable_microhaplotype_object:reaction_name ;
    owl:cardinality "1"^^xsd:nonNegativeInteger
  ] .

_:o30 xsd:minInclusive 0 .

_:o34 xsd:pattern "[A-z-._0-9]+" .

portable_microhaplotype_object:PanelInfo a owl:Class ;
  rdfs:comment "information on a panel of targeted amplicon primer pairs" ;
  rdfs:subClassOf [
    a owl:Restriction ;
    owl:onProperty portable_microhaplotype_object:reactions ;
    owl:allValuesFrom portable_microhaplotype_object:ReactionInfo
  ] , [
    a owl:Restriction ;
    owl:onProperty portable_microhaplotype_object:reactions ;
    owl:minCardinality "1"^^xsd:nonNegativeInteger
  ] , [
    a owl:Restriction ;
    owl:onProperty portable_microhaplotype_object:panel_name ;
    owl:allValuesFrom [
      a rdfs:Datatype ;
      owl:onDatatype xsd:string ;
      owl:withRestrictions ( _:o40 )
    ]
  ] , [
    a owl:Restriction ;
    owl:onProperty portable_microhaplotype_object:panel_name ;
    owl:cardinality "1"^^xsd:nonNegativeInteger
  ] .

_:o40 xsd:pattern "[A-z-._0-9]+" .

portable_microhaplotype_object:Pseudocigar a owl:Class ;
  rdfs:comment "information on pseudocigar for a sequence" ;
  rdfs:subClassOf [
    a owl:Restriction ;
    owl:onProperty portable_microhaplotype_object:pseudocigar_seq ;
    owl:allValuesFrom [
      a rdfs:Datatype ;
      owl:onDatatype xsd:string ;
      owl:withRestrictions ( _:o44 )
    ]
  ] , [
    a owl:Restriction ;
    owl:onProperty portable_microhaplotype_object:pseudocigar_seq ;
    owl:cardinality "1"^^xsd:nonNegativeInteger
  ] , [
    a owl:Restriction ;
    owl:onProperty portable_microhaplotype_object:ref_loc ;
    owl:allValuesFrom portable_microhaplotype_object:GenomicLocation
  ] , [
    a owl:Restriction ;
    owl:onProperty portable_microhaplotype_object:ref_loc ;
    owl:cardinality "1"^^xsd:nonNegativeInteger
  ] , [
    a owl:Restriction ;
    owl:onProperty portable_microhaplotype_object:pseudocigar_generation_description ;
    owl:allValuesFrom [
      a rdfs:Datatype ;
      owl:onDatatype xsd:string ;
      owl:withRestrictions ( _:o50 )
    ]
  ] , [
    a owl:Restriction ;
    owl:onProperty portable_microhaplotype_object:pseudocigar_generation_description ;
    owl:maxCardinality "1"^^xsd:nonNegativeInteger
  ] .

_:o44 xsd:pattern "[a-zA-Z0-9+=.]+" .

_:o50 xsd:pattern "[A-z-._0-9\\(\\),\\/\\ ]+" .

portable_microhaplotype_object:RepresentativeMicrohaplotype a owl:Class ;
  rdfs:comment "the representative sequence for a microhaplotype" ;
  rdfs:subClassOf [
    a owl:Restriction ;
    owl:onProperty portable_microhaplotype_object:seq ;
    owl:allValuesFrom [
      a rdfs:Datatype ;
      owl:onDatatype xsd:string ;
      owl:withRestrictions ( _:o54 )
    ]
  ] , [
    a owl:Restriction ;
    owl:onProperty portable_microhaplotype_object:seq ;
    owl:cardinality "1"^^xsd:nonNegativeInteger
  ] , [
    a owl:Restriction ;
    owl:onProperty portable_microhaplotype_object:microhaplotype_name ;
    owl:allValuesFrom [
      a rdfs:Datatype ;
      owl:onDatatype xsd:string ;
      owl:withRestrictions ( _:o58 )
    ]
  ] , [
    a owl:Restriction ;
    owl:onProperty portable_microhaplotype_object:microhaplotype_name ;
    owl:maxCardinality "1"^^xsd:nonNegativeInteger
  ] , [
    a owl:Restriction ;
    owl:onProperty portable_microhaplotype_object:quality ;
    owl:allValuesFrom [
      a rdfs:Datatype ;
      owl:onDatatype xsd:string ;
      owl:withRestrictions ( _:o62 )
    ]
  ] , [
    a owl:Restriction ;
    owl:onProperty portable_microhaplotype_object:quality ;
    owl:maxCardinality "1"^^xsd:nonNegativeInteger
  ] , [
    a owl:Restriction ;
    owl:onProperty portable_microhaplotype_object:pseudocigar ;
    owl:allValuesFrom portable_microhaplotype_object:Pseudocigar
  ] , [
    a owl:Restriction ;
    owl:onProperty portable_microhaplotype_object:pseudocigar ;
    owl:maxCardinality "1"^^xsd:nonNegativeInteger
  ] , [
    a owl:Restriction ;
    owl:onProperty portable_microhaplotype_object:masking ;
    owl:allValuesFrom portable_microhaplotype_object:MaskingInfo
  ] , [
    a owl:Restriction ;
    owl:onProperty portable_microhaplotype_object:alt_annotations ;
    owl:allValuesFrom xsd:string
  ] , [
    a owl:Restriction ;
    owl:onProperty portable_microhaplotype_object:associated_protein_variants ;
    owl:allValuesFrom portable_microhaplotype_object:ProteinVariant
  ] , [
    a owl:Restriction ;
    owl:onProperty portable_microhaplotype_object:associated_seq_variants ;
    owl:allValuesFrom portable_microhaplotype_object:GenomicLocation
  ] .

_:o54 xsd:pattern "[A-z]+" .

_:o58 xsd:pattern "[A-z-._0-9]+" .

_:o62 xsd:pattern "[A-z-._0-9]+" .

portable_microhaplotype_object:MaskingInfo a owl:Class ;
  rdfs:comment "information about a subsegment of the sequence that should be masked" ;
  rdfs:subClassOf [
    a owl:Restriction ;
    owl:onProperty portable_microhaplotype_object:seq_start ;
    owl:allValuesFrom [
      a rdfs:Datatype ;
      owl:onDatatype xsd:integer ;
      owl:withRestrictions ( _:o72 )
    ]
  ] , [
    a owl:Restriction ;
    owl:onProperty portable_microhaplotype_object:seq_start ;
    owl:cardinality "1"^^xsd:nonNegativeInteger
  ] , [
    a owl:Restriction ;
    owl:onProperty portable_microhaplotype_object:seq_segment_size ;
    owl:allValuesFrom [
      a rdfs:Datatype ;
      owl:onDatatype xsd:integer ;
      owl:withRestrictions ( _:o76 )
    ]
  ] , [
    a owl:Restriction ;
    owl:onProperty portable_microhaplotype_object:seq_segment_size ;
    owl:cardinality "1"^^xsd:nonNegativeInteger
  ] , [
    a owl:Restriction ;
    owl:onProperty portable_microhaplotype_object:replacement_size ;
    owl:allValuesFrom [
      a rdfs:Datatype ;
      owl:onDatatype xsd:integer ;
      owl:withRestrictions ( _:o80 )
    ]
  ] , [
    a owl:Restriction ;
    owl:onProperty portable_microhaplotype_object:replacement_size ;
    owl:cardinality "1"^^xsd:nonNegativeInteger
  ] , [
    a owl:Restriction ;
    owl:onProperty portable_microhaplotype_object:masking_generation_description ;
    owl:allValuesFrom [
      a rdfs:Datatype ;
      owl:onDatatype xsd:string ;
      owl:withRestrictions ( _:o84 )
    ]
  ] , [
    a owl:Restriction ;
    owl:onProperty portable_microhaplotype_object:masking_generation_description ;
    owl:maxCardinality "1"^^xsd:nonNegativeInteger
  ] .

_:o72 xsd:minInclusive 0 .

_:o76 xsd:minInclusive 0 .

_:o80 xsd:minInclusive 0 .

_:o84 xsd:pattern "[A-z-._0-9\\(\\),\\/\\ ]+" .

portable_microhaplotype_object:RepresentativeMicrohaplotypes a owl:Class ;
  rdfs:comment "a collection of representative sequences for microhaplotypes for all targets" ;
  rdfs:subClassOf [
    a owl:Restriction ;
    owl:onProperty portable_microhaplotype_object:targets ;
    owl:allValuesFrom portable_microhaplotype_object:RepresentativeMicrohaplotypesForTarget
  ] , [
    a owl:Restriction ;
    owl:onProperty portable_microhaplotype_object:targets ;
    owl:minCardinality "1"^^xsd:nonNegativeInteger
  ] .

portable_microhaplotype_object:RepresentativeMicrohaplotypesForTarget a owl:Class ;
  rdfs:comment "a list of the representative sequence for the microhaplotypes for a target" ;
  rdfs:subClassOf [
    a owl:Restriction ;
    owl:onProperty portable_microhaplotype_object:microhaplotypes ;
    owl:allValuesFrom portable_microhaplotype_object:RepresentativeMicrohaplotype
  ] , [
    a owl:Restriction ;
    owl:onProperty portable_microhaplotype_object:microhaplotypes ;
    owl:minCardinality "1"^^xsd:nonNegativeInteger
  ] , [
    a owl:Restriction ;
    owl:onProperty portable_microhaplotype_object:mhap_location ;
    owl:allValuesFrom portable_microhaplotype_object:GenomicLocation
  ] , [
    a owl:Restriction ;
    owl:onProperty portable_microhaplotype_object:mhap_location ;
    owl:maxCardinality "1"^^xsd:nonNegativeInteger
  ] .

portable_microhaplotype_object:DetectedMicrohaplotypes a owl:Class ;
  rdfs:comment "the microhaplotypes detected in a targeted amplicon analysis" ;
  rdfs:subClassOf [
    a owl:Restriction ;
    owl:onProperty portable_microhaplotype_object:bioinformatics_run_id ;
    owl:allValuesFrom [
      a rdfs:Datatype ;
      owl:onDatatype xsd:integer ;
      owl:withRestrictions ( _:o94 _:o95 )
    ]
  ] , [
    a owl:Restriction ;
    owl:onProperty portable_microhaplotype_object:bioinformatics_run_id ;
    owl:cardinality "1"^^xsd:nonNegativeInteger
  ] , [
    a owl:Restriction ;
    owl:onProperty portable_microhaplotype_object:library_samples ;
    owl:allValuesFrom portable_microhaplotype_object:DetectedMicrohaplotypesForSample
  ] , [
    a owl:Restriction ;
    owl:onProperty portable_microhaplotype_object:library_samples ;
    owl:minCardinality "1"^^xsd:nonNegativeInteger
  ] .

_:o94 xsd:minInclusive 0 .

_:o95 xsd:pattern "[0-9]+" .

portable_microhaplotype_object:GenomeInfo a owl:Class ;
  rdfs:comment "information on a genome" ;
  rdfs:subClassOf [
    a owl:Restriction ;
    owl:onProperty portable_microhaplotype_object:name ;
    owl:allValuesFrom [
      a rdfs:Datatype ;
      owl:onDatatype xsd:string ;
      owl:withRestrictions ( _:o101 )
    ]
  ] , [
    a owl:Restriction ;
    owl:onProperty portable_microhaplotype_object:name ;
    owl:cardinality "1"^^xsd:nonNegativeInteger
  ] , [
    a owl:Restriction ;
    owl:onProperty portable_microhaplotype_object:genome_version ;
    owl:allValuesFrom [
      a rdfs:Datatype ;
      owl:onDatatype xsd:string ;
      owl:withRestrictions ( _:o105 )
    ]
  ] , [
    a owl:Restriction ;
    owl:onProperty portable_microhaplotype_object:genome_version ;
    owl:cardinality "1"^^xsd:nonNegativeInteger
  ] , [
    a owl:Restriction ;
    owl:onProperty portable_microhaplotype_object:taxon_id ;
    owl:allValuesFrom [
      a rdfs:Datatype ;
      owl:onDatatype xsd:integer ;
      owl:withRestrictions ( _:o109 _:o110 )
    ]
  ] , [
    a owl:Restriction ;
    owl:onProperty portable_microhaplotype_object:taxon_id ;
    owl:minCardinality "1"^^xsd:nonNegativeInteger
  ] , [
    a owl:Restriction ;
    owl:onProperty portable_microhaplotype_object:url ;
    owl:allValuesFrom [
      a rdfs:Datatype ;
      owl:onDatatype xsd:string ;
      owl:withRestrictions ( _:o114 )
    ]
  ] , [
    a owl:Restriction ;
    owl:onProperty portable_microhaplotype_object:url ;
    owl:cardinality "1"^^xsd:nonNegativeInteger
  ] , [
    a owl:Restriction ;
    owl:onProperty portable_microhaplotype_object:chromosomes ;
    owl:allValuesFrom [
      a rdfs:Datatype ;
      owl:onDatatype xsd:string ;
      owl:withRestrictions ( _:o118 )
    ]
  ] , [
    a owl:Restriction ;
    owl:onProperty portable_microhaplotype_object:gff_url ;
    owl:allValuesFrom [
      a rdfs:Datatype ;
      owl:onDatatype xsd:string ;
      owl:withRestrictions ( _:o121 )
    ]
  ] , [
    a owl:Restriction ;
    owl:onProperty portable_microhaplotype_object:gff_url ;
    owl:maxCardinality "1"^^xsd:nonNegativeInteger
  ] .

_:o101 xsd:pattern "[A-z-._0-9]+" .

_:o105 xsd:pattern "[A-z-._0-9]+" .

_:o109 xsd:minInclusive 0 .

_:o110 xsd:pattern "[0-9]" .

_:o114 xsd:pattern "(?:NA|(https?|ftp):\\/\\/[^\\s/$.?#].[^\\s]*)" .

_:o118 xsd:pattern "[A-z-._0-9]+" .

_:o121 xsd:pattern "(https?|ftp):\\/\\/[^\\s/$.?#].[^\\s]*" .

portable_microhaplotype_object:GenomicLocation a owl:Class ;
  rdfs:comment "information on the genomic location of specific sequence" ;
  rdfs:subClassOf [
    a owl:Restriction ;
    owl:onProperty portable_microhaplotype_object:genome_id ;
    owl:allValuesFrom [
      a rdfs:Datatype ;
      owl:onDatatype xsd:integer ;
      owl:withRestrictions ( _:o125 _:o126 )
    ]
  ] , [
    a owl:Restriction ;
    owl:onProperty portable_microhaplotype_object:genome_id ;
    owl:cardinality "1"^^xsd:nonNegativeInteger
  ] , [
    a owl:Restriction ;
    owl:onProperty portable_microhaplotype_object:chrom ;
    owl:allValuesFrom [
      a rdfs:Datatype ;
      owl:onDatatype xsd:string ;
      owl:withRestrictions ( _:o130 )
    ]
  ] , [
    a owl:Restriction ;
    owl:onProperty portable_microhaplotype_object:chrom ;
    owl:cardinality "1"^^xsd:nonNegativeInteger
  ] , [
    a owl:Restriction ;
    owl:onProperty portable_microhaplotype_object:start ;
    owl:allValuesFrom [
      a rdfs:Datatype ;
      owl:onDatatype xsd:integer ;
      owl:withRestrictions ( _:o134 _:o135 )
    ]
  ] , [
    a owl:Restriction ;
    owl:onProperty portable_microhaplotype_object:start ;
    owl:cardinality "1"^^xsd:nonNegativeInteger
  ] , [
    a owl:Restriction ;
    owl:onProperty portable_microhaplotype_object:end ;
    owl:allValuesFrom [
      a rdfs:Datatype ;
      owl:onDatatype xsd:integer ;
      owl:withRestrictions ( _:o139 _:o140 )
    ]
  ] , [
    a owl:Restriction ;
    owl:onProperty portable_microhaplotype_object:end ;
    owl:cardinality "1"^^xsd:nonNegativeInteger
  ] , [
    a owl:Restriction ;
    owl:onProperty portable_microhaplotype_object:strand ;
    owl:allValuesFrom [
      a rdfs:Datatype ;
      owl:onDatatype xsd:string ;
      owl:withRestrictions ( _:o144 )
    ]
  ] , [
    a owl:Restriction ;
    owl:onProperty portable_microhaplotype_object:strand ;
    owl:maxCardinality "1"^^xsd:nonNegativeInteger
  ] , [
    a owl:Restriction ;
    owl:onProperty portable_microhaplotype_object:ref_seq ;
    owl:allValuesFrom [
      a rdfs:Datatype ;
      owl:onDatatype xsd:string ;
      owl:withRestrictions ( _:o148 )
    ]
  ] , [
    a owl:Restriction ;
    owl:onProperty portable_microhaplotype_object:ref_seq ;
    owl:maxCardinality "1"^^xsd:nonNegativeInteger
  ] , [
    a owl:Restriction ;
    owl:onProperty portable_microhaplotype_object:alt_seq ;
    owl:allValuesFrom [
      a rdfs:Datatype ;
      owl:onDatatype xsd:string ;
      owl:withRestrictions ( _:o152 )
    ]
  ] , [
    a owl:Restriction ;
    owl:onProperty portable_microhaplotype_object:alt_seq ;
    owl:maxCardinality "1"^^xsd:nonNegativeInteger
  ] .

_:o125 xsd:minInclusive 0 .

_:o126 xsd:pattern "[0-9]+" .

_:o130 xsd:pattern "[A-z-._0-9]+" .

_:o134 xsd:minInclusive 0 .

_:o135 xsd:pattern "[0-9]+" .

_:o139 xsd:minInclusive 0 .

_:o140 xsd:pattern "[0-9]+" .

_:o144 xsd:pattern ".*[+-].*" .

_:o148 xsd:pattern "[A-z-]+" .

_:o152 xsd:pattern "[A-z-]+" .

portable_microhaplotype_object:ProteinVariant a owl:Class ;
  rdfs:comment "information on a variant in protein sequence" ;
  rdfs:subClassOf [
    a owl:Restriction ;
    owl:onProperty portable_microhaplotype_object:gene_name ;
    owl:allValuesFrom [
      a rdfs:Datatype ;
      owl:onDatatype xsd:string ;
      owl:withRestrictions ( _:o156 )
    ]
  ] , [
    a owl:Restriction ;
    owl:onProperty portable_microhaplotype_object:gene_name ;
    owl:maxCardinality "1"^^xsd:nonNegativeInteger
  ] , [
    a owl:Restriction ;
    owl:onProperty portable_microhaplotype_object:protein_location ;
    owl:allValuesFrom portable_microhaplotype_object:GenomicLocation
  ] , [
    a owl:Restriction ;
    owl:onProperty portable_microhaplotype_object:protein_location ;
    owl:cardinality "1"^^xsd:nonNegativeInteger
  ] , [
    a owl:Restriction ;
    owl:onProperty portable_microhaplotype_object:codon_genomic_location ;
    owl:allValuesFrom portable_microhaplotype_object:GenomicLocation
  ] , [
    a owl:Restriction ;
    owl:onProperty portable_microhaplotype_object:codon_genomic_location ;
    owl:maxCardinality "1"^^xsd:nonNegativeInteger
  ] , [
    a owl:Restriction ;
    owl:onProperty portable_microhaplotype_object:alternative_gene_name ;
    owl:allValuesFrom [
      a rdfs:Datatype ;
      owl:onDatatype xsd:string ;
      owl:withRestrictions ( _:o164 )
    ]
  ] , [
    a owl:Restriction ;
    owl:onProperty portable_microhaplotype_object:alternative_gene_name ;
    owl:maxCardinality "1"^^xsd:nonNegativeInteger
  ] .

_:o156 xsd:pattern "[A-z-._0-9:]+" .

_:o164 xsd:pattern "[A-z-._0-9]+" .

portable_microhaplotype_object:PrimerInfo a owl:Class ;
  rdfs:comment "information on a primer sequence" ;
  rdfs:subClassOf [
    a owl:Restriction ;
    owl:onProperty portable_microhaplotype_object:seq ;
    owl:allValuesFrom [
      a rdfs:Datatype ;
      owl:onDatatype xsd:string ;
      owl:withRestrictions ( _:o168 )
    ]
  ] , [
    a owl:Restriction ;
    owl:onProperty portable_microhaplotype_object:seq ;
    owl:cardinality "1"^^xsd:nonNegativeInteger
  ] , [
    a owl:Restriction ;
    owl:onProperty portable_microhaplotype_object:location ;
    owl:allValuesFrom portable_microhaplotype_object:GenomicLocation
  ] , [
    a owl:Restriction ;
    owl:onProperty portable_microhaplotype_object:location ;
    owl:maxCardinality "1"^^xsd:nonNegativeInteger
  ] .

_:o168 xsd:pattern "[A-z]+" .

portable_microhaplotype_object:DetectedMicrohaplotypesForSample a owl:Class ;
  rdfs:comment "Microhaplotypes detected for a sample for all targets" ;
  rdfs:subClassOf [
    a owl:Restriction ;
    owl:onProperty portable_microhaplotype_object:library_sample_id ;
    owl:allValuesFrom [
      a rdfs:Datatype ;
      owl:onDatatype xsd:integer ;
      owl:withRestrictions ( _:o174 _:o175 )
    ]
  ] , [
    a owl:Restriction ;
    owl:onProperty portable_microhaplotype_object:library_sample_id ;
    owl:cardinality "1"^^xsd:nonNegativeInteger
  ] , [
    a owl:Restriction ;
    owl:onProperty portable_microhaplotype_object:target_results ;
    owl:allValuesFrom portable_microhaplotype_object:DetectedMicrohaplotypesForTarget
  ] , [
    a owl:Restriction ;
    owl:onProperty portable_microhaplotype_object:target_results ;
    owl:minCardinality "1"^^xsd:nonNegativeInteger
  ] .

_:o174 xsd:minInclusive 0 .

_:o175 xsd:pattern "[0-9]+" .

portable_microhaplotype_object:MicrohaplotypeForTarget a owl:Class ;
  rdfs:comment "Microhaplotype detected for a specific target" ;
  rdfs:subClassOf [
    a owl:Restriction ;
    owl:onProperty portable_microhaplotype_object:mhap_id ;
    owl:allValuesFrom [
      a rdfs:Datatype ;
      owl:onDatatype xsd:integer ;
      owl:withRestrictions ( _:o181 _:o182 )
    ]
  ] , [
    a owl:Restriction ;
    owl:onProperty portable_microhaplotype_object:mhap_id ;
    owl:cardinality "1"^^xsd:nonNegativeInteger
  ] , [
    a owl:Restriction ;
    owl:onProperty portable_microhaplotype_object:reads ;
    owl:allValuesFrom [
      a rdfs:Datatype ;
      owl:onDatatype xsd:integer ;
      owl:withRestrictions ( _:o186 )
    ]
  ] , [
    a owl:Restriction ;
    owl:onProperty portable_microhaplotype_object:reads ;
    owl:cardinality "1"^^xsd:nonNegativeInteger
  ] , [
    a owl:Restriction ;
    owl:onProperty portable_microhaplotype_object:umis ;
    owl:allValuesFrom [
      a rdfs:Datatype ;
      owl:onDatatype xsd:integer ;
      owl:withRestrictions ( _:o190 )
    ]
  ] , [
    a owl:Restriction ;
    owl:onProperty portable_microhaplotype_object:umis ;
    owl:maxCardinality "1"^^xsd:nonNegativeInteger
  ] .

_:o181 xsd:minInclusive 0 .

_:o182 xsd:pattern "[0-9]+" .

_:o186 xsd:minInclusive 0 .

_:o190 xsd:minInclusive 0 .

portable_microhaplotype_object:DetectedMicrohaplotypesForTarget a owl:Class ;
  rdfs:comment "Microhaplotypes detected for a specific target" ;
  rdfs:subClassOf [
    a owl:Restriction ;
    owl:onProperty portable_microhaplotype_object:mhaps_target_id ;
    owl:allValuesFrom [
      a rdfs:Datatype ;
      owl:onDatatype xsd:integer ;
      owl:withRestrictions ( _:o194 _:o195 )
    ]
  ] , [
    a owl:Restriction ;
    owl:onProperty portable_microhaplotype_object:mhaps_target_id ;
    owl:cardinality "1"^^xsd:nonNegativeInteger
  ] , [
    a owl:Restriction ;
    owl:onProperty portable_microhaplotype_object:mhaps ;
    owl:allValuesFrom portable_microhaplotype_object:MicrohaplotypeForTarget
  ] , [
    a owl:Restriction ;
    owl:onProperty portable_microhaplotype_object:mhaps ;
    owl:minCardinality "1"^^xsd:nonNegativeInteger
  ] .

_:o194 xsd:minInclusive 0 .

_:o195 xsd:pattern "[0-9]+" .

portable_microhaplotype_object:BioinformaticsMethodInfo a owl:Class ;
  rdfs:comment "the targeted amplicon bioinformatics methods used to generate the microhaplotype data in this PMO" ;
  rdfs:subClassOf [
    a owl:Restriction ;
    owl:onProperty portable_microhaplotype_object:methods ;
    owl:allValuesFrom portable_microhaplotype_object:BioMethod
  ] , [
    a owl:Restriction ;
    owl:onProperty portable_microhaplotype_object:methods ;
    owl:minCardinality "1"^^xsd:nonNegativeInteger
  ] .

portable_microhaplotype_object:BioMethod a owl:Class ;
  rdfs:comment "bioinformatics methodology description with info on program, version, and arguments different from the default" ;
  rdfs:subClassOf [
    a owl:Restriction ;
    owl:onProperty portable_microhaplotype_object:program_version ;
    owl:allValuesFrom [
      a rdfs:Datatype ;
      owl:onDatatype xsd:string ;
      owl:withRestrictions ( _:o203 )
    ]
  ] , [
    a owl:Restriction ;
    owl:onProperty portable_microhaplotype_object:program_version ;
    owl:cardinality "1"^^xsd:nonNegativeInteger
  ] , [
    a owl:Restriction ;
    owl:onProperty portable_microhaplotype_object:program ;
    owl:allValuesFrom [
      a rdfs:Datatype ;
      owl:onDatatype xsd:string ;
      owl:withRestrictions ( _:o207 )
    ]
  ] , [
    a owl:Restriction ;
    owl:onProperty portable_microhaplotype_object:program ;
    owl:cardinality "1"^^xsd:nonNegativeInteger
  ] , [
    a owl:Restriction ;
    owl:onProperty portable_microhaplotype_object:program_description ;
    owl:allValuesFrom [
      a rdfs:Datatype ;
      owl:onDatatype xsd:string ;
      owl:withRestrictions ( _:o211 )
    ]
  ] , [
    a owl:Restriction ;
    owl:onProperty portable_microhaplotype_object:program_description ;
    owl:maxCardinality "1"^^xsd:nonNegativeInteger
  ] , [
    a owl:Restriction ;
    owl:onProperty portable_microhaplotype_object:program_url ;
    owl:allValuesFrom [
      a rdfs:Datatype ;
      owl:onDatatype xsd:string ;
      owl:withRestrictions ( _:o215 )
    ]
  ] , [
    a owl:Restriction ;
    owl:onProperty portable_microhaplotype_object:program_url ;
    owl:maxCardinality "1"^^xsd:nonNegativeInteger
  ] , [
    a owl:Restriction ;
    owl:onProperty portable_microhaplotype_object:additional_argument ;
    owl:allValuesFrom [
      a rdfs:Datatype ;
      owl:onDatatype xsd:string ;
      owl:withRestrictions ( _:o219 )
    ]
  ] .

_:o203 xsd:pattern "[A-z-._0-9 ]+" .

_:o207 xsd:pattern "[A-z-._0-9 ]+" .

_:o211 xsd:pattern "[A-z-._0-9\\(\\),\\/\\ ]+" .

_:o215 xsd:pattern "[A-z-._0-9\\(\\),\\/\\ ]+" .

_:o219 xsd:pattern "[A-z-._0-9{}\\(\\),\\/\\ ]+" .

portable_microhaplotype_object:PlateInfo a owl:Class ;
  rdfs:comment "Information about a plate location, e.g. a standard 96 well plate with row having a letter and column having a number" ;
  rdfs:subClassOf [
    a owl:Restriction ;
    owl:onProperty portable_microhaplotype_object:plate_name ;
    owl:allValuesFrom [
      a rdfs:Datatype ;
      owl:onDatatype xsd:string ;
      owl:withRestrictions ( _:o222 )
    ]
  ] , [
    a owl:Restriction ;
    owl:onProperty portable_microhaplotype_object:plate_name ;
    owl:cardinality "1"^^xsd:nonNegativeInteger
  ] , [
    a owl:Restriction ;
    owl:onProperty portable_microhaplotype_object:plate_row ;
    owl:allValuesFrom [
      a rdfs:Datatype ;
      owl:onDatatype xsd:string ;
      owl:withRestrictions ( _:o226 )
    ]
  ] , [
    a owl:Restriction ;
    owl:onProperty portable_microhaplotype_object:plate_row ;
    owl:cardinality "1"^^xsd:nonNegativeInteger
  ] , [
    a owl:Restriction ;
    owl:onProperty portable_microhaplotype_object:plate_col ;
    owl:allValuesFrom [
      a rdfs:Datatype ;
      owl:onDatatype xsd:integer ;
      owl:withRestrictions ( _:o230 _:o231 )
    ]
  ] , [
    a owl:Restriction ;
    owl:onProperty portable_microhaplotype_object:plate_col ;
    owl:cardinality "1"^^xsd:nonNegativeInteger
  ] .

_:o222 xsd:pattern "[A-z-._0-9 ]+" .

_:o226 xsd:pattern "[A-z]" .

_:o230 xsd:minInclusive 0 .

_:o231 xsd:pattern "[0-9]+" .

portable_microhaplotype_object:LibrarySampleInfo a owl:Class ;
  rdfs:comment "Information about a specific amplification and sequencing of a specimen" ;
  rdfs:subClassOf [
    a owl:Restriction ;
    owl:onProperty portable_microhaplotype_object:sequencing_info_id ;
    owl:allValuesFrom [
      a rdfs:Datatype ;
      owl:onDatatype xsd:integer ;
      owl:withRestrictions ( _:o235 _:o236 )
    ]
  ] , [
    a owl:Restriction ;
    owl:onProperty portable_microhaplotype_object:sequencing_info_id ;
    owl:cardinality "1"^^xsd:nonNegativeInteger
  ] , [
    a owl:Restriction ;
    owl:onProperty portable_microhaplotype_object:specimen_id ;
    owl:allValuesFrom [
      a rdfs:Datatype ;
      owl:onDatatype xsd:integer ;
      owl:withRestrictions ( _:o240 _:o241 )
    ]
  ] , [
    a owl:Restriction ;
    owl:onProperty portable_microhaplotype_object:specimen_id ;
    owl:cardinality "1"^^xsd:nonNegativeInteger
  ] , [
    a owl:Restriction ;
    owl:onProperty portable_microhaplotype_object:panel_id ;
    owl:allValuesFrom [
      a rdfs:Datatype ;
      owl:onDatatype xsd:integer ;
      owl:withRestrictions ( _:o245 _:o246 )
    ]
  ] , [
    a owl:Restriction ;
    owl:onProperty portable_microhaplotype_object:panel_id ;
    owl:cardinality "1"^^xsd:nonNegativeInteger
  ] , [
    a owl:Restriction ;
    owl:onProperty portable_microhaplotype_object:alternate_identifiers ;
    owl:allValuesFrom [
      a rdfs:Datatype ;
      owl:onDatatype xsd:string ;
      owl:withRestrictions ( _:o250 )
    ]
  ] , [
    a owl:Restriction ;
    owl:onProperty portable_microhaplotype_object:fastqs_loc ;
    owl:allValuesFrom [
      a rdfs:Datatype ;
      owl:onDatatype xsd:string ;
      owl:withRestrictions ( _:o253 )
    ]
  ] , [
    a owl:Restriction ;
    owl:onProperty portable_microhaplotype_object:fastqs_loc ;
    owl:maxCardinality "1"^^xsd:nonNegativeInteger
  ] , [
    a owl:Restriction ;
    owl:onProperty portable_microhaplotype_object:run_accession ;
    owl:allValuesFrom [
      a rdfs:Datatype ;
      owl:onDatatype xsd:string ;
      owl:withRestrictions ( _:o257 )
    ]
  ] , [
    a owl:Restriction ;
    owl:onProperty portable_microhaplotype_object:run_accession ;
    owl:maxCardinality "1"^^xsd:nonNegativeInteger
  ] , [
    a owl:Restriction ;
    owl:onProperty portable_microhaplotype_object:experiment_accession ;
    owl:allValuesFrom [
      a rdfs:Datatype ;
      owl:onDatatype xsd:string ;
      owl:withRestrictions ( _:o261 )
    ]
  ] , [
    a owl:Restriction ;
    owl:onProperty portable_microhaplotype_object:experiment_accession ;
    owl:maxCardinality "1"^^xsd:nonNegativeInteger
  ] , [
    a owl:Restriction ;
    owl:onProperty portable_microhaplotype_object:library_prep_plate_info ;
    owl:allValuesFrom portable_microhaplotype_object:PlateInfo
  ] , [
    a owl:Restriction ;
    owl:onProperty portable_microhaplotype_object:library_prep_plate_info ;
    owl:maxCardinality "1"^^xsd:nonNegativeInteger
  ] , [
    a owl:Restriction ;
    owl:onProperty portable_microhaplotype_object:qpcr_parasite_density_info ;
    owl:allValuesFrom portable_microhaplotype_object:ParasiteDensity
  ] .

_:o235 xsd:minInclusive 0 .

_:o236 xsd:pattern "[0-9]+" .

_:o240 xsd:minInclusive 0 .

_:o241 xsd:pattern "[0-9]+" .

_:o245 xsd:minInclusive 0 .

_:o246 xsd:pattern "[0-9]+" .

_:o250 xsd:pattern "[A-z-._0-9 ]+" .

_:o253 xsd:pattern "[A-z-.;,_0-9\\(\\),\\/\\ ]+" .

_:o257 xsd:pattern "[A-z-._0-9]+" .

_:o261 xsd:pattern "[A-z-._0-9]+" .

portable_microhaplotype_object:SequencingInfo a owl:Class ;
  rdfs:comment "Information on sequencing info" ;
  rdfs:subClassOf [
    a owl:Restriction ;
    owl:onProperty portable_microhaplotype_object:sequencing_info_name ;
    owl:allValuesFrom [
      a rdfs:Datatype ;
      owl:onDatatype xsd:string ;
      owl:withRestrictions ( _:o268 )
    ]
  ] , [
    a owl:Restriction ;
    owl:onProperty portable_microhaplotype_object:sequencing_info_name ;
    owl:cardinality "1"^^xsd:nonNegativeInteger
  ] , [
    a owl:Restriction ;
    owl:onProperty portable_microhaplotype_object:seq_platform ;
    owl:allValuesFrom [
      a rdfs:Datatype ;
      owl:onDatatype xsd:string ;
      owl:withRestrictions ( _:o272 )
    ]
  ] , [
    a owl:Restriction ;
    owl:onProperty portable_microhaplotype_object:seq_platform ;
    owl:cardinality "1"^^xsd:nonNegativeInteger
  ] , [
    a owl:Restriction ;
    owl:onProperty portable_microhaplotype_object:seq_instrument_model ;
    owl:allValuesFrom [
      a rdfs:Datatype ;
      owl:onDatatype xsd:string ;
      owl:withRestrictions ( _:o276 )
    ]
  ] , [
    a owl:Restriction ;
    owl:onProperty portable_microhaplotype_object:seq_instrument_model ;
    owl:cardinality "1"^^xsd:nonNegativeInteger
  ] , [
    a owl:Restriction ;
    owl:onProperty portable_microhaplotype_object:seq_date ;
    owl:allValuesFrom [
      a rdfs:Datatype ;
      owl:onDatatype xsd:string ;
      owl:withRestrictions ( _:o280 )
    ]
  ] , [
    a owl:Restriction ;
    owl:onProperty portable_microhaplotype_object:seq_date ;
    owl:maxCardinality "1"^^xsd:nonNegativeInteger
  ] , [
    a owl:Restriction ;
    owl:onProperty portable_microhaplotype_object:nucl_acid_ext ;
    owl:allValuesFrom [
      a rdfs:Datatype ;
      owl:onDatatype xsd:string ;
      owl:withRestrictions ( _:o284 )
    ]
  ] , [
    a owl:Restriction ;
    owl:onProperty portable_microhaplotype_object:nucl_acid_ext ;
    owl:maxCardinality "1"^^xsd:nonNegativeInteger
  ] , [
    a owl:Restriction ;
    owl:onProperty portable_microhaplotype_object:nucl_acid_amp ;
    owl:allValuesFrom [
      a rdfs:Datatype ;
      owl:onDatatype xsd:string ;
      owl:withRestrictions ( _:o288 )
    ]
  ] , [
    a owl:Restriction ;
    owl:onProperty portable_microhaplotype_object:nucl_acid_amp ;
    owl:maxCardinality "1"^^xsd:nonNegativeInteger
  ] , [
    a owl:Restriction ;
    owl:onProperty portable_microhaplotype_object:nucl_acid_ext_date ;
    owl:allValuesFrom [
      a rdfs:Datatype ;
      owl:onDatatype xsd:string ;
      owl:withRestrictions ( _:o292 )
    ]
  ] , [
    a owl:Restriction ;
    owl:onProperty portable_microhaplotype_object:nucl_acid_ext_date ;
    owl:maxCardinality "1"^^xsd:nonNegativeInteger
  ] , [
    a owl:Restriction ;
    owl:onProperty portable_microhaplotype_object:nucl_acid_amp_date ;
    owl:allValuesFrom [
      a rdfs:Datatype ;
      owl:onDatatype xsd:string ;
      owl:withRestrictions ( _:o296 )
    ]
  ] , [
    a owl:Restriction ;
    owl:onProperty portable_microhaplotype_object:nucl_acid_amp_date ;
    owl:maxCardinality "1"^^xsd:nonNegativeInteger
  ] , [
    a owl:Restriction ;
    owl:onProperty portable_microhaplotype_object:pcr_cond ;
    owl:allValuesFrom [
      a rdfs:Datatype ;
      owl:onDatatype xsd:string ;
      owl:withRestrictions ( _:o300 )
    ]
  ] , [
    a owl:Restriction ;
    owl:onProperty portable_microhaplotype_object:pcr_cond ;
    owl:maxCardinality "1"^^xsd:nonNegativeInteger
  ] , [
    a owl:Restriction ;
    owl:onProperty portable_microhaplotype_object:library_screen ;
    owl:allValuesFrom [
      a rdfs:Datatype ;
      owl:onDatatype xsd:string ;
      owl:withRestrictions ( _:o304 )
    ]
  ] , [
    a owl:Restriction ;
    owl:onProperty portable_microhaplotype_object:library_screen ;
    owl:maxCardinality "1"^^xsd:nonNegativeInteger
  ] , [
    a owl:Restriction ;
    owl:onProperty portable_microhaplotype_object:library_kit ;
    owl:allValuesFrom [
      a rdfs:Datatype ;
      owl:onDatatype xsd:string ;
      owl:withRestrictions ( _:o308 )
    ]
  ] , [
    a owl:Restriction ;
    owl:onProperty portable_microhaplotype_object:library_kit ;
    owl:maxCardinality "1"^^xsd:nonNegativeInteger
  ] , [
    a owl:Restriction ;
    owl:onProperty portable_microhaplotype_object:library_layout ;
    owl:allValuesFrom [
      a rdfs:Datatype ;
      owl:onDatatype xsd:string ;
      owl:withRestrictions ( _:o312 )
    ]
  ] , [
    a owl:Restriction ;
    owl:onProperty portable_microhaplotype_object:library_layout ;
    owl:cardinality "1"^^xsd:nonNegativeInteger
  ] , [
    a owl:Restriction ;
    owl:onProperty portable_microhaplotype_object:library_strategy ;
    owl:allValuesFrom [
      a rdfs:Datatype ;
      owl:onDatatype xsd:string ;
      owl:withRestrictions ( _:o316 )
    ]
  ] , [
    a owl:Restriction ;
    owl:onProperty portable_microhaplotype_object:library_strategy ;
    owl:cardinality "1"^^xsd:nonNegativeInteger
  ] , [
    a owl:Restriction ;
    owl:onProperty portable_microhaplotype_object:library_source ;
    owl:allValuesFrom [
      a rdfs:Datatype ;
      owl:onDatatype xsd:string ;
      owl:withRestrictions ( _:o320 )
    ]
  ] , [
    a owl:Restriction ;
    owl:onProperty portable_microhaplotype_object:library_source ;
    owl:cardinality "1"^^xsd:nonNegativeInteger
  ] , [
    a owl:Restriction ;
    owl:onProperty portable_microhaplotype_object:library_selection ;
    owl:allValuesFrom [
      a rdfs:Datatype ;
      owl:onDatatype xsd:string ;
      owl:withRestrictions ( _:o324 )
    ]
  ] , [
    a owl:Restriction ;
    owl:onProperty portable_microhaplotype_object:library_selection ;
    owl:cardinality "1"^^xsd:nonNegativeInteger
  ] , [
    a owl:Restriction ;
    owl:onProperty portable_microhaplotype_object:seq_center ;
    owl:allValuesFrom [
      a rdfs:Datatype ;
      owl:onDatatype xsd:string ;
      owl:withRestrictions ( _:o328 )
    ]
  ] , [
    a owl:Restriction ;
    owl:onProperty portable_microhaplotype_object:seq_center ;
    owl:maxCardinality "1"^^xsd:nonNegativeInteger
  ] .

_:o268 xsd:pattern "[A-z-._0-9 ]+" .

_:o272 xsd:pattern "[A-z-._0-9 ]+" .

_:o276 xsd:pattern "[A-z-._0-9 ]+" .

_:o280 xsd:pattern ".*\\d{4}-(?:0[1-9]|1[0-2])(?:-(?:0[1-9]|[12][0-9]|3[01]))?.*" .

_:o284 xsd:pattern "(https?|ftp):\\/\\/[^\\s/$.?#].[^\\s]*" .

_:o288 xsd:pattern "(https?|ftp):\\/\\/[^\\s/$.?#].[^\\s]*" .

_:o292 xsd:pattern ".*\\d{4}-(?:0[1-9]|1[0-2])(?:-(?:0[1-9]|[12][0-9]|3[01]))?.*" .

_:o296 xsd:pattern ".*\\d{4}-(?:0[1-9]|1[0-2])(?:-(?:0[1-9]|[12][0-9]|3[01]))?.*" .

_:o300 xsd:pattern "[A-z-._0-9\\(\\),\\/\\ ]+" .

_:o304 xsd:pattern "[A-z-._0-9\\(\\),\\/\\ ]+" .

_:o308 xsd:pattern "[A-z-._0-9\\(\\),\\/\\ ]+" .

_:o312 xsd:pattern "[A-z-._0-9 ]+" .

_:o316 xsd:pattern "[A-z-._0-9 ]+" .

_:o320 xsd:pattern "[A-z-._0-9 ]+" .

_:o324 xsd:pattern "[A-z-._0-9 ]+" .

_:o328 xsd:pattern "[A-z-._0-9\\(\\),\\/\\ ]+" .

portable_microhaplotype_object:ParasiteDensity a owl:Class ;
  rdfs:comment "method and value of determined parasite density" ;
  rdfs:subClassOf [
    a owl:Restriction ;
    owl:onProperty portable_microhaplotype_object:parasite_density_method ;
    owl:allValuesFrom [
      a rdfs:Datatype ;
      owl:onDatatype xsd:string ;
      owl:withRestrictions ( _:o332 )
    ]
  ] , [
    a owl:Restriction ;
    owl:onProperty portable_microhaplotype_object:parasite_density_method ;
    owl:cardinality "1"^^xsd:nonNegativeInteger
  ] , [
    a owl:Restriction ;
    owl:onProperty portable_microhaplotype_object:parasite_density ;
    owl:allValuesFrom [
      a rdfs:Datatype ;
      owl:onDatatype xsd:double ;
      owl:withRestrictions ( _:o336 _:o337 )
    ]
  ] , [
    a owl:Restriction ;
    owl:onProperty portable_microhaplotype_object:parasite_density ;
    owl:cardinality "1"^^xsd:nonNegativeInteger
  ] , [
    a owl:Restriction ;
    owl:onProperty portable_microhaplotype_object:date_measured ;
    owl:allValuesFrom [
      a rdfs:Datatype ;
      owl:onDatatype xsd:string ;
      owl:withRestrictions ( _:o341 )
    ]
  ] , [
    a owl:Restriction ;
    owl:onProperty portable_microhaplotype_object:date_measured ;
    owl:maxCardinality "1"^^xsd:nonNegativeInteger
  ] , [
    a owl:Restriction ;
    owl:onProperty portable_microhaplotype_object:density_method_comments ;
    owl:allValuesFrom [
      a rdfs:Datatype ;
      owl:onDatatype xsd:string ;
      owl:withRestrictions ( _:o345 )
    ]
  ] , [
    a owl:Restriction ;
    owl:onProperty portable_microhaplotype_object:density_method_comments ;
    owl:maxCardinality "1"^^xsd:nonNegativeInteger
  ] .

_:o332 xsd:pattern "[A-z-._0-9 ]+" .

_:o336 xsd:minInclusive "0"^^xsd:double .

_:o337 xsd:pattern "[-+]?\\\\d*\\\\.?\\\\d+(?:[eE][-+]?\\\\d+)?" .

_:o341 xsd:pattern ".*(?:\\d{4}(?:-(?:0[1-9]|1[0-2])(?:-(?:0[1-9]|[12][0-9]|3[01]))?)?|NA).*" .

_:o345 xsd:pattern "[A-z-._0-9\\(\\),\\/\\ ]+" .

portable_microhaplotype_object:ProjectInfo a owl:Class ;
  rdfs:comment "Information on a project underwhich a collection of specimens belong to" ;
  rdfs:subClassOf [
    a owl:Restriction ;
    owl:onProperty portable_microhaplotype_object:project_description ;
    owl:allValuesFrom xsd:string
  ] , [
    a owl:Restriction ;
    owl:onProperty portable_microhaplotype_object:project_description ;
    owl:cardinality "1"^^xsd:nonNegativeInteger
  ] , [
    a owl:Restriction ;
    owl:onProperty portable_microhaplotype_object:project_type ;
    owl:allValuesFrom [
      a rdfs:Datatype ;
      owl:onDatatype xsd:string ;
      owl:withRestrictions ( _:o351 )
    ]
  ] , [
    a owl:Restriction ;
    owl:onProperty portable_microhaplotype_object:project_type ;
    owl:maxCardinality "1"^^xsd:nonNegativeInteger
  ] , [
    a owl:Restriction ;
    owl:onProperty portable_microhaplotype_object:project_contributors ;
    owl:allValuesFrom [
      a rdfs:Datatype ;
      owl:onDatatype xsd:string ;
      owl:withRestrictions ( _:o355 )
    ]
  ] , [
    a owl:Restriction ;
    owl:onProperty portable_microhaplotype_object:project_collector_chief_scientist ;
    owl:allValuesFrom [
      a rdfs:Datatype ;
      owl:onDatatype xsd:string ;
      owl:withRestrictions ( _:o358 )
    ]
  ] , [
    a owl:Restriction ;
    owl:onProperty portable_microhaplotype_object:project_collector_chief_scientist ;
    owl:maxCardinality "1"^^xsd:nonNegativeInteger
  ] , [
    a owl:Restriction ;
    owl:onProperty portable_microhaplotype_object:bio_project_accession ;
    owl:allValuesFrom [
      a rdfs:Datatype ;
      owl:onDatatype xsd:string ;
      owl:withRestrictions ( _:o362 )
    ]
  ] , [
    a owl:Restriction ;
    owl:onProperty portable_microhaplotype_object:bio_project_accession ;
    owl:maxCardinality "1"^^xsd:nonNegativeInteger
  ] .

_:o351 xsd:pattern "[A-z-._0-9 ]+" .

_:o355 xsd:pattern "[A-z-._0-9 ]+" .

_:o358 xsd:pattern "[A-z-._0-9;|\\(\\),\\/\\ ]+" .

_:o362 xsd:pattern "[A-z-._0-9 ]+" .

portable_microhaplotype_object:TravelInfo a owl:Class ;
  rdfs:comment "Information on travel info" ;
  rdfs:subClassOf [
    a owl:Restriction ;
    owl:onProperty portable_microhaplotype_object:lat_lon ;
    owl:allValuesFrom [
      a rdfs:Datatype ;
      owl:onDatatype xsd:string ;
      owl:withRestrictions ( _:o366 )
    ]
  ] , [
    a owl:Restriction ;
    owl:onProperty portable_microhaplotype_object:lat_lon ;
    owl:maxCardinality "1"^^xsd:nonNegativeInteger
  ] , [
    a owl:Restriction ;
    owl:onProperty portable_microhaplotype_object:geo_admin_1 ;
    owl:allValuesFrom xsd:string
  ] , [
    a owl:Restriction ;
    owl:onProperty portable_microhaplotype_object:geo_admin_1 ;
    owl:maxCardinality "1"^^xsd:nonNegativeInteger
  ] , [
    a owl:Restriction ;
    owl:onProperty portable_microhaplotype_object:geo_admin_2 ;
    owl:allValuesFrom xsd:string
  ] , [
    a owl:Restriction ;
    owl:onProperty portable_microhaplotype_object:geo_admin_2 ;
    owl:maxCardinality "1"^^xsd:nonNegativeInteger
  ] , [
    a owl:Restriction ;
    owl:onProperty portable_microhaplotype_object:geo_admin_3 ;
    owl:allValuesFrom xsd:string
  ] , [
    a owl:Restriction ;
    owl:onProperty portable_microhaplotype_object:geo_admin_3 ;
    owl:maxCardinality "1"^^xsd:nonNegativeInteger
  ] , [
    a owl:Restriction ;
    owl:onProperty portable_microhaplotype_object:travel_country ;
    owl:allValuesFrom [
      a rdfs:Datatype ;
      owl:onDatatype xsd:string ;
      owl:withRestrictions ( _:o376 )
    ]
  ] , [
    a owl:Restriction ;
    owl:onProperty portable_microhaplotype_object:travel_country ;
    owl:cardinality "1"^^xsd:nonNegativeInteger
  ] , [
    a owl:Restriction ;
    owl:onProperty portable_microhaplotype_object:travel_start_date ;
    owl:allValuesFrom [
      a rdfs:Datatype ;
      owl:onDatatype xsd:string ;
      owl:withRestrictions ( _:o380 )
    ]
  ] , [
    a owl:Restriction ;
    owl:onProperty portable_microhaplotype_object:travel_start_date ;
    owl:cardinality "1"^^xsd:nonNegativeInteger
  ] , [
    a owl:Restriction ;
    owl:onProperty portable_microhaplotype_object:travel_end_date ;
    owl:allValuesFrom [
      a rdfs:Datatype ;
      owl:onDatatype xsd:string ;
      owl:withRestrictions ( _:o384 )
    ]
  ] , [
    a owl:Restriction ;
    owl:onProperty portable_microhaplotype_object:travel_end_date ;
    owl:cardinality "1"^^xsd:nonNegativeInteger
  ] , [
    a owl:Restriction ;
    owl:onProperty portable_microhaplotype_object:bed_net_usage ;
    owl:allValuesFrom [
      a rdfs:Datatype ;
      owl:onDatatype xsd:double ;
      owl:withRestrictions ( _:o388 )
    ]
  ] , [
    a owl:Restriction ;
    owl:onProperty portable_microhaplotype_object:bed_net_usage ;
    owl:maxCardinality "1"^^xsd:nonNegativeInteger
  ] .

_:o366 xsd:pattern "[-+]?\\d{1,2}(?:\\.\\d+)?,[-+]?\\d{1,3}(?:\\.\\d+)?" .

_:o376 xsd:pattern "[\\w ,._:'–-]+" .

_:o380 xsd:pattern ".*\\d{4}-(?:0[1-9]|1[0-2])(?:-(?:0[1-9]|[12][0-9]|3[01]))?.*" .

_:o384 xsd:pattern ".*\\d{4}-(?:0[1-9]|1[0-2])(?:-(?:0[1-9]|[12][0-9]|3[01]))?.*" .

_:o388 xsd:minInclusive "0"^^xsd:double .

portable_microhaplotype_object:SpecimenInfo a owl:Class ;
  rdfs:comment "Information on specimen info" ;
  rdfs:subClassOf [
    a owl:Restriction ;
    owl:onProperty portable_microhaplotype_object:alternate_identifiers ;
    owl:allValuesFrom [
      a rdfs:Datatype ;
      owl:onDatatype xsd:string ;
      owl:withRestrictions ( _:o392 )
    ]
  ] , [
    a owl:Restriction ;
    owl:onProperty portable_microhaplotype_object:lat_lon ;
    owl:allValuesFrom [
      a rdfs:Datatype ;
      owl:onDatatype xsd:string ;
      owl:withRestrictions ( _:o395 )
    ]
  ] , [
    a owl:Restriction ;
    owl:onProperty portable_microhaplotype_object:lat_lon ;
    owl:maxCardinality "1"^^xsd:nonNegativeInteger
  ] , [
    a owl:Restriction ;
    owl:onProperty portable_microhaplotype_object:geo_admin_1 ;
    owl:allValuesFrom xsd:string
  ] , [
    a owl:Restriction ;
    owl:onProperty portable_microhaplotype_object:geo_admin_1 ;
    owl:maxCardinality "1"^^xsd:nonNegativeInteger
  ] , [
    a owl:Restriction ;
    owl:onProperty portable_microhaplotype_object:geo_admin_2 ;
    owl:allValuesFrom xsd:string
  ] , [
    a owl:Restriction ;
    owl:onProperty portable_microhaplotype_object:geo_admin_2 ;
    owl:maxCardinality "1"^^xsd:nonNegativeInteger
  ] , [
    a owl:Restriction ;
    owl:onProperty portable_microhaplotype_object:geo_admin_3 ;
    owl:allValuesFrom xsd:string
  ] , [
    a owl:Restriction ;
    owl:onProperty portable_microhaplotype_object:geo_admin_3 ;
    owl:maxCardinality "1"^^xsd:nonNegativeInteger
  ] , [
    a owl:Restriction ;
    owl:onProperty portable_microhaplotype_object:specimen_taxon_id ;
    owl:allValuesFrom [
      a rdfs:Datatype ;
      owl:onDatatype xsd:integer ;
      owl:withRestrictions ( _:o405 _:o406 )
    ]
  ] , [
    a owl:Restriction ;
    owl:onProperty portable_microhaplotype_object:host_subject_name ;
    owl:allValuesFrom [
      a rdfs:Datatype ;
      owl:onDatatype xsd:string ;
      owl:withRestrictions ( _:o409 )
    ]
  ] , [
    a owl:Restriction ;
    owl:onProperty portable_microhaplotype_object:host_subject_name ;
    owl:maxCardinality "1"^^xsd:nonNegativeInteger
  ] , [
    a owl:Restriction ;
    owl:onProperty portable_microhaplotype_object:host_taxon_id ;
    owl:allValuesFrom [
      a rdfs:Datatype ;
      owl:onDatatype xsd:integer ;
      owl:withRestrictions ( _:o413 _:o414 )
    ]
  ] , [
    a owl:Restriction ;
    owl:onProperty portable_microhaplotype_object:host_taxon_id ;
    owl:maxCardinality "1"^^xsd:nonNegativeInteger
  ] , [
    a owl:Restriction ;
    owl:onProperty portable_microhaplotype_object:host_sex ;
    owl:allValuesFrom [
      a rdfs:Datatype ;
      owl:onDatatype xsd:string ;
      owl:withRestrictions ( _:o418 )
    ]
  ] , [
    a owl:Restriction ;
    owl:onProperty portable_microhaplotype_object:host_sex ;
    owl:maxCardinality "1"^^xsd:nonNegativeInteger
  ] , [
    a owl:Restriction ;
    owl:onProperty portable_microhaplotype_object:specimen_accession ;
    owl:allValuesFrom [
      a rdfs:Datatype ;
      owl:onDatatype xsd:string ;
      owl:withRestrictions ( _:o422 )
    ]
  ] , [
    a owl:Restriction ;
    owl:onProperty portable_microhaplotype_object:specimen_accession ;
    owl:maxCardinality "1"^^xsd:nonNegativeInteger
  ] , [
    a owl:Restriction ;
    owl:onProperty portable_microhaplotype_object:gravid ;
    owl:allValuesFrom xsd:boolean
  ] , [
    a owl:Restriction ;
    owl:onProperty portable_microhaplotype_object:gravid ;
    owl:maxCardinality "1"^^xsd:nonNegativeInteger
  ] , [
    a owl:Restriction ;
    owl:onProperty portable_microhaplotype_object:blood_meal ;
    owl:allValuesFrom xsd:boolean
  ] , [
    a owl:Restriction ;
    owl:onProperty portable_microhaplotype_object:blood_meal ;
    owl:maxCardinality "1"^^xsd:nonNegativeInteger
  ] , [
    a owl:Restriction ;
    owl:onProperty portable_microhaplotype_object:gravidity ;
    owl:allValuesFrom [
      a rdfs:Datatype ;
      owl:onDatatype xsd:integer ;
      owl:withRestrictions ( _:o430 _:o431 )
    ]
  ] , [
    a owl:Restriction ;
    owl:onProperty portable_microhaplotype_object:gravidity ;
    owl:maxCardinality "1"^^xsd:nonNegativeInteger
  ] , [
    a owl:Restriction ;
    owl:onProperty portable_microhaplotype_object:parasite_density_info ;
    owl:allValuesFrom portable_microhaplotype_object:ParasiteDensity
  ] , [
    a owl:Restriction ;
    owl:onProperty portable_microhaplotype_object:collection_date ;
    owl:allValuesFrom [
      a rdfs:Datatype ;
      owl:onDatatype xsd:string ;
      owl:withRestrictions ( _:o436 )
    ]
  ] , [
    a owl:Restriction ;
    owl:onProperty portable_microhaplotype_object:collection_date ;
    owl:cardinality "1"^^xsd:nonNegativeInteger
  ] , [
    a owl:Restriction ;
    owl:onProperty portable_microhaplotype_object:host_age ;
    owl:allValuesFrom [
      a rdfs:Datatype ;
      owl:onDatatype xsd:double ;
      owl:withRestrictions ( _:o440 _:o441 )
    ]
  ] , [
    a owl:Restriction ;
    owl:onProperty portable_microhaplotype_object:host_age ;
    owl:maxCardinality "1"^^xsd:nonNegativeInteger
  ] , [
    a owl:Restriction ;
    owl:onProperty portable_microhaplotype_object:collection_country ;
    owl:allValuesFrom [
      a rdfs:Datatype ;
      owl:onDatatype xsd:string ;
      owl:withRestrictions ( _:o445 )
    ]
  ] , [
    a owl:Restriction ;
    owl:onProperty portable_microhaplotype_object:collection_country ;
    owl:cardinality "1"^^xsd:nonNegativeInteger
  ] , [
    a owl:Restriction ;
    owl:onProperty portable_microhaplotype_object:specimen_store_loc ;
    owl:allValuesFrom [
      a rdfs:Datatype ;
      owl:onDatatype xsd:string ;
      owl:withRestrictions ( _:o449 )
    ]
  ] , [
    a owl:Restriction ;
    owl:onProperty portable_microhaplotype_object:specimen_store_loc ;
    owl:maxCardinality "1"^^xsd:nonNegativeInteger
  ] , [
    a owl:Restriction ;
    owl:onProperty portable_microhaplotype_object:specimen_collect_device ;
    owl:allValuesFrom [
      a rdfs:Datatype ;
      owl:onDatatype xsd:string ;
      owl:withRestrictions ( _:o453 )
    ]
  ] , [
    a owl:Restriction ;
    owl:onProperty portable_microhaplotype_object:specimen_collect_device ;
    owl:maxCardinality "1"^^xsd:nonNegativeInteger
  ] , [
    a owl:Restriction ;
    owl:onProperty portable_microhaplotype_object:specimen_type ;
    owl:allValuesFrom [
      a rdfs:Datatype ;
      owl:onDatatype xsd:string ;
      owl:withRestrictions ( _:o457 )
    ]
  ] , [
    a owl:Restriction ;
    owl:onProperty portable_microhaplotype_object:specimen_type ;
    owl:maxCardinality "1"^^xsd:nonNegativeInteger
  ] , [
    a owl:Restriction ;
    owl:onProperty portable_microhaplotype_object:project_id ;
    owl:allValuesFrom [
      a rdfs:Datatype ;
      owl:onDatatype xsd:integer ;
      owl:withRestrictions ( _:o461 _:o462 )
    ]
  ] , [
    a owl:Restriction ;
    owl:onProperty portable_microhaplotype_object:project_id ;
    owl:cardinality "1"^^xsd:nonNegativeInteger
  ] , [
    a owl:Restriction ;
    owl:onProperty portable_microhaplotype_object:specimen_comments ;
    owl:allValuesFrom [
      a rdfs:Datatype ;
      owl:onDatatype xsd:string ;
      owl:withRestrictions ( _:o466 )
    ]
  ] , [
    a owl:Restriction ;
    owl:onProperty portable_microhaplotype_object:has_travel_out_six_month ;
    owl:allValuesFrom xsd:boolean
  ] , [
    a owl:Restriction ;
    owl:onProperty portable_microhaplotype_object:has_travel_out_six_month ;
    owl:maxCardinality "1"^^xsd:nonNegativeInteger
  ] , [
    a owl:Restriction ;
    owl:onProperty portable_microhaplotype_object:travel_out_six_month ;
    owl:allValuesFrom portable_microhaplotype_object:TravelInfo
  ] , [
    a owl:Restriction ;
    owl:onProperty portable_microhaplotype_object:storage_plate_info ;
    owl:allValuesFrom portable_microhaplotype_object:PlateInfo
  ] , [
    a owl:Restriction ;
    owl:onProperty portable_microhaplotype_object:storage_plate_info ;
    owl:maxCardinality "1"^^xsd:nonNegativeInteger
  ] , [
    a owl:Restriction ;
    owl:onProperty portable_microhaplotype_object:env_medium ;
    owl:allValuesFrom [
      a rdfs:Datatype ;
      owl:onDatatype xsd:string ;
      owl:withRestrictions ( _:o474 )
    ]
  ] , [
    a owl:Restriction ;
    owl:onProperty portable_microhaplotype_object:env_medium ;
    owl:maxCardinality "1"^^xsd:nonNegativeInteger
  ] , [
    a owl:Restriction ;
    owl:onProperty portable_microhaplotype_object:env_local_scale ;
    owl:allValuesFrom [
      a rdfs:Datatype ;
      owl:onDatatype xsd:string ;
      owl:withRestrictions ( _:o478 )
    ]
  ] , [
    a owl:Restriction ;
    owl:onProperty portable_microhaplotype_object:env_local_scale ;
    owl:maxCardinality "1"^^xsd:nonNegativeInteger
  ] , [
    a owl:Restriction ;
    owl:onProperty portable_microhaplotype_object:env_broad_scale ;
    owl:allValuesFrom [
      a rdfs:Datatype ;
      owl:onDatatype xsd:string ;
      owl:withRestrictions ( _:o482 )
    ]
  ] , [
    a owl:Restriction ;
    owl:onProperty portable_microhaplotype_object:env_broad_scale ;
    owl:maxCardinality "1"^^xsd:nonNegativeInteger
  ] , [
    a owl:Restriction ;
    owl:onProperty portable_microhaplotype_object:drug_usage ;
    owl:allValuesFrom [
      a rdfs:Datatype ;
      owl:onDatatype xsd:string ;
      owl:withRestrictions ( _:o486 )
    ]
  ] , [
    a owl:Restriction ;
    owl:onProperty portable_microhaplotype_object:treatment_status ;
    owl:allValuesFrom [
      a rdfs:Datatype ;
      owl:onDatatype xsd:string ;
      owl:withRestrictions ( _:o489 )
    ]
  ] .

_:o392 xsd:pattern "[A-z-._0-9 ]+" .

_:o395 xsd:pattern "[-+]?\\d{1,2}(?:\\.\\d+)?,[-+]?\\d{1,3}(?:\\.\\d+)?" .

_:o405 xsd:minInclusive 0 .

_:o406 xsd:pattern "[0-9]+" .

_:o409 xsd:minInclusive "0" .

_:o413 xsd:minInclusive 0 .

_:o414 xsd:pattern "[0-9]+" .

_:o418 xsd:pattern "[A-z-._0-9 ]+" .

_:o422 xsd:pattern "[A-z-._0-9 ]+" .

_:o430 xsd:minInclusive 0 .

_:o431 xsd:pattern "[0-9]+" .

_:o436 xsd:pattern ".*(?:\\d{4}(?:-(?:0[1-9]|1[0-2])(?:-(?:0[1-9]|[12][0-9]|3[01]))?)?|NA).*" .

_:o440 xsd:minInclusive "0"^^xsd:double .

_:o441 xsd:pattern "\\d*\\.?\\d+" .

_:o445 xsd:pattern "[\\w ,._:'–-]+" .

_:o449 xsd:pattern "[A-z-._0-9\\(\\),\\/\\ ]+" .

_:o453 xsd:pattern "[A-z-._0-9\\(\\),\\/\\ ]+" .

_:o457 xsd:pattern "[A-z-._0-9\\(\\),\\/\\ ]+" .

_:o461 xsd:minInclusive 0 .

_:o462 xsd:pattern "[0-9]+" .

_:o466 xsd:pattern "[A-z-._0-9\\(\\),\\/\\ ]+" .

_:o474 xsd:pattern "[A-z-._0-9;|\\(\\),\\/\\ ]+" .

_:o478 xsd:pattern "[A-z-._0-9;|\\(\\),\\/\\ ]+" .

_:o482 xsd:pattern "[A-z-._0-9;|\\(\\),\\/\\ ]+" .

_:o486 xsd:pattern "[A-z-._0-9;|\\(\\),\\/\\ ]+" .

_:o489 xsd:pattern "[A-z-._0-9;|\\(\\),\\/\\ ]+" .

portable_microhaplotype_object:BioinformaticsRunInfo a owl:Class ;
  rdfs:comment "Information about the pipeline run that generated microhaplotype_detected and reads_by_stage" ;
  rdfs:subClassOf [
    a owl:Restriction ;
    owl:onProperty portable_microhaplotype_object:bioinformatics_methods_id ;
    owl:allValuesFrom [
      a rdfs:Datatype ;
      owl:onDatatype xsd:integer ;
      owl:withRestrictions ( _:o492 _:o493 )
    ]
  ] , [
    a owl:Restriction ;
    owl:onProperty portable_microhaplotype_object:bioinformatics_methods_id ;
    owl:cardinality "1"^^xsd:nonNegativeInteger
  ] , [
    a owl:Restriction ;
    owl:onProperty portable_microhaplotype_object:run_date ;
    owl:allValuesFrom [
      a rdfs:Datatype ;
      owl:onDatatype xsd:string ;
      owl:withRestrictions ( _:o497 )
    ]
  ] , [
    a owl:Restriction ;
    owl:onProperty portable_microhaplotype_object:run_date ;
    owl:maxCardinality "1"^^xsd:nonNegativeInteger
  ] , [
    a owl:Restriction ;
    owl:onProperty portable_microhaplotype_object:bioinformatics_run_name ;
    owl:allValuesFrom [
      a rdfs:Datatype ;
      owl:onDatatype xsd:string ;
      owl:withRestrictions ( _:o501 )
    ]
  ] , [
    a owl:Restriction ;
    owl:onProperty portable_microhaplotype_object:bioinformatics_run_name ;
    owl:cardinality "1"^^xsd:nonNegativeInteger
  ] .

_:o492 xsd:minInclusive 0 .

_:o493 xsd:pattern "[0-9]+" .

_:o497 xsd:pattern ".*\\d{4}-(?:0[1-9]|1[0-2])(?:-(?:0[1-9]|[12][0-9]|3[01]))?.*" .

_:o501 xsd:pattern "[A-z-._0-9 ]+" .

portable_microhaplotype_object:PmoGenerationMethod a owl:Class ;
  rdfs:comment "Information about how a PMO was generated" ;
  rdfs:subClassOf [
    a owl:Restriction ;
    owl:onProperty portable_microhaplotype_object:program_version ;
    owl:allValuesFrom [
      a rdfs:Datatype ;
      owl:onDatatype xsd:string ;
      owl:withRestrictions ( _:o505 )
    ]
  ] , [
    a owl:Restriction ;
    owl:onProperty portable_microhaplotype_object:program_version ;
    owl:cardinality "1"^^xsd:nonNegativeInteger
  ] , [
    a owl:Restriction ;
    owl:onProperty portable_microhaplotype_object:program_name ;
    owl:allValuesFrom [
      a rdfs:Datatype ;
      owl:onDatatype xsd:string ;
      owl:withRestrictions ( _:o509 )
    ]
  ] , [
    a owl:Restriction ;
    owl:onProperty portable_microhaplotype_object:program_name ;
    owl:cardinality "1"^^xsd:nonNegativeInteger
  ] .

_:o505 xsd:pattern "[A-z-._0-9 ]+" .

_:o509 xsd:pattern "[A-z-._0-9 ]+" .

portable_microhaplotype_object:PmoHeader a owl:Class ;
  rdfs:comment "Information on the PMO file itself" ;
  rdfs:subClassOf [
    a owl:Restriction ;
    owl:onProperty portable_microhaplotype_object:pmo_version ;
    owl:allValuesFrom [
      a rdfs:Datatype ;
      owl:onDatatype xsd:string ;
      owl:withRestrictions ( _:o513 )
    ]
  ] , [
    a owl:Restriction ;
    owl:onProperty portable_microhaplotype_object:pmo_version ;
    owl:cardinality "1"^^xsd:nonNegativeInteger
  ] , [
    a owl:Restriction ;
    owl:onProperty portable_microhaplotype_object:creation_date ;
    owl:allValuesFrom [
      a rdfs:Datatype ;
      owl:onDatatype xsd:string ;
      owl:withRestrictions ( _:o517 )
    ]
  ] , [
    a owl:Restriction ;
    owl:onProperty portable_microhaplotype_object:creation_date ;
    owl:maxCardinality "1"^^xsd:nonNegativeInteger
  ] , [
    a owl:Restriction ;
    owl:onProperty portable_microhaplotype_object:generation_method ;
    owl:allValuesFrom portable_microhaplotype_object:PmoGenerationMethod
  ] , [
    a owl:Restriction ;
    owl:onProperty portable_microhaplotype_object:generation_method ;
    owl:maxCardinality "1"^^xsd:nonNegativeInteger
  ] .

_:o513 xsd:pattern "[A-z-._0-9 ]+" .

_:o517 xsd:pattern ".*\\d{4}-(?:0[1-9]|1[0-2])(?:-(?:0[1-9]|[12][0-9]|3[01]))?.*" .

portable_microhaplotype_object:StageReadCounts a owl:Class ;
  rdfs:comment "Information on the reads counts at several stages" ;
  rdfs:subClassOf [
    a owl:Restriction ;
    owl:onProperty portable_microhaplotype_object:reads ;
    owl:allValuesFrom [
      a rdfs:Datatype ;
      owl:onDatatype xsd:integer ;
      owl:withRestrictions ( _:o523 )
    ]
  ] , [
    a owl:Restriction ;
    owl:onProperty portable_microhaplotype_object:reads ;
    owl:cardinality "1"^^xsd:nonNegativeInteger
  ] , [
    a owl:Restriction ;
    owl:onProperty portable_microhaplotype_object:stage ;
    owl:allValuesFrom [
      a rdfs:Datatype ;
      owl:onDatatype xsd:string ;
      owl:withRestrictions ( _:o527 )
    ]
  ] , [
    a owl:Restriction ;
    owl:onProperty portable_microhaplotype_object:stage ;
    owl:cardinality "1"^^xsd:nonNegativeInteger
  ] .

_:o523 xsd:minInclusive 0 .

_:o527 xsd:pattern "[A-z-._0-9 ]+" .

portable_microhaplotype_object:ReadCountsByStageForTarget a owl:Class ;
  rdfs:comment "Information on the reads counts at several stages of a pipeline for a target" ;
  rdfs:subClassOf [
    a owl:Restriction ;
    owl:onProperty portable_microhaplotype_object:target_id ;
    owl:allValuesFrom [
      a rdfs:Datatype ;
      owl:onDatatype xsd:integer ;
      owl:withRestrictions ( _:o531 _:o532 )
    ]
  ] , [
    a owl:Restriction ;
    owl:onProperty portable_microhaplotype_object:target_id ;
    owl:cardinality "1"^^xsd:nonNegativeInteger
  ] , [
    a owl:Restriction ;
    owl:onProperty portable_microhaplotype_object:stages ;
    owl:allValuesFrom portable_microhaplotype_object:StageReadCounts
  ] , [
    a owl:Restriction ;
    owl:onProperty portable_microhaplotype_object:stages ;
    owl:minCardinality "1"^^xsd:nonNegativeInteger
  ] .

_:o531 xsd:minInclusive 0 .

_:o532 xsd:pattern "[0-9]+" .

portable_microhaplotype_object:ReadCountsByStageForLibrarySample a owl:Class ;
  rdfs:comment "Information on the reads counts at several stages of a pipeline for a library_sample" ;
  rdfs:subClassOf [
    a owl:Restriction ;
    owl:onProperty portable_microhaplotype_object:library_sample_id ;
    owl:allValuesFrom [
      a rdfs:Datatype ;
      owl:onDatatype xsd:integer ;
      owl:withRestrictions ( _:o538 _:o539 )
    ]
  ] , [
    a owl:Restriction ;
    owl:onProperty portable_microhaplotype_object:library_sample_id ;
    owl:cardinality "1"^^xsd:nonNegativeInteger
  ] , [
    a owl:Restriction ;
    owl:onProperty portable_microhaplotype_object:total_raw_count ;
    owl:allValuesFrom [
      a rdfs:Datatype ;
      owl:onDatatype xsd:integer ;
      owl:withRestrictions ( _:o543 _:o544 )
    ]
  ] , [
    a owl:Restriction ;
    owl:onProperty portable_microhaplotype_object:total_raw_count ;
    owl:cardinality "1"^^xsd:nonNegativeInteger
  ] , [
    a owl:Restriction ;
    owl:onProperty portable_microhaplotype_object:read_counts_for_targets ;
    owl:allValuesFrom portable_microhaplotype_object:ReadCountsByStageForTarget
  ] .

_:o538 xsd:minInclusive 0 .

_:o539 xsd:pattern "[0-9]+" .

_:o543 xsd:minInclusive 0 .

_:o544 xsd:pattern "[0-9]+" .

portable_microhaplotype_object:ReadCountsByStage a owl:Class ;
  rdfs:comment "Information on the reads counts at several stages of a pipeline" ;
  rdfs:subClassOf [
    a owl:Restriction ;
    owl:onProperty portable_microhaplotype_object:bioinformatics_run_id ;
    owl:allValuesFrom [
      a rdfs:Datatype ;
      owl:onDatatype xsd:integer ;
      owl:withRestrictions ( _:o549 _:o550 )
    ]
  ] , [
    a owl:Restriction ;
    owl:onProperty portable_microhaplotype_object:bioinformatics_run_id ;
    owl:cardinality "1"^^xsd:nonNegativeInteger
  ] , [
    a owl:Restriction ;
    owl:onProperty portable_microhaplotype_object:read_counts_by_library_sample_by_stage ;
    owl:allValuesFrom portable_microhaplotype_object:ReadCountsByStageForLibrarySample
  ] , [
    a owl:Restriction ;
    owl:onProperty portable_microhaplotype_object:read_counts_by_library_sample_by_stage ;
    owl:minCardinality "1"^^xsd:nonNegativeInteger
  ] .

_:o549 xsd:minInclusive 0 .

_:o550 xsd:pattern "[0-9]+" .

portable_microhaplotype_object:PortableMicrohaplotypeObject a owl:Class ;
  rdfs:comment "Information on final microhaplotype results from a targeted amplicon analysis with associated meta data" ;
  rdfs:subClassOf [
    a owl:Restriction ;
    owl:onProperty portable_microhaplotype_object:library_sample_info ;
    owl:allValuesFrom portable_microhaplotype_object:LibrarySampleInfo
  ] , [
    a owl:Restriction ;
    owl:onProperty portable_microhaplotype_object:library_sample_info ;
    owl:minCardinality "1"^^xsd:nonNegativeInteger
  ] , [
    a owl:Restriction ;
    owl:onProperty portable_microhaplotype_object:specimen_info ;
    owl:allValuesFrom portable_microhaplotype_object:SpecimenInfo
  ] , [
    a owl:Restriction ;
    owl:onProperty portable_microhaplotype_object:specimen_info ;
    owl:minCardinality "1"^^xsd:nonNegativeInteger
  ] , [
    a owl:Restriction ;
    owl:onProperty portable_microhaplotype_object:sequencing_info ;
    owl:allValuesFrom portable_microhaplotype_object:SequencingInfo
  ] , [
    a owl:Restriction ;
    owl:onProperty portable_microhaplotype_object:sequencing_info ;
    owl:minCardinality "1"^^xsd:nonNegativeInteger
  ] , [
    a owl:Restriction ;
    owl:onProperty portable_microhaplotype_object:panel_info ;
    owl:allValuesFrom portable_microhaplotype_object:PanelInfo
  ] , [
    a owl:Restriction ;
    owl:onProperty portable_microhaplotype_object:panel_info ;
    owl:minCardinality "1"^^xsd:nonNegativeInteger
  ] , [
    a owl:Restriction ;
    owl:onProperty portable_microhaplotype_object:target_info ;
    owl:allValuesFrom portable_microhaplotype_object:TargetInfo
  ] , [
    a owl:Restriction ;
    owl:onProperty portable_microhaplotype_object:target_info ;
    owl:minCardinality "1"^^xsd:nonNegativeInteger
  ] , [
    a owl:Restriction ;
    owl:onProperty portable_microhaplotype_object:targeted_genomes ;
    owl:allValuesFrom portable_microhaplotype_object:GenomeInfo
  ] , [
    a owl:Restriction ;
    owl:onProperty portable_microhaplotype_object:targeted_genomes ;
    owl:minCardinality "1"^^xsd:nonNegativeInteger
  ] , [
    a owl:Restriction ;
    owl:onProperty portable_microhaplotype_object:representative_microhaplotypes ;
    owl:allValuesFrom portable_microhaplotype_object:RepresentativeMicrohaplotypes
  ] , [
    a owl:Restriction ;
    owl:onProperty portable_microhaplotype_object:representative_microhaplotypes ;
    owl:cardinality "1"^^xsd:nonNegativeInteger
  ] , [
    a owl:Restriction ;
    owl:onProperty portable_microhaplotype_object:bioinformatics_methods_info ;
    owl:allValuesFrom portable_microhaplotype_object:BioinformaticsMethodInfo
  ] , [
    a owl:Restriction ;
    owl:onProperty portable_microhaplotype_object:bioinformatics_methods_info ;
    owl:minCardinality "1"^^xsd:nonNegativeInteger
  ] , [
    a owl:Restriction ;
    owl:onProperty portable_microhaplotype_object:bioinformatics_run_info ;
    owl:allValuesFrom portable_microhaplotype_object:BioinformaticsRunInfo
  ] , [
    a owl:Restriction ;
    owl:onProperty portable_microhaplotype_object:bioinformatics_run_info ;
    owl:minCardinality "1"^^xsd:nonNegativeInteger
  ] , [
    a owl:Restriction ;
    owl:onProperty portable_microhaplotype_object:detected_microhaplotypes ;
    owl:allValuesFrom portable_microhaplotype_object:DetectedMicrohaplotypes
  ] , [
    a owl:Restriction ;
    owl:onProperty portable_microhaplotype_object:detected_microhaplotypes ;
    owl:minCardinality "1"^^xsd:nonNegativeInteger
  ] , [
    a owl:Restriction ;
    owl:onProperty portable_microhaplotype_object:project_info ;
    owl:allValuesFrom portable_microhaplotype_object:ProjectInfo
  ] , [
    a owl:Restriction ;
    owl:onProperty portable_microhaplotype_object:project_info ;
    owl:minCardinality "1"^^xsd:nonNegativeInteger
  ] , [
    a owl:Restriction ;
    owl:onProperty portable_microhaplotype_object:pmo_header ;
    owl:allValuesFrom portable_microhaplotype_object:PmoHeader
  ] , [
    a owl:Restriction ;
    owl:onProperty portable_microhaplotype_object:pmo_header ;
    owl:cardinality "1"^^xsd:nonNegativeInteger
  ] , [
    a owl:Restriction ;
    owl:onProperty portable_microhaplotype_object:read_counts_by_stage ;
    owl:allValuesFrom portable_microhaplotype_object:ReadCountsByStage
  ] .

portable_microhaplotype_object:library_sample_id a owl:DatatypeProperty ;
  rdfs:comment "the index into the library_sample_info list" ;
  rdfs:range [
    a rdfs:Datatype ;
    owl:onDatatype xsd:integer ;
    owl:withRestrictions ( _:o580 _:o581 )
  ] ;
  a owl:FunctionalProperty .

_:o580 xsd:minInclusive 0 .

_:o581 xsd:pattern "[0-9]+" .

portable_microhaplotype_object:specimen_id a owl:DatatypeProperty ;
  rdfs:comment "the index into the specimen_info list" ;
  rdfs:range [
    a rdfs:Datatype ;
    owl:onDatatype xsd:integer ;
    owl:withRestrictions ( _:o583 _:o584 )
  ] ;
  a owl:FunctionalProperty .

_:o583 xsd:minInclusive 0 .

_:o584 xsd:pattern "[0-9]+" .

portable_microhaplotype_object:sequencing_info_id a owl:DatatypeProperty ;
  rdfs:comment "the index into the sequencing_info list" ;
  rdfs:range [
    a rdfs:Datatype ;
    owl:onDatatype xsd:integer ;
    owl:withRestrictions ( _:o586 _:o587 )
  ] ;
  a owl:FunctionalProperty .

_:o586 xsd:minInclusive 0 .

_:o587 xsd:pattern "[0-9]+" .

portable_microhaplotype_object:target_id a owl:DatatypeProperty ;
  rdfs:comment "the index into the target_info list" ;
  rdfs:range [
    a rdfs:Datatype ;
    owl:onDatatype xsd:integer ;
    owl:withRestrictions ( _:o589 _:o590 )
  ] ;
  a owl:FunctionalProperty .

_:o589 xsd:minInclusive 0 .

_:o590 xsd:pattern "[0-9]+" .

portable_microhaplotype_object:panel_id a owl:DatatypeProperty ;
  rdfs:comment "the index into the panel_info list" ;
  rdfs:range [
    a rdfs:Datatype ;
    owl:onDatatype xsd:integer ;
    owl:withRestrictions ( _:o592 _:o593 )
  ] ;
  a owl:FunctionalProperty .

_:o592 xsd:minInclusive 0 .

_:o593 xsd:pattern "[0-9]+" .

portable_microhaplotype_object:mhaps_target_id a owl:DatatypeProperty ;
  rdfs:comment "the index for a target in the representative_microhaplotypes list" ;
  rdfs:range [
    a rdfs:Datatype ;
    owl:onDatatype xsd:integer ;
    owl:withRestrictions ( _:o595 _:o596 )
  ] ;
  a owl:FunctionalProperty .

_:o595 xsd:minInclusive 0 .

_:o596 xsd:pattern "[0-9]+" .

portable_microhaplotype_object:mhap_id a owl:DatatypeProperty ;
  rdfs:comment "the index for a microhaplotype for a target in the representative_microhaplotypes list, e.g. representative_microhaplotypes[mhaps_target_id][mhap_id]" ;
  rdfs:range [
    a rdfs:Datatype ;
    owl:onDatatype xsd:integer ;
    owl:withRestrictions ( _:o598 _:o599 )
  ] ;
  a owl:FunctionalProperty .

_:o598 xsd:minInclusive 0 .

_:o599 xsd:pattern "[0-9]+" .

portable_microhaplotype_object:bioinformatics_methods_id a owl:DatatypeProperty ;
  rdfs:comment "the index into the bioinformatics_methods_info list" ;
  rdfs:range [
    a rdfs:Datatype ;
    owl:onDatatype xsd:integer ;
    owl:withRestrictions ( _:o601 _:o602 )
  ] ;
  a owl:FunctionalProperty .

_:o601 xsd:minInclusive 0 .

_:o602 xsd:pattern "[0-9]+" .

portable_microhaplotype_object:bioinformatics_run_id a owl:DatatypeProperty ;
  rdfs:comment "the index into bioinformatics_run_info list" ;
  rdfs:range [
    a rdfs:Datatype ;
    owl:onDatatype xsd:integer ;
    owl:withRestrictions ( _:o604 _:o605 )
  ] ;
  a owl:FunctionalProperty .

_:o604 xsd:minInclusive 0 .

_:o605 xsd:pattern "[0-9]+" .

portable_microhaplotype_object:genome_id a owl:DatatypeProperty ;
  rdfs:comment "the index to the genome in the targeted_genomes list that this location refers to" ;
  rdfs:range [
    a rdfs:Datatype ;
    owl:onDatatype xsd:integer ;
    owl:withRestrictions ( _:o607 _:o608 )
  ] ;
  a owl:FunctionalProperty .

_:o607 xsd:minInclusive 0 .

_:o608 xsd:pattern "[0-9]+" .

portable_microhaplotype_object:seq a owl:DatatypeProperty ;
  rdfs:comment "the sequence" ;
  rdfs:range [
    a rdfs:Datatype ;
    owl:onDatatype xsd:string ;
    owl:withRestrictions ( _:o610 )
  ] ;
  a owl:FunctionalProperty .

_:o610 xsd:pattern "[A-z]+" .

portable_microhaplotype_object:program_version a owl:DatatypeProperty ;
  rdfs:comment "the version of program, should be in the format of v[MAJOR].[MINOR].[PATCH]" ;
  rdfs:range [
    a rdfs:Datatype ;
    owl:onDatatype xsd:string ;
    owl:withRestrictions ( _:o612 )
  ] ;
  a owl:FunctionalProperty .

_:o612 xsd:pattern "[A-z-._0-9 ]+" .

portable_microhaplotype_object:alternate_identifiers a owl:DatatypeProperty ;
  rdfs:comment "a list of alternative names" ;
  rdfs:range [
    a rdfs:Datatype ;
    owl:onDatatype xsd:string ;
    owl:withRestrictions ( _:o614 )
  ] .

_:o614 xsd:pattern "[A-z-._0-9 ]+" .

portable_microhaplotype_object:geo_admin_1 a owl:DatatypeProperty ;
  rdfs:comment "geographical admin level 1, the secondary large demarcation of a nation (nation = admin level 0)" ;
  skos:example "State/Province" ;
  rdfs:range xsd:string ;
  a owl:FunctionalProperty .

portable_microhaplotype_object:geo_admin_2 a owl:DatatypeProperty ;
  rdfs:comment "geographical admin level 2, the third large demarcation of a nation (nation = admin level 0)" ;
  skos:example "city" ;
  rdfs:range xsd:string ;
  a owl:FunctionalProperty .

portable_microhaplotype_object:geo_admin_3 a owl:DatatypeProperty ;
  rdfs:comment "geographical admin level 3, the third large demarcation of a nation (nation = admin level 0)" ;
  skos:example "district of a city" ;
  rdfs:range xsd:string ;
  a owl:FunctionalProperty .

portable_microhaplotype_object:lat_lon a owl:DatatypeProperty ;
  rdfs:comment "the latitude and longitude of a specific site" ;
  rdfs:range [
    a rdfs:Datatype ;
    owl:onDatatype xsd:string ;
    owl:withRestrictions ( _:o616 )
  ] ;
  a owl:FunctionalProperty .

_:o616 xsd:pattern "[-+]?\\d{1,2}(?:\\.\\d+)?,[-+]?\\d{1,3}(?:\\.\\d+)?" .

portable_microhaplotype_object:gene_name a owl:DatatypeProperty ;
  rdfs:comment "an identifier of the gene, if any, is being covered with this targeted" ;
  skos:example "PF3D7_0304600.1" , "PF3D7_0810800.1" , "PF3D7_1343700.1" ;
  rdfs:range [
    a rdfs:Datatype ;
    owl:onDatatype xsd:string ;
    owl:withRestrictions ( _:o618 )
  ] ;
  a owl:FunctionalProperty .

_:o618 xsd:pattern "[A-z-._0-9:]+" .

portable_microhaplotype_object:reads a owl:DatatypeProperty ;
  rdfs:comment "the read count" ;
  rdfs:range [
    a rdfs:Datatype ;
    owl:onDatatype xsd:integer ;
    owl:withRestrictions ( _:o620 )
  ] ;
  a owl:FunctionalProperty .

_:o620 xsd:minInclusive 0 .

portable_microhaplotype_object:marker_location a owl:ObjectProperty ;
  rdfs:comment "the genomic location" ;
  rdfs:range portable_microhaplotype_object:GenomicLocation ;
  a owl:FunctionalProperty .

portable_microhaplotype_object:associations a owl:DatatypeProperty ;
  rdfs:comment "a list of associations with this marker, e.g. SP resistance, etc" ;
  rdfs:range [
    a rdfs:Datatype ;
    owl:onDatatype xsd:string ;
    owl:withRestrictions ( _:o622 )
  ] .

_:o622 xsd:pattern "[A-z-._0-9]+" .

portable_microhaplotype_object:target_name a owl:DatatypeProperty ;
  rdfs:comment "a name for this target" ;
  rdfs:range [
    a rdfs:Datatype ;
    owl:onDatatype xsd:string ;
    owl:withRestrictions ( _:o624 )
  ] ;
  a owl:FunctionalProperty .

_:o624 xsd:pattern "[A-z-._0-9]+" .

portable_microhaplotype_object:insert_location a owl:ObjectProperty ;
  rdfs:comment "the intended genomic location of the insert of the amplicon (the location between the end of the forward primer and the beginning of the reverse primer)" ;
  rdfs:range portable_microhaplotype_object:GenomicLocation ;
  a owl:FunctionalProperty .

portable_microhaplotype_object:forward_primer a owl:ObjectProperty ;
  rdfs:comment "the forward primer for this target" ;
  rdfs:range portable_microhaplotype_object:PrimerInfo ;
  a owl:FunctionalProperty .

portable_microhaplotype_object:reverse_primer a owl:ObjectProperty ;
  rdfs:comment "the reverse primer for this target" ;
  rdfs:range portable_microhaplotype_object:PrimerInfo ;
  a owl:FunctionalProperty .

portable_microhaplotype_object:markers_of_interest a owl:ObjectProperty ;
  rdfs:comment "a list of markers of interest that are covered by this target" ;
  rdfs:range portable_microhaplotype_object:MarkerOfInterest .

portable_microhaplotype_object:target_attributes a owl:DatatypeProperty ;
  rdfs:comment "a list of classification types for this target" ;
  skos:example "Diversity" , "Drug_Resistance" , "Diagnostics" ;
  rdfs:range xsd:string .

portable_microhaplotype_object:panel_targets a owl:DatatypeProperty ;
  rdfs:comment "a list of the target indexes in the target_info list" ;
  rdfs:range [
    a rdfs:Datatype ;
    owl:onDatatype xsd:integer ;
    owl:withRestrictions ( _:o626 )
  ] .

_:o626 xsd:minInclusive 0 .

portable_microhaplotype_object:reaction_name a owl:DatatypeProperty ;
  rdfs:comment "a name for this reaction" ;
  rdfs:range [
    a rdfs:Datatype ;
    owl:onDatatype xsd:string ;
    owl:withRestrictions ( _:o628 )
  ] ;
  a owl:FunctionalProperty .

_:o628 xsd:pattern "[A-z-._0-9]+" .

portable_microhaplotype_object:reactions a owl:ObjectProperty ;
  rdfs:comment "a list of 1 or more reactions that this panel contains, each reactions list the targets that were amplified in that reaction, e.g. pool1, pool2" ;
  rdfs:range portable_microhaplotype_object:ReactionInfo .

portable_microhaplotype_object:panel_name a owl:DatatypeProperty ;
  rdfs:comment "a name for the panel" ;
  rdfs:range [
    a rdfs:Datatype ;
    owl:onDatatype xsd:string ;
    owl:withRestrictions ( _:o630 )
  ] ;
  a owl:FunctionalProperty .

_:o630 xsd:pattern "[A-z-._0-9]+" .

portable_microhaplotype_object:pseudocigar_seq a owl:DatatypeProperty ;
  rdfs:comment "the pseudocigar itself" ;
  rdfs:range [
    a rdfs:Datatype ;
    owl:onDatatype xsd:string ;
    owl:withRestrictions ( _:o632 )
  ] ;
  a owl:FunctionalProperty .

_:o632 xsd:pattern "[a-zA-Z0-9+=.]+" .

portable_microhaplotype_object:ref_loc a owl:ObjectProperty ;
  rdfs:comment "the genomic location the pseudocigar is in reference to" ;
  rdfs:range portable_microhaplotype_object:GenomicLocation ;
  a owl:FunctionalProperty .

portable_microhaplotype_object:pseudocigar_generation_description a owl:DatatypeProperty ;
  rdfs:comment "a description of how the pseudocigar information was generated " ;
  rdfs:range [
    a rdfs:Datatype ;
    owl:onDatatype xsd:string ;
    owl:withRestrictions ( _:o634 )
  ] ;
  a owl:FunctionalProperty .

_:o634 xsd:pattern "[A-z-._0-9\\(\\),\\/\\ ]+" .

portable_microhaplotype_object:microhaplotype_name a owl:DatatypeProperty ;
  rdfs:comment "an optional name for this microhaplotype" ;
  rdfs:range [
    a rdfs:Datatype ;
    owl:onDatatype xsd:string ;
    owl:withRestrictions ( _:o636 )
  ] ;
  a owl:FunctionalProperty .

_:o636 xsd:pattern "[A-z-._0-9]+" .

portable_microhaplotype_object:quality a owl:DatatypeProperty ;
  rdfs:comment "the ASCII fastq per base quality score for this sequence, this is optional, must be same length as the sequence" ;
  rdfs:range [
    a rdfs:Datatype ;
    owl:onDatatype xsd:string ;
    owl:withRestrictions ( _:o638 )
  ] ;
  a owl:FunctionalProperty .

_:o638 xsd:pattern "[A-z-._0-9]+" .

portable_microhaplotype_object:pseudocigar a owl:ObjectProperty ;
  rdfs:comment "the pseudocigar of the haplotype" ;
  rdfs:range portable_microhaplotype_object:Pseudocigar ;
  a owl:FunctionalProperty .

portable_microhaplotype_object:masking a owl:ObjectProperty ;
  rdfs:comment "masking info for the sequence" ;
  rdfs:range portable_microhaplotype_object:MaskingInfo .

portable_microhaplotype_object:alt_annotations a owl:DatatypeProperty ;
  rdfs:comment "a list of additional annotations associated with this microhaplotype, e.g. wildtype" ;
  rdfs:range xsd:string .

portable_microhaplotype_object:associated_protein_variants a owl:ObjectProperty ;
  rdfs:comment "a list of protein variants for this haplotype, e.g. amino acid changes/INDELS" ;
  rdfs:range portable_microhaplotype_object:ProteinVariant .

portable_microhaplotype_object:associated_seq_variants a owl:ObjectProperty ;
  rdfs:comment "a list of sequence variants for this haplotype, e.g. SNPS, indels" ;
  rdfs:range portable_microhaplotype_object:GenomicLocation .

portable_microhaplotype_object:seq_start a owl:DatatypeProperty ;
  rdfs:comment "the start of the masking" ;
  rdfs:range [
    a rdfs:Datatype ;
    owl:onDatatype xsd:integer ;
    owl:withRestrictions ( _:o640 )
  ] ;
  a owl:FunctionalProperty .

_:o640 xsd:minInclusive 0 .

portable_microhaplotype_object:seq_segment_size a owl:DatatypeProperty ;
  rdfs:comment "the size of the masking" ;
  rdfs:range [
    a rdfs:Datatype ;
    owl:onDatatype xsd:integer ;
    owl:withRestrictions ( _:o642 )
  ] ;
  a owl:FunctionalProperty .

_:o642 xsd:minInclusive 0 .

portable_microhaplotype_object:replacement_size a owl:DatatypeProperty ;
  rdfs:comment "the size of replacement mask" ;
  rdfs:range [
    a rdfs:Datatype ;
    owl:onDatatype xsd:integer ;
    owl:withRestrictions ( _:o644 )
  ] ;
  a owl:FunctionalProperty .

_:o644 xsd:minInclusive 0 .

portable_microhaplotype_object:masking_generation_description a owl:DatatypeProperty ;
  rdfs:comment "a description of how the masking information was generated " ;
  rdfs:range [
    a rdfs:Datatype ;
    owl:onDatatype xsd:string ;
    owl:withRestrictions ( _:o646 )
  ] ;
  a owl:FunctionalProperty .

_:o646 xsd:pattern "[A-z-._0-9\\(\\),\\/\\ ]+" .

portable_microhaplotype_object:targets a owl:ObjectProperty ;
  rdfs:comment "a list of the microhaplotypes for each targets " ;
  rdfs:range portable_microhaplotype_object:RepresentativeMicrohaplotypesForTarget .

portable_microhaplotype_object:microhaplotypes a owl:ObjectProperty ;
  rdfs:comment "a list of all the microhaplotypes for a target" ;
  rdfs:range portable_microhaplotype_object:RepresentativeMicrohaplotype .

portable_microhaplotype_object:mhap_location a owl:ObjectProperty ;
  rdfs:comment "a genomic location that was analyzed for this target info, this allows listing location that may be different from the full target location (e.g 1 trimmed off the full length) " ;
  rdfs:range portable_microhaplotype_object:GenomicLocation ;
  a owl:FunctionalProperty .

portable_microhaplotype_object:library_samples a owl:ObjectProperty ;
  rdfs:comment "a list of the microhaplotypes detected for all samples with a list for each target " ;
  rdfs:range portable_microhaplotype_object:DetectedMicrohaplotypesForSample .

portable_microhaplotype_object:name a owl:DatatypeProperty ;
  rdfs:comment "name of the genome" ;
  rdfs:range [
    a rdfs:Datatype ;
    owl:onDatatype xsd:string ;
    owl:withRestrictions ( _:o648 )
  ] ;
  a owl:FunctionalProperty .

_:o648 xsd:pattern "[A-z-._0-9]+" .

portable_microhaplotype_object:genome_version a owl:DatatypeProperty ;
  rdfs:comment "the genome version" ;
  rdfs:range [
    a rdfs:Datatype ;
    owl:onDatatype xsd:string ;
    owl:withRestrictions ( _:o650 )
  ] ;
  a owl:FunctionalProperty .

_:o650 xsd:pattern "[A-z-._0-9]+" .

portable_microhaplotype_object:taxon_id a owl:DatatypeProperty ;
  rdfs:comment "the NCBI taxonomy number, can be a list of values if it's a genome file that has been created by combining gnomes from different species" ;
  rdfs:range [
    a rdfs:Datatype ;
    owl:onDatatype xsd:integer ;
    owl:withRestrictions ( _:o652 _:o653 )
  ] .

_:o652 xsd:minInclusive 0 .

_:o653 xsd:pattern "[0-9]" .

portable_microhaplotype_object:url a owl:DatatypeProperty ;
  rdfs:comment "a link to the where this genome file could be downloaded" ;
  skos:example "https://plasmodb.org/common/downloads/release-65/Pfalciparum3D7/fasta/data/PlasmoDB-65_Pfalciparum3D7_Genome.fasta" , "ftp://ftp.ensemblgenomes.org/pub/protists/release-62/fasta/plasmodium_falciparum/dna/Plasmodium_falciparum.GCA000002765v3.dna.toplevel.fa.gz" , "https://ftp.ncbi.nlm.nih.gov/genomes/all/GCF/000/005/845/GCF_000005845.2_ASM584v2/GCF_000005845.2_ASM584v2_genomic.fna.gz" ;
  rdfs:range [
    a rdfs:Datatype ;
    owl:onDatatype xsd:string ;
    owl:withRestrictions ( _:o655 )
  ] ;
  a owl:FunctionalProperty .

_:o655 xsd:pattern "(?:NA|(https?|ftp):\\/\\/[^\\s/$.?#].[^\\s]*)" .

portable_microhaplotype_object:chromosomes a owl:DatatypeProperty ;
  rdfs:comment "a list of the chromosomes/contigs found within this genome" ;
  rdfs:range [
    a rdfs:Datatype ;
    owl:onDatatype xsd:string ;
    owl:withRestrictions ( _:o657 )
  ] .

_:o657 xsd:pattern "[A-z-._0-9]+" .

portable_microhaplotype_object:gff_url a owl:DatatypeProperty ;
  rdfs:comment "a link to the where this genome's annotation file could be downloaded" ;
  skos:example "https://plasmodb.org/common/downloads/release-65/Pfalciparum3D7/fasta/data/PlasmoDB-65_Pfalciparum3D7.gff" , "ftp://ftp.ensemblgenomes.org/pub/protists/release-62/gff3/plasmodium_falciparum/Plasmodium_falciparum.GCA000002765v3.62.gff3.gz" , "https://ftp.ncbi.nlm.nih.gov/genomes/all/GCF/000/005/845/GCF_000005845.2_ASM584v2/GCF_000005845.2_ASM584v2_genomic.gff.gz" ;
  rdfs:range [
    a rdfs:Datatype ;
    owl:onDatatype xsd:string ;
    owl:withRestrictions ( _:o659 )
  ] ;
  a owl:FunctionalProperty .

_:o659 xsd:pattern "(https?|ftp):\\/\\/[^\\s/$.?#].[^\\s]*" .

portable_microhaplotype_object:chrom a owl:DatatypeProperty ;
  rdfs:comment "the chromosome name" ;
  rdfs:range [
    a rdfs:Datatype ;
    owl:onDatatype xsd:string ;
    owl:withRestrictions ( _:o661 )
  ] ;
  a owl:FunctionalProperty .

_:o661 xsd:pattern "[A-z-._0-9]+" .

portable_microhaplotype_object:start a owl:DatatypeProperty ;
  rdfs:comment "the start of the location, 0-based positioning" ;
  rdfs:range [
    a rdfs:Datatype ;
    owl:onDatatype xsd:integer ;
    owl:withRestrictions ( _:o663 _:o664 )
  ] ;
  a owl:FunctionalProperty .

_:o663 xsd:minInclusive 0 .

_:o664 xsd:pattern "[0-9]+" .

portable_microhaplotype_object:end a owl:DatatypeProperty ;
  rdfs:comment "the end of the location, 0-based positioning" ;
  rdfs:range [
    a rdfs:Datatype ;
    owl:onDatatype xsd:integer ;
    owl:withRestrictions ( _:o666 _:o667 )
  ] ;
  a owl:FunctionalProperty .

_:o666 xsd:minInclusive 0 .

_:o667 xsd:pattern "[0-9]+" .

portable_microhaplotype_object:strand a owl:DatatypeProperty ;
  rdfs:comment "which strand the location is, either + for plus strand or - for negative strand" ;
  rdfs:range [
    a rdfs:Datatype ;
    owl:onDatatype xsd:string ;
    owl:withRestrictions ( _:o669 )
  ] ;
  a owl:FunctionalProperty .

_:o669 xsd:pattern ".*[+-].*" .

portable_microhaplotype_object:ref_seq a owl:DatatypeProperty ;
  rdfs:comment "the reference sequence of this genomic location" ;
  rdfs:range [
    a rdfs:Datatype ;
    owl:onDatatype xsd:string ;
    owl:withRestrictions ( _:o671 )
  ] ;
  a owl:FunctionalProperty .

_:o671 xsd:pattern "[A-z-]+" .

portable_microhaplotype_object:alt_seq a owl:DatatypeProperty ;
  rdfs:comment "a possible alternative sequence of this genomic location" ;
  rdfs:range [
    a rdfs:Datatype ;
    owl:onDatatype xsd:string ;
    owl:withRestrictions ( _:o673 )
  ] ;
  a owl:FunctionalProperty .

_:o673 xsd:pattern "[A-z-]+" .

portable_microhaplotype_object:protein_location a owl:ObjectProperty ;
  rdfs:comment "the position within the protein, the chromosome in this case would be the transcript name" ;
  rdfs:range portable_microhaplotype_object:GenomicLocation ;
  a owl:FunctionalProperty .

portable_microhaplotype_object:codon_genomic_location a owl:ObjectProperty ;
  rdfs:comment "the position within the genomic sequence of the codon" ;
  rdfs:range portable_microhaplotype_object:GenomicLocation ;
  a owl:FunctionalProperty .

portable_microhaplotype_object:alternative_gene_name a owl:DatatypeProperty ;
  rdfs:comment "an alternative gene name" ;
  skos:example "CSP" , "AMA1" , "DHPS" ;
  rdfs:range [
    a rdfs:Datatype ;
    owl:onDatatype xsd:string ;
    owl:withRestrictions ( _:o675 )
  ] ;
  a owl:FunctionalProperty .

_:o675 xsd:pattern "[A-z-._0-9]+" .

portable_microhaplotype_object:location a owl:ObjectProperty ;
  rdfs:comment "what the intended genomic location of the primer is" ;
  rdfs:range portable_microhaplotype_object:GenomicLocation ;
  a owl:FunctionalProperty .

portable_microhaplotype_object:target_results a owl:ObjectProperty ;
  rdfs:comment "a list of the microhaplotypes detected for a list of targets" ;
  rdfs:range portable_microhaplotype_object:DetectedMicrohaplotypesForTarget .

portable_microhaplotype_object:umis a owl:DatatypeProperty ;
  rdfs:comment "the unique molecular identifier (umi) count for this microhaplotype" ;
  rdfs:range [
    a rdfs:Datatype ;
    owl:onDatatype xsd:integer ;
    owl:withRestrictions ( _:o677 )
  ] ;
  a owl:FunctionalProperty .

_:o677 xsd:minInclusive 0 .

portable_microhaplotype_object:mhaps a owl:ObjectProperty ;
  rdfs:comment "a list of the microhaplotypes detected for this target" ;
  rdfs:range portable_microhaplotype_object:MicrohaplotypeForTarget .

portable_microhaplotype_object:methods a owl:ObjectProperty ;
  rdfs:comment "methodology used to generate the microhaplotype data stored in this PMO, e.g. demultiplexing method, denosing method, or a pipeline method that ties all th steps together" ;
  rdfs:range portable_microhaplotype_object:BioMethod .

portable_microhaplotype_object:program a owl:DatatypeProperty ;
  rdfs:comment "name of the program used for this portion of the pipeline" ;
  rdfs:range [
    a rdfs:Datatype ;
    owl:onDatatype xsd:string ;
    owl:withRestrictions ( _:o679 )
  ] ;
  a owl:FunctionalProperty .

_:o679 xsd:pattern "[A-z-._0-9 ]+" .

portable_microhaplotype_object:program_description a owl:DatatypeProperty ;
  rdfs:comment "a short description of what this method does" ;
  rdfs:range [
    a rdfs:Datatype ;
    owl:onDatatype xsd:string ;
    owl:withRestrictions ( _:o681 )
  ] ;
  a owl:FunctionalProperty .

_:o681 xsd:pattern "[A-z-._0-9\\(\\),\\/\\ ]+" .

portable_microhaplotype_object:program_url a owl:DatatypeProperty ;
  rdfs:comment "a url pointing to code base of a program, e.g. a github link" ;
  rdfs:range [
    a rdfs:Datatype ;
    owl:onDatatype xsd:string ;
    owl:withRestrictions ( _:o683 )
  ] ;
  a owl:FunctionalProperty .

_:o683 xsd:pattern "[A-z-._0-9\\(\\),\\/\\ ]+" .

portable_microhaplotype_object:additional_argument a owl:DatatypeProperty ;
  rdfs:comment "any additional arguments that differ from the default arguments" ;
  rdfs:range [
    a rdfs:Datatype ;
    owl:onDatatype xsd:string ;
    owl:withRestrictions ( _:o685 )
  ] .

_:o685 xsd:pattern "[A-z-._0-9{}\\(\\),\\/\\ ]+" .

portable_microhaplotype_object:plate_name a owl:DatatypeProperty ;
  rdfs:comment "a name for the plate" ;
  rdfs:range [
    a rdfs:Datatype ;
    owl:onDatatype xsd:string ;
    owl:withRestrictions ( _:o687 )
  ] ;
  a owl:FunctionalProperty .

_:o687 xsd:pattern "[A-z-._0-9 ]+" .

portable_microhaplotype_object:plate_row a owl:DatatypeProperty ;
  rdfs:comment "the row position" ;
  rdfs:range [
    a rdfs:Datatype ;
    owl:onDatatype xsd:string ;
    owl:withRestrictions ( _:o689 )
  ] ;
  a owl:FunctionalProperty .

_:o689 xsd:pattern "[A-z]" .

portable_microhaplotype_object:plate_col a owl:DatatypeProperty ;
  rdfs:comment "the column position" ;
  rdfs:range [
    a rdfs:Datatype ;
    owl:onDatatype xsd:integer ;
    owl:withRestrictions ( _:o691 _:o692 )
  ] ;
  a owl:FunctionalProperty .

_:o691 xsd:minInclusive 0 .

_:o692 xsd:pattern "[0-9]+" .

portable_microhaplotype_object:fastqs_loc a owl:DatatypeProperty ;
  rdfs:comment "the location (url or filename path) of the fastqs for a library run" ;
  skos:example "ftp.sra.ebi.ac.uk/vol1/fastq/SRR332/035/SRR33216235/SRR33216235_1.fastq.gz;ftp.sra.ebi.ac.uk/vol1/fastq/SRR332/035/SRR33216235/SRR33216235_2.fastq.gz" , "MACHINE@/path/to/SRR33216235_1.fastq.gz;MACHINE@/path/to/SRR33216235_2.fastq.gz" ;
  rdfs:range [
    a rdfs:Datatype ;
    owl:onDatatype xsd:string ;
    owl:withRestrictions ( _:o694 )
  ] ;
  a owl:FunctionalProperty .

_:o694 xsd:pattern "[A-z-.;,_0-9\\(\\),\\/\\ ]+" .

portable_microhaplotype_object:run_accession a owl:DatatypeProperty ;
  rdfs:comment "ERA/SRA run accession number for the sample if it was submitted" ;
  rdfs:range [
    a rdfs:Datatype ;
    owl:onDatatype xsd:string ;
    owl:withRestrictions ( _:o696 )
  ] ;
  a owl:FunctionalProperty .

_:o696 xsd:pattern "[A-z-._0-9]+" .

portable_microhaplotype_object:experiment_accession a owl:DatatypeProperty ;
  rdfs:comment "ERA/SRA experiment accession number for the sample if it was submitted" ;
  rdfs:range [
    a rdfs:Datatype ;
    owl:onDatatype xsd:string ;
    owl:withRestrictions ( _:o698 )
  ] ;
  a owl:FunctionalProperty .

_:o698 xsd:pattern "[A-z-._0-9]+" .

portable_microhaplotype_object:library_prep_plate_info a owl:ObjectProperty ;
  rdfs:comment "plate location of where library was prepared for sequencing" ;
  rdfs:range portable_microhaplotype_object:PlateInfo ;
  a owl:FunctionalProperty .

portable_microhaplotype_object:qpcr_parasite_density_info a owl:ObjectProperty ;
  rdfs:comment "qpcr parasite density measurement for this extracted sample" ;
  rdfs:range portable_microhaplotype_object:ParasiteDensity .

portable_microhaplotype_object:sequencing_info_name a owl:DatatypeProperty ;
  rdfs:comment "a name for a specific sequencing run, e.g. batch1" ;
  rdfs:range [
    a rdfs:Datatype ;
    owl:onDatatype xsd:string ;
    owl:withRestrictions ( _:o700 )
  ] ;
  a owl:FunctionalProperty .

_:o700 xsd:pattern "[A-z-._0-9 ]+" .

portable_microhaplotype_object:seq_platform a owl:DatatypeProperty ;
  rdfs:comment "the sequencing technology used to sequence the run, e.g. ILLUMINA, NANOPORE, PACBIO" ;
  skos:example "ILLUMINA" , "PACBIO" , "NANOPORE" ;
  rdfs:range [
    a rdfs:Datatype ;
    owl:onDatatype xsd:string ;
    owl:withRestrictions ( _:o702 )
  ] ;
  a owl:FunctionalProperty .

_:o702 xsd:pattern "[A-z-._0-9 ]+" .

portable_microhaplotype_object:seq_instrument_model a owl:DatatypeProperty ;
  rdfs:comment "the sequencing instrument model used to sequence the run, e.g. NextSeq 2000, MinION, Revio" ;
  skos:example "NextSeq 2000" , "MinION" , "Revio" ;
  rdfs:range [
    a rdfs:Datatype ;
    owl:onDatatype xsd:string ;
    owl:withRestrictions ( _:o704 )
  ] ;
  a owl:FunctionalProperty .

_:o704 xsd:pattern "[A-z-._0-9 ]+" .

portable_microhaplotype_object:seq_date a owl:DatatypeProperty ;
  rdfs:comment "the date of sequencing, should be YYYY-MM or YYYY-MM-DD" ;
  skos:example "2024-03-10" , "2024-03" ;
  rdfs:range [
    a rdfs:Datatype ;
    owl:onDatatype xsd:string ;
    owl:withRestrictions ( _:o706 )
  ] ;
  a owl:FunctionalProperty .

_:o706 xsd:pattern ".*\\d{4}-(?:0[1-9]|1[0-2])(?:-(?:0[1-9]|[12][0-9]|3[01]))?.*" .

portable_microhaplotype_object:nucl_acid_ext a owl:DatatypeProperty ;
  rdfs:comment "Link to a reference or kit that describes the recovery of nucleic acids from the sample" ;
  skos:example "https://www.paragongenomics.com/targeted-sequencing/amplicon-sequencing/cleanplex-ngs-amplicon-sequencing/" ;
  rdfs:range [
    a rdfs:Datatype ;
    owl:onDatatype xsd:string ;
    owl:withRestrictions ( _:o708 )
  ] ;
  a owl:FunctionalProperty .

_:o708 xsd:pattern "(https?|ftp):\\/\\/[^\\s/$.?#].[^\\s]*" .

portable_microhaplotype_object:nucl_acid_amp a owl:DatatypeProperty ;
  rdfs:comment "Link to a reference or kit that describes the enzymatic amplification of nucleic acids" ;
  skos:example "https://www.paragongenomics.com/targeted-sequencing/amplicon-sequencing/cleanplex-ngs-amplicon-sequencing/" ;
  rdfs:range [
    a rdfs:Datatype ;
    owl:onDatatype xsd:string ;
    owl:withRestrictions ( _:o710 )
  ] ;
  a owl:FunctionalProperty .

_:o710 xsd:pattern "(https?|ftp):\\/\\/[^\\s/$.?#].[^\\s]*" .

portable_microhaplotype_object:nucl_acid_ext_date a owl:DatatypeProperty ;
  rdfs:comment "the date of the nucleoacid extraction" ;
  skos:example "2024-03-10" , "2024-03" ;
  rdfs:range [
    a rdfs:Datatype ;
    owl:onDatatype xsd:string ;
    owl:withRestrictions ( _:o712 )
  ] ;
  a owl:FunctionalProperty .

_:o712 xsd:pattern ".*\\d{4}-(?:0[1-9]|1[0-2])(?:-(?:0[1-9]|[12][0-9]|3[01]))?.*" .

portable_microhaplotype_object:nucl_acid_amp_date a owl:DatatypeProperty ;
  rdfs:comment "the date of the nucleoacid amplification" ;
  skos:example "2024-03-10" , "2024-03" ;
  rdfs:range [
    a rdfs:Datatype ;
    owl:onDatatype xsd:string ;
    owl:withRestrictions ( _:o714 )
  ] ;
  a owl:FunctionalProperty .

_:o714 xsd:pattern ".*\\d{4}-(?:0[1-9]|1[0-2])(?:-(?:0[1-9]|[12][0-9]|3[01]))?.*" .

portable_microhaplotype_object:pcr_cond a owl:DatatypeProperty ;
  rdfs:comment "the method/conditions for PCR, List PCR cycles used to amplify the target" ;
  skos:example "10 min at 95 C, 13 cycles for high density samples (or 15 cycles for low density samples) of 15 sec at 98 C and 75 sec at 60 C" ;
  rdfs:range [
    a rdfs:Datatype ;
    owl:onDatatype xsd:string ;
    owl:withRestrictions ( _:o716 )
  ] ;
  a owl:FunctionalProperty .

_:o716 xsd:pattern "[A-z-._0-9\\(\\),\\/\\ ]+" .

portable_microhaplotype_object:library_screen a owl:DatatypeProperty ;
  rdfs:comment "Describe enrichment, screening, or normalization methods applied during amplification or library preparation, e.g. size selection 390bp, diluted to 1 ng DNA/sample" ;
  skos:example "size selection 390bp, diluted to 1 ng DNA/sample" ;
  rdfs:range [
    a rdfs:Datatype ;
    owl:onDatatype xsd:string ;
    owl:withRestrictions ( _:o718 )
  ] ;
  a owl:FunctionalProperty .

_:o718 xsd:pattern "[A-z-._0-9\\(\\),\\/\\ ]+" .

portable_microhaplotype_object:library_kit a owl:DatatypeProperty ;
  rdfs:comment "Name, version, and applicable cell or cycle numbers for the kit used to prepare libraries and load cells or chips for sequencing. If possible, include a part number, e.g. MiSeq Reagent Kit v3 (150-cycle), MS-102-3001" ;
  skos:example "MiSeq Reagent Kit v3 (150-cycle), MS-102-3001" ;
  rdfs:range [
    a rdfs:Datatype ;
    owl:onDatatype xsd:string ;
    owl:withRestrictions ( _:o720 )
  ] ;
  a owl:FunctionalProperty .

_:o720 xsd:pattern "[A-z-._0-9\\(\\),\\/\\ ]+" .

portable_microhaplotype_object:library_layout a owl:DatatypeProperty ;
  rdfs:comment "Specify the configuration of reads, e.g. paired-end, single" ;
  skos:example "paired-end" , "single" ;
  rdfs:range [
    a rdfs:Datatype ;
    owl:onDatatype xsd:string ;
    owl:withRestrictions ( _:o722 )
  ] ;
  a owl:FunctionalProperty .

_:o722 xsd:pattern "[A-z-._0-9 ]+" .

portable_microhaplotype_object:library_strategy a owl:DatatypeProperty ;
  rdfs:comment "what the nuceloacid sequencing/amplification strategy was (common names are AMPLICON, WGS)" ;
  skos:example "AMPLICON" , "WGS" ;
  rdfs:range [
    a rdfs:Datatype ;
    owl:onDatatype xsd:string ;
    owl:withRestrictions ( _:o724 )
  ] ;
  a owl:FunctionalProperty .

_:o724 xsd:pattern "[A-z-._0-9 ]+" .

portable_microhaplotype_object:library_source a owl:DatatypeProperty ;
  rdfs:comment "Source of amplification material e.g. was it DNA (GENOMIC) or RNA (TRANSCRIPTOMIC) (common names GENOMIC, TRANSCRIPTOMIC)" ;
  skos:example "GENOMIC" , "TRANSCRIPTOMIC" ;
  rdfs:range [
    a rdfs:Datatype ;
    owl:onDatatype xsd:string ;
    owl:withRestrictions ( _:o726 )
  ] ;
  a owl:FunctionalProperty .

_:o726 xsd:pattern "[A-z-._0-9 ]+" .

portable_microhaplotype_object:library_selection a owl:DatatypeProperty ;
  rdfs:comment "how amplification was done (common are PCR=Source material was selected by designed primers, RANDOM =Random selection by shearing or other method)" ;
  skos:example "PCR" , "RANDOM" ;
  rdfs:range [
    a rdfs:Datatype ;
    owl:onDatatype xsd:string ;
    owl:withRestrictions ( _:o728 )
  ] ;
  a owl:FunctionalProperty .

_:o728 xsd:pattern "[A-z-._0-9 ]+" .

portable_microhaplotype_object:seq_center a owl:DatatypeProperty ;
  rdfs:comment "Name of facility where sequencing was performed (lab, core facility, or company)" ;
  skos:example "UCSF sequencing core" ;
  rdfs:range [
    a rdfs:Datatype ;
    owl:onDatatype xsd:string ;
    owl:withRestrictions ( _:o730 )
  ] ;
  a owl:FunctionalProperty .

_:o730 xsd:pattern "[A-z-._0-9\\(\\),\\/\\ ]+" .

portable_microhaplotype_object:parasite_density_method a owl:DatatypeProperty ;
  rdfs:comment "the method of how this density was obtained" ;
  skos:example "qpcr" , "microscopy" ;
  rdfs:range [
    a rdfs:Datatype ;
    owl:onDatatype xsd:string ;
    owl:withRestrictions ( _:o732 )
  ] ;
  a owl:FunctionalProperty .

_:o732 xsd:pattern "[A-z-._0-9 ]+" .

portable_microhaplotype_object:parasite_density a owl:DatatypeProperty ;
  rdfs:comment "the density in microliters" ;
  skos:example "25.0" , "10e5" ;
  rdfs:range [
    a rdfs:Datatype ;
    owl:onDatatype xsd:double ;
    owl:withRestrictions ( _:o734 _:o735 )
  ] ;
  a owl:FunctionalProperty .

_:o734 xsd:minInclusive "0"^^xsd:double .

_:o735 xsd:pattern "[-+]?\\\\d*\\\\.?\\\\d+(?:[eE][-+]?\\\\d+)?" .

portable_microhaplotype_object:date_measured a owl:DatatypeProperty ;
  rdfs:comment "the date the qpcr was performed, can be YYYY, YYYY-MM, or YYYY-MM-DD" ;
  skos:example "1988" , "1988-06" , "1988-06-26" ;
  rdfs:range [
    a rdfs:Datatype ;
    owl:onDatatype xsd:string ;
    owl:withRestrictions ( _:o737 )
  ] ;
  a owl:FunctionalProperty .

_:o737 xsd:pattern ".*(?:\\d{4}(?:-(?:0[1-9]|1[0-2])(?:-(?:0[1-9]|[12][0-9]|3[01]))?)?|NA).*" .

portable_microhaplotype_object:density_method_comments a owl:DatatypeProperty ;
  rdfs:comment "additional comments about how the density was performed" ;
  skos:example "var-ATS primers used" , "John Smith performed microscopy" ;
  rdfs:range [
    a rdfs:Datatype ;
    owl:onDatatype xsd:string ;
    owl:withRestrictions ( _:o739 )
  ] ;
  a owl:FunctionalProperty .

_:o739 xsd:pattern "[A-z-._0-9\\(\\),\\/\\ ]+" .

portable_microhaplotype_object:project_description a owl:DatatypeProperty ;
  rdfs:comment "a short description of the project" ;
  rdfs:range xsd:string ;
  a owl:FunctionalProperty .

portable_microhaplotype_object:project_type a owl:DatatypeProperty ;
  rdfs:comment "the type of project conducted, e.g. TES vs surveillance vs transmission" ;
  rdfs:range [
    a rdfs:Datatype ;
    owl:onDatatype xsd:string ;
    owl:withRestrictions ( _:o741 )
  ] ;
  a owl:FunctionalProperty .

_:o741 xsd:pattern "[A-z-._0-9 ]+" .

portable_microhaplotype_object:project_contributors a owl:DatatypeProperty ;
  rdfs:comment "a list of collaborators who contributed to this project" ;
  rdfs:range [
    a rdfs:Datatype ;
    owl:onDatatype xsd:string ;
    owl:withRestrictions ( _:o743 )
  ] .

_:o743 xsd:pattern "[A-z-._0-9 ]+" .

portable_microhaplotype_object:project_collector_chief_scientist a owl:DatatypeProperty ;
  rdfs:comment "can be collection of names separated by a semicolon if multiple people involved or can just be the name of the primary person managing the specimen" ;
  rdfs:range [
    a rdfs:Datatype ;
    owl:onDatatype xsd:string ;
    owl:withRestrictions ( _:o745 )
  ] ;
  a owl:FunctionalProperty .

_:o745 xsd:pattern "[A-z-._0-9;|\\(\\),\\/\\ ]+" .

portable_microhaplotype_object:bio_project_accession a owl:DatatypeProperty ;
  rdfs:comment "an SRA bioproject accession e.g. PRJNA33823" ;
  skos:example "PRJNA33823" ;
  rdfs:range [
    a rdfs:Datatype ;
    owl:onDatatype xsd:string ;
    owl:withRestrictions ( _:o747 )
  ] ;
  a owl:FunctionalProperty .

_:o747 xsd:pattern "[A-z-._0-9 ]+" .

portable_microhaplotype_object:travel_country a owl:DatatypeProperty ;
  rdfs:comment "the name of country, would be the same as admin level 0" ;
  skos:example "Senegal" , "USA" , "Japan" ;
  rdfs:range [
    a rdfs:Datatype ;
    owl:onDatatype xsd:string ;
    owl:withRestrictions ( _:o749 )
  ] ;
  a owl:FunctionalProperty .

_:o749 xsd:pattern "[\\w ,._:'–-]+" .

portable_microhaplotype_object:travel_start_date a owl:DatatypeProperty ;
  rdfs:comment "the date of the start of travel, can be approximate, should be YYYY-MM or YYYY-MM-DD (preferred)" ;
  skos:example "2024-03-10" , "2024-03" ;
  rdfs:range [
    a rdfs:Datatype ;
    owl:onDatatype xsd:string ;
    owl:withRestrictions ( _:o751 )
  ] ;
  a owl:FunctionalProperty .

_:o751 xsd:pattern ".*\\d{4}-(?:0[1-9]|1[0-2])(?:-(?:0[1-9]|[12][0-9]|3[01]))?.*" .

portable_microhaplotype_object:travel_end_date a owl:DatatypeProperty ;
  rdfs:comment "the date of the end of travel, can be approximate, should be YYYY-MM or YYYY-MM-DD (preferred)" ;
  skos:example "2024-03-10" , "2024-03" ;
  rdfs:range [
    a rdfs:Datatype ;
    owl:onDatatype xsd:string ;
    owl:withRestrictions ( _:o753 )
  ] ;
  a owl:FunctionalProperty .

_:o753 xsd:pattern ".*\\d{4}-(?:0[1-9]|1[0-2])(?:-(?:0[1-9]|[12][0-9]|3[01]))?.*" .

portable_microhaplotype_object:bed_net_usage a owl:DatatypeProperty ;
  rdfs:comment "approximate usage of bed net while traveling, 1 = 100% nights with bed net, 0 = 0% no bed net usage" ;
  rdfs:range [
    a rdfs:Datatype ;
    owl:onDatatype xsd:double ;
    owl:withRestrictions ( _:o755 )
  ] ;
  a owl:FunctionalProperty .

_:o755 xsd:minInclusive "0"^^xsd:double .

portable_microhaplotype_object:specimen_taxon_id a owl:DatatypeProperty ;
  rdfs:comment "the NCBI taxonomy number of the organism(s) in the specimen, can list multiple if a mixed sample" ;
  rdfs:range [
    a rdfs:Datatype ;
    owl:onDatatype xsd:integer ;
    owl:withRestrictions ( _:o757 _:o758 )
  ] .

_:o757 xsd:minInclusive 0 .

_:o758 xsd:pattern "[0-9]+" .

portable_microhaplotype_object:host_subject_name a owl:DatatypeProperty ;
  rdfs:comment "an identifier for the individual/person/patient a specimen was collected from" ;
  rdfs:range [
    a rdfs:Datatype ;
    owl:onDatatype xsd:string ;
    owl:withRestrictions ( _:o760 )
  ] ;
  a owl:FunctionalProperty .

_:o760 xsd:minInclusive "0" .

portable_microhaplotype_object:host_taxon_id a owl:DatatypeProperty ;
  rdfs:comment "the NCBI taxonomy number of the host that the specimen was collected from" ;
  rdfs:range [
    a rdfs:Datatype ;
    owl:onDatatype xsd:integer ;
    owl:withRestrictions ( _:o762 _:o763 )
  ] ;
  a owl:FunctionalProperty .

_:o762 xsd:minInclusive 0 .

_:o763 xsd:pattern "[0-9]+" .

portable_microhaplotype_object:host_sex a owl:DatatypeProperty ;
  rdfs:comment "if specimen is collected from a host with a sex, the sex listed for that host" ;
  rdfs:range [
    a rdfs:Datatype ;
    owl:onDatatype xsd:string ;
    owl:withRestrictions ( _:o765 )
  ] ;
  a owl:FunctionalProperty .

_:o765 xsd:pattern "[A-z-._0-9 ]+" .

portable_microhaplotype_object:specimen_accession a owl:DatatypeProperty ;
  rdfs:comment "if specimen is deposited in a database, what accession is it associated with" ;
  rdfs:range [
    a rdfs:Datatype ;
    owl:onDatatype xsd:string ;
    owl:withRestrictions ( _:o767 )
  ] ;
  a owl:FunctionalProperty .

_:o767 xsd:pattern "[A-z-._0-9 ]+" .

portable_microhaplotype_object:gravid a owl:DatatypeProperty ;
  rdfs:comment "whether host specimen is currently pregnant" ;
  rdfs:range xsd:boolean ;
  a owl:FunctionalProperty .

portable_microhaplotype_object:blood_meal a owl:DatatypeProperty ;
  rdfs:comment "whether host specimen has had a recent blood meal" ;
  rdfs:range xsd:boolean ;
  a owl:FunctionalProperty .

portable_microhaplotype_object:gravidity a owl:DatatypeProperty ;
  rdfs:comment "the gravidity of the specimen host (number of previous pregnancies)" ;
  rdfs:range [
    a rdfs:Datatype ;
    owl:onDatatype xsd:integer ;
    owl:withRestrictions ( _:o769 _:o770 )
  ] ;
  a owl:FunctionalProperty .

_:o769 xsd:minInclusive 0 .

_:o770 xsd:pattern "[0-9]+" .

portable_microhaplotype_object:parasite_density_info a owl:ObjectProperty ;
  rdfs:comment "one or more parasite densities in microliters for this specimen" ;
  rdfs:range portable_microhaplotype_object:ParasiteDensity .

portable_microhaplotype_object:collection_date a owl:DatatypeProperty ;
  rdfs:comment "the date of the specimen collection, can be YYYY, YYYY-MM, or YYYY-MM-DD" ;
  skos:example "1988" , "1988-06" , "1988-06-26" ;
  rdfs:range [
    a rdfs:Datatype ;
    owl:onDatatype xsd:string ;
    owl:withRestrictions ( _:o772 )
  ] ;
  a owl:FunctionalProperty .

_:o772 xsd:pattern ".*(?:\\d{4}(?:-(?:0[1-9]|1[0-2])(?:-(?:0[1-9]|[12][0-9]|3[01]))?)?|NA).*" .

portable_microhaplotype_object:host_age a owl:DatatypeProperty ;
  rdfs:comment "if specimen is from a person, the age in years of the person, can be float value so for 3 month old put 0.25" ;
  skos:example "0.1" , "1" , "7" ;
  rdfs:range [
    a rdfs:Datatype ;
    owl:onDatatype xsd:double ;
    owl:withRestrictions ( _:o774 _:o775 )
  ] ;
  a owl:FunctionalProperty .

_:o774 xsd:minInclusive "0"^^xsd:double .

_:o775 xsd:pattern "\\d*\\.?\\d+" .

portable_microhaplotype_object:collection_country a owl:DatatypeProperty ;
  rdfs:comment "the name of country collected in, would be the same as admin level 0" ;
  skos:example "Senegal" , "USA" , "Japan" ;
  rdfs:range [
    a rdfs:Datatype ;
    owl:onDatatype xsd:string ;
    owl:withRestrictions ( _:o777 )
  ] ;
  a owl:FunctionalProperty .

_:o777 xsd:pattern "[\\w ,._:'–-]+" .

portable_microhaplotype_object:specimen_store_loc a owl:DatatypeProperty ;
  rdfs:comment "the specimen store site, address or facility name" ;
  rdfs:range [
    a rdfs:Datatype ;
    owl:onDatatype xsd:string ;
    owl:withRestrictions ( _:o779 )
  ] ;
  a owl:FunctionalProperty .

_:o779 xsd:pattern "[A-z-._0-9\\(\\),\\/\\ ]+" .

portable_microhaplotype_object:specimen_collect_device a owl:DatatypeProperty ;
  rdfs:comment "the way the specimen was collected, e.g. whole blood, dried blood spot" ;
  skos:example "whole blood" , "dried blood spot" ;
  rdfs:range [
    a rdfs:Datatype ;
    owl:onDatatype xsd:string ;
    owl:withRestrictions ( _:o781 )
  ] ;
  a owl:FunctionalProperty .

_:o781 xsd:pattern "[A-z-._0-9\\(\\),\\/\\ ]+" .

portable_microhaplotype_object:specimen_type a owl:DatatypeProperty ;
  rdfs:comment "what type of specimen this is, e.g. negative_control, positive_control, field_sample" ;
  skos:example "negative_control" , "positive_control" , "field_sample" ;
  rdfs:range [
    a rdfs:Datatype ;
    owl:onDatatype xsd:string ;
    owl:withRestrictions ( _:o783 )
  ] ;
  a owl:FunctionalProperty .

_:o783 xsd:pattern "[A-z-._0-9\\(\\),\\/\\ ]+" .

portable_microhaplotype_object:project_id a owl:DatatypeProperty ;
  rdfs:comment "the index into the project_info list" ;
  rdfs:range [
    a rdfs:Datatype ;
    owl:onDatatype xsd:integer ;
    owl:withRestrictions ( _:o785 _:o786 )
  ] ;
  a owl:FunctionalProperty .

_:o785 xsd:minInclusive 0 .

_:o786 xsd:pattern "[0-9]+" .

portable_microhaplotype_object:specimen_comments a owl:DatatypeProperty ;
  rdfs:comment "any additional comments about the specimen" ;
  rdfs:range [
    a rdfs:Datatype ;
    owl:onDatatype xsd:string ;
    owl:withRestrictions ( _:o788 )
  ] .

_:o788 xsd:pattern "[A-z-._0-9\\(\\),\\/\\ ]+" .

portable_microhaplotype_object:has_travel_out_six_month a owl:DatatypeProperty ;
  rdfs:comment "has travelled out from local region in the last six months" ;
  rdfs:range xsd:boolean ;
  a owl:FunctionalProperty .

portable_microhaplotype_object:travel_out_six_month a owl:ObjectProperty ;
  rdfs:comment "Specification of the countries travelled in the last six months; can include multiple travels" ;
  rdfs:range portable_microhaplotype_object:TravelInfo .

portable_microhaplotype_object:storage_plate_info a owl:ObjectProperty ;
  rdfs:comment "plate location of where specimen is stored if stored in a plate" ;
  rdfs:range portable_microhaplotype_object:PlateInfo ;
  a owl:FunctionalProperty .

portable_microhaplotype_object:env_medium a owl:DatatypeProperty ;
  rdfs:comment "the environment medium from which the specimen was collected from" ;
  skos:example "blood" , "midgut" ;
  rdfs:range [
    a rdfs:Datatype ;
    owl:onDatatype xsd:string ;
    owl:withRestrictions ( _:o790 )
  ] ;
  a owl:FunctionalProperty .

_:o790 xsd:pattern "[A-z-._0-9;|\\(\\),\\/\\ ]+" .

portable_microhaplotype_object:env_local_scale a owl:DatatypeProperty ;
  rdfs:comment "the local environment from which the specimen was collected, e.g. jungle, urban, rural" ;
  skos:example "jungle" , "urban" , "rural" ;
  rdfs:range [
    a rdfs:Datatype ;
    owl:onDatatype xsd:string ;
    owl:withRestrictions ( _:o792 )
  ] ;
  a owl:FunctionalProperty .

_:o792 xsd:pattern "[A-z-._0-9;|\\(\\),\\/\\ ]+" .

portable_microhaplotype_object:env_broad_scale a owl:DatatypeProperty ;
  rdfs:comment "the broad environment from which the specimen was collected, e.g. highlands, lowlands, mountainous region" ;
  skos:example "highlands" , "lowlands" ;
  rdfs:range [
    a rdfs:Datatype ;
    owl:onDatatype xsd:string ;
    owl:withRestrictions ( _:o794 )
  ] ;
  a owl:FunctionalProperty .

_:o794 xsd:pattern "[A-z-._0-9;|\\(\\),\\/\\ ]+" .

portable_microhaplotype_object:drug_usage a owl:DatatypeProperty ;
  rdfs:comment "Any drug used by subject and the frequency of usage; can include multiple drugs used" ;
  skos:example "Coartem;2/day" ;
  rdfs:range [
    a rdfs:Datatype ;
    owl:onDatatype xsd:string ;
    owl:withRestrictions ( _:o796 )
  ] .

_:o796 xsd:pattern "[A-z-._0-9;|\\(\\),\\/\\ ]+" .

portable_microhaplotype_object:treatment_status a owl:DatatypeProperty ;
  rdfs:comment "If person has been treated with drugs, what was the treatment outcome" ;
  skos:example "failed" , "successful" , "partial_response" ;
  rdfs:range [
    a rdfs:Datatype ;
    owl:onDatatype xsd:string ;
    owl:withRestrictions ( _:o798 )
  ] .

_:o798 xsd:pattern "[A-z-._0-9;|\\(\\),\\/\\ ]+" .

portable_microhaplotype_object:run_date a owl:DatatypeProperty ;
  rdfs:comment "the date when the run was done, should be YYYY-MM-DD" ;
  rdfs:range [
    a rdfs:Datatype ;
    owl:onDatatype xsd:string ;
    owl:withRestrictions ( _:o800 )
  ] ;
  a owl:FunctionalProperty .

_:o800 xsd:pattern ".*\\d{4}-(?:0[1-9]|1[0-2])(?:-(?:0[1-9]|[12][0-9]|3[01]))?.*" .

portable_microhaplotype_object:bioinformatics_run_name a owl:DatatypeProperty ;
  rdfs:comment "a name to for this run, needs to be unique to each run " ;
  rdfs:range [
    a rdfs:Datatype ;
    owl:onDatatype xsd:string ;
    owl:withRestrictions ( _:o802 )
  ] ;
  a owl:FunctionalProperty .

_:o802 xsd:pattern "[A-z-._0-9 ]+" .

portable_microhaplotype_object:program_name a owl:DatatypeProperty ;
  rdfs:comment "the name of the program" ;
  rdfs:range [
    a rdfs:Datatype ;
    owl:onDatatype xsd:string ;
    owl:withRestrictions ( _:o804 )
  ] ;
  a owl:FunctionalProperty .

_:o804 xsd:pattern "[A-z-._0-9 ]+" .

portable_microhaplotype_object:pmo_version a owl:DatatypeProperty ;
  rdfs:comment "the version of the PMO file, should be in the format of v[MAJOR].[MINOR].[PATCH]" ;
  rdfs:range [
    a rdfs:Datatype ;
    owl:onDatatype xsd:string ;
    owl:withRestrictions ( _:o806 )
  ] ;
  a owl:FunctionalProperty .

_:o806 xsd:pattern "[A-z-._0-9 ]+" .

portable_microhaplotype_object:creation_date a owl:DatatypeProperty ;
  rdfs:comment "the date of when the PMO file was created or modified, should be YYYY-MM-DD" ;
  rdfs:range [
    a rdfs:Datatype ;
    owl:onDatatype xsd:string ;
    owl:withRestrictions ( _:o808 )
  ] ;
  a owl:FunctionalProperty .

_:o808 xsd:pattern ".*\\d{4}-(?:0[1-9]|1[0-2])(?:-(?:0[1-9]|[12][0-9]|3[01]))?.*" .

portable_microhaplotype_object:generation_method a owl:ObjectProperty ;
  rdfs:comment "the generation method to create this PMO " ;
  rdfs:range portable_microhaplotype_object:PmoGenerationMethod ;
  a owl:FunctionalProperty .

portable_microhaplotype_object:stage a owl:DatatypeProperty ;
  rdfs:comment "the stage of the pipeline, e.g. demultiplexed, denoised, etc" ;
  rdfs:range [
    a rdfs:Datatype ;
    owl:onDatatype xsd:string ;
    owl:withRestrictions ( _:o810 )
  ] ;
  a owl:FunctionalProperty .

_:o810 xsd:pattern "[A-z-._0-9 ]+" .

portable_microhaplotype_object:stages a owl:ObjectProperty ;
  rdfs:comment "the read counts by each stage" ;
  rdfs:range portable_microhaplotype_object:StageReadCounts .

portable_microhaplotype_object:total_raw_count a owl:DatatypeProperty ;
  rdfs:comment "the raw counts off the sequencing machine that a sample began with" ;
  rdfs:range [
    a rdfs:Datatype ;
    owl:onDatatype xsd:integer ;
    owl:withRestrictions ( _:o812 _:o813 )
  ] ;
  a owl:FunctionalProperty .

_:o812 xsd:minInclusive 0 .

_:o813 xsd:pattern "[0-9]+" .

portable_microhaplotype_object:read_counts_for_targets a owl:ObjectProperty ;
  rdfs:comment "a list of counts by stage for a target" ;
  rdfs:range portable_microhaplotype_object:ReadCountsByStageForTarget .

portable_microhaplotype_object:read_counts_by_library_sample_by_stage a owl:ObjectProperty ;
  rdfs:comment "a list by library_sample for the counts at each stage" ;
  rdfs:range portable_microhaplotype_object:ReadCountsByStageForLibrarySample .

portable_microhaplotype_object:library_sample_info a owl:ObjectProperty ;
  rdfs:comment "a list of libraries of all the seq/amp of the specimens within this PMO file" ;
  rdfs:range portable_microhaplotype_object:LibrarySampleInfo .

portable_microhaplotype_object:specimen_info a owl:ObjectProperty ;
  rdfs:comment "a list of all the specimens within this PMO file" ;
  rdfs:range portable_microhaplotype_object:SpecimenInfo .

portable_microhaplotype_object:sequencing_info a owl:ObjectProperty ;
  rdfs:comment "a list of sequencing infos for this PMO file" ;
  rdfs:range portable_microhaplotype_object:SequencingInfo .

portable_microhaplotype_object:panel_info a owl:ObjectProperty ;
  rdfs:comment "a list of info on the panels" ;
  rdfs:range portable_microhaplotype_object:PanelInfo .

portable_microhaplotype_object:target_info a owl:ObjectProperty ;
  rdfs:comment "a list of info on the targets" ;
  rdfs:range portable_microhaplotype_object:TargetInfo .

portable_microhaplotype_object:targeted_genomes a owl:ObjectProperty ;
  rdfs:comment "a list of genomes that any genomic location information refers to" ;
  rdfs:range portable_microhaplotype_object:GenomeInfo .

portable_microhaplotype_object:representative_microhaplotypes a owl:ObjectProperty ;
  rdfs:comment "a list of the information on the representative microhaplotypes" ;
  rdfs:range portable_microhaplotype_object:RepresentativeMicrohaplotypes ;
  a owl:FunctionalProperty .

portable_microhaplotype_object:bioinformatics_methods_info a owl:ObjectProperty ;
  rdfs:comment "the bioinformatics pipeline/methods used to generated the microhaplotype analysis for this project" ;
  rdfs:range portable_microhaplotype_object:BioinformaticsMethodInfo .

portable_microhaplotype_object:bioinformatics_run_info a owl:ObjectProperty ;
  rdfs:comment "the runtime info for the bioinformatics pipeline used to generated the microhaplotypes analysis for this project" ;
  rdfs:range portable_microhaplotype_object:BioinformaticsRunInfo .

portable_microhaplotype_object:detected_microhaplotypes a owl:ObjectProperty ;
  rdfs:comment "the microhaplotypes detected in this projects" ;
  rdfs:range portable_microhaplotype_object:DetectedMicrohaplotypes .

portable_microhaplotype_object:project_info a owl:ObjectProperty ;
  rdfs:comment "the information about the projects stored in this PMO" ;
  rdfs:range portable_microhaplotype_object:ProjectInfo .

portable_microhaplotype_object:pmo_header a owl:ObjectProperty ;
  rdfs:comment "the PMO information for this file including version etc" ;
  rdfs:range portable_microhaplotype_object:PmoHeader ;
  a owl:FunctionalProperty .

portable_microhaplotype_object:read_counts_by_stage a owl:ObjectProperty ;
  rdfs:comment "the read counts for library_samples for different stages of the pipeline" ;
  rdfs:range portable_microhaplotype_object:ReadCountsByStage .

dcterms:license a owl:AnnotationProperty .

vann:preferredNamespacePrefix a owl:AnnotationProperty .

vann:preferredNamespaceUri a owl:AnnotationProperty .

skos:example a owl:AnnotationProperty .

sh:declare a owl:AnnotationProperty .

sh:prefix a owl:AnnotationProperty .

sh:namespace a owl:AnnotationProperty .
