# One pour in an aluminium foundry: the ingots and returns that go in, the casting that comes
# out, the crucible that survives the melt, the bay it happens in and the shift it happens
# during. This is the pattern's "raw components plus equipment to a finished artifact".

@prefix materialtransformationpattern: <http://descartes-core.org/ontologies/mt/1.1/MaterialTransformationPattern#> .
@prefix ex: <https://w3id.org/ontoboard/example/material-transformation#> .
@prefix owl: <http://www.w3.org/2002/07/owl#> .
@prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> .

ex:CastingOfGearboxHousing a owl:NamedIndividual , materialtransformationpattern:MaterialTransformation ;
    rdfs:label "the sand casting of gearbox housing 7F-212, pour of 12 March" ;
    materialtransformationpattern:hasInput ex:AlSi10MgIngots , ex:FoundryReturnScrap ;
    materialtransformationpattern:hasOutput ex:GearboxHousingCasting ;
    materialtransformationpattern:hasCatalyst ex:SiliconCarbideCrucible ;
    materialtransformationpattern:occursInNeighborhood ex:FoundryMeltingBay ;
    materialtransformationpattern:occursDuring ex:MorningPourWindow .

ex:AlSi10MgIngots a owl:NamedIndividual , materialtransformationpattern:Input ;
    rdfs:label "28 kg of AlSi10Mg ingot, melt lot 240311" .

ex:FoundryReturnScrap a owl:NamedIndividual , materialtransformationpattern:Input ;
    rdfs:label "6 kg of runners and risers returned from the previous pour" .

ex:GearboxHousingCasting a owl:NamedIndividual , materialtransformationpattern:Output ;
    rdfs:label "the as-cast gearbox housing, before fettling and T6 ageing" .

ex:SiliconCarbideCrucible a owl:NamedIndividual , materialtransformationpattern:Catalyst ;
    rdfs:label "the silicon carbide crucible the charge is melted in" .

ex:FoundryMeltingBay a owl:NamedIndividual , materialtransformationpattern:Neighborhood ;
    rdfs:label "the melting bay of the foundry, Hall 2" .

ex:MorningPourWindow a owl:NamedIndividual , owl:Thing ;
    rdfs:label "the pour window of 12 March 2024, 08:00 to 09:30" .

# The crucible is typed only as a Catalyst. The pattern makes Catalyst a subclass of both Input
# and Output, so a reasoner works out that it goes into the melt and comes back out of it; and
# because the transformation only takes intervals, it also works out that the pour window is one.
