(Imported from OWL file.) |
(Updated the pattern description.) |
||
(17 intermediate revisions by 3 users not shown) | |||
Line 2: | Line 2: | ||
{{Graphical representation header}} | {{Graphical representation header}} | ||
{{Graphical representation | {{Graphical representation | ||
− | |ImageName= | + | |ImageName=ObjectWithStatesODP.png |
}} | }} | ||
{{Content OP Proposal Template | {{Content OP Proposal Template | ||
− | | | + | |SubmittedBy=RaúlGarcÃa-Castro |
− | | | + | |Name=Object with states |
|Intent=An object can have different states for which different restrictions apply. The goal of the pattern is to allow modelling the different states of an object and the restrictions on such object for its different states. | |Intent=An object can have different states for which different restrictions apply. The goal of the pattern is to allow modelling the different states of an object and the restrictions on such object for its different states. | ||
− | |CompetencyQuestion=Objects in StateA must have at least one value for property property1, Objects in StateB must have at most one value for property property2, Objects in StateC must have exactly one value for property property3, | + | |Domain=General, |
+ | |CompetencyQuestion=Objects must have a unique state, Object states must belong to a single collection of non-duplicate elements (i.e., to a set), The possible states are: StateA, StateB and StateC, An object can have three different states, Objects in StateA must have at least one value for property property1, Objects in StateB must have at most one value for property property2, Objects in StateC must have exactly one value for property property3 | ||
+ | |ContentODPDescription=The pattern contains three classes, one for representing objects, another for representing object states, and a third one for representing sets of states. Besides, it contains object properties for relating objects and states (which are subproperties of those defined in the Situation pattern [[http://ontologydesignpatterns.org/cp/owl/situation.owl]]) and for relating states and sets of states (reused from the CollectionEntity pattern [[http://ontologydesignpatterns.org/cp/owl/collectionentity.owl]]) and a datatype property for defining the size of a set of states (reused from the Set pattern [[http://ontologydesignpatterns.org/cp/owl/set.owl]]). | ||
+ | |||
+ | For applying the pattern, first all the possible states of the object must be created as instances of the state class using the Value Partition pattern [http://www.w3.org/TR/swbp-specified-values/]. Then, different classes must be defined to represent the object in each of the states and state-specific restrictions must be applied to those classes; the object class must be defined as a disjoint union of these classes. | ||
+ | |ReusableOWLBuildingBlock=http://delicias.dia.fi.upm.es/ontologies/ObjectWithStates.owl | ||
|Consequences=The pattern requires modelling states as individuals instead of as literals. | |Consequences=The pattern requires modelling states as individuals instead of as literals. | ||
− | | | + | |Scenario=A sample scenario is the following. A software defect created in an issue tracker must have a creator and be associated to a certain software product. Once it is checked that the defect is reproducible, it must be assigned to some developer and have a certain priority. However, before checking the defect reproducilibty the defect must not have either asignee or priority. |
− | | | + | |KnownUse=http://delicias.dia.fi.upm.es/ontologies/alm-istack.owl |
− | | | + | |CPInstantiationExample=http://delicias.dia.fi.upm.es/ontologies/alm-istack.owl |
+ | |SpecializationOf=Situation | ||
+ | |RelatedCP=CollectionEntity, Set | ||
}} | }} | ||
{{Element list header}} | {{Element list header}} | ||
Line 19: | Line 26: | ||
}} | }} | ||
{{Has Element Template | {{Has Element Template | ||
− | |HasElement= | + | |HasElement=isStateOf |
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
}} | }} | ||
{{Has Element Template | {{Has Element Template | ||
Line 31: | Line 32: | ||
}} | }} | ||
{{Has Element Template | {{Has Element Template | ||
− | |HasElement= | + | |HasElement=State |
}} | }} | ||
{{Has Element Template | {{Has Element Template | ||
− | |HasElement= | + | |HasElement=StateSet |
}} | }} | ||
− | {{ | + | {{Takes in account review |
− | | | + | |TakesInAccountReview=AlessandroAdamou about Object with states |
}} | }} | ||
− | {{ | + | {{Takes in account review |
− | | | + | |TakesInAccountReview=RinkeHoekstra about Object with states |
}} | }} | ||
− | {{ | + | {{Takes in account review |
− | | | + | |TakesInAccountReview=BenedictoRodriguezCastro about Object with states |
}} | }} | ||
− | {{ | + | {{Takes in account review |
− | | | + | |TakesInAccountReview=BenedictoRodriguezCastro about Object with states 2 |
}} | }} | ||
− | |||
− | |||
− | |||
− | |||
{{Additional information header}} | {{Additional information header}} | ||
− | + | [[Category:Review assigned]] | |
{{Scenarios about me}} | {{Scenarios about me}} | ||
− | {{Reviews about me}}{{Modeling issues about me}}{{My references}} | + | {{Reviews about me}} |
− | + | {{Modeling issues about me}} | |
+ | {{My references}} | ||
+ | {{Submission to event | ||
+ | |Event=WOP:2013 | ||
+ | }} |
Diagram
Name: | Object with states |
---|---|
Submitted by: | RaúlGarcÃa-Castro |
Also Known As: | |
Intent: | An object can have different states for which different restrictions apply. The goal of the pattern is to allow modelling the different states of an object and the restrictions on such object for its different states. |
Domains: | |
Competency Questions: |
|
Solution description: | The pattern contains three classes, one for representing objects, another for representing object states, and a third one for representing sets of states. Besides, it contains object properties for relating objects and states (which are subproperties of those defined in the Situation pattern [[1]]) and for relating states and sets of states (reused from the CollectionEntity pattern [[2]]) and a datatype property for defining the size of a set of states (reused from the Set pattern [[3]]).
For applying the pattern, first all the possible states of the object must be created as instances of the state class using the Value Partition pattern [4]. Then, different classes must be defined to represent the object in each of the states and state-specific restrictions must be applied to those classes; the object class must be defined as a disjoint union of these classes. |
Reusable OWL Building Block: | 1 (491) |
Consequences: | The pattern requires modelling states as individuals instead of as literals. |
Scenarios: | A sample scenario is the following. A software defect created in an issue tracker must have a creator and be associated to a certain software product. Once it is checked that the defect is reproducible, it must be assigned to some developer and have a certain priority. However, before checking the defect reproducilibty the defect must not have either asignee or priority. |
Known Uses: | http://delicias.dia.fi.upm.es/ontologies/alm-istack.owl |
Web References: | |
Other References: | |
Examples (OWL files): | |
Extracted From: | |
Reengineered From: | |
Has Components: | |
Specialization Of: | |
Related CPs: |
The Object with states Content OP locally defines the following ontology elements:
No scenario is added to this Content OP.
This revision (revision ID 11707) takes in account the reviews: Object with states (AlessandroAdamou about Object with states, RinkeHoekstra about Object with states, BenedictoRodriguezCastro about Object with states, BenedictoRodriguezCastro about Object with states 2)
Other info at evaluation tab
![]() |
Submission to event |
---|