Hallo,
ich habe dem APPEL-Regel-Auswerter per Kommandozeile ein relativ einfaches P3P-Beispiel und einen Regelsatz bergeben. Ziel war es, dass "block" ausgegeben wird, da in Statement/Data der P3P-Policy "#user.home-info" steht.
Es wurde jedoch eine Fehlermeldung ausgelst.
Ich habe Fehlermeldung, P3P-Policy und Regelsatz angefgt. Ist das ein Bug, oder habe ich irgendeinen Fehler im Regelsatz darin?
java -cp .\p4pp.jar;.\jdom.jar org.p4pp.p3p.appel.ui.EvaluatorUI ruleset.appel policy.p3p test http://localhost
- file2dom(), org.p4pp.p3p.document.PolicyCollection[1], finished after 251 ms
Exception in thread "main" java.lang.RuntimeException: Internal Error: Unexpected Exception caught in TopLevelExpressions::match (). at org.p4pp.p3p.appel.ruleset.ConnectedTopLevelExpressions.match(ConnectedTopLevelExpressions.java:157) at org.p4pp.p3p.appel.ruleset.ConnectedTopLevelExpressions.match
(ConnectedTopLevelExpressions.java:114) at org.p4pp.p3p.appel.ruleset.AppelRule.firesProvidedPolicyHasNoOptionalDataOrExtensionElements(AppelRule.java:348)
at org.p4pp.p3p.appel.ruleset.AppelRule.fires(AppelRule.java:256) at org.p4pp.p3p.appel.ruleset.AppelRuleset.getEvaluationResultOfTheFirst
RuleThatFires(AppelRuleset.java:262) at org.p4pp.p3p.appel.ruleset.AppelRuleset.evaluate(AppelRuleset.java:240)
at org.p4pp.p3p.appel.ui.EvaluatorUI.main(EvaluatorUI.java:95)
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
Anonymous
-
2002-07-07
ohne optional="yes" in
<DATA ref="#user.home-info" optional="yes"/> wird die gleiche Fehlermeldung ausgegeben
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
Anonymous
-
2002-07-07
Nachdem ich die gesamten Sourcen compiliert und die entsprechenden Klassen anstatt der mitgelieferten p4pp.jar in den classpath genommen habe verschwanden die Exceptions. Verschiedene Tests verliefen erfolgreich, zumindest bis ich wieder mit DATA - Elementen getestet habe. Bei folgender Konfiguration hat die Regel "gefeuert":
Ausgabe:
Categories defined in data schema for certain data element: []
Categories for variable-category data element http://www.w3.org/TR/P3P/base#dyna
mic.cookies: [category interactive]
Categories defined in data schema for certain data element: []
Categories for variable-category data element http://www.w3.org/TR/P3P/base#dyna
mic.cookies: [category interactive]
Es erscheint mir doch etwas seltsam, dass anscheinend "#user.gender" mit "#dynamic.cookies" gematcht wird.
Richtig, d.h. nicht gefeuert, hat die Regel reagiert, wenn bei den Datenelementen in Regel und Policy explizit Kategorien angegeben wurden und diese nicht bereinstimmten.
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
Hallo,
ich habe dem APPEL-Regel-Auswerter per Kommandozeile ein relativ einfaches P3P-Beispiel und einen Regelsatz bergeben. Ziel war es, dass "block" ausgegeben wird, da in Statement/Data der P3P-Policy "#user.home-info" steht.
Es wurde jedoch eine Fehlermeldung ausgelst.
Ich habe Fehlermeldung, P3P-Policy und Regelsatz angefgt. Ist das ein Bug, oder habe ich irgendeinen Fehler im Regelsatz darin?
java -cp .\p4pp.jar;.\jdom.jar org.p4pp.p3p.appel.ui.EvaluatorUI ruleset.appel policy.p3p test http://localhost
- file2dom()-->org.p4pp.p3p.document.PolicyCollection[1]
- file2dom(), org.p4pp.p3p.document.PolicyCollection[1], finished after 251 ms
Exception in thread "main" java.lang.RuntimeException: Internal Error: Unexpected Exception caught in TopLevelExpressions::match (). at org.p4pp.p3p.appel.ruleset.ConnectedTopLevelExpressions.match(ConnectedTopLevelExpressions.java:157) at org.p4pp.p3p.appel.ruleset.ConnectedTopLevelExpressions.match
(ConnectedTopLevelExpressions.java:114) at org.p4pp.p3p.appel.ruleset.AppelRule.firesProvidedPolicyHasNoOptionalDataOrExtensionElements(AppelRule.java:348)
at org.p4pp.p3p.appel.ruleset.AppelRule.fires(AppelRule.java:256) at org.p4pp.p3p.appel.ruleset.AppelRuleset.getEvaluationResultOfTheFirst
RuleThatFires(AppelRuleset.java:262) at org.p4pp.p3p.appel.ruleset.AppelRuleset.evaluate(AppelRuleset.java:240)
at org.p4pp.p3p.appel.ui.EvaluatorUI.main(EvaluatorUI.java:95)
<POLICIES xmlns="http://www.w3.org/2000/12/P3Pv1">
<POLICY name="test" discuri="http://localhost">
<ENTITY>
<DATA-GROUP>
<DATA ref="#business.name">CatalogExample</DATA>
<DATA ref="#business.contact-info.postal.street">123 Main Street</DATA>
</DATA-GROUP>
</ENTITY>
<ACCESS>
<nonident/>
</ACCESS>
<STATEMENT>
<PURPOSE>
<develop/>
</PURPOSE>
<RECIPIENT>
<ours/>
</RECIPIENT>
<RETENTION>
<stated-purpose/>
</RETENTION>
<DATA-GROUP>
<DATA ref="#user.home-info" optional="yes"/>
</DATA-GROUP>
</STATEMENT>
</POLICY>
</POLICIES>
<appel:RULESET xmlns:appel="http://www.w3.org/2001/02/APPELv1" xmlns:p3p="http://www.w3.org/2000/12/P3Pv1"
crtdby="W3C" crtdon="2002-07-07T16:21:21+01:00">
<appel:RULE behavior="block">
<p3p:POLICY>
<p3p:STATEMENT>
<p3p:DATA-GROUP> <p3p:DATA ref="#user.home-info"/>
</p3p:DATA-GROUP>
</p3p:STATEMENT>
</p3p:POLICY>
</appel:RULE>
<appel:RULE behavior="request">
<appel:OTHERWISE/>
</appel:RULE>
</appel:RULESET>
ohne optional="yes" in
<DATA ref="#user.home-info" optional="yes"/> wird die gleiche Fehlermeldung ausgegeben
Nachdem ich die gesamten Sourcen compiliert und die entsprechenden Klassen anstatt der mitgelieferten p4pp.jar in den classpath genommen habe verschwanden die Exceptions. Verschiedene Tests verliefen erfolgreich, zumindest bis ich wieder mit DATA - Elementen getestet habe. Bei folgender Konfiguration hat die Regel "gefeuert":
p3p-policy: ...
<DATA-GROUP>
<DATA ref="#dynamic.cookies">
<CATEGORIES><interactive/></CATEGORIES>
</DATA>
</DATA-GROUP>
ruleset: ...
<p3p:STATEMENT>
<p3p:DATA-GROUP>
<p3p:DATA ref="#user.gender"/>
</p3p:DATA-GROUP>
</p3p:STATEMENT>...
Ausgabe:
Categories defined in data schema for certain data element: []
Categories for variable-category data element http://www.w3.org/TR/P3P/base#dyna
mic.cookies: [category interactive]
Categories defined in data schema for certain data element: []
Categories for variable-category data element http://www.w3.org/TR/P3P/base#dyna
mic.cookies: [category interactive]
Es erscheint mir doch etwas seltsam, dass anscheinend "#user.gender" mit "#dynamic.cookies" gematcht wird.
Richtig, d.h. nicht gefeuert, hat die Regel reagiert, wenn bei den Datenelementen in Regel und Policy explizit Kategorien angegeben wurden und diese nicht bereinstimmten.