# Part 1: Data Breach as a consequence
ex:ProcessA a dpv:Process ;
    risk:hasRiskSource risk:MalwareAttack ;
    dpv:hasRisk risk:UnauthorisedDataAccess ;
    dpv:hasConsequence risk:DataBreach . # <-- same concept as consequence

# Part 2: Data Breach as a risk source
ex:ProcessB a dpv:Process ;
    risk:hasRiskSource risk:DataBreach ; # <-- same concept as risk source
    dpv:hasRisk risk:IdentityFraud ;
    dpv:hasConsequence risk:IntentionalMisuse ;
    dpv:hasImpact risk:RightsImpact .

# Part 3: Creating a UI/UX for selecting consequences
# RISK extension contains:
risk:DataBreach a risk:PotentialRisk. # potential to be a risk 
risk:DataBreach a risk:PotentialConsequence . # potential to be a consequence

# UI/UX contains HTML dropdown showing risks to select from
# <select id="risks"></select>
#
# The options in <select> are populated using the query over RISK extension
# SELECT ?concept { ?concept a risk:PotentialRisk . }
#
# This gives
# <select id="risks">
#   <option value="...">...</option>
#   <option value="risk:DataBreach">Data Breach</option>
# </select>

# User selects risk:DataBreach, which is then recorded in the data
ex:SomeProcess a dpv:Process ;
	dpv:hasRisk risk:DataBreach .
