@prefix : <http://cookingbigdata.com/linkeddata/ccdm#> .
@prefix owl: <http://www.w3.org/2002/07/owl#> .
@prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> .
@prefix xml: <http://www.w3.org/XML/1998/namespace> .
@prefix xsd: <http://www.w3.org/2001/XMLSchema#> .
@prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> .
@prefix dc: <http://purl.org/dc/terms/> .
@prefix foaf: <http://xmlns.com/foaf/0.1/> .
@prefix gr: <http://purl.org/goodrelations/v1#> .
@prefix mls: <http://www.w3.org/ns/mls> .



## Schema Header 
<http://dicits.ugr.es/dmml-schema#>	rdf:type owl:Ontology ;
	rdfs:label "Data Mining Machine Learning Operations workflow"@en ;
	dc:title "Data Mining Machine Learning Operation workflow"@en ;
	dc:description ""@en ;
	dc:created "2018-03-06"^^xsd:date ;	
	dc:modified "2018-04-03"^^xsd:date ;
	dc:issued "2018-05-20"^^xsd:date ;
    dc:creator :manuelparra ;
	dc:publiser :cookingbigdata ;
	owl:versionInfo "1.0"^^xsd:decimal ; 
	dc:rights "Copyright © 2018 Manuel Parra-Royón";
	.
	
:manuelparra a foaf:Person;
	foaf:name "Manuel Parra-Royon";
	foaf:homepage <https://twitter.com/manugrapevine> ;
	foaf:mbox "manuparra@gmail.com" ;
	rdf:about <https://twitter.com/manugrapevine>;	
	.
:cookingbigdata a foaf:Organization;
	foaf:name "CookingBigData";
	foaf:homepage <http://cookingbigdata.com> ;
	rdf:about <http://cookingbigdata.com/about>;
	.
	

:Operation rdf:type owl:Class ;
	rdfs:subClassOf 
		[ rdf:type owl:Restriction ;
		  owl:onProperty mls:hasOutput ;
		  owl:someValuesFrom :ServiceOutput
		],
		[ rdf:type owl:Restriction ;
		  owl:onProperty mls:hasInput ;
		  owl:someValuesFrom :ServiceInput
		], 
		[ rdf:type owl:Restriction ;
		  owl:onProperty mls:achieves ;
		  owl:someValuesFrom mls:Task
		],
		[ rdf:type owl:Restriction ;
		  owl:onProperty mls:executes ;
		  owl:someValuesFrom mls:Implementation
		], 
		[ rdf:type owl:Restriction ;
		  owl:onProperty mls:realizes ;
		  owl:someValuesFrom mls:Algorithm
		], 
		[ rdf:type owl:Restriction ;
		  owl:onProperty :hasInputFault ;
		  owl:someValuesFrom :ServiceInput
		  ], 
		[ rdf:type owl:Restriction ;
			owl:onProperty :hasOutputFault ;
			owl:someValuesFrom :ServiceOutput
		];
	rdfs:label "Operation/Function DM"@en ;
	rdfs:comment "Execution of Service of Data Mining (operation)"@en ;
	.
	
:ServiceOutput rdf:type owl:Class;
	rdfs:subClassOf mls:Model, mls:ModelEvaluation, mls:DataSet ;	
	rdfs:label "Output of the operation and related service"@en ;
	rdfs:comment "Output of the operation and related service"@en ;
	.

:ServiceInput rdf:type owl:Class;
	rdfs:subClassOf mls:Data ;	
	rdfs:label "Input of the operation and related service"@en ;
	rdfs:comment "Input of the operation and related service"@en ;
	.
	
:contains  rdf:type owl:ObjectProperty ;
	rdfs:label "contains"@en ;
	rdfs:comment "Relation with Service Input and Data"@en ;
	dc:description "Relation with Service Input and Data"@en ;
	rdfs:domain mls:Data ;
	rdfs:range :ServiceInput ;
	.

:hasOutputFault  rdf:type owl:ObjectProperty ;
	rdfs:label "hasOutputFault"@en ;
	rdfs:comment "Relation about Output Fault"@en ;
	dc:description "Relation about Output Fault"@en ;
	rdfs:subPropertyOf owl:topObjectProperty 
	.

:hasInputFault  rdf:type owl:ObjectProperty ;
	rdfs:label "hasInputFault"@en ;
	rdfs:comment "Relation about Input Fault"@en ;
	dc:description "Relation about Input Fault"@en ;
	rdfs:subPropertyOf owl:topObjectProperty 
	.