(Link back to API4KB Use Cases Page)
LegalRuleML (Tara)
Use Case of a Generic Criminal Legal System
with input from (http://en.wikipedia.org/wiki/Italian_Criminal_Procedure#Parties)
Actors
Parties may have agents acting on their behalf, and these agents may be restricted in their access to the KB to some subset of the authority of the Party.
Judges - may be different depending on stage of proceedings
suspect
defendant
prosecutor
police
injured party
civilly-liable party (to pay damages and/or fines)
counsel (lawyers) for suspect/defendant
witnesses
experts
courts
jury (not in Italy)
legislature
Actions
The particular actions are roughly categorized based on CRUD
Create (POST)
Read (GET)
Update (PUT/PATCH)
Delete (DELETE)
Note that the difference between Create and Update is a function of the modularity of the KB. In a highly modular architecture, a new table/knowledgebase-module may be created when a law is passed, when an investigation is opened, etc.. In a less modular architecture, these actions may be Updates rather than Creates.
(*CRU) pass, modify and annul *laws* - Legislature
(*R) query (including semantic query) to legal KB for details of the legal code - General Public
(*CRU) maintain records of investigations - Prosecutor, Judges, Defendant, Counsel, Police
(CRU) initiate proceedings - Prosecutor
(CRU) call a hearing - Judge
(*CRU) file requests (authorization to conduct investigations, such as wire-tapping) - Prosecutor
(*CRU) issue an order (e.g. authorizing investigations), *with explanation* - Judge
(CRU) appeal an order - Prosecutor, Counsel
(RU) drop charges - Prosecutor
(CRU) proceed to trial - Judge, Prosecutor
(*CRU) file a brief - Counsel
(CRU) summon witness or expert - Prosecutor, Counsel
(*CRU) provide testimony or expert judgement - Witness, Expert, Defendant, Injured Party
(*RU) convict/acquit, *with explanation* - Judge, Jury
(*CRU) issue a sentence - Judge
(CRU) appeal a conviction - Prosecutor, Counsel
(*RU) reverse, amend or quash a decision, *with explanation* - Judge
(UD) delete/expunge records - Court
(CRU) manage records on payment of penalties, imprisonment, etc - Court
Those items with * are the services that go beyond the capability of an ordinary database, requiring encoding of natural language texts into a knowledge representation language and performing specialized actions, such as parsing or (semantic) querying, on that encoding.