@base <http://def.seegrid.csiro.au/isotc211/iso19115/2003/lineage> .
@prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> .
@prefix dc: <http://purl.org/dc/elements/1.1/> .
@prefix dcterms: <http://purl.org/dc/terms/> .
@prefix h2o: <../../iso19150/-2/2012/basic#> .
@prefix li: <#> .
@prefix owl: <http://www.w3.org/2002/07/owl#> .
@prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> .
@prefix skos: <http://www.w3.org/2004/02/skos/core#> .
@prefix xsd: <http://www.w3.org/2001/XMLSchema#> .

<dataquality#Element>
    h2o:isAbstract true .

<dataquality#Result>
    h2o:isAbstract true .

<>
    dc:creator """Simon Jonathan David COX
CSIRO"""^^xsd:string ;
    dc:date "2012-05-25T00:00:00"^^xsd:dateTime ;
    dc:description "An OWL representation of parts of the Geographic Metadata model described in ISO 19115:2003 with Corrigendum 2006 - LI Package"^^xsd:string ;
    dc:source """ISO 19115:2003
ISO 19115:2006 Corrigendum"""^^xsd:string ;
    dc:title "OWL representation of ISO 19115 (Geographic Information - Metadata - Lineage package)"^^xsd:string ;
    dcterms:created "2012-05-18T00:00:00"^^xsd:dateTime ;
    dcterms:hasPart li:Lineage, li:ProcessStep, li:Source, li:dateTime, li:description, li:processStep, li:processor, li:rationale, li:scaleDenominator, li:source, li:sourceCitation, li:sourceExtent, li:sourceReferenceSystem, li:sourceStep, li:statement ;
    dcterms:modified "2012-10-26T00:00:00"^^xsd:dateTime ;
    a owl:Ontology ;
    owl:imports <../../iso19150/-2/2012/basic> ;
    owl:priorVersion <https://www.seegrid.csiro.au/subversion/xmml/ontologies/tags/201210/ISOTC211/HM/lineage.rdf> ;
    owl:versionIRI <https://www.seegrid.csiro.au/subversion/xmml/ontologies/tags/201305/ISOTC211/HM/lineage.rdf> .

li:Lineage
    a owl:Class ;
    rdfs:isDefinedBy <> ;
    rdfs:label "Lineage"^^xsd:string ;
    rdfs:subClassOf [
        a owl:Restriction ;
        owl:allValuesFrom li:ProcessStep ;
        owl:onProperty li:processStep
    ], [
        a owl:Restriction ;
        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
        owl:onProperty li:statement
    ], [
        a owl:Restriction ;
        owl:allValuesFrom li:Source ;
        owl:onProperty li:source
    ], [
        a owl:Restriction ;
        owl:minCardinality "0"^^xsd:nonNegativeInteger ;
        owl:onProperty li:source
    ], [
        a owl:Restriction ;
        owl:minCardinality "0"^^xsd:nonNegativeInteger ;
        owl:onProperty li:processStep
    ] ;
    skos:notation "LI_Lineage"^^h2o:ISOClassName .

li:ProcessStep
    a owl:Class ;
    rdfs:isDefinedBy <> ;
    rdfs:label "Process step"^^xsd:string ;
    rdfs:subClassOf [
        a owl:Restriction ;
        owl:allValuesFrom li:Source ;
        owl:onProperty li:source
    ], [
        a owl:Restriction ;
        owl:minCardinality "0"^^xsd:nonNegativeInteger ;
        owl:onProperty li:processor
    ], [
        a owl:Restriction ;
        owl:allValuesFrom <citation#ResponsibleParty> ;
        owl:onProperty li:processor
    ], [
        a owl:Restriction ;
        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
        owl:onProperty li:dateTime
    ], [
        a owl:Restriction ;
        owl:minCardinality "0"^^xsd:nonNegativeInteger ;
        owl:onProperty li:source
    ], [
        a owl:Restriction ;
        owl:cardinality "1"^^xsd:nonNegativeInteger ;
        owl:onProperty li:description
    ], [
        a owl:Restriction ;
        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
        owl:onProperty li:rationale
    ] ;
    skos:notation "LI_ProcessStep"^^h2o:ISOClassName .

li:Source
    a owl:Class ;
    rdfs:isDefinedBy <> ;
    rdfs:label "Source"^^xsd:string ;
    rdfs:subClassOf [
        a owl:Restriction ;
        owl:allValuesFrom <metadata#ReferenceSystem> ;
        owl:onProperty li:sourceReferenceSystem
    ], [
        a owl:Restriction ;
        owl:allValuesFrom <metadata#RepresentativeFraction> ;
        owl:onProperty li:scaleDenominator
    ], [
        a owl:Restriction ;
        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
        owl:onProperty li:sourceReferenceSystem
    ], [
        a owl:Restriction ;
        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
        owl:onProperty li:scaleDenominator
    ], [
        a owl:Restriction ;
        owl:allValuesFrom li:ProcessStep ;
        owl:onProperty li:sourceStep
    ], [
        a owl:Restriction ;
        owl:minCardinality "0"^^xsd:nonNegativeInteger ;
        owl:onProperty li:sourceStep
    ], [
        a owl:Restriction ;
        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
        owl:onProperty li:sourceCitation
    ], [
        a owl:Restriction ;
        owl:allValuesFrom <extent#Extent> ;
        owl:onProperty li:sourceExtent
    ], [
        a owl:Restriction ;
        owl:allValuesFrom <citation#Citation> ;
        owl:onProperty li:sourceCitation
    ], [
        a owl:Restriction ;
        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
        owl:onProperty li:description
    ], [
        a owl:Restriction ;
        owl:minCardinality "0"^^xsd:nonNegativeInteger ;
        owl:onProperty li:sourceExtent
    ] ;
    skos:notation "LI_Source"^^h2o:ISOClassName .

li:dateTime
    a owl:DatatypeProperty ;
    rdfs:domain li:ProcessStep ;
    rdfs:isDefinedBy <> ;
    rdfs:label "date time"^^xsd:string ;
    rdfs:range xsd:dateTime .

li:description
    a owl:DatatypeProperty ;
    rdfs:domain [
        a owl:Class ;
        owl:unionOf (li:Source
            li:ProcessStep
        )
    ] ;
    rdfs:isDefinedBy <> ;
    rdfs:label "description"^^xsd:string .

li:processStep
    a owl:ObjectProperty ;
    rdfs:domain li:Lineage ;
    rdfs:isDefinedBy <> ;
    rdfs:label "process step"^^xsd:string ;
    rdfs:range li:ProcessStep .

li:processor
    a owl:ObjectProperty ;
    rdfs:domain li:ProcessStep ;
    rdfs:isDefinedBy <> ;
    rdfs:label "processor"^^xsd:string ;
    rdfs:range <citation#ResponsibleParty> .

li:rationale
    a owl:DatatypeProperty ;
    rdfs:domain li:ProcessStep ;
    rdfs:isDefinedBy <> ;
    rdfs:label "rationale"^^xsd:string .

li:scaleDenominator
    a owl:ObjectProperty ;
    rdfs:domain li:Source ;
    rdfs:isDefinedBy <> ;
    rdfs:label "scale denominator"^^xsd:string ;
    rdfs:range <metadata#RepresentativeFraction> .

li:source
    a owl:ObjectProperty ;
    rdfs:domain [
        a owl:Class ;
        owl:unionOf (li:Lineage
            li:ProcessStep
        )
    ] ;
    rdfs:isDefinedBy <> ;
    rdfs:label "source"^^xsd:string ;
    rdfs:range li:Source ;
    owl:inverseOf li:sourceStep .

li:sourceCitation
    a owl:ObjectProperty ;
    rdfs:domain li:Source ;
    rdfs:isDefinedBy <> ;
    rdfs:label "source citation"^^xsd:string ;
    rdfs:range <citation#Citation> .

li:sourceExtent
    a owl:ObjectProperty ;
    rdfs:domain li:Source ;
    rdfs:isDefinedBy <> ;
    rdfs:label "source extent"^^xsd:string ;
    rdfs:range <extent#Extent> .

li:sourceReferenceSystem
    a owl:ObjectProperty ;
    rdfs:domain li:Source ;
    rdfs:isDefinedBy <> ;
    rdfs:label "source reference system"^^xsd:string ;
    rdfs:range <metadata#ReferenceSystem> .

li:sourceStep
    a owl:ObjectProperty ;
    rdfs:domain li:Source ;
    rdfs:isDefinedBy <> ;
    rdfs:label "source step"^^xsd:string ;
    rdfs:range li:ProcessStep ;
    owl:inverseOf li:source .

li:statement
    a owl:DatatypeProperty ;
    rdfs:domain li:Lineage ;
    rdfs:isDefinedBy <> ;
    rdfs:label "statement"^^xsd:string .

