170 likes | 317 Views
Using RDF in Agent-Mediated Knowledge Architectures. K. Hui, S. Chalmers, P.M.D. Gray & A.D. Preece University of Aberdeen U.K http://www.csd.abdn.ac.uk/. Part of AKT(Advanced Knowledge Technology) Consortium supported by EPSRC. Outline. RDFS - Schema for Semantic Web
E N D
Using RDF in Agent-Mediated Knowledge Architectures K. Hui, S. Chalmers, P.M.D. Gray & A.D. Preece University of Aberdeen U.K http://www.csd.abdn.ac.uk/. Part of AKT(Advanced Knowledge Technology) Consortium supported by EPSRC
Outline • RDFS - Schema for Semantic Web • - Metaschema extended to hold FOL Constraints • Use of RDF in AM Knowledge Architectures • KRAFT: information integration & fusion • CONOISE: virtual organisations with Autonomy subject to Constraints • Conclusions
What we believe • Representing knowledge make sense only if it is used in reasoning by machines • More direct use of RDF in knowledge architectures • RDFS makes RDF usable within a semantic data model as in Edutella (Risch et al) • extra semantic layers can be built above RDF using built-in extensibility of RDFS • Agent langs should use RDF(S) for content
Pros Tree -> DAG XML Serialis’n Extensible by RDFS stable cross-platform good Java support (Jena parser, FrodoViz) uniform representation (data & meta-data) Cons Simple lack of DL expressiveness wordy (for humans) Pros & Cons of RDF
RDF(S) Triple Representation • RDF triples: • subject-predicate-object • Jena tool creates as Java objects • We can map triples to Prolog terms • almost canonical form • easy to add on extra triples (easier than graph arcs) RDF triples Applications Prolog terms Java objects
Case Study 1 - Capturing Knowledge in KRAFT • Fuses mobile constraints for Configuration problem • CSP solving by Sicstus/Eclipse solver • Knowledge to capture: • domain model (schema) • data instances • choices (solution space & results) • quantified constraints (CoLan/CIF) • requirement, restrictions
Capturing Data Instances & Domain Model • Domain Model • map P/FDM schema into RDFS • web-enabling the schema • losing some knowledge • e.g. cardinality, key • can be added to metadata layers (cif:entmet) • Data Instances • make use of domain model defined in RDFS
Domain Model Example <rdfs:Class rdf:ID="pc"> <rdfs:subClassOf rdf:resource= "http://www.w3.org/2000/01/rdf-schema# Resource"/> </rdfs:Class> <rdfs:Class rdf:ID="os"> <rdfs:subClassOf rdf:resource= "http://www.w3.org/2000/01/rdf-schema# Resource"/> </rdfs:Class> <rdf:Property rdf:ID="has_os"> <rdfs:domain rdf:resource="#pc"/> <rdfs:range rdf:resource="#os"/> </rdf:Property> declare os ->> entity ... declare pc ->> entity declare memory(pc) -> integer declare has_os(pc) -> os ...
Constraint Examples in CoLan constrain each p in pc to have size(has_os(p)) =< size(has_disk(p)) constrain each p in pc some s in slots(pc) has sltype(s)=“USB” constrain each t in tutor such that astatus(t) = “research” each st in advisees(t) has grade(st) > 60
Constraints in RDF • Constraint language definition in RDFS • a richer semantics cleanly layered on top of RDF • contains classes of meta-objects (e.g. cif:entmet, cif:propmet) like meta-relns for relational DB • other metaclasses capture parse tree of Constraint • Advantages • a clear layering, no change of RDF(S) • constraint become self-contained • URI cross-ref to domain model (in RDFS) • constraints become resources
Constraints in RDF RDF Schema of the “PC config” domain RDF Schema of the CIF language RDF Schema of domain X RDFS constraint on the “PC config” domain in RDF constraint on domain X in RDF RDF
Constraint Example in RDF <rdf:RDF ... xmlns:cif="http://www.csd.abdn.ac.uk/~khui/akt/cif/cif-rdfs.xml#"> <cif:impliesconstr rdf:ID="eg1"> <cif:qvar> <cif:setmem> <cif:setmem_var> <cif:variable rdf:ID="uevar1"> <cif:varname>uevar1</cif:varname> </cif:variable> </cif:setmem_var> <cif:setmem_set> <cif:entset> <cif:entset_entclass> <cif:entmet rdf:ID="entmet_pc"> <cif:entmet_rdfname>http://www.csd.abdn.ac.uk/~schalmer/schema/pc_schema#pc </cif:entmet_rdfname> </cif:entmet> </cif:entset_entclass> </cif:entset> </cif:setmem_set> </cif:setmem> </cif:qvar> ...
CIF def. in RDFS CIF in RDF CIF constraint in Prolog CIF specific mapping rules Knowledge-directed Mapping mapping engine
Using RDF-Encoded Knowledge (Continued) • Domain-aware constraint fusion • constraint inheritance • a constraint that applies to objects of a class also applies to objects of its subclasses • need knowledge on the class hierarchy • an RDF constraint contains pointers to its domain model in RDFS • look for rdfs:subClassOf triples
Case Study 2 - Conoise • formation of virtual organisations by autonomous agents • based on the BDI model • desires represented as constraints (CIF/RDF) • agents built using JADE • content language in CIF/RDF • use Jena to parse & manipulate CIF/RDF • store & queried as Java objects
BDI Agents using RDF knowledge • A CONOISE agent has to combine knowledge from different sources. RDF(S) provides a common basis for doing this. • It exercises its Autonomy by planning Intentions in order to meet its various Desires acquiredfrom different sources as (RDFS Constraints) . • It resolves conflicting desires through a Constraint Solver. • The Solver’s domain knowledge is held as Beliefs read in as RDF facts.
Conclusions • FOL Constraints, referring to Data items defined in an RDFS Ontology, can themselves be captured in RDFS • FIPA Agent langs should use RDF(S) for content • stability (W3C standard and XML serialis’n) • portability (esp. through Java) • capability to store DAG of various object types • rich content:domain model+instances+FOL constraints • extensibility by building extra layer(s) on top