Identification des fragments d'exigences relevant des niveaux d'extraction
Niveaux d'extraction :
- Modalité
- Genre
- Factoïde
Requête pour extraire la modalité
revoir la requête : construire un filet par ?uw avec un nom de filet aléatoire
CONSTRUCT {
?req a req:necessary.
}
WHERE {
?uw1 unl:has_attribute ".@obligation".
?uw1 (unl:agt|unl:aoj) ?uw2.
?uw1 unl:is_substructure_of ?req.
FILTER regex(str(?uw2),"system")
}
Requête pour extraire le type d'énoncés
Le type permet de classer les exigences se rapportant au système étudié. Il découle du verbe associé au système. La base de la requête est identique à la requête pour la modalité. Le genre pourra être déduit de l'analyse de UW1, en définissant une fonction spécifique (je pense que c'est la meilleur option sur le principe), ou en définissant plusieurs requêtes.
CONSTRUCT {
?lex rdfs:subClassOf req:requirement .
?req a ?lex
}
WHERE {
?uw1 (unl:agt|unl:aoj) ?uw2.
?uw1 unl:is_substructure_of ?req.
?uw1 unl:is_occurrence_of ?lex.
FILTER regex(str(?uw2),"system")
}
TODO : ne pas utiliser directement ?lex
comme sous classe de requirement-ontology:requirement
mais créer une nouvelle ressource 'liée' à ?lex.