Abstract Classes - классы без экземпляров

Feb 20, 2010 20:01

Про выражение абстрактных классов уже упоминалось здесь , в подпункте 3 ( Read more... )

Leave a comment

Comments 5

ailev February 20 2010, 19:12:19 UTC
Это хорошие вопросы для задания их в группе ISO 15926 in LinkedIn. Я думаю, это самый простой и быстрый способ получить ответ: спросить у авторов стандарта части второй и восьмой...

Reply


vvagr February 20 2010, 19:14:46 UTC
Насколько я понимаю, механизм абстрактных классов должен быть использован для отражения строгости "предписывающей" природы моделируемого стандарта. Набор аксиом абстрактности утверждает, что никаких иных подклассов, кроме предусмотренных стандартом - модель содержать не может.

То есть если мы встретим в стандарте утверждение типа "при использовании стандарта пользователем могут быть введен иные Producers" - то Producer не абстрактный класс. Если же списки подклассов закрытые - абстрактный.

При строгом понимании стандарта абстрактными объявляются все узлы дерева классов, не являющиеся листьями.

Reply

vvagr February 21 2010, 02:24:34 UTC
Однако это слишком сильное утверждение получается в OWL.

Если я правильно понимаю, в модели 15926 объявление класса абстрактным не накладывает ограничения на список его подклассов: объяви новый подкласс, и населяй его инстансами, не входящими в старые подклассы. Определение исходного класса можно не трогать.

А предлагаемая аксиома в OWL ограничивает список подклассов, нельзя просто объявить новый подкласс, надо изменить аксиому.

Reply

foxtreme February 21 2010, 10:22:05 UTC
"Насколько я понимаю, механизм абстрактных классов должен быть использован для отражения строгости "предписывающей" природы моделируемого стандарта. Набор аксиом абстрактности утверждает, что никаких иных подклассов, кроме предусмотренных стандартом - модель содержать не может."

Я понимаю несколько по-другому. Класс абстрактный, если у него не может быть прямых экземпляров (instances/member). То есть, мы не можем сделать экземпляр Thing. Мы должны сказать, что он либо PossibleIndividual, либо AbstractObject, то есть наполнять экземплярами не Thing, а его подклассы.

Выдержка с сайта PoscCaesarThe concept "abstract class" does not exist in OWL, so there is no one-to-one translation. However, we are able to translate large parts of the intended meaning of the construct to OWL. In EXPRESS an abstract entity means that the entity may not have any "direct" instances ( ... )

Reply

ailev February 21 2010, 16:59:06 UTC
Кстати, в ISO 24744 есть механизмы штатного расширения.

Reply


Leave a comment

Up