Feature
We still need a way to access information about the Features. Defining Features as rdf:Property (predicates) makes impossible using them as rdf:Classes, which is necessary in many cases. Now Features are defined as owl:Classes.
- Feature URI is defined by dc:identifier (Dublin Core namespace)
...
xmlns:dc="http://purl.org/dc/elements/1.1/"
...
<dc:identifier rdf:datatype="&xsd;string"
>http://myserice/feature/{featureid2}</dc:identifier>
- Feature name is defined by dc:title (Dublin Core namespace)
<dc:title rdf:datatype="&xsd;string">XLogP</dc:title>
- The origin of the Feature is defined by ot:hasSource (OpenTox namespace) element and can be Algorithm, Model or Dataset
- Links with other ontologies are established via RDF subclassing (rdf:type property), or owl:sameAs property.
Examples:
Features, defined as originated from a Dataset or Machine Learning Algorithm
<ot:Feature rdf:ID="MultiCellCall">
<dc:identifier rdf:datatype="&xsd;string"
>http://myservice/feature/{featureid1}</dc:identifier>
<dc:source rdf:datatype="&xsd;string"
>http://www.epa.gov/NCCT/dsstox/CentralFieldDef.html#ActivityOutcome_CPDBAS_MultiCellCall</dc:source>
<ot:hasSource rdf:resource="#DSSToxCPDBAS"/>
</ot:Feature>
<ot:Feature rdf:ID="MultiCellCallPredicted">
<dc:identifier rdf:datatype="&xsd;string"
>http://myservice/feature/{featureid3}</dc:identifier>
<ot:hasSource rdf:resource="#WekaJ48"/>
</ot:Feature>
Feature, with a descriptor calculation algorithm , defined as a source.
<ot:Feature rdf:ID="XLogPDescriptor">
<dc:identifier rdf:datatype="&xsd;string"
>http://myservice/feature/{featureid2}</dc:identifier>
<dc:title rdf:datatype="&xsd;string">XLogP</dc:title>
<ot:hasSource rdf:resource="#XLogPCalculation"/>
</ot:Feature>
Features, which are defined as Carcinogenicity endpoints, according to ECHA endpoints ontology
:
<rdf:RDF xmlns="http://www.opentox.org/example/1.1#"
xml:base="http://www.opentox.org/example/1.1"
xmlns:ot="http://www.opentox.org/api/1.1#"
xmlns:dc="http://purl.org/dc/elements/1.1/"
xmlns:protege="http://protege.stanford.edu/plugins/owl/protege#"
xmlns:p3="&dc;#"
xmlns:p2="http://www.opentox.org/algorithmTypes.owl#"
xmlns:xsp="http://www.owl-ontologies.com/2005/08/07/xsp.owl#"
xmlns:p1="http://www.w3.org/1998/Math/MathML"
xmlns:otee="http://www.opentox.org/echaEndpoints.owl#"
xmlns:rdfs="http://www.w3.org/2000/01/rdf-schema#"
xmlns:swrl="http://www.w3.org/2003/11/swrl#"
xmlns:owl="http://www.w3.org/2002/07/owl#"
xmlns:xsd="http://www.w3.org/2001/XMLSchema#"
xmlns:swrlb="http://www.w3.org/2003/11/swrlb#"
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#">
<owl:Ontology rdf:about="">
<rdfs:comment rdf:datatype="&xsd;string"
>An example of OpenTox resource ontology usage. Definition of example instances</rdfs:comment>
<owl:imports rdf:resource="http://www.opentox.org/echaEndpoints.owl"/>
<owl:imports rdf:resource="http://www.opentox.org/api/1.1"/>
</owl:Ontology>
<ot:Feature rdf:ID="CarcinogenicityLazar">
<dc:identifier rdf:datatype="&xsd;string">/feature/1</dc:identifier>
<ot:hasSource rdf:resource="#Lazar"/>
<owl:sameAs rdf:resource="http://www.opentox.org/echaEndpoints.owl#Carcinogenicity"/>
</ot:Feature>
<ot:Feature rdf:ID="CarcinogenicityToxtree">
<dc:identifier rdf:datatype="&xsd;string">/feature/2</dc:identifier>
<ot:hasSource rdf:resource="#ToxtreeCarcinogenicity"/>
<owl:sameAs rdf:resource="http://www.opentox.org/echaEndpoints.owl#Carcinogenicity"/>
</ot:Feature>
</rdf:RDF>
How this relationship is defined in Protege is illustrated below:


Feature upload code ...