ГОСТ Р ИСО 10303-504-2006
Группа П87
НАЦИОНАЛЬНЫЙ СТАНДАРТ РОССИЙСКОЙ ФЕДЕРАЦИИ
Системы автоматизации производства и их интеграция
ПРЕДСТАВЛЕНИЕ ДАННЫХ ОБ ИЗДЕЛИИ И ОБМЕН ЭТИМИ ДАННЫМИ
Часть 504
Прикладные интерпретированные конструкции. Пояснения на чертежах
Industrial automation systems and integration. Product data representation and exchange.
Part 504. Application interpreted constructions. Draughting annotation
ОКС 25.040.40
ОКСТУ 4002
Дата введения 2007-07-01
Предисловие
Цели и принципы стандартизации в Российской Федерации установлены Федеральным законом от 27 декабря 2002 г. N 184-ФЗ "О техническом регулировании", а правила применения национальных стандартов Российской Федерации - ГОСТ Р 1.0-2004 "Стандартизация в Российской Федерации. Основные положения"
Сведения о стандарте
1 ПОДГОТОВЛЕН Государственным научным учреждением "Центральный научно-исследовательский и опытно-конструкторский институт робототехники и технической кибернетики" на основе собственного аутентичного перевода стандарта, указанного в пункте 4
2 ВНЕСЕН Техническим комитетом по стандартизации ТК 459 "Информационная поддержка жизненного цикла изделий"
3 УТВЕРЖДЕН И ВВЕДЕН В ДЕЙСТВИЕ Приказом Федерального агентства по техническому регулированию и метрологии от 27 декабря 2006 г. N 489-ст
4 Настоящий стандарт идентичен международному стандарту ИСО 10303-504:2000 "Системы автоматизации производства и их интеграция. Представление данных об изделии и обмен этими данными. Часть 504. Прикладные интерпретированные конструкции. Пояснения на чертежах" (ISO 10303-504:2000 "Industrial automation systems and integration - Product data representation and exchange - Part 504: Application interpreted construct: Draughting annotation"). При применении настоящего стандарта рекомендуется использовать вместо ссылочных международных стандартов соответствующие им национальные стандарты Российской Федерации, сведения о которых приведены в дополнительном приложении Е
5 ВВЕДЕН ВПЕРВЫЕ
Информация об изменениях к настоящему стандарту публикуется в ежегодно издаваемом информационном указателе "Национальные стандарты", а текст изменений и поправок - в ежемесячно издаваемых информационных указателях "Национальные стандарты". В случае пересмотра (замены) или отмены настоящего стандарта соответствующее уведомление будет опубликовано в ежемесячно издаваемом информационном указателе "Национальные стандарты". Соответствующая информация, уведомление и тексты размещаются также в информационной системе общего пользования - на официальном сайте Федерального агентства по техническому регулированию и метрологии в сети Интернет
Введение
Стандарты комплекса ИСО 10303 распространяются на компьютерное представление информации об изделиях и обмен данными об изделиях. Их целью является обеспечение нейтрального механизма, способного описывать изделия на всем протяжении их жизненного цикла. Этот механизм применим не только для нейтрального обмена файлами, но является также основой для реализации и совместного доступа к базам данных об изделиях и организации архивирования.
Стандарты комплекса ИСО 10303 представляют собой набор отдельно издаваемых стандартов (частей). Стандарты данного комплекса относятся к одной из следующих тематических групп: методы описания, интегрированные ресурсы, прикладные интерпретированные конструкции, прикладные протоколы, комплекты абстрактных тестов, методы реализации и аттестационное тестирование. Группы стандартов данного комплекса описаны в ИСО 10303-1. Настоящий стандарт входит в группу прикладных интерпретированных конструкций.
Прикладная интерпретированная конструкция (ПИК) обеспечивает логическую группировку интерпретированных конструкций, поддерживающих конкретную функциональность для использования данных об изделии в разнообразных прикладных контекстах. Интерпретированная конструкция представляет собой обычную интерпретацию интегрированных ресурсов, поддерживающую требования совместного использования информации прикладными протоколами.
Настоящий стандарт определяет прикладную интерпретированную конструкцию для описания помещенного на чертеже пояснения, которое имеет особый смысл или назначение в рамках области применения данного чертежа. Текст или символы пояснения обеспечивают дополнительные данные об изделии, которые могут потребоваться для полного описания изделия или интерпретации чертежа.
1 Область применения
Настоящий стандарт определяет интерпретацию интегрированных ресурсов, обеспечивающую соответствие требованиям к определению пояснений, предназначенных для облегчения понимания данных об изделии и интерпретации чертежа.
Область применения настоящего стандарта распространяется на:
- представление неформообразующих данных об изделии, изображенных двумерным или плоским трехмерным пояснением;
- структуры для представления свойств изображения пояснения;
- структуры для представления элементов рисунков и символов;
- структуры для представления определенных внешне символов и свойств изображения пояснения;
- предопределенные символы и свойства изображения.
Область применения настоящего стандарта не распространяется на:
пояснения, которые представляют размеры или выноски на чертежах.
2 Нормативные ссылки
В настоящем стандарте использованы ссылки на следующие международные стандарты:
ИСО/МЭК 8824-1:1998 Информационные технологии. Взаимосвязь открытых систем. Абстрактная синтаксическая нотация версии один (АСН.1). Спецификация основной нотации
ИСО 10209-1:1992 Техническая документация на продукцию. Словарь. Часть 1. Термины, относящиеся к техническим чертежам. Общие термины и типы чертежей
ИСО 10303-1:1994 Системы автоматизации производства и их интеграция. Представление данных об изделии и обмен этими данными. Часть 1. Общие представления и основополагающие принципы
ИСО 10303-11:1994 Системы автоматизации производства и их интеграция. Представление данных об изделии и обмен этими данными. Часть 11. Методы описания. Справочное руководство по языку EXPRESS
ИСО 10303-41:1994 Системы автоматизации производства и их интеграция. Представление данных об изделии и обмен этими данными. Часть 41. Интегрированные обобщенные ресурсы. Основы описания и поддержки изделий
ИСО 10303-42:1994 Системы автоматизации производства и их интеграция. Представление данных об изделии и обмен этими данными. Часть 42. Интегрированные обобщенные ресурсы. Геометрическое и топологическое представление
ИСО 10303-43:1994 Системы автоматизации производства и их интеграция. Представление данных об изделии и обмен этими данными. Часть 43. Интегрированные обобщенные ресурсы. Структуры представлений
ИСО 10303-46-1994 Системы автоматизации производства и их интеграция. Представление данных об изделии и обмен этими данными. Часть 46. Интегрированные обобщенные ресурсы. Визуальное представление
ИСО 10303-101-1994 Системы автоматизации производства и их интеграция. Представление данных об изделии и обмен этими данными. Часть 101. Интегрированные прикладные ресурсы. Изготовление чертежей
ИСО 10303-202:1996 Системы автоматизации производства и их интеграция. Представление данных об изделии и обмен этими данными. Часть 202. Прикладные протоколы. Ассоциативные чертежи
3.1 Термин, определенный в ИСО 10209-1
В настоящем стандарте применен следующий термин:
- чертеж (drawing).
3.2 Термины, определенные в ИСО 10303-1
В настоящем стандарте применены следующие термины:
- приложение (application);
- прикладной контекст (application context);
- прикладной протокол; ПП (application protocol; АР);
- метод реализации (implementation method);
- интегрированный ресурс (integrated resource);
- интерпретация (interpretation);
- изделие (product);
- данные об изделии (product data).
3.3 Термины, определенные в ИСО 10303-46
В настоящем стандарте применены следующие термины:
- пояснение (annotation);
- изображение (presentation).
3.4 Термины, определенные в ИСО 10303-101
В настоящем стандарте применены следующие термины:
- выноска (callout);
- изготовление чертежей (draughting).
3.5 Термины, определенные в ИСО 10303-202
В настоящем стандарте применены следующие термины:
- базовая линия (baseline);
- чертежная модель формы (draughting shape model);
- определенный внешне (externally defined);
- предопределенный (predefined);
- элемент рисунка (subfigure);
- символ (symbol);
- прикладная интерпретированная конструкция; ПИК (application interpreted construct; AIC).
4 Сокращенный листинг на языке EXPRESS
В настоящем разделе определена EXPRESS-схема, в которой используются элементы интегрированных ресурсов и содержатся типы, конкретизации объектов и функции, относящиеся к настоящему стандарту.
Примечание - В интегрированных ресурсах допускается существование подтипов и элементов списков выбора, не импортированных в данную ПИК. Такие конструкции исключаются из дерева подтипов или из списка выбора посредством правил неявного интерфейса, определенных в ИСО 10303-11. Ссылки на исключенные конструкции находятся вне области применения данной ПИК. В некоторых случаях исключаются все элементы списка выбора. Поскольку ПИК предназначены для реализации в контексте прикладного протокола, элементы списка выбора будут определяться областью применения прикладного протокола.
EXPRESS-спецификация |
|
USE FROM draughting_element_schema |
-- ISO 10303-101 |
USE FROM geometry_schema |
-- ISO 10303-42 |
USE FROM measure_schema |
-- ISO 10303-41 |
USE FROM presentation_appearance_schema |
-- ISO 10303-46 |
USE FROM presentation_definition_schema |
-- ISO 10303-46 |
USE FROM presentation_resource_schema |
-- ISO 10303-46 |
USE FROM representation_schema |
-- ISO 10303-43 |
Примечание - Схемы, ссылки на которые даны выше, можно найти в стандартах комплекса ИСО 10303:
draughting_element_schema |
- ИСО 10303-42; |
geometry_schema |
- ИСО 10303-42; |
measure_schema |
- ИСО 10303-41; |
presentation_appearance_schema |
- ИСО 10303-46; |
presentation_definition_schema |
- ИСО 10303-46; |
presentation_resource_schema |
- ИСО 10303-46; |
representation_schema |
- ИСО 10303-43. |
4.1 Основные понятия и допущения
Для независимой реализации в схеме прикладного протокола, в которой используется данная ПИК, предназначены следующие объекты:
- colour_rgb;
- curve_style;
- derived_unit;
- externally_defined_symbol;
- fill_area_style_colour;
- fill_area_style;
- measure_with_unit;
- named_unit;
- pre_defined_colour;
- pre_defined_symbol;
- presentation_style_by_context;
- representation;
- symbol_colour;
- text_style_for_defined_font;
- text_style.
4.2 Определения объектов схемы aic_draughting_annotation
4.2.1 Объект annotation_subfigure_occurrence представляет собой группировку пояснений, которая распознается как элемент рисунка.
EXPRESS-спецификация
*)
ENTITY annotation_subfigure_occurrence
SUBTYPE OF (annotation_symbol_occurrence);
WHERE
WR1: SIZEOF (QUERY (sty <* SELF.styles |
NOT (SIZEOF (sty.styles) = 1)
)) = 0;
WR2: SIZEOF (QUERY (sty <* SELF.styles |
NOT ('AIC_DRAUGHTING_ANNOTATION.NULL_STYLE'
IN TYPEOF (sty.styles[1])) )) = 0;
WR3: ('AIC_DRAUGHTING_ANNOTATION.ANNOTATION_SYMBOL'
IN TYPEOF (SELF.item));
WR4: ('AIC_DRAUGHTING_ANNOTATION.DRAUGHTING_SUBFIGURE_REPRESENTATION'
IN TYPEOF
(SELF.item\mapped_item.mapping_source.mapped_representation));
END_ENTITY;
(*
Формальные утверждения
WR1 - объект annotation_subfigure_occurrence должен иметь точно один стиль.
WR2 - типом стиля должен быть null_style.
WR3 - элементом объекта annotation_subfigure_occurrence должен быть объект annotation_symbol.
WR4 - источником объекта annotation_subfigure_occurrence должен быть объект draughting_subfigure_representation
4.2.2 Объект draughting_annotation_occurrence относится к типу annotation_occurrence. Он задает ограничения в пределах контекста чертежа.
Примечание - Прикладной протокол, в котором используется данная ПИК, может обеспечить реализацию объекта annotation_occurrence как объекта draughting_annotation_occurrence.
EXPRESS-спецификация
*)
ENTITY draughting_annotation_occurrence
SUBTYPE OF (annotation_occurrence);
WHERE
WR1: -- кривая имеет стиль кривой:
(NOT ('AIC_DRAUGHTING_ANNOTATION.ANNOTATION_CURVE_OCCURRENCE'
IN TYPEOF (SELF))) OR
(SIZEOF (QUERY (sty <* SELF.styles |
NOT ((SIZEOF (sty.styles) = 1)
AND ('AIC_DRAUGHTING_ANNOTATION.CURVE_STYLE'
IN TYPEOF (sty.styles[1]))) )) = 0);
WR2: -- область заполнения имеет стиль заполнения:
(NOT ('AIC_DRAUGHTING_ANNOTATION.ANNOTATION_FILL_AREA_OCCURRENCE'
IN TYPEOF (SELF))) OR (SIZEOF (QUERY (sty <* SELF.styles |
NOT ((SIZEOF (sty.styles) = 1)
AND ('AIC_DRAUGHTING_ANNOTATION.FILL_AREA_STYLE'
IN TYPEOF (sty.styles[1]))) )) = 0);
WR3: -- границы заполнения со стилем:
(NOT ('AIC_DRAUGHTING_ANNOTATION.ANNOTATION_FILL_AREA_OCCURRENCE'
IN TYPEOF (SELF))) OR (SIZEOF (QUERY (bound <*
SELF.item\annotation_fill_area.boundaries |
NOT (SIZEOF (QUERY (si <*
USEDIN (bound, 'PRESENTATION_APPEARANCE_SCHEMA.' +
'STYLED_ITEM.ITEM') |
('AIC_DRAUGHTING_ANNOTATION.' +
'ANNOTATION_CURVE_OCCURRENCE' IN TYPEOF (si)))) > 0))) = 0);
WR4: -- символ имеет стиль символа:
(NOT ('AIC_DRAUGHTING_ANNOTATION.ANNOTATION_SYMBOL_OCCURRENCE'
IN TYPEOF (SELF))) OR (SIZEOF (QUERY (sty <* SELF.styles |
NOT ((SIZEOF (sty.styles) = 1) AND
(SIZEOF (TYPEOF (sty.styles[1]) *
['AIC_DRAUGHTING_ANNOTATION.SYMBOL_STYLE',
'AIC_DRAUGHTING_ANNOTATION.NULL_STYLE']) = 1)) )) = 0);
WR5: -- допустимые представления символов:
(NOT (('AIC_DRAUGHTING_ANNOTATION.ANNOTATION_SYMBOL_OCCURRENCE'
IN TYPEOF (SELF)) AND
('AIC_DRAUGHTING_ANNOTATION.ANNOTATION_SYMBOL'
IN TYPEOF(SELF.item)))) OR
(SIZEOF (['AIC_DRAUGHTING_ANNOTATION.' +
'DRAUGHTING_SYMBOL_REPRESENTATION',
'AIC_DRAUGHTING_ANNOTATION.' +
'DRAUGHTING_SUBFIGURE_REPRESENTATION']*
TYPEOF (SELF.item\mapped_item.mapping_source.
mapped_representation)) = 1);
WR6: -- текст имеет стиль текста:
(NOT ('AIC_DRAUGHTING_ANNOTATION.ANNOTATION_TEXT_OCCURRENCE'
IN TYPEOF (SELF))) OR
(SIZEOF (QUERY (sty <* SELF.styles |
NOT ((SIZEOF (sty.styles) = 1)
AND ('AIC_DRAUGHTING_ANNOTATION.TEXT_STYLE'
IN TYPEOF (sty.styles[1]))) )) = 0);
WR7: -- допустимый текст:
(('AIC_DRAUGHTING_ANNOTATION.ANNOTATION_TEXT_OCCURRENCE'
IN TYPEOF (SELF))) OR
(SIZEOF (TYPEOF(SELF.item) *
['AIC_DRAUGHTING_ANNOTATION.COMPOSITE_TEXT',
'AIC_DRAUGHTING_ANNOTATION.TEXT_LITERAL']) = 1);
WR8: -- текст не является вложенным:
(NOT (('AIC_DRAUGHTING_ANNOTATION.ANNOTATION_TEXT_OCCURRENCE'
IN TYPEOF (SELF)) AND
('AIC_DRAUGHTING_ANNOTATION.COMPOSITE_TEXT'
IN TYPEOF (SELF.item)))) OR (SIZEOF (QUERY (tl <*
SELF.item\composite_text.collected_text |
NOT('AIC_DRAUGHTING_ANNOTATION.TEXT_LITERAL'
IN TYPEOF (tl)) )) = 0);
WR9: -- символы для выравнивания текста:
(NOT (('AIC_DRAUGHTING_ANNOTATION.ANNOTATION_TEXT_OCCURRENCE'
IN TYPEOF (SELF)) AND
('AIC_DRAUGHTING_ANNOTATION.TEXT_LITERAL'
IN TYPEOF (SELF.item)))) OR (SELF.item\text_literal.alignment
IN ['baseline left', 'baseline centre', 'baseline right']);
WR10: -- композиции для выравнивания текста:
(NOT (('AIC_DRAUGHTING_ANNOTATION.ANNOTATION_TEXT_OCCURRENCE'
IN TYPEOF (SELF)) AND
('AIC_DRAUGHTING_ANNOTATION.COMPOSITE_TEXT'
IN TYPEOF (SELF.item)))) OR
(SIZEOF (QUERY (tl <* QUERY (text <* SELF.
item\composite_text.collected_text
| ('AIC_DRAUGHTING_ANNOTATION.TEXT_LITERAL' IN TYPEOF(text))) |
NOT (tl\text_literal.alignment IN
['baseline left', 'baseline centre', 'baseline right']) )) = 0);
WR11: -- единое выравнивание текста:
NOT (('AIC_DRAUGHTING_ANNOTATION.ANNOTATION_TEXT_OCCURRENCE'
IN TYPEOF(SELF)) AND
('AIC_DRAUGHTING_ANNOTATION.COMPOSITE_TEXT'
IN TYPEOF (SELF.item))) OR check_text_alignment(SELF.item);
WR12: -- единый шрифт текста:
NOT (('AIC_DRAUGHTING_ANNOTATION.ANNOTATION_TEXT_OCCURRENCE'
IN TYPEOF(SELF)) AND
('AIC_DRAUGHTING_ANNOTATION.COMPOSITE_TEXT'
IN TYPEOF (SELF.item))) OR check_text_font(SELF.item);
WR13: -- допустимые текстовые константы:
(NOT (('AIC_DRAUGHTING_ANNOTATION.ANNOTATION_TEXT_OCCURRENCE'
IN TYPEOF(SELF))AND
('AIC_DRAUGHTING_ANNOTATION.COMPOSITE_TEXT'
IN TYPEOF (SELF.item)))) OR
(SIZEOF (QUERY (tl <* QUERY (text <*
SELF.item\composite_text.collected_text |
('AIC_DRAUGHTING_ANNOTATION.TEXT_LITERAL' IN TYPEOF (text))) |
NOT (SIZEOF (TYPEOF(tl) *
['AIC_DRAUGHTING_ANNOTATION.' +
'TEXT_LITERAL_WITH_BLANKING_BOX',
'AIC_DRAUGHTING_ANNOTATION.' +
'TEXT_LITERAL_WITH_ASSOCIATED_CURVES']) = 0) )) = 0);
WR14: -- кривые текстовых констант со стилем:
(NOT (('AIC_DRAUGHTING_ANNOTATION.ANNOTATION_TEXT_OCCURRENCE'
IN TYPEOF (SELF)) AND
('AIC_DRAUGHTING_ANNOTATION.TEXT_LITERAL_WITH_ASSOCIATED_CURVES'
IN TYPEOF (SELF.item)))) OR
(SIZEOF (QUERY (crv <*
SELF.item\text_literal_with_associated_curves.
associated_curves |
NOT (SIZEOF (QUERY (si <* USEDIN (crv,
'PRESENTATION_APPEARANCE_SCHEMA.STYLED_ITEM.ITEM') |
('AIC_DRAUGHTING_ANNOTATION.ANNOTATION_CURVE_OCCURRENCE'
IN TYPEOF (si)) )) > 0) )) = 0);
WR15: -- кривые составного текста со стилем:
(NOT (('AIC_DRAUGHTING_ANNOTATlON.ANNOTATION_TEXT_OCCURRENCE'
IN TYPEOF (SELF)) AND
('AIC_DRAUGHTING_ANNOTATION.COMPOSITE_TEXT_WITH_ASSOCIATED_CURVES'
IN TYPEOF (SELF.item)))) OR
(SIZEOF (QUERY (crv <*
SELF.item\composite_text_with_associated_curves.
associated_curves |
NOT (SIZEOF (QUERY (si <* USEDIN (crv,
'PRESENTATION_APPEARANCE_SCHEMA.STYLED_ITEM.ITEM') |
('AIC_DRAUGHTING_ANNOTATION.ANNOTATION_CURVE_OCCURRENCE'
IN TYPEOF (si)) )) > 0) )) = 0);
WR16: -- стиль кривой имеет ширину:
SIZEOF (QUERY (cs <* QUERY (sty <* SELF.styles |
('AIC_DRAUGHTING_ANNOTATION.CURVE_STYLE' IN TYPEOF (sty.styles[1])))
| NOT (('AIC_DRAUGHTING_ANNOTATION.LENGTH_MEASURE_WITH_UNIT'
IN TYPEOF (cs.styles[1]\curve_style.curve_width)) AND
('MEASURE_SCHEMA.POSITIVE_LENGTH_MEASURE'
IN TYPEOF (cs.styles[1]\curve_style.
curve_width\measure_with_unit.value_component))))) = 0;
WR17: -- ограничения на ячейку заливки:
SIZEOF (QUERY (fas <* QUERY (sty <* SELF.styles |
('AIC_DRAUGHTING_ANNOTATION.FILL_AREA_STYLE'
IN TYPEOF (sty.styles[1]))) |
NOT ((SIZEOF (QUERY (fs <* fas.styles[1]\fill_area_style.fill_styles
| ('AIC_DRAUGHTING_ANNOTATION.FILL_AREA_STYLE_TILES'
IN TYPEOF (fs)))) <= 1)
AND (SIZEOF (QUERY (fst <* QUERY (fs <*
fas.styles[1]\fill_area_style.fill_styles |
('AIC_DRAUGHTING_ANNOTATION.FILL_AREA_STYLE_TILES'
IN TYPEOF (fs))) |
NOT (SIZEOF (fst\fill_area_style_tiles.tiles) = 1)
)) = 0))
)) = 0;
WR18: -- ограничения на штриховку:
SIZEOF (QUERY (fas <* QUERY (sty <* SELF.styles |
('AIC_DRAUGHTING_ANNOTATION.FILL_AREA_STYLE'
IN TYPEOF (sty.styles[1]))) |
NOT (SIZEOF (QUERY (fsh <* QUERY (fs <*
fas.styles[1]\fill_area_style.fill_styles |
('AIC_DRAUGHTING_ANNOTATION.FILL_AREA_STYLE_HATCHING'
IN TYPEOF (fs))) |
NOT (fsh\fill_area_style_hatching.point_of_reference_hatch_line :=:
fsh\fill_area_style_hatching.pattern_start) )) = 0) )) = 0;
WR19: -- ограничение на стиль текста:
SIZEOF (QUERY (ts <* QUERY (sty <* SELF.styles |
('AIC_DRAUGHTING_ANNOTATION.TEXT_STYLE'
IN TYPEOF(sty.styles[1]))) |
NOT ('AIC_DRAUGHTING_ANNOTATION.' +
'TEXT_STYLE_VVITH_BOX_CHARACTERISTICS'
IN TYPEOF (ts.styles[1])))) = 0;
WR20: -- характеристики стиля текста:
SIZEOF (QUERY (ts <* QUERY (sty <* SELF.styles |
('AIC_DRAUGHTING_ANNOTATION.TEXT_STYLE_WITH_BOX_CHARACTERISTICS'
IN TYPEOF (sty.styles[1]))) |
NOT (SIZEOF (ts.styles[1]\text_style_with_box_characteristics.
characteristics) = 4) )) = 0;
END_ENTITY;
(*
Формальные утверждения
WR1 - каждый объект draughting_annotation_occurrence, который относится к типу annotation_curve_occurrence, должен иметь точно один стиль, которым является curve_style.
WR2 - каждый объект draughting_annotation_occurrence, который относится к типу annotation_fill_area_occurrence, должен иметь точно один стиль, которым является fill_area_style.
WR3 - если объект draughting_annotation_occurrence относится к типу annotation_fill_area_occurrence, то каждая граница объекта annotation_fill_area должна быть элементом item для объекта annotation_curve_occurrence.
WR4 - каждый объект draughting_annotation_occurrence, который относится к типу annotation_symbol_occurrence, должен иметь точно один стиль, которым является либо symbol_style, либо null_style.
WR5 - если объект draughting_annotation_occurrence относится к типу annotation_symbol_occurrence, элементом которого является объект annotation_symbol, то объектом symbol_representation должен быть либо draughting_symbol_representation, либо draughting_subfigure_representation.
WR6 - каждый объект draughting_annotation_occurrence, который относится к типу annotation_text_occurrence, должен иметь точно один стиль, которым является text_style.
WR7 - если объект draughting_annotation_occurrence относится к типу annotation_text_occurrence, то его элементом должен быть либо composite_text, либо text_literal.
WR8 - если объект draughting_annotation_occurrence относится к типу annotation_text_occurrence, то в каждом объекте composite_text должны быть собраны только объекты типа text_literal.
WR9 - если объект draughting_annotation_occurrence относится к типу annotation_text_occurrence, элементом которого является text_literal, то значением элемента alignment объекта text_literal должно быть "базовая линия слева", "базовая линия по центру" или "базовая линия справа".
WR10 - если объект draughting_annotation_occurrence относится к типу annotation_text_occurrence, элементом которого является composite_text, то значением элемента alignment каждого объекта text_literal, включенного в объект composite_text, должно быть "базовая линия слева", "базовая линия по центру" или "базовая линия справа".
WR11 - если объект draughting_annotation_occurrence относится к типу annotation_text_occurrence, то все объекты text_literal должны иметь одно и то же значение элемента alignment.
WR12 - если объект draughting_annotation_occurrence относится к типу annotation_text_occurrence, то все объекты text_literal должны иметь одно и то же значение элемента font.
WR13 - если объект draughting_annotation_occurrence относится к типу annotation_text_occurrence, то все объекты composite_text не должны содержать ни объектов text_Iiteral_with_blanking_box, ни объектов text_literal_with_associated_curves.
WR14 - если объект draughting_annotation_occurrence относится к типу annotation_text_occurrence, элементом которого является объект text_literal_with_associated_curves, то каждая кривая, связанная с текстом, должна быть элементом item для объекта annotation_curve_occurrence.
WR15 - если объект draughting_annotation_occurrence относится к типу annotation_text_occurrence, элементом которого является объект composite_text_with_associated_curves, то каждая кривая, связанная с текстом, должна быть элементом item для объекта annotation_curve_occurrence.
WR16 - если стилем объекта draughting_annotation_occurrence является curve_style, то этот стиль должен определять единицы измерения, связанные с его элементом curve_width.
WR17 - если стилем объекта draughting_annotation_occurrence является fill_area_style, то этот стиль должен содержать в наборе элементов fill_styles не более одного элемента fill_area_style_tiles, а сам элемент fill_area_style_tiles должен содержать точно одну ячейку заливки.
WR18 - если стилем объекта draughting_annotation_occurrence является fill_area_style, то для каждого объекта fill_area_style_hatching из множества объектов fill_styles тип объекта point_of_reference_hatch_line должен быть таким же, как тип объекта pattern_start.
WR19 - если стилем объекта draughting_annotation_occurrence является text_style, то этот стиль должен относиться к типу text_style_with_box_characteristics.
WR20 - если стилем объекта draughting_annotation_occurrence является text_style_with_box_characteristics, то этот стиль должен иметь ровно четыре элемента в наборе элементов characteristics.
4.2.3 Объект draughting_subfigure_representation относится к типу symbol_representation. В нем собираются объекты annotation_occurrence для формирования определения элемента рисунка.
EXPRESS-спецификация
*)
ENTITY draughting_subfigure_representation
SUBTYPE OF (symbol_representation);
WHERE
WR1: SIZEOF (QUERY (item <* SELF\representation.items |
NOT (SIZEOF ('AIC_DRAUGHTING_ANNOTATION.ANNOTATION_OCCURRENCE',
'AIC_DRAUGHTING_ANNOTATION.DRAUGHTING_CALLOUT',
'GEOMETRY_SCHEMA.AXIS2_PLACEMENT']
*TYPEOF (item)) = 1))) = 0;
WR2: SIZEOF (QUERY (item <* SELF\representation.items |
SIZEOF (['AIC_DRAUGHTING_ANNOTATION.ANNOTATION_OCCURRENCE',
'AIC_DRAUGHTING_ANNOTATION.DRAUGHTING_CALLOUT']*
TYPEOF (item)) = 1)) >= 1;
WR3: SIZEOF (QUERY (srm <* QUERY (rm <*
USEDIN (SELF, 'REPRESENTATION_SCHEMA.' +
'REPRESENTATION_MAP.MAPPED_REPRESENTATION') |
('AIC_DRAUGHTING_ANNOTATION.SYMBOL_REPRESENTATION_MAP'
IN TYPEOF(rm))) |
NOT (SIZEOF (QUERY (a_s <* QUERY (mi <* srm.map_usage |
('AIC_DRAUGHTING_ANNOTATION.ANNOTATION_SYMBOL' IN TYPEOF(mi)))
| NOT (SIZEOF (QUERY (aso <*
USEDIN (a_s, 'PRESENTATION_APPEARANCE_SCHEMA.' +
'STYLED_ITEM.ITEM') |
NOT ('AIC_DRAUGHTING_ANNOTATION.ANNOTATION_SUBFIGURE_OCCURRENCE'
IN TYPEOF(aso)))) = 0))) = 0))) > 0;
WR4: NOT (acyclic_mapped_item_usage (SELF));
WR5: SIZEOF (SELF.context_of_items.representations_in_context) = 1;
END_ENTITY;
(*
Формальные утверждения
WR1 - элементами items объекта draughting_subfigure_representation должны быть объекты annotation_occurrence, draughting_callout или axis2_placement.
WR2 - по крайней мере одним из элементов items объекта draughting_subfigure_representation должен быть объект annotation_occurrence или draughting_callout.
WR3 - объект draughting_subfigure_representation должен быть определением, по крайней мере, одного объекта annotation_subfigure_occurrence.
WR4 - объект draughting_subfigure_representation не должен быть источником какого-либо объекта mapped_item, который задействован в его определении.
WR5 - объект representation_context объекта draughting_subfigure_representation не должен быть контекстом какого-либо другого объекта representation.
4.2.4 Объект draughting_symbol_representation относится к типу symbol_representation. В нем собираются объекты annotation_curve_occurence, annotation_symbol_occurrence, annotation_text_occurrence и annotation_fill_area_occurrence для формирования определения символа.
EXPRESS-спецификация
*)
ENTITY draughting_symbol_representation
SUBTYPE of (symbol_representation);
UNIQUE
UR1: SELF\representation.name;
WHERE
WR1:
SIZEOF (QUERY (item <* SELF\representation.items |
NOT (SIZEOF (TYPEOF (item) *
['AIC_DRAUGHTING_ANNOTATION.ANNOTATION_CURVE_OCCURRENCE',
'AIC_DRAUGHTING_ANNOTATION.ANNOTATION_SYMBOL_OCCURRENCE',
'AIC_DRAUGHTING_ANNOTATION.ANNOTATION_FILL_AREA_OCCURRENCE',
'AIC_DRAUGHTING_ANNOTATION.ANNOTATION_TEXT_OCCURRENCE',
'GEOMETRY_SCHEMA.AXIS2_PLACEMENT']) = 1)
)) = 0;
WR2:
SIZEOF (QUERY (item <* SELF\representation.items |
(SIZEOF (TYPEOF (item) *
['AIC_DRAUGHTING_ANNOTATION.ANNOTATION_CURVE_OCCURRENCE',
'AIC_DRAUGHTING_ANNOTATION.ANNOTATION_SYMBOL_OCCURRENCE',
'AIC_DRAUGHTING_ANNOTATION.ANNOTATION_FILL_AREA_OCCURRENCE',
'AIC_DRAUGHTING_ANNOTATION.ANNOTATION_TEXT_OCCURRENCE']) = 1)
))> = 1;
WR3:
SIZEOF (QUERY (item <* SELF\representation.items |
'AIC_DRAUGHTING_ANNOTATION.ANNOTATION_SUBFIGURE_OCCURRENCE'
IN TYPEOF (item))) = 0;
WR4:
SIZEOF (QUERY (srm <* QUERY (rm <*
USEDIN (SELF, 'REPRESENTATION_SCHEMA.' +
'REPRESENTATION_MAP.MAPPED_REPRESENTATION') |
('REPRESENTATION_SCHEMA.SYMBOL_REPRESENTATION_MAP'
IN TYPEOF(rm))) |
NOT (SIZEOF (QUERY (a_s <* QUERY (mi <* srm.map_usage |
('AIC_DRAUGHTING_ANNOTATION.ANNOTATION_SYMBOL' IN TYPEOF(mi))) |
NOT (SIZEOF (QUERY(aso <*
USEDIN (a_s, 'PRESENTATION_APPEARANCE_SCHEMA.' +
'STYLED_ITEM.ITEM') |
NOT ('AIC_DRAUGHTING_ANNOTATION.ANNOTATION_SYMBOL_OCCURRENCE'
IN TYPEOF(aso))
)) = 0) )) = 0) )) > 0;
WR5:
NOT (acyclic_mapped_item_usage (SELF));
WR6:
SIZEOF (SELF.context__of_items.representations_in_context) = 1;
END_ENTITY;
(*
Формальные утверждения
UR1 - наименование объекта draughting_symbol_representation должно быть уникальным.
WR1 - элементы items объекта draughting_symbol_representation должны быть объектами annotation_curve_occurrence, annotation_text_occurrence, annotation_symbol_occurrence, annotation_fill_area_occurrence или axis2_placement.
WR2 - по крайней мере один из элементов items объекта draughting_symbol_representation должен быть объектом annotation_curve_occurrence, annotation_text_occurrence, annotation_symbol_occurrence или annotation_fill_area_occurrence.
WR3 - элементы items объекта draughting_symbol_representation не должны быть объектами annotation_subfigure_occurrence.
WR4 - объект draughting_symbol_representation должен быть определением, по крайней мере, одного объекта annotation_symbol_occurrence.
WR5 - никакой объект draughting_symbol_representation не должен быть источником какого-либо объекта mapped_item, который задействован в его определении.
WR6 - объект representation_context из объекта draughting_symbol_representation не должен быть контекстом какого-либо другого объекта representation.
4.2.5 Объект draughting_text_literal_with_delineation относится к типу text_literal. Он определяет ограничение текста линиями как сверху, так и снизу.
EXPRESS-спецификация
*)
ENTITY draughting_text_literal_with_delineation
SUBTYPE OF (text_literal_with_delineation);
WHERE
WR1: SELF.delineation IN ['underline', 'overline'];
END_ENTITY;
(*
Формальное утверждение
WR1 - каждый объект draughting_text_literal_with_delineation должен иметь ограничение линиями либо снизу ('underline'), либо сверху ('overline').
4.3 Определения функций схемы aic_draughting_annotation
4.3.1 Булева функция acyclic_mapped_item_usage возвращает значение "истина", если заданный объект representation содержит один или более объектов mapped_item, которые являются отображением самого объекта representation.
EXPRESS-спецификация
*)
FUNCTION acyclic_mapped_item_usage (rep: representation) : BOOLEAN;
-- возвращает значение "ИСТИНА", если объект representation содержит один или более
-- объектов mapped_item, которые являются отображением самого объекта representation
LOCAL
items : SET OF representation_item;
END_LOCAL;
items := QUERY (item <* rep.items |
'AIC_DRAUGHTING_ANNOTATION.MAPPED_ITEM' IN TYPEOF (item));
IF SIZEOF (items) = 0
THEN
RETURN (FALSE);
ELSE
REPEAT i := 1 TO HIINDEX (items);
IF items[i]\mapped_item.mapping_source.mapped_representation :=: rep
THEN
RETURN (TRUE);
ELSE
RETURN (acyclic_mapped_item_usage(items[i]\
mapped_item.mapping_source.mapped_representation));
END_IF;
END_REPEAT;
RETURN (FALSE);
END_IF;
END_FUNCTION;
(*
Определение аргумента
rep - заданный объект representation, который должен быть проверен.
4.3.2 Булева функция check_text_alignment возвращает значение "истина", если заданный объект composite_text имеет общее значение элемента alignment для каждого объекта text_literal, содержащегося в наборе объектов collected_text.
EXPRESS-спецификация
*)
FUNCTION check_text_alignment (ct : composite_text) : BOOLEAN;
LOCAL
a : SET OF text_alignment := [];
END_LOCAL;
-- создание набора из всех элементов alignment
REPEAT i := 1 ТО HIINDEX (ct.collected_text);
a := a + [ct.collected_text[i]\text_literal.alignment];
END_REPEAT;
-- если набор содержит более одного элемента,
-- то не все элементы alignment одинаковы
RETURN (SIZEOF(a) = 1);
END_FUNCTION;
(*
Определение аргумента
ct - заданный объект composite_text, который должен быть проверен.
Примечание - Хотя ссылка на группу не существует, ссылка на атрибут "ct.collected_text" в функции check_text_alignment корректна, т.к. параметр "ct" имеет тип composite_text, a "collected_text" является атрибутом этого типа.
4.3.3 Булева функция check_text_font возвращает значение "истина", если заданный объект composite_text имеет общее значение элемента font для каждого объекта text_literal, содержащегося в наборе объектов collected_text.
EXPRESS-спецификация
*)
FUNCTION check_text_font (ct : composite_text) : BOOLEAN;
LOCAL
f : SET OF font_select := [];
END_LOCAL;
-- построение набора из всех элементов font
REPEAT i := 1 ТО HIINDEX (ct.collected_text);
f := f + [ct.collected_text[i]\text_literal.font];
END_REPEAT;
-- если набор содержит более одного элемента,
-- то не все элементы fonts одинаковы
RETURN (SIZEOF(f) <= 1);
END_FUNCTION;
(*
Примечание - Хотя ссылка на группу не существует, ссылка на атрибут "ct.collected_text" в функции check_text_font корректна, так как параметр "ct" имеет тип composite_text, a "collected_text" является атрибутом этого типа.
Определение аргумента
ct - заданный объект composite_text, который должен быть проверен.
*)
END_SCHEMA; -- aic_draughting_annotation
(*
Приложение А
(обязательное)
Сокращенные наименования объектов
Сокращенные наименования объектов, установленных в настоящем стандарте, приведены в таблице А.1. Требования к использованию сокращенных наименований содержатся в методах реализации, описанных в соответствующих стандартах комплекса ИСО 10303.
Таблица А.1 - Сокращенные наименования объектов
Полное наименование объекта |
Сокращенное наименование |
ANNOTATION_SUBFIGURE_OCCURRENCE |
ANSBOC |
DRAUGHTING_ANNOTATION_OCCURRENCE |
DRANOC |
DRAUGHTING_SUBFIGURE_REPRESENTATION |
DRSBRP |
DRAUGHTING_SYMBOL_REPRESENTATION |
DRSYRP |
Приложение В
(обязательное)
Регистрация информационного объекта
B.1 Обозначение документа
Для обеспечения однозначного обозначения информационного объекта в открытой системе настоящему стандарту присвоен следующий идентификатор объекта:
{ iso standard 10303 part(504) version(1) }
Смысл данного обозначения установлен в ИСО/МЭК 8824-1 и описан в ИСО 10303-1.
В.2 Обозначение схемы
Для обеспечения однозначного обозначения в открытой системе схеме aic_draughting_annotation (см. раздел 4) присвоен следующий идентификатор объекта:
{ iso standard 10303 part(504) version(1) object(1) aic-draughting-annotation (1) }
Смысл данного обозначения установлен в ИСО/МЭК 8824-1 и описан в ИСО 10303-1.
Приложение С
(справочное)
EXPRESS-G диаграммы
EXPRESS диаграммы, представленные на рисунках С.1-С.13, получены из сокращенного листинга, приведенного в разделе 4, с использованием спецификаций интерфейса стандарта ИСО 10303-11. В диаграммах использована графическая нотация EXPRESS-G языка EXPRESS. Описание EXPRESS-G установлено в ИСО 10303-11, приложение D.
Рисунок С.1 - Расширенный листинг ПИК - EXPRESS-G диаграмма 1 из 13
Рисунок С.2 - Расширенный листинг ПИК - EXPRESS-G диаграмма 2 из 13
Рисунок С.З - Расширенный листинг ПИК - EXPRESS-G диаграмма 3 из 13
Рисунок С.4 - Расширенный листинг ПИК - EXPRESS-G диаграмма 4 из 13
Рисунок С.5 - Расширенный листинг ПИК - EXPRESS-G диаграмма 5 из 13
Рисунок С.6 - Расширенный листинг ПИК - EXPRESS-G диаграмма 6 из 13
Рисунок С.7 - Расширенный листинг ПИК - EXPRESS-G диаграмма 7 из 13
Рисунок С.8 - Расширенный листинг ПИК - EXPRESS-G диаграмма 8 из 13
Рисунок С.9 - Расширенный листинг ПИК - EXPRESS-G диаграмма 9 из 13
Рисунок С.10 - Расширенный листинг ПИК - EXPRESS-G диаграмма 10 из 13
Рисунок С.11 - Расширенный листинг ПИК - EXPRESS-G диаграмма 11 из 13
Рисунок С.12 - Расширенный листинг ПИК - EXPRESS-G диаграмма 12 из 13
Рисунок С.13 - Расширенный листинг ПИК - EXPRESS-G диаграмма 13 из 13
Примечание - Выбранные типы curve_on_surface, founded_item_select, geometric_set_select, measure_value, reversible_topology, reversible_topology_item, transformation, trimming_select, vector_or_direction импортируются в расширенный листинг ПИК в соответствии с правилами неявных интерфейсов по ИСО 10303-11. В настоящем стандарте другие объекты не ссылаются на эти выбранные типы.
Приложение D
(справочное)
Машинно-интерпретируемые листинги
В данном приложении приведены ссылки на сайты, на которых находятся листинги наименований объектов на языке EXPRESS и соответствующих сокращенных наименований, установленных в настоящем стандарте. На этих же сайтах находятся листинги всех EXPRESS-схем, установленных в настоящем стандарте без комментариев и другого поясняющего текста. Эти листинги доступны в машинно-интерпретируемой форме и могут быть получены по следующим адресам URL:
Сокращенные наименования: http://www.mel.nist.gov/div826/subject/apde/snr/
EXPRESS: http://www.mel.nist.gov/step/parts/part504/is/
При невозможности доступа к этим сайтам необходимо обратиться в центральный секретариат ИСО или непосредственно в секретариат ИСО ТК184/ПК4 по адресу электронной почты: [email protected].
Примечание - Информация, представленная в машинно-интерпретированном виде на указанных выше URL, является справочной. Обязательным является текст настоящего стандарта.
Приложение Е
(справочное)
Сведения о соответствии национальных стандартов Российской Федерации
ссылочным международным стандартам
Таблица Е.1
Обозначение ссылочного международного стандарта |
Обозначение и наименование соответствующего национального стандарта |
ИСО/МЭК 8824-1:1995 |
ГОСТ Р ИСО/МЭК 8824-1-2001 Информационная технология. Абстрактная синтаксическая нотация версии один (АСН.1). Часть 1. Спецификация основной нотации |
ИСО 10209-1:1992 |
* |
ИСО 10303-1:1994 |
|
ИСО 10303-11:1994 |
|
ИСО 10303-41:1994 |
ГОСТ Р ИСО 10303-41-99 Системы автоматизации производства и их интеграция. Представление данных об изделии и обмен этими данными. Часть 41. Интегрированные обобщенные ресурсы. Основы описания и поддержки изделий |
ИСО 10303-42:1994 |
* |
ИСО 10303-43:1994 |
|
ИСО 10303-46:1994 |
|
ИСО 10303-101:1994 |
* |
ИСО 10303-202:1996 |
* |
* Соответствующий национальный стандарт отсутствует. До его утверждения рекомендуется использовать перевод на русский язык данного международного стандарта. Перевод данного международного стандарта находится в Федеральном информационном фонде технических регламентов и стандартов. |