[[
✎ pl:miw:miw08_xtt_r2ml:a2a
]]
aiWiki
Pokaż stronę
Ostatnie zmiany
Indeks
Zaloguj
Ta strona jest tylko do odczytu. Możesz wyświetlić źródła tej strony ale nie możesz ich zmienić.
===== A2A ===== A2A zapisany za pomocą R2ML. [[https://ai.ia.agh.edu.pl/wiki/pl:miw:miw08_ardcase_cs:biletomat#directed_conceptual_design | opis]] <code xml> <r2ml:RuleBase xmlns:r2ml="http://www.rewerse.net/I1/2006/R2ML" xmlns:r2mlv="http://www.rewerse.net/I1/2006/R2ML/R2MLV" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:userv="http://www.businessrulesforum.com/2005/userv#" xmlns:swrlb="http://www.w3.org/2003/11/swrlb" xsi:schemaLocation="http://oxygen.informatik.tu-cottbus.de/R2ML/0.5/R2ML.xsd"> <r2mlv:Vocabulary> <r2mlv:Class r2mlv:ID="Actions"> <r2mlv:Attribute r2mlv:ID="remittance"> <r2mlv:range> <r2mlv:Datatype r2mlv:ID="xs:positiveInteger"></r2mlv:Datatype> </r2mlv:range> </r2mlv:Attribute> <r2mlv:Attribute r2mlv:ID="pricelist"> <r2mlv:range> <r2mlv:Datatype r2mlv:ID="xs:string"></r2mlv:Datatype> </r2mlv:range> </r2mlv:Attribute> <r2mlv:Attribute r2mlv:ID="chosenProduct"> <r2mlv:range> <r2mlv:Datatype r2mlv:ID="xs:string"></r2mlv:Datatype> </r2mlv:range> </r2mlv:Attribute> </r2mlv:Class> <r2mlv:Class r2mlv:ID="Time"> <r2mlv:Attribute r2mlv:ID="startTime"> <r2mlv:range> <r2mlv:Datatype r2mlv:ID="xs:positiveInteger"></r2mlv:Datatype> </r2mlv:range> </r2mlv:Attribute> <r2mlv:Attribute r2mlv:ID="currentTime"> <r2mlv:range> <r2mlv:Datatype r2mlv:ID="xs:positiveInteger"></r2mlv:Datatype> </r2mlv:range> </r2mlv:Attribute> <r2mlv:Attribute r2mlv:ID="outTime"> <r2mlv:range> <r2mlv:Datatype r2mlv:ID="xs:positiveInteger"></r2mlv:Datatype> </r2mlv:range> </r2mlv:Attribute> </r2mlv:Class> <r2mlv:Class r2mlv:ID="Machine"> <r2mlv:Attribute r2mlv:ID="fundsInMachine"> <r2mlv:range> <r2mlv:Datatype r2mlv:ID="xs:positiveInteger"></r2mlv:Datatype> </r2mlv:range> </r2mlv:Attribute> <r2mlv:Attribute r2mlv:ID="change"> <r2mlv:range> <r2mlv:Datatype r2mlv:ID="xs:positiveInteger"></r2mlv:Datatype> </r2mlv:range> </r2mlv:Attribute> <r2mlv:Attribute r2mlv:ID="enoughCashToChange"> <r2mlv:range> <r2mlv:Datatype r2mlv:ID="xs:boolean"></r2mlv:Datatype> </r2mlv:range> </r2mlv:Attribute> <r2mlv:Attribute r2mlv:ID="activity"> <r2mlv:range> <r2mlv:Datatype r2mlv:ID="xs:boolean"></r2mlv:Datatype> </r2mlv:range> </r2mlv:Attribute> </r2mlv:Class> </r2mlv:Vocabulary> <r2ml:ProductionRule r2ml:ruleID="cash"> <r2ml:Documentation> <r2ml:RuleText r2ml:textFormat="plain"> Cash </r2ml:RuleText> </r2ml:Documentation> <r2ml:conditions> <r2ml:DatatypePredicateAtom r2ml:datatypePredicateID="swrlb:equal"> <r2ml:dataArguments> <r2ml:AttributeFunctionTerm r2ml:attributeID="chosenProduct"> <r2ml:contextArgument> <r2ml:ObjectVariable r2ml:name="action" r2ml:classID="Action"/> </r2ml:contextArgument> </r2ml:AttributeFunctionTerm> <r2ml:TypedLiteral r2ml:lexicalValue="pricelist" r2ml:datatypeID="xs:string"/> <r2ml:contextArgument> <r2ml:ObjectVariable r2ml:name="action" r2ml:classID="Action"/> </r2ml:contextArgument> </r2ml:dataArguments> </r2ml:DatatypePredicateAtom> <r2ml:DatatypePredicateAtom r2ml:datatypePredicateID="swrlb:greaterThan"> <r2ml:dataArguments> <r2ml:AttributeFunctionTerm r2ml:attributeID="remittance"> <r2ml:contextArgument> <r2ml:ObjectVariable r2ml:name="action" r2ml:classID="Action"/> </r2ml:contextArgument> </r2ml:AttributeFunctionTerm> <r2ml:TypedLiteral r2ml:lexicalValue="0" r2ml:datatypeID="xs:positiveInteger"/> </r2ml:dataArguments> </r2ml:DatatypePredicateAtom> </r2ml:conditions> <r2ml:producedAction> <r2ml:AssignActionExpression r2ml:propertyID="change"> <r2ml:contextArgument> <r2ml:ObjectVariable r2ml:classID="Machine" r2ml:name="machine" /> </r2ml:contextArgument> <r2ml:value> <r2ml:TypedLiteral r2ml:lexicalValue="remittance-pricelist" r2ml:datatypeID="xs:positiveInteger"> <r2ml:contextArgument> <r2ml:ObjectVariable r2ml:classID="Action" r2ml:name="action" /> </r2ml:contextArgument> </r2ml:TypedLiteral> </r2ml:value> </r2ml:AssignActionExpression> <r2ml:InvokeActionExpression r2ml:propertyID="enoughFoundsInMachine" /> <r2ml:InvokeActionExpression r2ml:propertyID="activityAll" /> </r2ml:producedAction> </r2ml:ProductionRule> <r2ml:ProductionRule r2ml:ruleID="countTime"> <r2ml:Documentation> <r2ml:RuleText r2ml:textFormat="plain"> countTime </r2ml:RuleText> </r2ml:Documentation> <r2ml:conditions> <r2ml:DatatypePredicateAtom r2ml:datatypePredicateID="swrlb:lessThan"> <r2ml:dataArguments> <r2ml:AttributeFunctionTerm r2ml:attributeID="startTime"> <r2ml:contextArgument> <r2ml:ObjectVariable r2ml:name="time" r2ml:classID="Time"/> </r2ml:contextArgument> </r2ml:AttributeFunctionTerm> <r2ml:TypedLiteral r2ml:lexicalValue="currentTime" r2ml:datatypeID="xs:positiveInteger"/> <r2ml:contextArgument> <r2ml:ObjectVariable r2ml:name="time" r2ml:classID="Time"/> </r2ml:contextArgument> </r2ml:dataArguments> </r2ml:DatatypePredicateAtom> </r2ml:conditions> <r2ml:producedAction> <r2ml:AssignActionExpression r2ml:propertyID="outTime"> <r2ml:contextArgument> <r2ml:ObjectVariable r2ml:classID="Time" r2ml:name="time" /> </r2ml:contextArgument> <r2ml:value> <r2ml:TypedLiteral r2ml:lexicalValue="currnetTime-startTime" r2ml:datatypeID="xs:positiveInteger"> <r2ml:contextArgument> <r2ml:ObjectVariable r2ml:classID="Time" r2ml:name="time" /> </r2ml:contextArgument> </r2ml:TypedLiteral> </r2ml:value> </r2ml:AssignActionExpression> <r2ml:InvokeActionExpression r2ml:propertyID="activityAll" /> </r2ml:producedAction> </r2ml:ProductionRule> <r2ml:ProductionRule r2ml:ruleID="enoughFoundsInMachine"> <r2ml:Documentation> <r2ml:RuleText r2ml:textFormat="plain"> enoughFoundsInMachine </r2ml:RuleText> </r2ml:Documentation> <r2ml:conditions> <r2ml:DatatypePredicateAtom r2ml:datatypePredicateID="swrlb:lessThan"> <r2ml:dataArguments> <r2ml:AttributeFunctionTerm r2ml:attributeID="change"> <r2ml:contextArgument> <r2ml:ObjectVariable r2ml:name="machine" r2ml:classID="Machine"/> </r2ml:contextArgument> </r2ml:AttributeFunctionTerm> <r2ml:TypedLiteral r2ml:lexicalValue="fundsInMachine" r2ml:datatypeID="xs:positiveInteger"/> <r2ml:contextArgument> <r2ml:ObjectVariable r2ml:name="machine" r2ml:classID="Machine"/> </r2ml:contextArgument> </r2ml:dataArguments> </r2ml:DatatypePredicateAtom> </r2ml:conditions> <r2ml:producedAction> <r2ml:AssignActionExpression r2ml:propertyID="enoughCashToChange"> <r2ml:contextArgument> <r2ml:ObjectVariable r2ml:classID="Machine" r2ml:name="machine" /> </r2ml:contextArgument> <r2ml:value> <r2ml:TypedLiteral r2ml:lexicalValue="true" r2ml:datatypeID="xs:boolean" /> </r2ml:value> </r2ml:AssignActionExpression> <r2ml:InvokeActionExpression r2ml:propertyID="activityAll" /> </r2ml:producedAction> </r2ml:ProductionRule> <r2ml:ProductionRule r2ml:ruleID="activityAll"> <r2ml:Documentation> <r2ml:RuleText r2ml:textFormat="plain"> activityAll </r2ml:RuleText> </r2ml:Documentation> <r2ml:conditions> <r2ml:DatatypePredicateAtom r2ml:datatypePredicateID="swrlb:greaterThan"> <r2ml:dataArguments> <r2ml:AttributeFunctionTerm r2ml:attributeID="timeOut"> <r2ml:contextArgument> <r2ml:ObjectVariable r2ml:name="time" r2ml:classID="Time"/> </r2ml:contextArgument> </r2ml:AttributeFunctionTerm> <r2ml:TypedLiteral r2ml:lexicalValue="0" r2ml:datatypeID="xs:positiveInteger"/> </r2ml:dataArguments> </r2ml:DatatypePredicateAtom> <r2ml:DatatypePredicateAtom r2ml:datatypePredicateID="swrlb:equal"> <r2ml:dataArguments> <r2ml:AttributeFunctionTerm r2ml:attributeID="enoughCachToChange"> <r2ml:contextArgument> <r2ml:ObjectVariable r2ml:name="machine" r2ml:classID="Machine"/> </r2ml:contextArgument> </r2ml:AttributeFunctionTerm> <r2ml:TypedLiteral r2ml:lexicalValue="true" r2ml:datatypeID="xs:boolean"/> </r2ml:dataArguments> </r2ml:DatatypePredicateAtom> <r2ml:DatatypePredicateAtom r2ml:datatypePredicateID="swrlb:greaterThanOrEqual"> <r2ml:dataArguments> <r2ml:AttributeFunctionTerm r2ml:attributeID="change"> <r2ml:contextArgument> <r2ml:ObjectVariable r2ml:name="machine" r2ml:classID="Machine"/> </r2ml:contextArgument> </r2ml:AttributeFunctionTerm> <r2ml:TypedLiteral r2ml:lexicalValue="0" r2ml:datatypeID="xs:positiveInteger"/> </r2ml:dataArguments> </r2ml:DatatypePredicateAtom> <r2ml:DatatypePredicateAtom r2ml:datatypePredicateID="swrlb:greaterThanOrEqual"> <r2ml:dataArguments> <r2ml:AttributeFunctionTerm r2ml:attributeID="foundInMachine"> <r2ml:contextArgument> <r2ml:ObjectVariable r2ml:name="machine" r2ml:classID="Machine"/> </r2ml:contextArgument> </r2ml:AttributeFunctionTerm> <r2ml:TypedLiteral r2ml:lexicalValue="0" r2ml:datatypeID="xs:positiveInteger"/> </r2ml:dataArguments> </r2ml:DatatypePredicateAtom> </r2ml:conditions> <r2ml:producedAction> <r2ml:AssignActionExpression r2ml:propertyID="activity"> <r2ml:contextArgument> <r2ml:ObjectVariable r2ml:classID="Machine" r2ml:name="machine" /> </r2ml:contextArgument> <r2ml:value> <r2ml:TypedLiteral r2ml:lexicalValue="true" r2ml:datatypeID="xs:positiveInteger" /> </r2ml:value> </r2ml:AssignActionExpression> </r2ml:producedAction> </r2ml:ProductionRule> </r2ml:RuleBase> </code>
pl/miw/miw08_xtt_r2ml/a2a.txt
· ostatnio zmienione: 2019/06/27 15:50 (edycja zewnętrzna)
Pokaż stronę
Poprzednie wersje
Menadżer multimediów
Do góry