Semantic Web Rule LanguageSWRL (Semantic Web Rule Language) est un langage de règles pour le web sémantique, combinant le langage OWL-DL et le langage RuleML (Rule Markup Language (Unary/Binary Datalog)). En comparaison avec DLP (Description Logic Programs), une autre proposition relativement récente de la communauté web sémantique, permettant d'intégrer des règles et OWL, SWRL prend une approche d'intégration diamétralement opposée. DLP est l'intersection de la logique de Horn et d'OWL, tandis que SWRL est (approximativement) l'union des deux. Pour DLP, le langage résultant est une logique descriptive d'une forme inhabituelle et peu expressive. Au contraire, SWRL garde la puissance d'OWL DL, mais au prix de la décidabilité et des implémentations concrètes[1]. DéfinitionLes axiomes du langage OWL-DL sont étendus à l’aide des clauses de Horn réduites au prédicats unaires et binaires.
a, b, n: prédicats binaires (rôles)
c: prédicat unaire (concept atomique)
x, y: x variables, instances ou littéraux (nombres, chaînes de caractères, etc.)
Ce langage est indécidable. L'indécidabilité est causée par l’interaction entre certaines caractéristiques de OWL-DL et de RuleML[2]. Les règles SWRL sont appliquées même si les individus ne sont pas présents dans la base. SWRL DL-safe rulesUne restriction de SWRL, appelée DL-safe rules, a été conçue pour conserver la décidabilité[2]. Cette restriction ne porte pas sur les composants du langage, mais sur leur interaction. Les règles écrites ne peuvent porter que sur des individus explicitement présents dans la base. Autrement dit, les règles ne peuvent s’appliquer que si l’identité de toutes les instances présentes est connue. Moteurs d'inférencesDe nombreux moteurs d’inférences commencent à supporter SWRL : Bossam, Hoolet, KAON2, Pellet, RacerPro, R2ML (REWERSE Rule Markup Language) et Sesame. Ils suivent trois types d’approche :
Malheureusement, peu d’implémentations pratiques ont – jusqu’ici – été réalisées avec le langage SWRL. Toutefois, Kolovski et al.[3] présentent les premiers résultats de leurs tests et indiquent notamment le temps de calcul (en millisecondes) nécessaire à la vérification de la consistance d’une base de connaissances composée de quarante-six concepts et trente rôles. Le nombre de règles et d’instances présentes dans la base est variable. La première règle introduite implique deux variables, alors que la deuxième en implique trois.
Ces temps de calcul importants nécessitent de ne mettre en place ce langage que sur des ontologies de petites et moyennes tailles. Voir aussiLiens externesRéférences
|
Portal di Ensiklopedia Dunia