Presentation is loading. Please wait.

Presentation is loading. Please wait.

Towards a policy language for humans and computers Vicky Weissman Joint work with Carl Lagoze.

Similar presentations


Presentation on theme: "Towards a policy language for humans and computers Vicky Weissman Joint work with Carl Lagoze."— Presentation transcript:

1 Towards a policy language for humans and computers Vicky Weissman Joint work with Carl Lagoze

2 The big picture A policy says that under certain conditions an action, such as downloading a file, is permitted or forbidden. Digital content providers want to write policies about how their works may be accessed, and to have those policies enforced.

3 Diverse apps – same need Because we can’t regulate access to online content with precision: Digital libraries can’t put certain content online; it might violate IP laws. The Greek Orthodox Archdiocese of America is wary of defamation. Cultural traditions aren’t respected. (Australian Aboriginal communities often restrict access to a clan or gender.)

4 XrML to the rescue XrML is a XML-based language for writing policies. The specification includes an algorithm that determines if a set of policies imply a permission. Idea: write policies in XrML, enforce them using the algorithm.

5 Industry likes XrML XrML endorsed by Adobe, Hewlett- Packard, Microsoft, Xerox, Barnesandnoble.com, MPEG International Standards Committee… Microsoft and others plan to make XrML-compliant products. Will tomorrow’s OS, DVD player, … enforce XrML policies?

6 XrML Shortcomings Usability To read/write policies in XrML requires a significant amount of training. Even with training, writing policies is non- trivial and reading XrML policies is difficult.

7 A partial solution Build a nice interface. Users enter policies through the interface and then their input is translated to XrML. UI Translator to XrML User Input User Input in XrML

8 Problem There probably isn’t a single interface that is appropriate for all users. So, we need an interface for each user community (e.g. musicians, publishers,…) UI 1 UI n Translator 1 to XrML Translator n to XrML ……………………………… ……… User Input User Input in XrML

9 Another problem Whose going to write the translations? Presumably, the UI designer. So, each UI writer is going to have to learn XrML and write a translator from input via their UI to XrML policies? There must be a better way!

10 Our solution Create a language that the UI designers can learn quickly and use easily. Then provide a translation from the intuitive language to XrML.

11 The big picture UI n UI 1 ……………………………. Translator n to R User Input Translator to XrML User Input in R Translator 1 to R …………. Let R represent the new language.

12 Benefits of this approach If industry decides to enforce a new language, only one translation changes. UI n UI 1 ………………………………………………………. Translator n to R User Input Translator to new language User Input in R Translator 1 to R ……………………

13 Benefits of this approach Similarly, if some products use XrML, others ODRL, …, need 1 new translator/language. UI n UI 1 ………………………………………………………. Translator n to R User Input Translator to XrML User Input in R Translator 1 to R …………………… Translator to ODRL

14 Goal To create a language that is at least easier to use than XrML. Ideally, find a language that is easy to use. Big Idea: Base the policy language on a natural language; one that non-experts already know. We use English, but expect that our results readily translate to other (human) languages.

15 Rosetta We call the new language Rosetta. Rosetta is essentially a set of templates for creating English sentences. A sentence is in Rosetta, if we can create it by filling-in one of the templates with appropriate values.

16 Simple templates Rosetta includes the templates is. may. Given these templates, I claim that we can write the sentence `Alice is smart’.

17 Simple templates Rosetta includes the templates is. Alice is smart. is. may. Given these templates, I claim that we can write the sentence `Alice is smart’.

18 Simple templates Rosetta includes the templates is. may. Similarly, we can write `Bob is a student.’

19 Simple templates Rosetta includes the templates is. Bob is a student. may. Similarly, we can write `Bob is a student.’

20 Simple templates Rosetta includes the templates is. may. It’s easy to see that `Bob may watch `Finding Nemo’’. is in Rosetta, because it matches the third template.

21 Simple templates Rosetta includes the templates is. may. Other simple templates in Rosetta can be used to capture sentences such as: `Every employee is trusted’ and `Clark Kent is Superman’.

22 Conditionals Rosetta includes “if then’’ statements of the form if and … and then ss, where ss = simple statement E.g. If today is Saturday and Alice is good, then Alice may watch `Finding Nemo’.

23 Empirical Observations Simple and `if then’ sentences seem to be sufficiently expressive to capture most (all?) policies of practical interest. But capturing all simple and `if then’ sentences is non-trivial. In particular, pronouns and prepositional phrases are difficult to support.

24 Pronouns Consider the statement `if a toddler kicks Alice, then she is angry’. Who is angry? Answer 1: the toddler, otherwise she wouldn’t have kicked Alice. Answer 1: Alice, because she has been kicked. Bottom line: Sentence is ambiguous, so we don’t know how to translate it. pronoun

25 Our solution: Labels If Alice is angry, then we can write the sentence without using a pronoun. `if a toddler kicks Alice, then Alice is angry.’ Otherwise, we replace the pronoun with a label that is associated with the toddler. `if a toddler t kicks Alice, then t is angry’ Labels are not part of standard English, but seem fairly intuitive.

26 Prepositions Prepositions can also cause ambiguity. E.g. `Alice designed the library in London’. Sentence could mean that Alice designed the library that is in London or that Alice designed the library when she was in London. We choose the first interpretation, but this might not be the best solution. Maybe we should ask the writer? Prepositional Phrase

27 Expressivity If we include propositions in Rosetta, then Rosetta is almost as expressive as XrML. Also, it’s easy to extend Rosetta to include all of XrML, but the sentences are a bit unwieldy. E.g. if the statements: s 1,…, s n imply that Alice is good, then she may watch `Finding Nemo’.

28 Beyond XrML We can easily extend Rosetta to include sentences with negation. E.g. If Alice is not good, then she may not watch `finding Nemo’. Since XrML does not support negation, we couldn’t translate the extended Rosetta to XrML.

29 Summary XrML is a policy language that is difficult to use, but will likely be enforced automatically by many next-generation products. Rosetta is a first-step towards an appropriate front end for XrML. It can serve as a front-end to other policy languages as well. Future work includes usability testing.


Download ppt "Towards a policy language for humans and computers Vicky Weissman Joint work with Carl Lagoze."

Similar presentations


Ads by Google