ГОСТ Р ИСО 13584-101-2010 Системы промышленной автоматизации и интеграция. Библиотека деталей. Часть 101. Протокол обмена геометрическими представлениями по параметрической программе

Обложка ГОСТ Р ИСО 13584-101-2010 Системы промышленной автоматизации и интеграция. Библиотека деталей. Часть 101. Протокол обмена геометрическими представлениями по параметрической программе
Обозначение
ГОСТ Р ИСО 13584-101-2010
Наименование
Системы промышленной автоматизации и интеграция. Библиотека деталей. Часть 101. Протокол обмена геометрическими представлениями по параметрической программе
Статус
Действует
Дата введения
2011.01.09
Дата отмены
-
Заменен на
-
Код ОКС
25.040.40

ГОСТ Р ИСО 13584-101-2010

Группа Т58



НАЦИОНАЛЬНЫЙ СТАНДАРТ РОССИЙСКОЙ ФЕДЕРАЦИИ

Системы промышленной автоматизации и интеграция

БИБЛИОТЕКА ДЕТАЛЕЙ

Часть 101

Протокол обмена геометрическими представлениями по параметрической программе

Industrial automation system and integration. Parts library. Part 101. Geometric view exchange protocol by parametric program

ОКС 25.040.40

Дата введения 2011-09-01



Предисловие

Цели и принципы стандартизации в Российской Федерации установлены Федеральным законом от 27 декабря 2002 г. N 184-ФЗ "О техническом регулировании", а правила применения национальных стандартов Российской Федерации - ГОСТ Р 1.0-2004 "Стандартизация в Российской Федерации. Основные положения"

Сведения о стандарте

1 ПОДГОТОВЛЕН Научно-техническим центром "ИНТЕК" на основе собственного аутентичного перевода на русский язык стандарта, указанного в пункте 4

2 ВНЕСЕН Техническим комитетом по стандартизации ТК 100 "Стратегический и инновационный менеджмент"

3 УТВЕРЖДЕН И ВВЕДЕН В ДЕЙСТВИЕ Приказом Федерального агентства по техническому регулированию и метрологии от 21 декабря 2010 г. N 872-ст

4 Настоящий стандарт идентичен международному стандарту ИСО 13584-101:2003* "Системы промышленной автоматизации и интеграция. Библиотека деталей. Часть 101. Протокол обмена геометрическими представлениями по параметрической программе" (ISO 13584-101:2003 "Industrial automation system and integration - Parts library - Part 101: Geometric view exchange protocol by parametric program").

________________

* Доступ к международным и зарубежным документам, упомянутым в тексте, можно получить, обратившись в Службу поддержки пользователей. - .

При применении настоящего стандарта рекомендуется использовать вместо ссылочных международных стандартов соответствующие им национальные стандарты Российской Федерации, сведения о которых приведены в дополнительном приложении ДА

5 ВВЕДЕН ВПЕРВЫЕ

Информация об изменениях к настоящему стандарту публикуется в ежегодно издаваемом информационном указателе "Национальные стандарты", а текст изменений и поправок - в ежемесячно издаваемых информационных указателях "Национальные стандарты". В случае пересмотра (замены) или отмены настоящего стандарта соответствующее уведомление будет опубликовано в ежемесячно издаваемом информационном указателе "Национальные стандарты". Соответствующая информация, уведомления и тексты размещаются также в информационной системе общего пользования - на официальном сайте Федерального агентства по техническому регулированию и метрологии в сети Интернет

Введение

Комплекс международных стандартов ИСО 13584 разработан с целью представления данных библиотеки деталей и обмена этими данными с использованием компьютерной интерпретации для определения механизма, способного передавать данные библиотеки деталей независимо от любого приложения, использующего информационную систему этой библиотеки.

Настоящий комплекс стандартов состоит из частей, входящих в следующие серии: концептуальные описания, логические ресурсы, ресурсы реализации, методология описаний, проверка на соответствие, протокол обмена представлениями и стандартизованное содержание. Описание серий приведено в ИСО 13584-1. Настоящий стандарт входит в серию "Протокол обмена представлениями".

Протокол обмена представлениями устанавливает, как отдельной категорией представлений данных о деталях, описанных в соответствующей библиотеке, можно обмениваться в рамках обмена библиотечными данными. Протокол устанавливает идентификацию категории представлений, средства, используемые для обмена представлениями, принадлежащими данной категории, ресурсы, которые должны быть доступны для любой реализации, подтверждающей соответствие этому протоколу обмена представлениями, а также стандартные данные, которые должны быть предоставлены любой реализацией, подтверждающей соответствие этому протоколу обмена представлениями.

Настоящий стандарт устанавливает правила обмена представлениями данных о деталях, описанных в библиотеке деталей, с помощью параметрических программ на языке программирования FORTRAN, основанных на программном интерфейсе приложений, установленном в ИСО 13584-31:1999, или при заключении отдельного соглашения между отправителем и получателем - с использованием нестандартизированных параметрических форматов.

ИСО 13584-101 подготовлен Техническим Комитетом ИСО/ТК 184 "Системы промышленной автоматизации и интеграция", Подкомитетом ПК 4 "Производственные данные".

Комплекс стандартов ИСО 13584 состоит из следующих частей, имеющих общее название "Системы промышленной автоматизации и интеграция. Библиотека деталей":

- Часть 1. Обзор и основные принципы;

- Часть 20. Логический ресурс. Логическая модель представлений;

- Часть 24. Логический ресурс. Логическая модель библиотеки поставщика;

- Часть 25. Логический ресурс. Логическая модель библиотеки поставщика;

- Часть 26. Логический ресурс. Идентификация поставщика информации;

- Часть 31. Средства реализации: интерфейс геометрического программирования;

- Часть 42. Методология описания. Методология структурирования групп деталей;

- Часть 101. Протокол обмена геометрическими представлениями по параметрической программе;

- Часть 102. Протокол обмена представлениями по спецификации соответствия ИСО 10303.

Описание структуры комплекса стандартов ИСО 13584 приведено в ИСО 13584-1. Нумерация частей ИСО 13584 отражает структуру комплекса:

- части 10-19 устанавливают требования к концептуальным описаниям;

- части 20-29 устанавливают требования к логическим ресурсам;

- части 30-39 устанавливают требования к ресурсам реализации;

- части 40-49 устанавливают методологию описания;

- части 100-199 устанавливают требования к протоколам обмена представлениями.

1 Область применения

Настоящий стандарт устанавливает категорию представлений basic_geometry (базовая геометрия), которая включает в себя общие понятия, относящиеся к форме деталей. Данная категория представлений может быть связана с любыми деталями, определенными в библиотеке деталей. Настоящий стандарт также устанавливает, как представлениями, принадлежащими этой категории, можно обмениваться в рамках обмена библиотечными данными с помощью программ на языке программирования FORTRAN, соответствующих требованиям комплекса стандартов ИСО 13584.

Настоящий стандарт распространяется на:

- определение категории представлений basic_geometry и механизмы, используемые для ссылки на нее;

- характеристики, используемые для описания отдельного представления в рамках категории представлений basic_geometry;

- формат обмена, используемый для внешних файлов библиотеки, описывающих представления basic_geometry классов деталей, описанных в библиотеке деталей с помощью программ на языке программирования FORTRAN, основанных на программном интерфейсе приложений, установленном в ИСО 13584-31;

- механизм, используемый при заключении отдельного соглашения между отправителем и получателем, для ссылки на внешние файлы, описывающие представления basic_geometry классов деталей, описанных в библиотеке деталей, посредством форматов, не установленных в ИСО 13584;

- ресурсы реализации, предоставляемые любой реализацией, подтверждающей соответствие требованиям настоящего стандарта;

- словарные статьи, поддерживаемые любой реализацией, подтверждающей соответствие требованиям настоящего стандарта;

- стандартные данные, распознанные любой реализацией, подтверждающей соответствие требованиям настоящего стандарта.

Настоящий стандарт не распространяется на:‰

- структуру и формат обмена файла доставки библиотечных данных, включающего в себя ссылки на категорию представлений, определенную в настоящем стандарте, и/или во внешних файлах библиотеки, формат которых установлен.

Примечание 1 - Структура файла доставки библиотечных данных определяется интегрированной информационной моделью библиотеки, установленной в части "Логический ресурс".

Примечание 2 - Сущность ISO 13584_f_m_iim_schema, установленная в ИСО 13584-24, является интегрированной информационной моделью библиотеки данных, определяющей структуру файла доставки библиотеки данных. Такой файл может содержать значения экземпляров, которые ссылаются на категорию представлений и/или внешние файлы библиотеки данных, определенные в настоящем стандарте.

2 Нормативные ссылки

В настоящем стандарте использованы нормативные ссылки на следующие стандарты*, которые необходимо учитывать при использовании настоящего стандарта. В случае ссылок на документы, у которых указана дата утверждения, необходимо пользоваться только указанной редакцией. В случае, когда дата утверждения не приведена, следует пользоваться последней редакцией ссылочных документов, включая любые поправки и изменения к ним.

_______________

* Таблицу соответствия национальных стандартов международным см. по ссылке. - .

ИСО/МЭК 8824-1:1998 Информационные технологии. Абстрактно-синтаксическая нотация один (АСН.1). Спецификация базовой нотации (ISO/IEC 8824-1:1998, Information technology - Abstract Syntax Notation One (ASN.1): Specification of basic notation)

ИСО/МЭК 8859-1:1998 Информационные технологии. 8-битовые однобайтовые наборы кодированных графических знаков. Часть 1. Латинский алфавит N 1 (ISO/IEC 8859-1:1998, Information technology - 8-bit single-byte coded graphic character sets - Part 1: Latin alphabet No. 1)

ИСО 10303-1:1994 Системы промышленной автоматизации и интеграция. Представление данных о продукции и обмен данными. Часть 1. Обзор и основные принципы (ISO 10303-1:1994, Industrial automation systems and integration - Product data representation and exchange - Part 1: Overview and fundamental principles)

ИСО 10303-11:1994 Системы промышленной автоматизации и интеграция. Представление данных о продукции и обмен данными. Часть 11. Методы описания: справочное руководство по языку EXPRESS (ISO 10303-11:1994, Industrial automation systems and integration - Product data representation and exchange - Part 11: Description methods: The EXPRESS language reference manual)

ИСО 10303-31:1994 Системы промышленной автоматизации и интеграция. Представление данных о продукции и обмен данными. Часть 31. Методология и основы аттестационного тестирования. Общие положения (ISO 10303-31:1994, Industrial automation systems and integration - Product data representation and exchange - Part 31: Conformance testing methodology and framework: General concepts)

ИСО 10303-42:2000 Системы промышленной автоматизации и интеграция. Представление данных о продукции и обмен данными. Часть 42. Интегрированные родовые ресурсы. Геометрическое и топологическое представление (ISO 10303-42:2000, Industrial automation systems and integration - Product data representation and exchange - Part 42: Integrated generic resources: Geometric and topological representation)

ИСО/МЭК 10646-1:2000 Информационные технологии. Универсальный многооктетный набор кодированных знаков. Часть 1. Архитектура и основная многоязычная матрица (ISO/IEC 10646-1:2000, Information technology - Universal Multiple-Octet Coded Character Set (UCS) - Part 1: Architecture and Basic Multilingual Plane)

ИСО 13584-1:2001 Системы промышленной автоматизации и интеграция. Библиотека деталей. Часть 1. Обзор и основные принципы (ISO 13584-1:2001, Industrial automation systems and integration - Parts library - Part 1: Overview and fundamental principles)

ИСО 13584-24 Системы промышленной автоматизации и интеграция. Библиотека деталей. Часть 24. Логический ресурс. Логическая модель библиотеки поставщика (ISO 13584-24, Industrial automation systems and integration - Parts library - Part 24: Logical resource: Logical model of supplier library)

ИСО 13584-26:2000 Системы промышленной автоматизации и интеграция. Библиотека деталей. Часть 26. Логический ресурс: Идентификация поставщика информации (ISO 13584-26:2000, Industrial automation systems and integration - Parts library - Part 26: Logical resource: Information supplier identification)

ИСО 13584-31:1999 Системы промышленной автоматизации и интеграция. Библиотека деталей. Часть 31. Средства реализации: интерфейс геометрического программирования (ISO 13584-31:1999, Industrial automation systems and integration - Parts library - Part 31: Implementation resources: Geometric programming interface)

ИСО 13584-42:1998 Системы промышленной автоматизации и интеграция. Библиотека деталей. Часть 42. Методология описания: методология структурирования групп деталей (ISO 13584-42:1998, Industrial automation systems and integration - Parts library - Part 42: Description methodology: Methodology for structuring parts families)

3 Термины, определения и сокращения

В настоящем стандарте использованы термины по ИСО 10303-1, ИСО 10303-11, ИСО 10303-31, ИСО 10303-42, ИСО 13584-1, ИСО 13584-24, ИСО 13584-31, ИСО 13584-42.

3.1 прикладной программный интерфейс (application programming interface, API): Набор функций, которые могут быть выполнены с помощью конкретной программы.

[ИСО 13584-24]

3.2 базовая семантическая единица (basic semantic unit): Логический объект, обеспечивающий абсолютную и однозначную идентификацию отдельных объектов в области приложений (например, классы, типы элементов данных).

[ИСО 13584-42:1998, статья 3.4.1]

3.3 привязка (binding): Описание синтаксиса, который должен использоваться в конкретном языке программирования для запуска разных функций, устанавливающих программный интерфейс приложений.

[ИСО 13584-31:1999, статья 3.2.3]

3.4 система автоматизированного проектирования (computer aided design system; CAD): Вид системы компьютерного моделирования, генерирующей данные о продукции и управляющей ими.

3.5 класс соответствия (conformance class): Подгруппа стандартов, для которых может быть подтверждено соответствие.

[ИСО 13584-24]

3.6 требование соответствия (conformance requirement): Точное текстовое определение характеристик, которые должны быть представлены в соответствующей реализации.

[ИСО 10303-1:1994, статья 2.1.14]

3.7 соответствующая реализация (conforming implementation): Реализация, удовлетворяющая требованиям соответствия, установленным одним или несколькими классами соответствия стандарта.

[ИСО 13584-24]

3.8 соответствие (conformity; conformance): Выполнение всех установленных требований.

[ИСО 10303-31:1994, статья 3.2.25]

3.9 конструктивная блочная геометрия (constructive solid geometry; CSG): Тип геометрического моделирования, в котором блок определяется как результат выполнения последовательных регулярных логических операций на блочных моделях.

[ИСО 10303-42:2000, статья 3.1.11]

3.10 экземпляр типа данных сущности (объекта) (entity (data type) instance): Блок данных, которому присвоено конкретное имя, представляющий блок информации в классе, определяемом сущностью (объектом), и входящий в область, устанавливаемую типом данных сущности (объекта).

[ИСО 10303-11:1994, статья 3.2.7]

3.11 сущность; объект (entity): Класс информации, определяемый общими характеристиками.

[ИСО 10303-11:1994, статья 3.2.5]

3.12 тип данных сущности (объекта) (entity data type): Представление сущности (объекта), тип данных которой (которого) устанавливает область значений, определяемых общими атрибутами и ограничениями.

[ИСО 10303-11:1994, статья 3.2.6]

3.13 функциональная модель детали (functional model of a part): Функциональная модель одной категории представлений данных о деталях в интегрированной библиотеке данных.

[ИСО 13584-1:2001]

Пример - Функциональная модель точно определенного винта может состоять из параметрических программ, которые могут быть использованы для генерирования разных геометрических функциональных представлений винта в базе данных системы автоматизированного проектирования (CAD).

3.14 функциональное представление детали (functional view of a part): Информационная модель одной категории представлений данных детали в данных о продукции.

[ИСО 13584-1:2001]

Пример - Структура функциональных представлений, соответствующих геометрии, не зависит от детали, представляющей эту структуру. Данная структура устанавливается как функциональный класс представлений.

3.15 реализация (implementation): Разработка программного обеспечения в заданной среде программирования.

3.16 метод реализации (implementation method): Средства, используемые компьютерами для обмена данными, описываемыми на языке спецификаций данных EXPRESS.

[ИСО 13584-24]

3.17 ресурсы реализации (implementation resources): Возможности системы программного обеспечения, которые должны быть доступными для подтверждения соответствия отдельному классу соответствия протокола обмена представлениями или протоколу обмена представлениями и интегрированной информационной модели библиотеки данных.

[ИСО 13584-24]

3.18 информационная модель (information model): Формальная модель набора фактов, понятий или инструкций, соответствующая установленному требованию.

[ИСО 10303-1:1994]

3.19 интегрированная библиотека (integrated library): Операционная система, состоящая из системы управления библиотекой, и библиотека пользователя.

[ИСО 13584-24:2003]

3.20 поставщик данных библиотеки (library data supplier): Организация, поставляющая библиотеку поставщика в стандартном формате по ИСО 13584 и несущая ответственность за ее содержание.

[ИСО 13584-1:2001]

3.21 файл доставки библиотеки (library delivery file): Совокупность экземпляров логических объектов на языке EXPRESS, соответствующих интегрированной информационной модели библиотеки и представленных с применением одного из методов реализации, установленных в ИСО 10303.

[ИСО 13584-24]

Примечание - Файл доставки библиотеки данных устанавливает структуру и содержание библиотеки поставщика и может иметь ссылки на внешние файлы библиотеки.

3.22 конечный пользователь библиотеки (library end-user): Пользователь интегрированной библиотеки. Конечный пользователь библиотеки может обсуждать данные, содержащиеся в библиотеке, выбирать необходимую деталь, делать запрос на передачу выбранного представления этой детали из системы данных библиотеки.

[ИСО 13584-1:2001]

3.23 контекст библиотечного обмена (library exchange context): Один файл доставки библиотеки данных, нулевая точка и один или несколько внешних файлов библиотеки, вместе образующие библиотеку поставщика.

[ИСО 13584-24]

3.24 внешний файл библиотеки (library external file): Файл, ссылка на который находится в файле доставки библиотеки данных, дополняющий библиотеку поставщика.

[ИСО 13584-24]

Примечание - Структура и формат внешнего файла библиотеки должны быть установлены в файле доставки библиотеки данных, который ссылается на него.

3.25 интегрированная информационная модель библиотеки (library integrated information model): Схема на языке EXPRESS, интегрирующая ресурсы, состоящая из различных схем EXPRESS для представления их в библиотеке поставщика для обмена и связанная с требованиями соответствия.

[ИСО 13584-1]

Примечание - В ИСО 13584-24 для представления разных типов библиотек поставщика установлены три интегрированные информационные модели библиотек.

3.26 система управления библиотекой (library management system, LMS): Система программного обеспечения, позволяющая пользователю использовать содержимое интегрированной библиотеки.

[ИСО 13584-1:2001]

Примечание - Система программного обеспечения не стандартизирована.

3.27 библиотека деталей (parts library): Идентифицированный набор данных и программ, которые могут генерировать информацию о наборе деталей.

[ИСО 13584-1:2001]

3.28 базовая система координат (reference coordinate system): Базовая декартова система координат, с которой связаны все элементы системы.

3.29 категория представлений (representation category): Абстракция, используемая с целью установления различия требований пользователя к представлению деталей.

[ИСО 13584-1:2001]

Примечание - В модели, установленной в ИСО 13584, различия формально выражены с использованием логических имен представлений и управляющих переменных представления.

3.30 стандартные данные (standard data): Требования к системе программного обеспечения, определяемой средствами экземпляров типов данных логической сущности на языке EXPRESS, которые поддерживаются данной системой программного обеспечения.

[ИСО 13584-24]

3.31 библиотека поставщика (supplier library): Набор данных и программ, для которых определен поставщик и которые описывают в стандартном формате, установленном в ИСО 13584, набор деталей и/или представлений данных о деталях.

[ИСО 13584-1:2001]

3.32 библиотека пользователя (user library): Информация, полученная в результате интеграции одной или нескольких библиотек системой управления библиотеками и их последующей адаптации пользователем.

[ИСО 13584-1:2001]

3.33 управляющая переменная представлений (view control variable): Переменная перечислимого типа, которая может быть связана с логическим именем представлений и предназначенная для дальнейшего установления проекций (перспектив) деталей, выбранных пользователем.

[ИСО 13584-1:2001]

Пример - Для геометрической проекции детали значения управляющих переменных представлений могут соответствовать 2D, каркасу или сплошной конструкции.

3.34 протокол обмена представлениями (view exchange protocol; VEP): Совокупность специальных правил, определяющих использование логических структур ресурсов и интерфейсы передачи представлений, соответствующих требованиям к обмену одной категории представлений данных о деталях.

[ИСО 13584-24]

3.35 логическое имя представления (view logical name): Идентификатор категории представлений, соответствующий перспективе/проекции, которая может быть использована пользователем в отношении деталей.

[ИСО 13584-1:2001]

Пример - Идентификаторами могут быть геометрия, инерция, кинематика и т.д.

В настоящем стандарте применены следующие сокращения:

- 2D - двумерная геометрия;

- 3D - трехмерная геометрия;

- API - прикладной программный интерфейс;

- CAD - система автоматизированного проектирования;

- CGS - конструктивная блочная геометрия.

4 Идентификация категории представлений basic_geometry

4.1 Понятия

При выборе детали из библиотеки рекомендуется получить доступ к форме этой детали. Форма детали является общим понятием, которое может быть представлено с разными уровнями полноты и детализации. Необходимый уровень пользователь может установить самостоятельно, независимо от библиотечных деталей путем задания требований, которым должен соответствовать каждый уровень. Для этого в настоящем стандарте установлены:

- отдельная категория представлений basic_geometry, которая предусматривает общую концепцию формы библиотечных деталей;

- пять управляющих переменных представлений, используемых для описания концептуальных требований, которые должны выполняться каждой формой, связанной с одной библиотечной деталью;

- формат обмена категорией представлений basic_geometry, на которую дают ссылку из описания ее библиотеки и которая содержит программы на языке программирования FORTRAN, основанные на стандартном API по ИСО 13584-31;

- общий механизм обмена, который может быть использован при заключении соответствующего соглашения между отправителем и получателем и который предоставляет описание библиотеки этой категории представлений с использованием нестандартизированных параметрических форматов.

4.2 Стандартизированные словарные статьи

Информационная модель категории представлений basic_geometry должна определяться стандартными данными, которые включают в себя экземпляр типа данных сущности (объекта) функционального класса представлений. Такой функциональный класс представлений вводится экземпляром типа данных сущности functional_view_class.

Примечание 1 - Требования к функциональному представлению детали приведены в ИСО 13584-1, а к типу данных сущности (объекта) functional_view_class на языке EXPRESS - в ИСО 13584-24.

Пример - Информационная модель категории представлений basic_geometry может быть определена на языке EXPRESS с помощью атрибутов "уровень геометрии" и "содержание", являющихся представлением ИСО 10303-43. Описание может быть следующим:

ENTITY basic_geometry;

level: geometry_level_type;

content: representation;

END_ENTITY;

С использованием логических структур ресурсов на языке EXPRESS, установленных в ИСО 13584-24, эта информационная модель также может быть определена и обменена как экземпляр типа данных сущности functional_view_class:

#1 = FUNCTIONAL_VIEW_CLASS(..., 'basic_geometry', (#10, ...), (#11));

#10 = PROPERTY_BSU ('level',...); /* a view control variable */

#11 = PROPERTY_BSU ('content',...); /* a view property */

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

Правила универсальной идентификации функционального класса представлений basic_geometry с использованием средств базовой семантической единицы приведены в 4.2.1. Требования к универсальной идентификации управляющих переменных представления, предназначенных для этого функционального класса представлений вместе с их областями значений, приведены в 4.2.2. Экземпляр functional_view_class категории представлений ISO 10303_rep не должен содержать объекта view_properties. Атрибута its_superclass этого экземпляра не существует, т.е. соответствующий функциональный класс представлений не имеет родительского объекта.

Примечание 2 - Объект view_properties является атрибутом сущности (объекта) functional_view_class, установленным в ИСО 13584-24. Сущность its_superclass является атрибутом сущности class, установленным в ИСО 13584-42.

4.2.1 Логическое имя представления

Базовая семантическая единица, идентифицирующая функциональный класс представлений, охватывающий категорию представлений, определенную в настоящем стандарте, включает в себя атрибуты, приведенные в таблице 1.

Таблица 1 - Описание логических имен представлений

class_code

class_version

supplier_code

'basic_geometry'

'001'

'0112/1 ///13584_101_1'

Данная информация обеспечивает универсальную идентификацию категории представлений basic_geometry и определяет логическое имя ее представлений.

Примечание - Согласно D.3.3.4 и D.3.4.1 приложения D ИСО 13584-42 необходимо, чтобы код поставщика, установленный в ИСО 13584-26, использовался для обмена данными в ИСО 13584.

4.2.2 Управляющие переменные представлений

Функциональный класс представлений характеризуют с использованием управляющих переменных представлений, универсальная идентификация которых и соответствующие типы данных указаны в таблице 2 и на рисунке 1.

Таблица 2 - Управляющие переменные представлений функционального класса представлений basic_geometry

Код

Версия

Значение

Соответствующая метка

'geometry_level'

'001'

1

'2D'

2

'wireframe'

'detail_level'

'001'

1

'simplified'

2

"standard'

'side'

'001'

0

'null'

1

"front'

2

"rear'

3

"right'

'variant'

'001'

0

'null'

1

'external_shape'

2

'section'

'unreg_variant'

'001'

0

1 ...n

'null' в зависимости от поставщика данных


Рисунок 1 - Значение управляющей переменной представления стороны

Примечание - Значение управляющей переменной представления стороны (side) должно быть равно 0, если управляющая переменная уровня геометрии определяет трехмерное представление. Данное ограничение на соответствующие управляющие переменные view_control_variable_ranges формально представлено в объекте ISO 13584_101_side_and_geometry_level_compatibility_rule, включенном в схему на языке EXPRESS согласно 6.3.2.1.

4.3 Правила для форм, представленных в категории представлений basic_geometry

В этом подразделе установлены концептуальные требования, которым должна соответствовать каждая форма, связанная с библиотечной деталью.

4.3.1 Уровни геометрии

Уровень геометрии 1 соответствует двумерному геометрическому представлению, которое может быть определено по API ИСО 13584-31. Данный уровень геометрии определяет форму двумерного представления, которая состоит из точек, линий, кривых и контуров, которые могут быть непрозрачными.

Уровень геометрии 2 соответствует трехмерному представлению каркаса, которое может быть определено по API ИСО 13584-31. Данный уровень геометрии определяет форму трехмерного представления, которая состоит из точек, линий и кривых, края которых устанавливают форму.

Уровень геометрии 3 соответствует трехмерному представлению, которое может быть определено по API ИСО 13584-31. Данная геометрия определяет представление формы, которая состоит из точек, линий, кривых и сплошных конструкций.

4.3.2 Уровни деталей

Уровень деталей 1 устанавливает, что представление должно включать в себя, как минимум, указание базовой системы координат библиотечной детали.

Уровень деталей 2 устанавливает, что представление должно включать в себя, как минимум, все геометрические элементы, необходимые для определения пространственной связи между библиотечной деталью и средой, в которой деталь должна быть установлена.

Уровень деталей 3 устанавливает, что представление должно включать в себя, как минимум, все его геометрические элементы, предусмотренные для обнаружения перекрытий (в двумерном представлении) или столкновений (в трехмерном представлении), и должно быть предусмотрено представление, которое используют при проектировании деталей соответствующего изделия.

4.3.3 Сторона

На рисунке 1 показано значение управляющей переменной представления стороны и ее связи с объектом geometric_representation_context библиотечной детали.

На этом рисунке показано, как определяется сторона в соответствии с базовой системой координат библиотечной детали.

4.3.4 Варианты

Вариант 0 устанавливает, что незарегистрированный вариант определен.

Примечание - Требования к незарегистрированному варианту приведены в 4.3.5.

Вариант 1 устанавливает, что представленная форма является внешней формой библиотечной детали.

Вариант 2 устанавливает, что представленная форма включает в себя, как минимум, поперечное сечение.

Варианты 3...n: устанавливают, что данные уровни варианта зарезервированы для использования в будущем.

Примечание - В разных классах соответствия, установленных в настоящем стандарте при определении сущности (объекта) view_control_variable_range варианта стандартизированного геометрического представления, вариант 1 является обязательным. Это ограничение формально установлено в сущности ISO13584_101_variant_and_unregistered_variant_compatibility_rule, включенной в схему на языке EXPRESS согласно 6.3.2.2.

4.3.5 Незарегистрированный вариант

Незарегистрированный вариант 0 устанавливает, что стандартизированный вариант определен.

Незарегистрированный вариант 1 устанавливает поставщика данных библиотеки в зависимости от уровня варианта.

Примечание - В разных классах соответствия, определенных в настоящем стандарте, вариант 0 и незарегистрированный вариант 0 являются взаимоисключающими вариантами. Это ограничение формально выражается на уровне соответствующей сущности view_control_variable_ranges в сущности ISО 13584_101_variant_and_unregistered_variant_compatibility_rule, включенной в схему на языке EXPRESS согласно 6.3.2.2.

5 Формат обмена

В этом разделе установлены требования к внешним файлам библиотеки, совместимым с классами соответствия 1, 2 и 3, соответствующим требованиям настоящего стандарта. Структуру и формат внешних файлов библиотеки, совместимых с классами соответствия 1Е, 2Е и 3Е, устанавливают путем заключения соответствующего соглашения между отправителем и получателем. В соглашении должны быть установлены значения атрибутов экземпляра сущности program_protocol, которую используют для описания структуры и формата.

5.1 Имя подпрограммы на языке программирования FORTRAN

Программный блок (модуль) на языке FORTRAN должен быть ПОДПРОГРАММОЙ.

Примечание - Программный блок на языке FORTRAN может не быть ПРОГРАММОЙ или ФУНКЦИЕЙ.

Имя программного блока на языке FORTRAN должно иметь следующую структуру:

'F' + encoded_supplier_code + '_' + <program_name>

Код encoded_supplier_code должен быть кодом поставщика данных библиотеки согласно ИСО 13584-26, к которому применяют функцию кодирования. Функция encode предназначена для замены каждого знака, который не разрешается использовать в именах на языке программирования FORTRAN, соответствующим кодированным знаком, который соответствует знаку "_" последовательности, за которым следует код знака (состоящий из двух знаков), в соответствии с набором знаков ИСО/МЭК 10646-1. Кроме того, если кодируемым знаком является знак "_", то и в результате будет "_".

encoded_supplier_code кодируется с использованием следующей функции кодирования:

*)

FUNCTION encode(s: STRING): STRING;

LOCAL

strtmp: STRING;

lower_cases: LIST OF STRING :=

['a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j' ,'k', 'l', 'm', 'n', 'o', 'p', 'q', 'r', 's', 't', 'u', 'v', 'w', 'x', 'y', 'z'];

upper_cases: LIST OF STRING :=

['A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'J' ,'K', 'L', 'M', 'N', 'O', 'P', 'Q', 'R', 'S', 'T', 'U', 'V', 'W', 'X', 'Y', 'Z'];

numerals: LIST OF STRING :=

['0','1', '2', '3', '4', '5', '6', '7', '8', '9'];

underscore: STRING :='_';

allowed_characters: LIST OF STRING :=

lower_cases + upper_cases + numerals + underscore;

result: STRING:=";

END_LOCAL;

REPEAT i := 1 TO LENGTH(s);

IF NOT(s[i] IN allowed_characters)

THEN

strtmp := FORMAT(icode(s[i]), '02I');

result := result + '_' + strtmp;

ELSE

IF (s[i] = '_')

THEN

result := result + '_' + s[i];

ELSE

result:= result + s[i];

END_IF;

END_IF;

END_REPEAT;

RETURN (result);

END_FUNCTION;

(*

Примечание 1 - Функция icode возвращает код знаков по ИСО 10646-1, интерпретируемых как целое значение.

Примечание 2 - Функция icode не установлена в языке EXPRESS, поскольку ограничения языка EXPRESS могут привести к тому, что такая функция будет очень длинной.

Пример - Код поставщика 0112/1///13584_101_1 кодируют как 0112_2F1_2F_2F_2F13584_101_1. '2F', и он соответствует коду знака 'f' в наборе знаков по ИСО/МЭК 10646-1.

Поставщик данных библиотеки должен использовать код поставщика, который отображается строкой длины, равной 31 знаку или меньше.

Примечание 3 - Размер строки, получающийся в результате кодирования, может превышать допустимую длину строки для определения имени FORTRAN SUBROUTINE (ограниченную 31 знаком). Поэтому поставщик данных библиотеки должен зарегистрировать новый код поставщика для создания имени FORTRAN SUBROUTINE.

5.2 Ограничения языка программирования FORTRAN

5.2.1 Исключенные операторы

На языке программирования FORTRAN не допускается использование следующих операторов:

- BACKSPACE,

- BLOCK DATA,

- CLOSE,

- COMMON,

- DATA,

- ENDFILE,

- ENTRY,

- EQUIVALENCE,

- FORMAT,

- INQUIRE,

- OPEN,

- PROGRAM,

- READ,

- REWIND,

- SAVE,

- STOP,

- WRITE.

Примечание - Программные блоки на языке FORTRAN в библиотеке деталей предназначены для прогона программ в разных средах с использованием разных систем CAD и разных операционных методов. Для обеспечения максимальной мобильности этих программ не допускается использовать вышеуказанные операторы.

Пример - Компиляция, привязка, интерпретация и трансляция являются операционными методами.

5.2.2 Устаревшие функции

Следующие функции языка программирования FORTRAN не допускается использовать при создании новых программ, так как они являются устаревшими:

- Arithmetic-IF,

- Alternate return from subroutine,

- ASSIGN,

- Assigned FORMAT specifier,

- Assigned GOTO,

- DO loop control variables that are not integers,

- DO loop not ending on CONTINUE,

- Branch to END IF from outside IF block,

- H edit descriptor,

- PAUSE.

Примечание - На настоящий момент эти функции используют, но в следующем издании ИСО 1539 они будут исключены.

5.2.3 Обмен программными блоками на языке программирования FORTRAN

В одном внешнем файле библиотеки должна содержаться только одна подпрограмма на языке программирования FORTRAN (FORTRAN SUBROUTINE), которую используют для создания представления библиотечной детали. Дополнительные подпрограммы, вызываемые из подпрограммы (SUBROUTINE), могут находиться в том же внешнем файле библиотеки.

5.2.4 Кодирование знаков

Внешний файл библиотеки должен содержать 26 прописных и строчных букв английского алфавита, 10 арабских цифр (0-9), символ подчеркивания "_" и специальные символы, указанные в таблице 3, закодированные в соответствии с требованиями ИСО 8859-1.

Таблица 3 - Специальные знаки языка программирования FORTRAN

Знак

Название

=

Равно

+

Плюс

-

Дефис; минус

*

Звездочка

/

Косая черта

(

Левая круглая скобка

)

Правая круглая скобка

,

Запятая

.

Точка

$

Доллар

'

Апостроф

:

Двоеточие

Пробел

!

Восклицательный знак

"

Кавычки

%

Процент

&

Амперсанд

;

Точка с запятой

<

Меньше чем

>

Больше чем

?

Вопросительный знак

5.3 Состояние программы

Подпрограмма на языке программирования FORTRAN должна быть в исходном или объектном коде, если соответствующий экземпляр типа данных сущности library является сущностью типа данных library_in_standard_format.

Примечание - library и library_in_standard_format определены в ИСО 13584-24.

6 Требования соответствия

Настоящий стандарт устанавливает шесть классов соответствия.

Для классов соответствия 1-3 формат внешних файлов должен соответствовать требованиям раздела 5. Для классов соответствия 1Е-3Е формат внешних файлов устанавливают путем заключения отдельного соглашения между отправителем и получателем.

Реализация, подтверждающая соответствие классу соответствия по настоящему стандарту, должна поддерживать словарные статьи, указанные в разделе 4, а также должна идентифицировать любые данные, удовлетворяющие ограничениям, установленным в 6.3.

Реализация, подтверждающая соответствие классу соответствия 1, 2 или 3, также должна включать в себя ресурсы реализации, установленные в 6.1, и должна обрабатывать внешние файлы, совместимые с требованиями раздела 5.

Реализация, подтверждающая соответствие классу соответствия 1Е, 2Е или 3Е, также должна обрабатывать внешние файлы, связанные с сущностью program_protocol, которая поддерживается реализацией.

Примечание - Требования к сущности program_protocol установлены в ИСО 13584-24.

6.1 Ресурсы реализации

Настоящий раздел устанавливает требования к приемной системе.

Примечание 1 - Для классов соответствия 1, 2 и 3 формат файла является связующим звеном ИСО 13584-31 и языка программирования FORTRAN. Для классов соответствия 1Е, 2Е и 3Е формат файла устанавливают путем заключения отдельного соглашения между отправителем и получателем.

Примечание 2 - Отдельный интерфейс, используемый для обработки внешних файлов библиотеки, устанавливают в рамках файла доставки библиотеки, который ссылается на них, с помощью сущности external_file_protocol.

Используют следующие требования к ресурсам реализации:

- реализации, подтверждающие соответствие классу соответствия 1, должны поддерживать уровень 1 геометрического программного интерфейса API в соответствии с требованиями 6.1.1 ИСО 13584-31. Этот интерфейс соответствует созданию представления basic_geometry для уровня 1 сущности geometry_level;

- реализации, подтверждающие соответствие классу соответствия 2, должны поддерживать уровень 2 геометрического программного интерфейса API в соответствии с требованиями 6.1.1 ИСО 13584-31. Этот интерфейс соответствует созданию представления basic_geometry для уровней 1 и 2 сущности geometry_levels;

- реализации, подтверждающие соответствие классу соответствия 3, должны поддерживать уровень 3 геометрического программного интерфейса API в соответствии с требованиями 6.1.1 ИСО 13584-31. Этот интерфейс соответствует созданию представления basic_geometry для уровней 1, 2 и 3 сущности geometry_levels;

- для класса соответствия 1Е необходима поддержка геометрического интерфейса, способного создать представление basic_geometry для уровня 1 сущности geometry_level;

- для класса соответствия 2Е необходима поддержка геометрического интерфейса, способного создать представление basic_geometry для уровней 1 и 2 сущности geometry_levels;

- для класса соответствия ЗЕ необходима поддержка геометрического интерфейса, способного создать представление basic_geometry для уровней 1, 2 и 3 сущности geometry_levels.

Примечание 3 - Новые классы соответствия будут установлены в Изменении к настоящему стандарту, если будут определены новые APIs или взаимосвязи ИСО 13584-31 с новым языком.

6.2 Методы реализации

Метод реализации файла доставки библиотечных данных, ссылающегося на внешние файлы библиотеки, совместимые с требованиями настоящего стандарта, следует устанавливать с использованием интегрированной информационной модели библиотеки, на которую ссылается файл доставки библиотечных данных.

Метод реализации внешних файлов библиотеки, совместимых с классами соответствия 1, 2 и 3 настоящего стандарта, установлен в разделе 5. Методы реализации внешних файлов библиотеки, совместимых с классами соответствия 1Е, 2Е и 3Е, устанавливают путем заключения соответствующего отдельного соглашения между отправителем и получателем.

Примечание 1 - Настоящий стандарт не распространяется на идентификацию файла доставки библиотечных данных и среду, используемую для этого файла, а также на внешние файлы библиотеки, на которые ссылается файл доставки библиотечных данных, требования к которым устанавливают путем заключения отдельного соглашения между отправителем и получателем.

6.3 Ограничения к файлу доставки библиотечных данных для связи с рассматриваемым протоколом обмена представлениями

В этом подразделе устанавливаются значения экземпляра view_exchange_protocol_identification, которые допускается использовать в файле доставки библиотечных данных для ссылки на протокол обмена представлениями, определенный в настоящем стандарте.

Примечание 1 - Требования к сущности view_exchange_protocol_identification установлены в ИСО 13584-24.

Допустимые значения приведены в таблице 4 и в трех схемах на языке EXPRESS. В таблице 4 указаны допустимые значения сущности view_exchange_protocol_identification.name и сущности view_exchange_protocol_identification.application для каждого класса соответствия.

Схемы ISO13584_101_cc_1_or_2_or_3_schema и ISO13584_101_cc_1E_or_2E_or_3E_schema содержат общее правило, устанавливающее требования и определяющее допустимые значения для других атрибутов сущности view_exchange_protocol_identification, которую используют для ссылки на протокол обмена представлениями, определенный в настоящем стандарте.

Сущность ISO13584_101_vcv_range_constraints_schema содержит два правила, устанавливающие ограничения к сущности abstract_functional_model_class, которая ссылается на протокол обмена представлениями, установленный в настоящем стандарте.

Примечание 2 - Требования к сущности abstract_functional_model_class установлены в ИСО 13584.

Вышеуказанные правила должны выполняться любым файлом доставки библиотечных данных, который ссылается на протокол обмена представлениями, установленный в настоящем стандарте в любом из его классов соответствия.

Если на протокол обмена представлениями, определенный в настоящем стандарте, ссылается файл доставки библиотечных данных, эти правила должны быть добавлены в схему на языке EXPRESS, устанавливающую требования к интегрированной информационной модели библиотеки (LIIM), на которые ссылается файл доставки библиотечных данных, использующий следующий процесс.

Предположим, что файл доставки библиотечных данных ссылается на интегрированную информационную модель библиотеки "L", требования к которой установлены в уникальной схеме без внешних ссылок, обозначенной "L_library_implicit_schema", и в протоколе обмена представлениями, определенном в настоящем стандарте.

Примечание 3 - Схему на языке EXPRESS, устанавливающую требования без внешних ссылок, часто называют схемой длинных форм.

Пример 1 - Сущность ISO13584_f_m_iim_library_implicit_schema является схемой на языке EXPRESS, устанавливающей требование LIIM 24-2 с помощью одной схемы без внешних ссылок.

Примечание 4 - Требования к сущности ISO13584_f_m_iim_library_implicit_schema приведены в приложении G ИСО 13584-24. Этот файл доставки библиотечных данных должен соответствовать требованиям схемы, определяемым следующим образом:

- Проверьте, что все объекты, на которые даны ссылки в схемах ISO13584_101_cc_1_or_2_or_3_schema, ISO13584_101_cc_1E_or_2E_or_3E_schema и ISO13584_101_vcv_range_constraints_schema, существуют в сущности L_library_implicit_schema, в противном случае ссылка на интегрированную информационную модель библиотеки "L" и протокол обмена представлениями в настоящем стандарте не допускаются.

Примечание 5 - Информационная модель файла доставки библиотечных данных и сущности, входящие в нее, устанавливаются интегрированной информационной моделью библиотечных данных. В протокол обмена представлениями могут быть добавлены только ограничения.

Пример 2 - Протокол обмена представлениями, установленный в настоящем стандарте, ссылается на сущность abstract_functional_model_class. Этот протокол не может быть использован с сущностью ISO13584_g_m_iim_library_implicit_schema. Протокол устанавливает требование LIIM 24-1 и не ссылается на логическую структуру ресурсов на языке EXPRESS для моделирования функциональных моделей.

Примечание 6 - Требования к сущности ISO13584_g_m_iim_library_implicit_schema приведены в приложении С ИСО 13584-24:

- Замените в схеме ISO13584_101_cc_1_or_2_or_3_schema и в схеме ISO13584_101_cc_1E_or_2E_or_3E_schema строку 'ISO13584_EXTERNAL_FILE_SCHEMA' строкой 'L_library_implicit_schema', набранную прописными буквами.

Пример 3 - Если интегрированная информационная модель библиотечных данных "L" является LIIM-24-2, определенной в ИСО 13584-24, следует заменить строку 'ISO13584_EXTERNAL_FILE_SCHEMA' на строку 'ISO13584_F_M_IIM_LIBRARY_IMPLICIT_SCHEMA':

- Добавьте в сущность L_library_implicit_schema все функции и правила, установленные в схемах ISO13584_101_cc_1_or_2_or_3_schema, ISO13584_101_сс_1E_or_2E_or_3E_schema и ISO13584_101_vcv_range_ constraints_schema.

Примечание 7 - Результатом вышеуказанных действий является добавление правил ISO13584_101_side_and_geometry_level_compatibility_rule, ISO13584_101_variant_and_unregistered_variant_ compatibility_rule, ISO13584_101_allowed_reference_to_conformance_class_1_2_and_3_rule и ISO13584_101_ allowed_reference_to_conformance_class_1E_2E_and_3E_rule в схему L_library_implicit_schema вместе со всеми функциями, требуемыми для выполнения этих правил.

Примечание 8 - Имена функций и правила, установленные в настоящем стандарте, должны быть в начале строки "ISO13584_101", чтобы избежать конфликтов при их совпадении, когда один и тот же файл доставки библиотечных данных ссылается на несколько протоколов обмена представлениями.

Примечание 9 - Файл доставки библиотечных данных, ссылающийся на интегрированную информационную модель библиотеки "L'", требования которой устанавливаются в уникальной схеме без внешних ссылок, обозначенной "L_library_implicit_schema", и протоколе обмена представлениями, установленном в настоящем стандарте, могут также быть обменены с помощью сущности L_library_implicit_schema, установленной в стандарте комплекса ИСО 13584, который определяет требования к интегрированной информационной модели библиотечных данных "L" без любых последующих изменений. В этом случае требования, установленные в настоящем стандарте, не включают в схему обмена. Их проверяют перед обменом файла доставки библиотечных данных и по его завершении.

Данный листинг схем ISO13584_101_cc_1_or_2_or_3_schema, ISO13584_101_cc_1E_or_2E_or_3E_schema и ISO13584_101_vcv_range_constraints_schema в форме компьютерной интерпретации приведен в сети Интернет по адресу: http://www.tc184-sc4.org/EXPRESS/

При возникновении каких-либо трудностей с доступом на сайт необходимо связаться с Центральным Секретариатом ИСО или секретариатом ИСО ТК 184/ПК 4 по адресу: sc4sec@cme.nist.gov.

Примечание 10 - Вышеуказанная информация, представленная в компьютерно-интерпретируемой форме, является нормативной ссылкой.

Примечание 11 - Описания ошибок программного кода на языке EXPRESS, идентифицированных в процессе проведения голосования, и поправок к ним, рекомендуемых для реализаций PLIB, приведены в сети Интернет по адресу:

http://www.lisi.ensma.fr/ftp/pub/PLIB_release_notes/Part101/Part101-IS/

6.3.1 Таблица спецификаций классов соответствия

Значения сущностей view_exchange_protocol_identification.name и view_exchange_protocol_identification.application, которые могут использоваться в сущности view_exchange_protocol_identification для ссылки на протокол обмена представлениями, определенный в настоящем стандарте, в любом из его классов соответствия, приведены в таблице 4.

Таблица 4 - Спецификация классов соответствия

Класс соответствия

Обязательное значение view_exchange_protocol_identification.name

Обязательное значение view_exchange_protocol_identification.application

1

'ISO_13584_101'

'1'

2

'ISO_13584_101'

'2'

3

'ISO_13584_101'

'3'

'ISO_13584_101'

"1E'

'ISO_13584_101'

'2E'

'ISO_13584_101'

'3E'

6.3.2 Ограничения к файлу доставки библиотечных данных, ссылающемуся на категорию basic_geometry

Значения экземпляра view_control_variable_range, допустимые для использования в файле доставки библиотечных данных для ссылки на функциональный класс представлений basic_geometry, определенный в настоящем стандарте, в любом из его классов соответствия должны учитывать ограничения, установленные в следующей схеме на языке EXPRESS.

Спецификация на языке EXPRESS:

*)

SCHEMA ISO13584_101_vcv_range_constraints_schema;

REFERENCE FROM ISO13584_extended_dictionary_schema(

abstract_functional_model_class,

view_control_variable_range);

(*

Примечание - Данная схема приведена в ISO13584_extended_dictionary_schema согласно ИСО 13584-24.

6.3.2.1 Правило ISO13584_101_side_and_geometry_level_compatibility_rule

Правило ISO13584_101_side_and_geometry_level_compatibility_rule устанавливает требование, в соответствии с которым сущность abstract_functional_model_classes, ссылающаяся на категорию представления базовой геометрии с использованием атрибута created_view, всегда должна быть в диапазоне v_c_v_range, а именно:

- в случае двумерного геометрического представления в диапазоне, который содержит или нет нулевое значение для управляющей переменной представления сторон.

Примечание - Примером является двумерное изометрическое представление, управляющая переменная представления сторон которого имеет нулевое значение;

- в случае трехмерного геометрического представления в диапазоне, содержащем только нулевое значение для управляющей переменной представления сторон, и

- в случае двумерного или трехмерного геометрического представления предусматривают разрешенные значения сторон вместе с нулевым значением для управляющей переменной представления сторон.

Пример - Допускается применять следующие диапазоны view_control_variable_ranges уровня геометрии и сторон:

Диапазон уровня геометрии view_control_variable_range

Диапазон сторон view_control_variable_range

[1:1]

[0:6]

[1:1]

[1:6]

[1:3]

[0:6]

[2:2]

[0:0]

Не допускается применять следующие диапазоны view_control_variable_ranges уровня геометрии и сторон:

Диапазон уровня геометрии view_control_variable_range

Диапазон сторон view_control_variable_range

[1:2]

[1:6]

[2:2]

[1:6]

Спецификация на языке EXPRESS:

*)

RULE ISO13584_101_side_and_geometry_level_compatibility_rule FOR

(abstract_functional_model_class);

LOCAL

geometry_level_set: SET OF view_control_variable_range;

side_set: SET OF view_control_variable_range;

is_2D, is_2D_or_3D, is_3D: BOOLEAN;

no_side, with_side, side_or_no_side, res: BOOLEAN;

compatible_side_and_geometry_level: BOOLEAN := TRUE;

END_LOCAL;

REPEAT i := 1 TO SIZEOF(abstract_functional_model_class);

geometry_level_set := QUERY(vcvr <*

abstract_functional_model_class[i].v_c_v_range |

(vcvr.parameter_type.name_scope.code = 'basic_geometry')

AND (vcvr.parameter_type.name_scope.defined_by.code = '0112/1///13584_101_1')

AND (vcvr.parameter_type.code = 'geometry_level'));

side_set := QUERY(vcvr <*

abstract_functional_model_class[i].v_c_v_range |

(vcvr.parameter_type.name_scope.code = 'basic_geometry')

AND (vcvr.parameter_type.name_scope.defined_by.code = '0112/1///13584_101_1')

AND (vcvr.parameter_type.code = 'side'));

is_2D := (SIZEOF(QUERY(vcvr<*geometry_level_set |

((vcvr.range_lobound = 1) AND (vcvr.range_hibound = 1)))) = 1);

is_2D_or_3D := (SIZEOF(QUERY(vcvr <* geometry_level_set |

((vcvr.range_lobound = 1) AND (vcvr.range_hibound > 1)))) = 1);

is_3D := (SIZEOF(QUERY(vcvr <* geometry_level_set |

(vcvr.range_lobound > 1)AND (vcvr.range_hibound > 1)))= 1);

no_side := (SIZEOF(QUERY(vcvr <* side_set |

((vcvr.range_lobound = 0) AND (vcvr.range_hibound = 0)))) = 1);

side_or_no_side := (SIZEOF(QUERY(vcvr <* side_set |

((vcvr.range_lobound = 0) AND (vcvr.range_hibound >= 0)))) = 1);

IF is_2D OR ((NOT(is_2D_or_3D) OR

side_or_no_side) AND (NOT(is_3D) OR no_side))

THEN

res := TRUE;

ELSE

res := FALSE;

END_IF;

compatible_side_and_geometry_level :=

compatible_side_and_geometry_level AND res;

END_REPEAT;

WHERE

WR1: compatible_side_and_geometry_level;

END_RULE; --ISO13584_101_side_and_geometry_level_compatibility_rule

(*

Формальные предложения

WR1: каждая сущность abstract_functional_model_class, ссылающаяся на категорию представлений basic_geometry, должна определять сущность view_control_variable, устанавливающую сторону геометрического представления, для которого значения сущности range_lobound и range_hibound равны 0 в случае трехмерного представления или для которого значение сущности range_lobound равно 0, а значение сущности range_hibound больше или равно 0 в случае двумерного и трехмерного геометрических представлений.

Неформальные предложения

IP1: метод каждой сущности abstract_functional_model_class, включенной в файл доставки библиотечных данных, не должен создавать представление, управляющая переменная представления стороны которого отличается от "null", а управляющая переменная представления уровня геометрии которого отличается от '2D'.

6.3.2.2 Правило ISO13584_101_variant_and_unregistered_variant_compatibility_rule

Правило ISO13584_101_variant_and_unregistered_variant_compatibility_rule устанавливает требование, в соответствии с которым сущность abstract_functional_model_classes, предоставляющая категорию представлений basic_geometry в разных вариантах variants или unreg_variants, должна обеспечивать:

- стандартизированное представление формы и/или поставщика данных библиотеки в зависимости от представления формы;

- в случае возможного стандартизированного представления формы, как минимум, значение variant '1', т.е. 'external shape', и

- в случае возможного поставщика данных библиотеки в зависимости от представления формы значение unreg_variant более 0.

Пример - Допускается применять следующие диапазоны варианта view_control_variable_ranges и незарегистрированного варианта:

Диапазон варианта view_control_variable_range

Диапазон незарегистрированного варианта view_control_variable_range

[0:0]

[3:5]

[1:3]

[0:0]

[0:2]

[0:1]

Пример - Не допускается применять следующие диапазоны варианта view_control_variable_ranges и незарегистрированного варианта:

Диапазон варианта view_control_variable_range

Диапазон незарегистрированного варианта view_control_variable_range

[0:0]

[0:0]

[0:0]

[0:2]

Спецификация на языке EXPRESS

*)

RULE ISO13584_101_variant_and_unregistered_variant_compatibility_rule

FOR

(abstract_functional_model_class);

LOCAL

variant_set: SET OF view_control_variable_range := [ ];

unreg_variant_set: SET OF view_control_variable_range := [ ];

is_variant, is_unreg_variant: BOOLEAN;

may_be_variant, may_be_unreg_variant: BOOLEAN;

variant_1_mandatory, unreg_variant_greater_than_0: BOOLEAN;

res, compatible_variant_and_unreg_variant: BOOLEAN := TRUE;

END_LOCAL;

REPEAT i := 1 TO SIZEOF (abstract_functional_model_class);

variant_set := QUERY(vcvr <*

abstract_functional_model_class[i].v_c_v_range |

(vcvr.parameter_type.name_scope.code = 'basic_geometry')

AND (vcvr.parameter_type.name_scope.defined_by.code = '0112/1///13584_101_1')

AND (vcvr.parameter_type.code = 'variant'));

unreg_variant_set := QUERY(vcvr <*

abstract_functional_model_class[i].v_c_v_range |

(vcvr.parameter_type.name_scope.code = 'basic_geometry')

AND(vcvr.parameter_type.name_scope.defined_by.code = '0112/1///13584_101_1')

AND (vcvr.parameter_type.code = 'unreg_variant'));

is_unreg_variant := (SIZEOF(QUERY(vcvr <* variant_set

|(vcvr.range_lobound = 0) AND (vcvr.range_hibound = 0))) = 1);

may_be_unreg_variant := (SIZEOF(QUERY(vcvr <* variant_set

|(vcvr.range_lobound = 0) AND (vcvr.range_hibound > 0))) = 1);

variant_1_mandatory := (SIZEOF(QUERY(vcvr <* variant_set

|(vcvr.range_lobound = 1))) = 1);

is_variant := (SIZEOF(QUERY(vcvr <* unreg_variant_set

|(vcvr.range_lobound = 0) AND (vcvr.range_hibound = 0))) = 1);

may_be_variant := (SIZEOF(QUERY(vcvr <* unreg_variant_set

|(vcvr.range_lobound = 0) AND (vcvr.range_hibound > 0))) = 1);

unreg_variant_greater_than_0 := (SIZEOF(QUERY(vcvr <*

unreg_variant_set|(vcvr.range_lobound >= 1)))= 1);

IF (is_variant AND variant_1_mandatory) OR (is_unreg_variant AND

unreg_variant_greater_than_0) OR (may_be_unreg_variant_AND_may_be_variant)

THEN

res := TRUE;

ELSE

res := FALSE;

END_IF;

compatible_variant_and_unreg_variant: =

compatible_variant_and_unreg_variant AND res;

variant_set := [ ];

unreg variant set := [ ];

END_REPEAT;

WHERE

WR1: compatible_ variant_ and_ unreg_ variant;

END_RULE;

ISO13584_101_variant_and_unregistered_variant_compatibility_rule

(*

Формальные предложения

WR1: каждая сущность abstract_functional_model_class, ссылающаяся на категорию представлений basic_geometry, должна определить две переменные view_control_variables, устанавливающие соответственно вариант и незарегистрированный вариант, значения которых совместимы: либо диапазон view_control_variable_range варианта ограничен значением 0, а диапазон view_control_ variable_range незарегистрированного варианта является любым диапазоном, не содержащим значение 0, либо диапазон view_control_variable_range незарегистрированного варианта ограничен значением 0, а диапазон view_control_variable_range варианта принимает значения от 1 до любого значения, либо диапазон view_control_variable_range обоих вариантов и диапазоны view_control_variable_range незарегистрированного варианта устанавливают в диапазоне значений от 0 до любого значения, более или равного 1.

*)

END_SCHEMA; -- ISO13584_101_vcv_range_constraints_schema

(*

6.3.3 Ограничения к файлу доставки библиотечных данных для ссылочных классов соответствия 1, 2 и 3

Значения экземпляра view_exchange_protocol_identification, допустимые для использования в файле доставки библиотечных данных для ссылки на протокол обмена представлениями, определенный в настоящем стандарте, в любом из его классов соответствия 1, 2, 3 должны удовлетворять ограничениям, установленным в следующей схеме на языке EXPRESS.

Спецификация на языке EXPRESS:

*)

SCHEMA ISO13584_101_cc_1_or_2_or_3_schema;

REFERENCE FROM ISO13584_IEC61360_dictionary_schema (item_names);

REFERENCE FROM ISО13584_extended_dictionary_schema (data_exchange_specification_identification,

view_exchange_protocol_identification);

REFERENCE FROM ISO13584_external_file_schema (external_file_protocol,

program_status,

simple_program_protocol,

standard_simple_program_protocol);

REFERENCE FROM person_organization_schema(organization);

(*

Примечание - Схемы, указанные выше, приведены в следующих документах:

ISO13584_IEC61360_dictionary_schema - приложение к ИСО 13584-42 и приложение к МЭК 61360-2;

ISO13584_extended_dictionary_schema - ИСО 13584-24;

ISO13584_extemal_file_schema - ИСО 13584-24;

person_organization_schema - ИСО 10303-41.

6.3.3.1 Правило ISO13584_101_allowed_reference_to_conformance_class_1_2_and_3_rule

Правило ISO13584_101_allowed_reference_to_conformance_class_rule устанавливает ограничения к сущности view_exchange_protocol_identifications, которые следует учитывать при ее использовании для ссылки на класс соответствия 1, 2 или 3 протокола обмена представлениями, установленного в настоящем стандарте. Сущность view_exchange_protocol_identification допускается использовать для ссылки на класс соответствия 1, 2 или 3 протокола обмена представлениями, установленного в настоящем стандарте, при выполнении следующих условий:

- атрибутом name сущности view_exchange_protocol_identification является 'ISO_13584_101';

- атрибут протоколов external_file_protocols сущности view_exchange_protocol_identification ссылается только на один протокол external_file_protocol;

- атрибут level ссылочной сущности external_file_protocol должен соответствовать атрибуту application сущности view_exchange_protocol_identification;

- атрибут status сущности view_exchange_protocol_identification должен быть либо 'WD', либо 'CD', либо 'DIS', либо 'FDIS', либо 'IS';

- атрибут application сущности view_exchange_protocol_identification должен иметь значения 1, 2 или 3 и

- протокол external_file_protocol, на который дается ссылка через атрибут external_file_protocols сущности view_exchange_protocol_identification, должен учитывать ограничения, установленные функцией ISO13584_101_protocol_compliant_to_cc_1_or_2_or_3, приведенной в 6.3.3.2.

Спецификация на языке EXPRESS:

*)

RULE ISO13584_101_allowed_reference_to_conformance_class_1_2_and_3_rule

FOR (

view_exchange_protocol_identification);

WHERE

WR1: QUERY (vep_id <* view_exchange_protocol_identification |

(vep_id\data_exchange_specification_identification.name = 'ISO_13584_101')

AND

(SIZEOF(vep_id\data_exchange_specification_identification.external_file_protocols) <> 1)) = [ ];

WR2: QUERY(vep_id <* view_exchange_protocol_identification |

(vep_id\data_exchange_specification_identification.name = 'ISO_13584_101')

AND

(QUERY(efp <* vep_id\data_exchange_specification_identification.

external_file_protocols | NOT(efp.level = vep_id.application) )<>[ ])) = [ ];

WR3: QUERY (vep_id <* view_exchange_protocol_identification |

((vep_id\data_exchange_specification_identification.status = 'WD')

OR (vep_id\data_exchange_specification_identification.status = 'CD')

OR (vep_id\data_exchange_specification_identification.status = 'DIS')

OR (vep_id\data_exchange_specification_identification.status = 'FDIS')

OR (vep_id\data_exchange_specification_identification.status = 'IS'))

AND

(vep_id\data_exchange_specification_identification.name = 'ISO_13584_101')

AND

((vep_id\data_exchange_specification_identification.application = '1')

OR (vep_id\data_exchange_specification_identification.application = '2')

OR (vep_id\data_exchange_specification_identification.application = '3'))

AND

(QUERY(efp <* vep_id\data_exchange_specification_identification.

external_file_protocols |

NOT(ISO13584_101_protocol_compliant_to_cc_1_or_2_or_3(efp))) = [ ]))

= QUERY(vep_id <* view_exchange_protocol_identification |

(vep_id\data_exchange_specification_identification.name = 'ISO_13584_101')

AND

(vep_id\data_exchange_specification_identification.application LIKE '#'));

END_RULE;

ISO13584_101_allowed_reference_to_conformance_class_1_2_and_3_rule

(*

Формальные предложения

WR1: в сущности view_exchange_protocol_identifications, ссылающейся на класс соответствия 1, 2 или 3 протокола обмена представлениями, установленного в настоящем стандарте, ссылка должна быть только на одну сущность external_file_protocol.

WR2: атрибут level ссылочной сущности standard_program_protocol должен соответствовать атрибуту application сущности view_exchange_protocol_identifications, ссылающемуся на класс соответствия 1, 2 или 3 протокола обмена представлениями, установленного в настоящем стандарте.

WR3: при ссылке на протокол обмена представлениями, указанный в настоящем стандарте, сущность view_exchange_protocol_identification.name должна иметь значение ISO_13584_101; значение сущности view_exchange_protocol_identification.status должно соответствовать либо 'WD', либо 'CD', либо 'DIS', либо 'FDIS', либо 'IS'; значение сущности view_exchange_protocol_identification.application должно быть либо 1, либо 2, либо 3, а сущность view_exchange_protocol_identification.external_ file_protocols должна учитывать ограничения, установленные функцией ISO13584_101_protocol_compliant_to_cc_1_or_2_or_3, приведенной в 6.3.3.2.

6.3.3.2 Функция ISO13584_101_protocol_compliant_to_cc_1_or_2_or_3

Функция ISO13584_101_protocol_compliant_to_cc_1_or_2_or_3 обеспечивает проверку того, может ли сущность view_exchange_protocol_identification, представляющая класс соответствия 1, 2 или 3 протокола обмена представлениями, установленного в настоящем стандарте, предоставить ссылку на сущность external_file_protocol. Эта функция возвращает логическое значение TRUE, если на сущность external_file_protocol может быть дана ссылка, в противном случае она возвращает логическое значение FALSE. Сущность view_exchange_protocol_identification, представляющая класс соответствия 1, 2 или 3 протокола обмена представлениями, установленного в настоящем стандарте, может ссылаться на сущность external_file_protocol при выполнении следующих условий:

- сущность external_file_protocol должна быть сущностью standard_simple_program_protocol, атрибутом language которого является "FORTRAN", атрибутом status - SOURCE или COMPILED;

- атрибут organization сущности external_file_protocol должен ссылаться на сущность organization, атрибутом id которой является 'ISO', а атрибутом name - 'International Organization for Standardization';

- атрибутом protocol_name сущности external_file_protocol должен быть 'ISO_13584_31';

- атрибут level сущности external_file_protocol, если он существует, должен иметь значения 1, 2 или 3;

- атрибут designation сущности external_file_protocol должен ссылаться на сущность item_names, для которой атрибутом preferred_name является 'ISO_13584_31', а атрибутом short_name - 'ISO_13584_31'.

Спецификация на языке EXPRESS:

*)

FUNCTION ISO13584_101_protocol_compliant_to_cc_1_or_2_or_3

(р: external_file_protocol): BOOLEAN;

IF(('ISO13584 EXTERNAL_FILE_SCHEMA'

+'.STANDARD_SIMPLE_PROGRAM_PROTOCOL'IN TYPEOF(p))

AND

(ISO13584 101 organization_compliant_to_cc_1_or_2_or_3(p.organisation))

AND (p.protocol_name ='ISO_13584_31')

AND (NOT EXISTS(p.level) OR ((p.level = '1') OR (p.level = '2') OR (p.level = '3')))

AND (ISO13584_101_item_names_compliant_to_cc_1_or_2_or_3(p.designation))

AND (p\simple_program_protocol.language = 'FORTRAN')

AND ((p\simple_program_protocol.status = SOURCE)

OR(p\simple_program_protocol.status = COMPILED)))

THEN

RETURN(TRUE);

ELSE

RETURN(FALSE);

END_IF;

END_FUNCTION; -- ISO13584_101_protocol_compliant_to_cc_1_or_2_or_3

(*

6.3.3.3 Функция ISO13584_101_item_names_compliant_to_cc_1_or_2_or_3

Функция ISO13584_101_item_names_compliant_to_cc_1_or_2_or_3 обеспечивает проверку того, может ли на сущность item_names сослаться сущность external_file_protocol, на которую дает ссылку сущность view_exchange_protocol_identifications, представляющая класс соответствия 1, 2 или 3 протокола обмена представлениями, установленного в настоящем стандарте. Сущность external_file_protocol, на которую ссылается сущность view_exchange_protocol_identifications, представляющая класс соответствия 1, 2 или 3 правил обмена представлениями по настоящему стандарту, может ссылаться на сущность item_names при выполнении следующих условий:

- атрибутом preferred_name сущности item_names является 'ISО13584_31';

- атрибутом short_name сущности item_names является 'ISО13584_31'.

Функция ISO13584_101_item_names_compliant_to_cc_1_or_2_or_3 возвращает логическое значение TRUE, если заданная сущность item_names удовлетворяет этим ограничениям, в противном случае она возвращает логическое значение FALSE.

Спецификация на языке EXPRESS:

*)

FUNCTION ISO13584_101_item_names_compliant_to_cc_1_or_2_or_3 (name: item_names): BOOLEAN;

IF ((name.preferred_name ='ISO_13584_31')

AND (name.short_name ='ISO 13584_31'))

THEN

RETURN(TRUE);

ELSE

RETURN(FALSE);

END_IF;

END_FUNCTION; -- ISO13584_101_item_names_compliant_to_cc_1_or_2_or_3

(*

6.3.3.4 Функция ISO13584_101_organization_compliant_to_cc_1_or_2_or_3

Функция ISO13584_101_organization_compliant_to_cc_1_or_2_or_3 обеспечивает проверку того, может ли на сущность organization ссылаться сущность external_file_protocol, на которую дает ссылку сущность view_exchange_protocol_identifications, представляющая класс соответствия 1, 2 или 3. Сущность external_fiIe_protocol, на которую ссылается сущность view_exchange_protocol_identification, представляющая класс соответствия 1, 2 или 3, может сослаться на сущность organization при выполнении следующих условий:

- атрибутом id объекта organization является 'ISO';

- атрибутом name объекта organization является 'International Organization for Standardization'.

Функция ISO13584_101_organization_compliant_to_cc_1_or_2_or_3 возвращает логическое значение TRUE, если заданная сущность organization удовлетворяет этим ограничениям, в противном случае она возвращает логическое значение FALSE.

Спецификация на языке EXPRESS:

*)

FUNCTION ISO13584_101_organization_compliant_to_cc_1_or_2_or_3

(org: organization): BOOLEAN;

IF ((org.id = 'ISO') AND (org.name =

'International Organization for Standardization'))

THEN

RETURN(TRUE);

ELSE

RETURN(FALSE);

END_IF;

END_FUNCTION; -- ISO13584_101_organization_compliant_to_cc_1_or_2_or_3

END_SCHEMA; --ISO13584_101_cc_1_or_2_or_3_schema

(*

6.3.4 Ограничения к файлу доставки библиотечных данных для ссылочных классов соответствия 1Е, 2Е и 3Е

Значения экземпляра view_exchange_protocol_identification, разрешенные для использования в файле доставки библиотечных данных для ссылки на протокол обмена представлениями, определенный в настоящем стандарте, в любом из его классов соответствия 1Е, 2Е или 3Е должны удовлетворять ограничениям, установленным в следующей схеме на языке EXPRESS:

Спецификация на языке EXPRESS:

*)

SCHEMA ISO13584_101_cc_1Е_or_2Е_or_3Е_schema;

REFERENCE FROM ISO13584_extended_dictionary_schema(

data_exchange_specification_identification, view_exchange_protocol_identification);

REFERENCE FROM ISO13584_external_file_schema (external_file_protocol,

non_standard_simple_program_protocol);

(*

Примечание - Схемы, указанные выше, приведены в следующих документах:

ISO13584_extended_dictionary_schema - ИСО 13584-24;

ISO13584_external_file_schema - ИСО 13584-24.

6.3.4.1 Правило ISO13584_101_allowed_reference_to_conformance_class_1E_2E_3E_rule

Правило ISO13584_101_allowed_reference_to_conformance_class_1E_2E_3E_rule устанавливает ограничения к сущности view_exchange_protocol_identification, которые следует учитывать при использовании данной сущности для ссылки на класс соответствия 1Е, 2Е или ЗЕ протокола обмена представлениями, установленного в настоящем стандарте. Сущность view_exchange_protocol_identification может обеспечить ссылку на протокол обмена представлениями, установленный в настоящем стандарте, при выполнении следующих условий:

- атрибутом name сущности view_exchange_protocol_identification является 'ISO_13584_101;

- атрибут протоколов external_file_protocols сущности view_exchange_protocol_identification ссылается только на протокол externaI_file_protocol;

- атрибут status сущности view_exchange_protocol_identification должен быть либо 'WD', либо 'CD', либо 'DIS', либо 'FDIS', либо 'IS';

- значениями атрибута application сущности view_exchange_protocol_identification должны быть '1Е',' 2Е' или '3Е' и

- протокол external_file_protocol, на который ссылается атрибут external_file_protocols сущности view_exchange_protocol_identification, должен учитывать ограничения, установленные функцией ISO13584_101_protocol_compliant_to_cc_1E_or_2E_or_3E, приведенной в 6.3.4.2.

Спецификация на языке EXPRESS:

*)

RULE

ISO13584_101_allowed_reference_to_conformance_class_1E_2E_and_3E_rule

FOR (view_exchange_protocol_identification);

WHERE

WR1: QUERY(vep_id <* view_exchange_protocol_identification |

(vep_id\data_exchange_specification_identification.name = 'ISO_13584_101')

AND (SIZEOF(vep_id\data_exchange_specification_identification.external_file_protocols) <> 1)) = [ ];

WR2: QUERY (vep_id <* view_exchange_protocol_identification |(

(vep_id\data_exchange_specification_identification.status = 'WD')

OR (vep_id\data_exchange_specification_identification.status = 'CD')

OR (vep_id\data_exchange_specification_identification.status = 'DIS')

OR (vep_id\data_exchange_specification_identification.status = 'FDIS')

OR (vep_id\data_exchange_specification_identification.status = 'IS'))

AND

(vep_id\data_exchange_specification_identification.name = 'ISO_13584_101')

AND

((vep_id\data_exchange_specification_identification.application = '1E')

OR (vep_id\data_exchange_specification_identification.application = '2E')

OR (vep_id\data_exchange_specification_identification.application = '3E'))

AND

(QUERY(efp <* vep_id\data_exchange_specification_identification.external_file_protocols |

NOT(ISO13584_101_protocol_compliant_to_cc_1E_or_2E_or_3E(efp))) =[ ]))

= QUERY(vep_id <* view_exchange_protocol_identification |

(vep_id\data_exchange_specification_identification.name = 'ISO_13584_101')

AND

(vep_id\data_exchange_specification_identification.application LIKE '#E'));

END_RULE;

ISO13584_101_allowed_reference_to_conformance_class_1E_2E_and_3E_rule

(*

Формальные предложения:

WR1: в сущности view_exchange_protocol_identifications, ссылающейся на класс соответствия 1Е, 2Е или 3Е протокола обмена представлениями, установленного в настоящем стандарте, ссылка должна быть только на сущность external_file_protocol.

WR2: при ссылке на протокол обмена представлениями, установленный в настоящем стандарте, сущность view_exchange_protocol_identification.name должна иметь значение ИСО_13584_101; значением сущности view_exchange_protocol_identification .status должно быть либо 'WD', либо 'CD', либо 'DIS', либо 'FDIS', либо 'IS', значение сущности view_exchange_protocol_identification.application должно быть '1Е', '2Е' или '3Е', а сущность view_exchange_protocol_identification.external_file_protocols должна учитывать ограничения, установленные функцией ISO13584_101_protocol_compliant_to_cc_1E_or_2E_or_3E, приведенной в 6.3.4.2.

6.3.4.2 Функция ISO13584_101_protocol_compliant_to_cc_1E_or_2E_or_3E

Функция ISO13584_101_protocol_compliant_to_cc_1E_or_2E_or_3E обеспечивает проверку того, может ли на сущность external_file_protocol ссылаться сущность view_exchange_protocol_identifications, представляющая класс соответствия 1Е, 2Е или 3Е. Сущность view_exchange_protocol_identification, представляющая класс соответствия 1Е, 2Е или 3Е, может сослаться на сущность external_file_protocol при выполнении следующего условия:

- сущность external_file_protocol должна быть сущностью non_standard_simple_program_protocol.

Функция ISO13584_101_organization_compliant_to_cc_1E_or_2E_or_3E возвращает логическое значение TRUE, если заданная сущность external_file_protocol учитывает это ограничение, в противном случае функция возвращает логическое значение FALSE.

Спецификация на языке EXPRESS:

*)

FUNCTION ISO13584_101_protocol_compliant_to_cc_1E_or_2E_or_3E(

р: external_file_protocol): BOOLEAN;

IF (('ISO13584_EXTERNAL_FILE_SCHEMA'

+ '.NON_STANDARD_SIMPLE_PROGRAM_PROTOCOL ' IN TYPEOF(p)))

THEN

RETURN (TRUE);

ELSE

RETURN (FALSE);

END_IF;

END_FUNCTION; -- ISO13584_101_protocol_compliant_to_cc_1E_or_2E_or_3E

END_SCHEMA; -- ISO13584_101_cc_1E_or_2E_or_3E_schema

(*

Приложение А
(обязательное)


Регистрация информационных объектов

А.1 Идентификация документов

Для обеспечения однозначной идентификации информационных объектов в открытой системе настоящему стандарту присвоен следующий идентификатор объектов:

{ISO standard 13584 part (101) version (1)}

Данное значение определено в ИСО/МЭК 8824-1 и описано в ИСО 8824-1.

Приложение В
(справочное)


Пример физического файла

В.1 Пример физического файла, использующего протокол обмена представлениями ИСО 13584-101

*/

ISO-10303-21;

HEADER;

FILE_DESCRIPTION(('PLIB FUNCTIONAL MODEL EXAMPLE 1'), '1');

FILE_NAME ('P24_fm_implicit_p101.spf',

'2000-06-05T02:38:14',

(").

('LISI/ENSMA'),

'ECCO RUNTIME SYSTEM BUILT-IN PREPROCESSOR V2.3.3',

'ECCO RUNTIME SYSTEM V2.3.3',

");

FILE SCHEMA(('ISO13584_F_M_IIM LIBRARY_IMPLICIT_SCHEMA));

ENDSEC;

DATA;

/* Global library description */

#2=LIBRARY_IN_STANDARD_FORMAT($, $, $, $, ( ), #30, #11, (#7), (#12),

(#20, #30, #40), (#50, #60, #140, #130), ( ), #3, $, $, ( ));

#3=ITEM_NAMES(LABEL('Functional geometry model'), ( ), LABEL("), $, $);

#6=ORGANIZATION('ISO', 'International Organization for Standardization',");

#7=STANDARD_SIMPLE_PROGRAM_PROTOCOL(#6, $, 'ISO_13584_31', '001', '1',

#8, $, 'FORTRAN', .SOURCE., $, $, $);

#8=ITEM_NAMES(LABEL('ISO_13584_31'), (), LABEL('ISO_13584_31'), $, $);

#11=LIBRARY_IIM_IDENTIFICATION($, 'IS', 'ISO_13584_24_2', 2001, '3', $, ( ));

#12=VIEW_EXCHANGE_PROTOCOL_IDENTIFICATION($, 'IS', 'ISO_13584_101',

2001, '1', '1', (#7), $);

#10=GLOBAL_LANGUAGE_ASSIGNMENT('en');

/* DICTIONARY DESCRIPTION */

/*BSU for supplier*/

#20=SUPPLIER_BSU('INA', *); /* INAcode unknown */

#30=SUPPLIER_BSU('9/19860073600021',*);

/* LISI/ENSMA code in the coding scheme ICD=0009: SIRET number */

#40=SUPPLIER_BSU('0112/1///13584_101_1', *);

/* Identification of ISO 13584-101 according to ISO 13584-26 */

/*BSU for component_class*/

#50=CLASS_BSU('Bearing', '001', #20);

#60=CLASS_BSU('PAW, '001', #20);

#130=CLASS_BSU('PAW_Geometry', '001', #30);

#140=CLASS_BSU('basic_geometry', '001', #40);

/* BSU for properties */

#90=PROPERTY_BSU('d_in', '001', #50);

#100=PROPERTY_BSU('d_out', '001', #50);

#110=PROPERTY_BSU('e', '001', #50);

#150=PROPERTY_BSU('geometry_level', '001', #140);

#160=PROPERTY_BSU('detail_level', '001', #140);

#170=PROPERTY_BSU('side', '001', #140);

#180=PROPERTY_BSU('prg', '001', #130);

#190=PROPERTY_BSU('required_side', '001', #130);

#200=PROPERTY_BSU('variant', '001', #140);

#210=PROPERTY_BSU('unreg_variant', '001', #140);

/* BSU for table */

#230=TABLE_BSU('T2', '001', #130);

/ *v_c_v range */

#155=VIEW_CONTROL_VARIABLE_RANGE(#150, 1, 1);

#165=VIEW_CONTROL_VARIABLE_RANGE(#160, 2, 2);

#175=VIEW_CONTROL_VARIABLE_RANGE(#170, 1, 6);

#205=VIEW_CONTROL_VARIABLE_RANGE(#200, 1, 1);

#215=VIEW_CONTROL_VARIABLE_RANGE(#210, 0, 0);

/* supplier description */

#31=SUPPLIER_ELEMENT(#30, $, '001', #32, #33);

#32=ORGANIZATION('LISI/ENSMA, 'LISI/ENSMA,");

#33=ADDRESS($, $, $, $, $, $, $, 'FRANCE', $, $, $, $);

/* Dictionary table description */

#231=TABLE_ELEMENT(#230, $, '001', #232, TEXT('Definition of the

geometry programs according to the side of the part'), $, $, *, (#196,

#186), (#196));

#232=ITEM_NAMES(LABEL('side / prg table'), ( ), LABEL("), $, $);

/* Dictionary properties description */

/* prg */

#91 = REPRESENTATION_P_DET (#180, $, '001', #92, TEXT('variable used to

reference geometry programs'), $, $, $, $, ( ), $, 'A58', #93, $);

#92=ITEM_NAMES (LABEL('related program'), ( ), LABEL("), $, $);

#93=PROGRAM_REFERENCE_TYPE ((

'ISО13584_F_M_IIM_LIBRARY_IMPLICIT_SCHEMA.PROGRAM_REFERENCE'));

/* required side */

#101 =REPRESENTATION_P_DET(#190, $, '001', #102, TEXT('property used

to store the required side'), $, $, $, $, ( ), $, 'A58', #103, $);

#102=ITEM_NAMES(LABEL('side to be represented'), ( ), LABEL("), $, $);

#103=INT_TYPE('N 1');

/* class - table relationship */

#1424=CLASS_TABLE_RELATIONSHIP(#71, (#230));

/* Dictionary class description */

/* Functional model class view_of definition*/

#71 =FM_CLASS_VIEW_OF(#130, $, '001', #72, TEXT('Functional model

class describing the 2d standard geometry of PAW), $, $, $, $, (#180,

#190), ( ), *, *, *, *, *, #140, (#155, #165, #175, #205, #215), (#150,

#160, #170, #200, #210), ( ), ( ), ( ), ( ), ( ), ( ), ( ), ( ), #60, (#90,

#100, #110), ( ), ( ), ( ));

#72=ITEM_NAMES(LABEL('Functional model class of PAW), (), LABEL('fm

class of PAW), $, $);

/* Definition of the properties semantics */

#176=OPEN_VIEW_PROPERTY_VALUE_SEMANTICS(#170, $);

#186=SELF_PROPERTY_VALUE_SEMANTICS(#180, $);

#196=SELF_PROPERTY_VALUE_SEMANTICS(#190, $);

#206=COLUMN_TRAVERSAL_VARIABLE_SEMANTICS(#2407, #196);

#96=SELF_PROPERTY_VALUE_SEMANTICS(#90, $);

#106=SELF_PROPERTY_VALUE_SEMANTICS(#100, $);

#116=SELF_PROPERTY_VALUE_SEMANTICS(#110, $);

/* Properties syntax definition */

#177=INT_NUMERIC_VARIABLE( );

#187=ENTITY_INSTANCE_VARIABLE((

'ISO13584_F_M_IIM_LIBRARY_IMPLICIT_SCHEMA.PROGRAM_REFERENCE'));

#197=INT_NUMERIC_VARIABLE( );

#207=INT_NUMERIC_VARIABLE( );

#97=REAL_NUMERIC_VARIABLE( );

#107=REAL_NUMERIC_VARIABLE( );

#117=REAL_NUMERIC_VARIABLE( );

/* Syntax / semantics association */

#178=ENVIRONMENT(#177, #176);

#188=ENVIRONMENT(#187, #186);

#198=ENVIRONMENT(#197, #196);

#208=ENVIRONMENT(#207, #206);

#98 =ENVIRONMENT(#97, #96);

#108=ENVIRONMENT(#107, #106);

#118=ENVIRONMENT(#117, #116);

/* LIBRARY DESCRIPTION */

/* Extension of the table */

#2300=TABLE_CONTENT(#230, *, (#2301, #2302), '001', '1997-12-19');

#2301=INTEGER_COLUMN((1, 2, 3, 4, 5, 6), 'NR1..1');

#2302=ENTITY_INSTANCE_COLUMN((#2303, #2304, #2305, #2306, #2307, #2308),

('ISO13584_F_M_IIM_LIBRARY_IMPLICIT_SCHEMA.PROGRAM_REFERENCE'));

#2303=PROGRAM_REFERENCE(#7, #2313, 'Add1_PAW, 'PAW_p1', ( ), ( ), ( ));

#2304=PROGRAM_REFERENCE(#7, #2314, 'Add2_PAW, 'PAW_p2', ( ), ( ), ( ));

#2305=PROGRAM_REFERENCE(#7, #2315, 'Add3_PAW, 'PAW_p3', ( ), ( ), ( ));

#2306=PROGRAM_REFERENCE(#7, #2316, 'Add4_PAW, 'PAW_p4', ( ), ( ), ( ));

#2307=PROGRAM_REFERENCE(#7, #2317, 'Add5_PAW, 'PAW_p5', ( ), ( ), ( ));

#2308=PROGRAM_REFERENCE(#7, #2318, 'Add6_PAW, 'PAW_p6', ( ), ( ), ( ));

#2313=NOT_TRANSLATABLE_EXTERNAL_CONTENT((#2323));

#2314=NOT_TRANSLATABLE_EXTERNAL_CONTENT((#2324));

#2315=NOT_TRANSLATABLE_EXTERNAL_CONTENT((#2325));

#2316=NOT_TRANSLATABLE_EXTERNAL_CONTENT((#2326));

#2317=NOT_TRANSLATABLE_EXTERNAL_CONTENT((#2327));

#2318=NOT_TRANSLATABLE_EXTERNAL_CONTENT((#2328));

#2323=LANGUAGE_SPECIFIC_CONTENT((#2333), #2333, $);

#2324=LANGUAGE_SPECIFIC_CONTENT((#2334), #2334, $);

#2325=LANGUAGE_SPECIFIC_CONTENT((#2335), #2335, $);

#2326=LANGUAGE_SPECIFIC_CONTENT((#2336), #2336, $);

#2327=LANGUAGE_SPECIFIC_CONTENT((#2337), #2337, $);

#2328=LANGUAGE_SPECIFIC_CONTENT((#2338), #2338, $);

#2333=EXTERNAL_FILE_UNIT('PAW_p1.for', '7bit');

#2334=EXTERNAL_FILE_UNIT('PAW_p1.for', '7bit');

#2335=EXTERNAL_FILE_UNIT('PAW_p1.for', '7bit');

#2336=EXTERNAL_FILE_UNIT('PAW_p1.for', '7bit');

#2337=EXTERNAL_FILE_UNIT('PAW_p1.for', '7bit');

#2338=EXTERNAL_FILE_UNIT('PAW_p1.for', '7bit');

/* Library definition of the properties */

#900=OPT_OR_MAND_PROPERTY_BSU(#90, .F., Т.);

#1000=OPT_OR_MAND_PROPERTY_BSU(#100, .F., Т.);

#1100=OPT_OR_MAND_PROPERTY_BSU(#110, .F., Т.);

#1700=OPT_OR_MAND_PROPERTY_BSU(#170, .F., Т.);

#1800=OPT_OR_MAND_PROPERTY_BSU(#180, .F., .F.);

#1900=OPT_OR_MAND_PROPERTY_BSU(#190, .F., .F.);

/* Functional model class extension */

#1300=FUNCTIONAL_MODEL_CLASS_EXTENSION(#130, (#2303, #2304, #2305,

#2306, #2307, #2308), (#7), (#12), '001', '001', ( ), ( ), *, *, *, ( ),

( ), ( ), $, (#900, #1000, #1100), ( ), ( ), (#1700, #1800, #1900), ( ),

(#3000), $, $, ( ), $);

/* Definition of the derivation table that computes 'prg' from 'side' */

#2401=FUNCTIONAL_DOMAIN_RESTRICTION((#186), (#176, #196, #206),

(#2402), $);

#2402=GUARDED_FUNCTIONAL_DOMAlN(#2403, #2405);

#2403=OTHERS( );

#2405=TABLE_DEFINED_VALUE(#2406);

#2406=SELECT_EXPRESSION((#2407, #2408));

#2407=TABLE_LITERAL(#230);

#2408=EQUALS_EXPRESSION((#207, #177));

/* Definition of the methods */

#3000=METHOD(#3001, #3002, #7);

#3001=METHOD_SPECIF(#140, (#155, #165, #175, #205, #215), (#90, #100,

#110),

( ));

#3002=METHOD_BODY((#97, #107, #117, #177, #187, #197, #207),

(#3019));

#3019=METHOD_STATEMENT((#3020));

#3020=GUARDED_STATEMENT(#3021, #3023);

#3021=BOOLEAN_LITERAL(.T.);

#3023=CALL_PROGRAM_STATEMENT(#187, #2401, (#97, #107, #117), ( ),

( ));

ENDSEC;

END-ISO-10303-21;

/*

Физический файл, совместимый с ИСО 10303-21, ассоциируется с внешними файлами, содержащими параметрические спецификации геометрии PAW для разных двумерных представлений сторон. Обмен параметрическими спецификациями аналогичен обмену параметрическими программами, соответствует требованиям ИСО 13584-31 и генерируется редактором параметрической геометрии.

Файл Add1_PAW является примером автоматически генерируемой параметрической программы. Данный файл был автоматически сгенерирован из системы ЕВР (программирование на базе примеров), разработанной для программного обеспечения генерации программ (в этом примере программой, генерирующей вид спереди, является PAW_p1) на основе существующего проекта.

SUBROUTINE PAW_p1 (d_out, d_int)

! implicit declarations

!

! entity types: (d)ir, (p)nt, (l)in, (c)ir,

!

(g)rp, (s)et, (e)nt, (a)rc or (a)2p

IMPLICIT INTEGER (d, p, I, c, g, s, e, a, n )

!

! transfo_type(n) are strings that will contain

! "mirror", "shift", "rotation" or "homotetia"

IMPLICIT CHARACTER* (80) (t)

!

! prefix of D.P. var used: (r)adius, (v)al

IMPLICIT DOUBLE PRECISION (r, v)

!

! global constants

INTEGER TDB, CAD

DOUBLE PRECISION ZERO_VALUE

PARAMETER (TDB = 0, CAD = 1 )

PARAMETER (ZERO_VALUE = 0.001)

INTEGER Istent (1000)

INTEGER FALSE, TRUE

!

! parameter declarations:

!

DOUBLE PRECISION d_out

DOUBLE PRECISION d_int

!

! include the types of the P31 and LIB functions

include'P31_FUNCTIONS_TYPES'

include 'LIB_FUNCTIONS_TYPES'

!

! *** Program Body ***

!

! initialise some constant used entities

grpfix = CREATE GRP ( )

CALL CLOSE_GRP ( )

a2p_ref = a2p_ref_sys (TDB)

dir_x = dir_a2p_x (a2p_ref, TDB)

dir_y = dir_a2p_y(a2p_ref, TDB)

pnt_origin = PNT_CARTESIAN_ABSOLUTE(0.0D0, 0.0D0, 0.0D0, TDB )

FALSE = 0

TRUE = 1

CALL INQ_GEOMETRICAL_POWER(POWER, ERR)

three_d = (POWER.GT.1)

if three_d then

dir_z = dir_a2p_z (a2p_ref, TDB)

end if

!

! *** START OF THE RECORDING SESSION ***

!

! horizontal line of a given у value

pnt1=PNT_CARTESIAN_ABSOLUTE(0.0D0, 0.0D0, 0.0D0, TDB)

lin1C1 = lib_lin_max(LIN_PNT_LENGTH_DIR(pnt1, 1.0D0,dir_x, TDB))

CALLADD_ENT_GRP(grpfix, lin1C1)

!

! vertical line of a given x value

pnt1=PNT_CARTESIAN_ABSOLUTE(0.0D0, 0.0D0, 0.0D0, TDB)

lin2C1 = lib_lin_max(LIN_PNT_LENGTH_DIR(pnt1, 1.0D0, dir_y, TDB))

CALLADD_ENT_GRP(grpfix, lin2C1)

!

! intersection of 2 lines

pntnm1 = PNT_INTERSECTION_2_ENT(lin2C1, Iin1C1, TDB)

!

! circle by its centre and its radius

cir3C1 = CIRCLE_RAD_A2P ((d_out) / (2.000D0), &

lib_a2p_pnt(pntnm1 ), false, TDB)

CALL ADD_ENT_GRP(grpfix, cir3C1)

!

! centre of a circle

pntnm2 = PNT_CENTRE_ARC(cir3C1, TDB)

! circle by its centre and its radius

cir4C1 = CIRCLE_RAD_A2P ((d_int) / (2.000D0), &

lib_a2p_pnt(pntnm2), false, TDB)

CALL ADD_ENT_GRP(grpfix, cir4C1)

!

! arc by a circle

arc5C1 =cir3C1

CALL ADD_ENT_GRP(grpfix, arc5C1)

!

! arc by a circle

arc6C1 = cir4C1

CALL ADD_ENT_GRP(grpfix, arc6C1)

!

! *** FIX ENTITIES into CAD SYSTEM ***

!

Istent (1 ) = grpfix

CALL FIX_ENT(1,Istent)

RETURN

END

Приложение ДА
(справочное)


Сведения о соответствии ссылочных международных стандартов ссылочным национальным стандартам Российской Федерации

Таблица ДА.1

Обозначение ссылочного международного стандарта

Степень соответствия

Обозначение и наименование соответствующего национального стандарта

ИСО/МЭК 8824-1:1998

IDT

ГОСТ Р ИСО/МЭК 8824-1-2001 "Информационная технология. Абстрактная синтаксическая нотация версии один (АСН.1). Часть 1. Спецификация основной нотации"

ИСО/МЭК 8859-1:1998

-

*

ИСО 10303-1:1994

IDT

ГОСТ Р ИСО 10303-1-99 "Системы автоматизации производства и их интеграция. Представление данных об изделии и обмен этими данными. Часть 1. Общие представления и основополагающие принципы"

ИСО 10303-11:1994

IDT

ГОСТ Р ИСО 10303-11-2009 "Системы автоматизации производства и их интеграция. Представление данных об изделии и обмен этими данными. Часть 11. Методы описания. Справочное руководство по языку EXPRESS"

ИСО 10303-31:1994

IDT

ГОСТ Р ИСО 10303-31-2002 "Системы автоматизации производства и их интеграция. Представление данных об изделии и обмен этими данными. Часть 31. Методология и основы аттестационного тестирования. Общие положения"

ИСО 10303-42:2000

-

*

ИСО/МЭК 10646-1:2000

-

*

ИСО 13584-1:2001

IDT

ГОСТ Р ИСО 13584-1-2006 "Системы автоматизации производства и их интеграция. Библиотека деталей. Часть 1. Обзор и основные принципы"

ИСО 13584-24

-

*

ИСО 13584-26:2000

IDT

ГОСТ Р ИСО 13584-26-2006 "Системы автоматизации производства и их интеграция. Библиотека деталей. Часть 26. Логический ресурс. Идентификация поставщика информации"

ИСО 13584-31:1999

-

*

ИСО 13584-42:1998

-

*

* Соответствующий национальный стандарт отсутствует. До его утверждения рекомендуется использовать перевод на русский язык данного международного стандарта. Перевод данного международного стандарта находится в Федеральном информационном фонде технических регламентов и стандартов.

Примечание - В настоящей таблице использовано следующее условное обозначение степени соответствия стандартов:

- IDT - идентичные стандарты.


Библиография

[1]

ИСО/МЭК 1539 (все части)

Информационные технологии. Языки программирования. Фортран

(ISO/IEC 1539 (all parts))

(Information technology - Programming languages - Fortran)

[2]

ИСО 10303-41:2000

Системы промышленной автоматизации и интеграция. Представление данных о продукции и обмен данными. Часть 41. Интегрированные родовые ресурсы. Основы описания продукции и программного обеспечения

(ISO 10303-41:2000)

(Industrial automation systems and integration - Product data representation and exchange - Part 41: Integrated generic resource: Fundamentals of product description and support)

Электронный текст документа

и сверен по:

, 2012