[TASK] Introduce CarModel which can have CarInstances.
This commit is contained in:
parent
9c8d49c6e8
commit
0338739c4d
|
@ -7,15 +7,56 @@
|
|||
xmlns:simobjects="http://example.org/carSim/objects#"
|
||||
xmlns:simontology="http://example.org/carSim/carSimulationOntology#">
|
||||
|
||||
|
||||
<!-- Car data -->
|
||||
|
||||
<owl:NamedIndividual rdf:about="http://example.org/carSim/objects/Car#0">
|
||||
<rdf:type rdf:resource="http://example.org/carSim/carSimulationOntology#Car"/>
|
||||
<simontology:isDrivenBy rdf:resource="http://example.org/carSim/objects/Driver#0"/>
|
||||
<simontology:maximumMotorRPM rdf:datatype="xsd:integer">3500</simontology:maximumMotorRPM>
|
||||
<simontology:maximumTirePressure rdf:datatype="xsd:double">3.5</simontology:maximumTirePressure>
|
||||
<simontology:minimumMotorRPM rdf:datatype="xsd:integer">800</simontology:minimumMotorRPM>
|
||||
<simontology:isCarModel rdf:resource="http://example.org/carSim/objects/CarModel#0"/>
|
||||
</owl:NamedIndividual>
|
||||
|
||||
<owl:NamedIndividual rdf:about="http://example.org/carSim/objects/Car#1">
|
||||
<rdf:type rdf:resource="http://example.org/carSim/carSimulationOntology#Car"/>
|
||||
<simontology:isCarModel rdf:resource="http://example.org/carSim/objects/CarModel#2"/>
|
||||
</owl:NamedIndividual>
|
||||
|
||||
<owl:NamedIndividual rdf:about="http://example.org/carSim/objects/Car#2">
|
||||
<rdf:type rdf:resource="http://example.org/carSim/carSimulationOntology#Car"/>
|
||||
<simontology:isCarModel rdf:resource="http://example.org/carSim/objects/CarModel#1"/>
|
||||
</owl:NamedIndividual>
|
||||
|
||||
<owl:NamedIndividual rdf:about="http://example.org/carSim/objects/Car#3">
|
||||
<rdf:type rdf:resource="http://example.org/carSim/carSimulationOntology#Car"/>
|
||||
<simontology:isCarModel rdf:resource="http://example.org/carSim/objects/CarModel#0"/>
|
||||
</owl:NamedIndividual>
|
||||
|
||||
|
||||
<!-- Car Model data -->
|
||||
|
||||
<owl:NamedIndividual rdf:about="http://example.org/carSim/objects/CarModel#0">
|
||||
<rdf:type rdf:resource="http://example.org/carSim/carSimulationOntology#CarModel"/>
|
||||
<simontology:minimumMotorRPM rdf:datatype="xsd:integer">2000</simontology:minimumMotorRPM>
|
||||
<simontology:maximumMotorRPM rdf:datatype="xsd:integer">4300</simontology:maximumMotorRPM>
|
||||
<simontology:minimumTirePressure rdf:datatype="xsd:double">2.9</simontology:minimumTirePressure>
|
||||
<simontology:maximumTirePressure rdf:datatype="xsd:double">3.2</simontology:maximumTirePressure>
|
||||
<simontology:requiresDriverLicense rdf:datatype="xsd:string">B</simontology:requiresDriverLicense>
|
||||
</owl:NamedIndividual>
|
||||
|
||||
<owl:NamedIndividual rdf:about="http://example.org/carSim/objects/CarModel#1">
|
||||
<rdf:type rdf:resource="http://example.org/carSim/carSimulationOntology#CarModel"/>
|
||||
<simontology:minimumMotorRPM rdf:datatype="xsd:integer">800</simontology:minimumMotorRPM>
|
||||
<simontology:maximumMotorRPM rdf:datatype="xsd:integer">1900</simontology:maximumMotorRPM>
|
||||
<simontology:minimumTirePressure rdf:datatype="xsd:double">3.5</simontology:minimumTirePressure>
|
||||
<simontology:maximumTirePressure rdf:datatype="xsd:double">3.8</simontology:maximumTirePressure>
|
||||
<simontology:requiresDriverLicense rdf:datatype="xsd:string">B</simontology:requiresDriverLicense>
|
||||
</owl:NamedIndividual>
|
||||
|
||||
<owl:NamedIndividual rdf:about="http://example.org/carSim/objects/CarModel#2">
|
||||
<rdf:type rdf:resource="http://example.org/carSim/carSimulationOntology#CarModel"/>
|
||||
<simontology:minimumMotorRPM rdf:datatype="xsd:integer">1400</simontology:minimumMotorRPM>
|
||||
<simontology:maximumMotorRPM rdf:datatype="xsd:integer">2500</simontology:maximumMotorRPM>
|
||||
<simontology:minimumTirePressure rdf:datatype="xsd:double">2.6</simontology:minimumTirePressure>
|
||||
<simontology:maximumTirePressure rdf:datatype="xsd:double">3.0</simontology:maximumTirePressure>
|
||||
<simontology:requiresDriverLicense rdf:datatype="xsd:string">B</simontology:requiresDriverLicense>
|
||||
</owl:NamedIndividual>
|
||||
|
||||
|
@ -24,10 +65,38 @@
|
|||
|
||||
<owl:NamedIndividual rdf:about="http://example.org/carSim/objects/Driver#0">
|
||||
<rdf:type rdf:resource="http://example.org/carSim/carSimulationOntology#Driver"/>
|
||||
<simontology:drives rdf:resource="http://example.org/carSim/objects/Car#0"/>
|
||||
<simontology:hasName rdf:datatype="xsd:string">Max</simontology:hasName>
|
||||
<simontology:hasPhoneNumber rdf:datatype="xsd:string">+49 12345</simontology:hasPhoneNumber>
|
||||
<simontology:hasName rdf:datatype="xsd:string">Max Mustermann</simontology:hasName>
|
||||
<simontology:hasPhoneNumber rdf:datatype="xsd:string">+49 111 123456789</simontology:hasPhoneNumber>
|
||||
<simontology:hasDriverLicense rdf:datatype="xsd:string">B</simontology:hasDriverLicense>
|
||||
</owl:NamedIndividual>
|
||||
|
||||
<owl:NamedIndividual rdf:about="http://example.org/carSim/objects/Driver#1">
|
||||
<rdf:type rdf:resource="http://example.org/carSim/carSimulationOntology#Driver"/>
|
||||
<simontology:hasName rdf:datatype="xsd:string">Simone Mustermann</simontology:hasName>
|
||||
<simontology:hasPhoneNumber rdf:datatype="xsd:string">+49 111 321654987</simontology:hasPhoneNumber>
|
||||
<simontology:hasDriverLicense rdf:datatype="xsd:string">B</simontology:hasDriverLicense>
|
||||
</owl:NamedIndividual>
|
||||
|
||||
<owl:NamedIndividual rdf:about="http://example.org/carSim/objects/Driver#2">
|
||||
<rdf:type rdf:resource="http://example.org/carSim/carSimulationOntology#Driver"/>
|
||||
<simontology:hasName rdf:datatype="xsd:string">Carl Chaos</simontology:hasName>
|
||||
<simontology:hasPhoneNumber rdf:datatype="xsd:string">+49 111 112112112</simontology:hasPhoneNumber>
|
||||
<simontology:hasDriverLicense rdf:datatype="xsd:string">B</simontology:hasDriverLicense>
|
||||
</owl:NamedIndividual>
|
||||
|
||||
<owl:NamedIndividual rdf:about="http://example.org/carSim/objects/Driver#3">
|
||||
<rdf:type rdf:resource="http://example.org/carSim/carSimulationOntology#Driver"/>
|
||||
<simontology:hasName rdf:datatype="xsd:string">Vincent Vorsicht</simontology:hasName>
|
||||
<simontology:hasPhoneNumber rdf:datatype="xsd:string">+49 111 000000000</simontology:hasPhoneNumber>
|
||||
<simontology:hasDriverLicense rdf:datatype="xsd:string">B</simontology:hasDriverLicense>
|
||||
</owl:NamedIndividual>
|
||||
|
||||
<owl:NamedIndividual rdf:about="http://example.org/carSim/objects/Driver#4">
|
||||
<rdf:type rdf:resource="http://example.org/carSim/carSimulationOntology#Driver"/>
|
||||
<simontology:hasName rdf:datatype="xsd:string">Erwin Eilig</simontology:hasName>
|
||||
<simontology:hasPhoneNumber rdf:datatype="xsd:string">+49 111 007007007</simontology:hasPhoneNumber>
|
||||
<simontology:hasDriverLicense rdf:datatype="xsd:string">B</simontology:hasDriverLicense>
|
||||
</owl:NamedIndividual>
|
||||
|
||||
|
||||
</rdf:RDF>
|
||||
|
|
|
@ -35,6 +35,16 @@
|
|||
|
||||
|
||||
|
||||
<!-- http://example.org/carSim/carSimulationOntology#hasCarInstances -->
|
||||
|
||||
<owl:ObjectProperty rdf:about="http://example.org/carSim/carSimulationOntology#hasCarInstances">
|
||||
<owl:inverseOf rdf:resource="http://example.org/carSim/carSimulationOntology#isOfCarModel"/>
|
||||
<rdfs:domain rdf:resource="http://example.org/carSim/carSimulationOntology#CarModel"/>
|
||||
<rdfs:range rdf:resource="http://example.org/carSim/carSimulationOntology#Car"/>
|
||||
</owl:ObjectProperty>
|
||||
|
||||
|
||||
|
||||
<!-- http://example.org/carSim/carSimulationOntology#isDrivenBy -->
|
||||
|
||||
<owl:ObjectProperty rdf:about="http://example.org/carSim/carSimulationOntology#isDrivenBy">
|
||||
|
@ -44,6 +54,15 @@
|
|||
|
||||
|
||||
|
||||
<!-- http://example.org/carSim/carSimulationOntology#isOfCarModel -->
|
||||
|
||||
<owl:ObjectProperty rdf:about="http://example.org/carSim/carSimulationOntology#isOfCarModel">
|
||||
<rdfs:domain rdf:resource="http://example.org/carSim/carSimulationOntology#Car"/>
|
||||
<rdfs:range rdf:resource="http://example.org/carSim/carSimulationOntology#CarModel"/>
|
||||
</owl:ObjectProperty>
|
||||
|
||||
|
||||
|
||||
<!-- http://example.org/carSim/carSimulationOntology#relatedCar -->
|
||||
|
||||
<owl:ObjectProperty rdf:about="http://example.org/carSim/carSimulationOntology#relatedCar">
|
||||
|
@ -85,25 +104,6 @@
|
|||
|
||||
|
||||
|
||||
<!-- http://example.org/carSim/carSimulationOntology#hasName -->
|
||||
|
||||
<owl:DatatypeProperty rdf:about="http://example.org/carSim/carSimulationOntology#hasName">
|
||||
<rdfs:domain rdf:resource="http://example.org/carSim/carSimulationOntology#Car"/>
|
||||
<rdfs:domain rdf:resource="http://example.org/carSim/carSimulationOntology#Driver"/>
|
||||
<rdfs:range rdf:resource="http://www.w3.org/2001/XMLSchema#string"/>
|
||||
</owl:DatatypeProperty>
|
||||
|
||||
|
||||
|
||||
<!-- http://example.org/carSim/carSimulationOntology#hasPhoneNumber -->
|
||||
|
||||
<owl:DatatypeProperty rdf:about="http://example.org/carSim/carSimulationOntology#hasPhoneNumber">
|
||||
<rdfs:domain rdf:resource="http://example.org/carSim/carSimulationOntology#Driver"/>
|
||||
<rdfs:range rdf:resource="http://www.w3.org/2001/XMLSchema#string"/>
|
||||
</owl:DatatypeProperty>
|
||||
|
||||
|
||||
|
||||
<!-- http://example.org/carSim/carSimulationOntology#handbrakeEngaged -->
|
||||
|
||||
<owl:DatatypeProperty rdf:about="http://example.org/carSim/carSimulationOntology#handbrakeEngaged">
|
||||
|
@ -123,6 +123,25 @@
|
|||
|
||||
|
||||
|
||||
<!-- http://example.org/carSim/carSimulationOntology#hasName -->
|
||||
|
||||
<owl:DatatypeProperty rdf:about="http://example.org/carSim/carSimulationOntology#hasName">
|
||||
<rdfs:domain rdf:resource="http://example.org/carSim/carSimulationOntology#Car"/>
|
||||
<rdfs:domain rdf:resource="http://example.org/carSim/carSimulationOntology#Driver"/>
|
||||
<rdfs:range rdf:resource="http://www.w3.org/2001/XMLSchema#string"/>
|
||||
</owl:DatatypeProperty>
|
||||
|
||||
|
||||
|
||||
<!-- http://example.org/carSim/carSimulationOntology#hasPhoneNumber -->
|
||||
|
||||
<owl:DatatypeProperty rdf:about="http://example.org/carSim/carSimulationOntology#hasPhoneNumber">
|
||||
<rdfs:domain rdf:resource="http://example.org/carSim/carSimulationOntology#Driver"/>
|
||||
<rdfs:range rdf:resource="http://www.w3.org/2001/XMLSchema#string"/>
|
||||
</owl:DatatypeProperty>
|
||||
|
||||
|
||||
|
||||
<!-- http://example.org/carSim/carSimulationOntology#locked -->
|
||||
|
||||
<owl:DatatypeProperty rdf:about="http://example.org/carSim/carSimulationOntology#locked">
|
||||
|
@ -260,6 +279,12 @@
|
|||
|
||||
|
||||
|
||||
<!-- http://example.org/carSim/carSimulationOntology#CarModel -->
|
||||
|
||||
<owl:Class rdf:about="http://example.org/carSim/carSimulationOntology#CarModel"/>
|
||||
|
||||
|
||||
|
||||
<!-- http://example.org/carSim/carSimulationOntology#CarReturnedEvent -->
|
||||
|
||||
<owl:Class rdf:about="http://example.org/carSim/carSimulationOntology#CarReturnedEvent">
|
||||
|
|
|
@ -2,65 +2,77 @@
|
|||
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
|
||||
xmlns:rdfs="http://www.w3.org/2000/01/rdf-schema#">
|
||||
|
||||
<rdf:Description rdf:about="http://jpt.lu/carSimulationOntology#Car">
|
||||
<rdf:Description rdf:about="http://example.org/carSim/carSimulationOntology#Car">
|
||||
</rdf:Description>
|
||||
|
||||
<rdf:Description rdf:about="http://jpt.lu/carSimulationOntology#Driver">
|
||||
<rdf:Description rdf:about="http://example.org/carSim/carSimulationOntology#CarModel">
|
||||
</rdf:Description>
|
||||
|
||||
<rdf:Description rdf:about="http://jpt.lu/carSimulationOntology#Event">
|
||||
<rdf:Description rdf:about="http://example.org/carSim/carSimulationOntology#Driver">
|
||||
</rdf:Description>
|
||||
|
||||
<rdf:Description rdf:about="http://jpt.lu/carSimulationOntology#CarEvent">
|
||||
<rdfs:subClassOf rdf:resource="http://jpt.lu/carSimulationOntology#Event"/>
|
||||
<rdf:Description rdf:about="http://example.org/carSim/carSimulationOntology#Event">
|
||||
</rdf:Description>
|
||||
|
||||
<rdf:Description rdf:about="http://jpt.lu/carSimulationOntology#CarAirbagEvent">
|
||||
<rdfs:subClassOf rdf:resource="http://jpt.lu/carSimulationOntology#CarEvent"/>
|
||||
<rdf:Description rdf:about="http://example.org/carSim/carSimulationOntology#CarEvent">
|
||||
<rdfs:subClassOf rdf:resource="http://example.org/carSim/carSimulationOntology#Event"/>
|
||||
</rdf:Description>
|
||||
|
||||
<rdf:Description rdf:about="http://jpt.lu/carSimulationOntology#CarStatusEvent">
|
||||
<rdfs:subClassOf rdf:resource="http://jpt.lu/carSimulationOntology#CarEvent"/>
|
||||
<rdf:Description rdf:about="http://example.org/carSim/carSimulationOntology#CarAirbagEvent">
|
||||
<rdfs:subClassOf rdf:resource="http://example.org/carSim/carSimulationOntology#CarEvent"/>
|
||||
</rdf:Description>
|
||||
|
||||
<rdf:Description rdf:about="http://jpt.lu/carSimulationOntology#CarUserEvent">
|
||||
<rdfs:subClassOf rdf:resource="http://jpt.lu/carSimulationOntology#CarEvent"/>
|
||||
<rdf:Description rdf:about="http://example.org/carSim/carSimulationOntology#CarStatusEvent">
|
||||
<rdfs:subClassOf rdf:resource="http://example.org/carSim/carSimulationOntology#CarEvent"/>
|
||||
</rdf:Description>
|
||||
|
||||
<rdf:Description rdf:about="http://jpt.lu/carSimulationOntology#CarTakenEvent">
|
||||
<rdfs:subClassOf rdf:resource="http://jpt.lu/carSimulationOntology#CarUserEvent"/>
|
||||
<rdf:Description rdf:about="http://example.org/carSim/carSimulationOntology#CarUserEvent">
|
||||
<rdfs:subClassOf rdf:resource="http://example.org/carSim/carSimulationOntology#CarEvent"/>
|
||||
</rdf:Description>
|
||||
|
||||
<rdf:Description rdf:about="http://jpt.lu/carSimulationOntology#CarReturnedEvent">
|
||||
<rdfs:subClassOf rdf:resource="http://jpt.lu/carSimulationOntology#CarUserEvent"/>
|
||||
<rdf:Description rdf:about="http://example.org/carSim/carSimulationOntology#CarTakenEvent">
|
||||
<rdfs:subClassOf rdf:resource="http://example.org/carSim/carSimulationOntology#CarUserEvent"/>
|
||||
</rdf:Description>
|
||||
|
||||
<rdf:Description rdf:about="http://example.org/carSim/carSimulationOntology#CarReturnedEvent">
|
||||
<rdfs:subClassOf rdf:resource="http://example.org/carSim/carSimulationOntology#CarUserEvent"/>
|
||||
</rdf:Description>
|
||||
|
||||
|
||||
|
||||
<rdf:Description rdf:about="http://jpt.lu/carSimulationOntology#drives">
|
||||
<rdfs:domain rdf:resource="http://jpt.lu/carSimulationOntology#Driver"/>
|
||||
<rdfs:range rdf:resource="http://jpt.lu/carSimulationOntology#Car"/>
|
||||
<rdf:Description rdf:about="http://example.org/carSim/carSimulationOntology#isOfCarModel">
|
||||
<rdfs:domain rdf:resource="http://example.org/carSim/carSimulationOntology#Car"/>
|
||||
<rdfs:range rdf:resource="http://example.org/carSim/carSimulationOntology#CarModel"/>
|
||||
</rdf:Description>
|
||||
|
||||
<rdf:Description rdf:about="http://jpt.lu/carSimulationOntology#isDrivenBy">
|
||||
<rdfs:domain rdf:resource="http://jpt.lu/carSimulationOntology#Car"/>
|
||||
<rdfs:range rdf:resource="http://jpt.lu/carSimulationOntology#Driver"/>
|
||||
<rdf:Description rdf:about="http://example.org/carSim/carSimulationOntology#hasCarInstances">
|
||||
<rdfs:domain rdf:resource="http://example.org/carSim/carSimulationOntology#CarModel"/>
|
||||
<rdfs:range rdf:resource="http://example.org/carSim/carSimulationOntology#Car"/>
|
||||
</rdf:Description>
|
||||
|
||||
<rdf:Description rdf:about="http://jpt.lu/carSimulationOntology#relatedCar">
|
||||
<rdfs:domain rdf:resource="http://jpt.lu/carSimulationOntology#CarEvent"/>
|
||||
<rdfs:range rdf:resource="http://jpt.lu/carSimulationOntology#Car"/>
|
||||
<rdf:Description rdf:about="http://example.org/carSim/carSimulationOntology#drives">
|
||||
<rdfs:domain rdf:resource="http://example.org/carSim/carSimulationOntology#Driver"/>
|
||||
<rdfs:range rdf:resource="http://example.org/carSim/carSimulationOntology#Car"/>
|
||||
</rdf:Description>
|
||||
|
||||
<rdf:Description rdf:about="http://jpt.lu/carSimulationOntology#relatedUser">
|
||||
<rdfs:domain rdf:resource="http://jpt.lu/carSimulationOntology#Event"/>
|
||||
<rdfs:range rdf:resource="http://jpt.lu/carSimulationOntology#Driver"/>
|
||||
<rdf:Description rdf:about="http://example.org/carSim/carSimulationOntology#isDrivenBy">
|
||||
<rdfs:domain rdf:resource="http://example.org/carSim/carSimulationOntology#Car"/>
|
||||
<rdfs:range rdf:resource="http://example.org/carSim/carSimulationOntology#Driver"/>
|
||||
</rdf:Description>
|
||||
|
||||
<rdf:Description rdf:about="http://jpt.lu/carSimulationOntology#relatedEvent">
|
||||
<rdfs:domain rdf:resource="http://jpt.lu/carSimulationOntology#Car"/>
|
||||
<rdfs:domain rdf:resource="http://jpt.lu/carSimulationOntology#Driver"/>
|
||||
<rdfs:range rdf:resource="http://jpt.lu/carSimulationOntology#Event"/>
|
||||
<rdf:Description rdf:about="http://example.org/carSim/carSimulationOntology#relatedCar">
|
||||
<rdfs:domain rdf:resource="http://example.org/carSim/carSimulationOntology#CarEvent"/>
|
||||
<rdfs:range rdf:resource="http://example.org/carSim/carSimulationOntology#Car"/>
|
||||
</rdf:Description>
|
||||
|
||||
<rdf:Description rdf:about="http://example.org/carSim/carSimulationOntology#relatedUser">
|
||||
<rdfs:domain rdf:resource="http://example.org/carSim/carSimulationOntology#Event"/>
|
||||
<rdfs:range rdf:resource="http://example.org/carSim/carSimulationOntology#Driver"/>
|
||||
</rdf:Description>
|
||||
|
||||
<rdf:Description rdf:about="http://example.org/carSim/carSimulationOntology#relatedEvent">
|
||||
<rdfs:domain rdf:resource="http://example.org/carSim/carSimulationOntology#Car"/>
|
||||
<rdfs:domain rdf:resource="http://example.org/carSim/carSimulationOntology#Driver"/>
|
||||
<rdfs:range rdf:resource="http://example.org/carSim/carSimulationOntology#Event"/>
|
||||
</rdf:Description>
|
||||
|
||||
|
||||
|
|
|
@ -34,7 +34,7 @@ public class Main {
|
|||
CsparqlEngine engine = new CsparqlEngineImpl();
|
||||
engine.initialize(true);
|
||||
|
||||
// Add static knowledge into local graph from file
|
||||
// Add local background knowledge from file into graph
|
||||
try {
|
||||
engine.putStaticNamedModel("http://example.org/carSimKnowledgeGraph", CsparqlUtils.serializeRDFFile("data/carData.rdf"));
|
||||
} catch (Exception e) {
|
||||
|
|
|
@ -13,7 +13,7 @@ public class Car {
|
|||
|
||||
// Fix knowledge about the available car types:
|
||||
private static final String[] CAR_TYPENAME = {"A", "B", "C"};
|
||||
private static final String[] REQUIRED_DRIVER_LICENSE = {"B", "B", "C"};
|
||||
private static final String[] REQUIRED_DRIVER_LICENSE = {"B", "B", "B"};
|
||||
private static final int[] MIN_RPM = {2000, 800, 1400};
|
||||
private static final int[] MAX_RPM = {4300, 1900, 2500};
|
||||
private static final double[] MIN_TIRE_PRESSURE = {2.9, 3.5, 2.6};
|
||||
|
|
Loading…
Reference in New Issue