Roles & relationships

From MWCSWiki

Jump to: navigation, search

Idea:

When we import, we put domain & range assertions in the database like anything else. When we display, any property that has a domain of X will appear in the X oklahoma for that object (and similarly for range.) Any property that has no domain/range statement just goes in the default Oklahoma.

When the user creates a property, we give it the appropriate domain/range. And the property's URI itself will have the domain/range role name appended/prepended so that the URIs are actually unique, even if another role can also have an identically named action.

If the user attempts to add the same action name to a different role, they get a black box, and if they confirm through the black box, then we create a separate URI with the new role name prepended/appended, and we add a new superproperty of which both are subproperties.

(Alternately, we could also generate the superproperty when the first property is initially created.)

For now, we assume that nothing we want to import will have multiple domains/ranges for the same property. (If this turns out to be a problem, we'll solve that later.)

Personal tools