=== Template !DirectPropertyRestrictionOfIndividual === [[br]]This template is for assigning a property to an Individual for a Property that is not an !IndirectProperty and also restricting the assigned property to a member of a specific set of properties. [[br]] [[br]]!DirectPropertyRestrictionOfIndividual(a, b, c) means that a is an !EnumeratedPropertySet, b is a (temporal part of) !PossibleIndividual to which the relation applies and c is a Property assigned and a member of a where c is supposed to be an existing class in RDL. [[br]] [[br]]Roles: [[br]]1 hasPropertySet !EnumeratedPropertySet [[br]]2 hasPropertyPossessor !PossibleIndividual [[br]]3 hasProperty Property [[br]] Axiom: {{{ DirectPropertyRestrictionOfIndividual(x1, x2, x3) <-> EnumeratedPropertySet(x1) & PossibleIndividual(x2) & Property(x3) & ClassificationTemplate(x2, x3) & ClassificationTemplate(x3, x1). }}} EXAMPLE The statement !DirectPropertyRestrictionOfIndividual (ABC SET OF NOMINAL DIAMETERS, ELBOW12345, 100MM) === Analysis diagram === [[Image(DirectPropertyRestrictionOfIndividual.png)]] NOTE: The assigned property and property space used in a template instance must already exist in the RDL including all the required relationships to describe them (property_quantification, scale etc). It is not in scope of the template. [[br]] === Discussion === From Victor Agroskin: The "scale" has class_of_functional_mapping.domain defined as property_space. In "class_of_property" definition we have SUPERTYPE OF (ONEOF(property_space, enumerated_property_set). Is it possible to have an instance of enumerated_property_set as subclass of an instance of property_space and as domain of scale then? [[br]] From Mikhail Fedorov: First of all... LENGTH is single_property_dimension. Ok, then let's look into Part 2: "A single_property_dimension is a property_space that is a single and complete continuum of properties each of which maps to a single number." "A property_space is a class_of_property whose members are a coherent continuum of property." "An enumerated_property_set is a class_of_property and an enumerated_set_of_class whose members are an enumerated set of properties of the same single_property_dimension or multidimensional_property_space." So taking that into account - why an instance of enumerated_property_set cannot be a specialization of an instance of property_space? Since members of this enumerated_property_set should be also members of the single_property_dimension DIAMETER... [[br]] After discussing with Viktor Agroskin: a property that is assigned should be a member of BOTH !EnumeratedPropertySet and according !PropertySpace. But !EnumeratedPropertySet cannot be a specoalization of that !PropertySet. I've made according changes to the diagram.