Input: Generic-XACML document |
Output: XACML- UCON document |
create a root PolicySet in XACML-UCON document |
for i=1 to rulesnumber do |
parse Target of rule i in Generic-XACML document; |
if∃ any element designating Environment attribute then |
if∃ obligation specifying the request interval for ongoing control then |
onCRules:=rule i; |
else |
preCRules:=rule i; |
else if∃ condition element in rule i then |
if∃ obligation specifying the request interval for ongoing control then |
onBRules:=rule i; |
else |
preBRules:=rule i; |
else |
if∃ obligation specifying the request interval for ongoing control then |
onARules:=rule i; |
else |
preARules:=rule i; |
if preARules is not empty then |
insert preAPolicy; |
insert preARules into preAPolicy; |
if onARules is not empty then |
insert onAPolicy; |
insert onARules into onAPolicy; |
if preBRules is not empty then |
insert preBPolicy; |
insert preBRules into preBPolicy; |
if onBRules is not empty then |
insert onBPolicy; |
insert onBRules into onBPolicy; |
if preCRules is not empty then |
insert preCPolicy; |
insert preCRules into preCPolicy; |
if onCRules is not empty then |
insert onCPolicy; |
insert onCRules into onCPolicy; |
return XACML-UCON document; |