ISO 10303-21
ملف STEP هو صيغة شائعة الاستخدام لتبادل البيانات [ 1 ] . يمكن لمعيار ISO 10303 تمثيل الكائنات ثلاثية الأبعاد في التصميم بمساعدة الحاسوب (CAD) والمعلومات ذات الصلة. ملف STEP هو نص ASCII بالتنسيق المحدد في معيار ISO 10303-21، وهو معيار ترميز النص الواضح لبنية التبادل . [ 2 ]
تحدد المواصفة القياسية ISO 10303-21 آلية ترميز البيانات المتوافقة مع مخطط معين في لغة نمذجة البيانات EXPRESS المحددة في المواصفة القياسية ISO 10303-11 . يُطلق على ملف STEP أيضًا اسم ملف p21 أو ملف STEP الفعلي . تشير امتدادات الملفات .stp و .step إلى أن الملف يحتوي على بيانات متوافقة مع بروتوكولات تطبيق STEP، بينما يُستخدم الامتداد .p21 لجميع الأغراض الأخرى. [ 3 ]
لا يقتصر استخدام معيار ISO 10303-21 على برنامج STEP. إذ تحدد فئات المؤسسة الصناعية ومعيار تكامل CIMSteel السابق (CIS/2) مخطط EXPRESS لبيانات نمذجة معلومات المباني ، وتحدد معيار ISO 10303-21 كترميز للتبادل .
مثال
يوضح هذا الرسم البياني مثيلات الكيانات والمراجع بينها في ملف يمثل نموذجًا صلبًا لأسطوانة.

![]()
تاريخ
بعض التفاصيل التي يجب الانتباه إليها:
- احتوت الطبعة الأولى، ISO 10303-21:1994، على بعض الأخطاء، والتي تم تصحيحها من خلال تصحيح فني. لذلك، يُنصح المستخدمون بدراسة الطبعة الثانية بدلاً من ذلك (انظر أدناه).
- تضمنت الطبعة الثانية، ISO 10303-21:2002، التصحيحات والتوسعات لعدة أقسام من البيانات.
- أضافت الطبعة الثالثة، ISO 10303-21:2016، أقسامًا خاصة بالربط والمراجع والتوقيع لدعم المراجع الخارجية، ودعم هياكل التبادل المضغوطة في أرشيف قائم على ZIP، والتوقيعات الرقمية، وتشفير الأحرف UTF-8. [ 4 ]
- حدد الجزء 21 فئتين للمطابقة. ويكمن الاختلاف بينهما فقط في كيفية ترميز مثيلات الكيانات المعقدة.
- يتم استخدام فئة المطابقة 1 دائمًا لفرض ما يسمى بالتعيين الداخلي ، وهو أكثر إيجازًا.
- يفرض صنف المطابقة 2، غير المستخدم عمليًا، دائمًا التعيين الخارجي . نظريًا، يسمح هذا بتوافق أفضل بين المعالجات اللاحقة، حيث قد يعرف المعالج اللاحق كيفية التعامل مع بعض الأنواع الرئيسية، ولكنه قد لا يعرف الأنواع الفرعية المحددة.
- يفرض الإصدار الأول من الجزء 21 استخدام ما يسمى بالأسماء المختصرة ، وهي اختيارية في الإصدار الثاني. ومع ذلك، نادراً ما تُستخدم الأسماء المختصرة عملياً.
- يسمح الإصدار الثاني باستخدام أقسام بيانات متعددة. ومع ذلك، عمليًا، تستخدم معظم التطبيقات قسم بيانات واحد فقط (ترميز الإصدار الأول).
وحدات البناء ISO 10303-21
مثال
مثال نموذجي يبدو كالتالي:
ISO-10303-21؛ العنوان؛ وصف الملف ( /* الوصف */ ('مثال بسيط لـ AP214 بجزء واحد'), /* مستوى التنفيذ */ '2;1'); اسم_الملف( /* الاسم */ 'demo', /* الطابع الزمني */ '2003-12-27T11:57:53', /* المؤلف */ ('لوثار كلاين'), /* المنظمة */ ('LKSoft'), /* preprocessor_version */ ' ', /* originating_system */ 'IDA-STEP', /* المصادقة */ ' '); FILE_SCHEMA (('AUTOMOTIVE_DESIGN { 1 0 10303 214 2 1 1}')); ENDSEC; بيانات؛ #10=ORGANIZATION('O0001','LKSoft','company'); #11=PRODUCT_DEFINITION_CONTEXT('تعريف الجزء',#12,'التصنيع'); #12=APPLICATION_CONTEXT('التصميم الميكانيكي'); #13=APPLICATION_PROTOCOL_DEFINITION('','automotive_design',2003,#12); #14=PRODUCT_DEFINITION('0',$,#15,#11); #15=PRODUCT_DEFINITION_FORMATION('1',$,#16); #16=PRODUCT('A0001','Test Part 1','',(#18)); #17=PRODUCT_RELATED_PRODUCT_CATEGORY('part',$,(#16)); #18=PRODUCT_CONTEXT('',#12,''); #19=APPLIED_ORGANIZATION_ASSIGNMENT(#10,#20,(#16)); #20=ORGANIZATION_ROLE('id owner'); ENDSEC; END-ISO-10303-21; قسم الرأس
كما هو موضح في المثال أعلاه، يتم تقسيم الملف إلى قسمين بعد الكلمة المفتاحية الأولية ISO-10303-21؛ :
يحتوي قسم الرأس على بنية ثابتة تتكون من 3 إلى 6 مجموعات بالترتيب المحدد. باستثناء حقلي البيانات time_stamp و FILE_SCHEMA، يمكن أن تحتوي جميع الحقول على سلاسل نصية فارغة.
- وصف الملف
- الوصف . وصف موجز لمحتويات الملف.
- مستوى التنفيذ . يحدد هذا الخيار إصدار هذا الملف وتوافقه. الإصدارات الممكنة هي "1" للمعيار الأصلي الصادر عام 1994، و"2" للتصويب التقني الصادر عام 1995، و"3" للإصدار الثاني. أما خيار التوافق فهو إما "1" للربط الداخلي أو "2" للربط الخارجي لمثيلات الكيانات المعقدة. غالبًا ما نجد القيمة "2;1". القيمة "2;2" التي تفرض الربط الخارجي ممكنة أيضًا، ولكنها نادرة الاستخدام. تشير القيمتان "3;1" و"3;2" إلى ملفات STEP الموسعة كما هو محدد في معيار 2001، مع عدة أقسام بيانات، ومخططات متعددة، ودعم FILE_POPULATION.
- اسم الملف
- اسم بنية التبادل هذه. قد يتطابق مع اسم الملف في نظام الملفات أو يعكس البيانات الموجودة في هذا الملف. لا توجد قاعدة صارمة لكيفية استخدام هذا الحقل.
- يشير الطابع الزمني إلى وقت إنشاء هذا الملف. يُعرض الوقت بتنسيق التوقيت الدولي ISO 8601 ، على سبيل المثال 2003-12-27T11:57:53 ليوم 27 ديسمبر 2003، أي قبل دقيقتين من الظهر.
- يرجى كتابة اسم وعنوان البريد للشخص الذي أنشأ هيكل التبادل هذا.
- المنظمة: المنظمة التي ينتمي إليها الشخص
- preprocessor_version اسم النظام وإصداره الذي ينتج ملف STEP هذا
- originating_system اسم النظام وإصداره الذي أنشأ في الأصل المعلومات الواردة في ملف STEP هذا.
- يرجى ذكر اسم وعنوان البريد للشخص الذي سمح بإنشاء هذا الملف.
- FILE_SCHEMA. يحدد مخططًا واحدًا أو أكثر من مخططات Express التي تحكم المعلومات في قسم (أقسام) البيانات. بالنسبة لملفات الإصدار الأول، يمكن إدراج مخطط EXPRESS واحد فقط مع مُعرّف كائن ASN.1 اختياري لإصدار المخطط. أما ملفات الإصدار الثاني، فيمكنها تحديد عدة مخططات EXPRESS.
مجموعات العناوين الثلاثة الأخيرة صالحة فقط في ملفات الإصدار الثاني.
- يشير FILE_POPULATION إلى مجموعة بيانات صالحة (مجموعة من مثيلات الكيانات) تتوافق مع مخططات EXPRESS. ويتم ذلك من خلال جمع البيانات من عدة أقسام بيانات والمثيلات المرجعية من أقسام بيانات أخرى.
- governor_schema ، وهو مخطط EXPRESS الذي ينتمي إليه السكان المشار إليهم والذي يمكن التحقق من صحته من خلاله.
- تُستخدم طريقة التحديد لتحديد الحالات التي تنتمي إلى المجموعة. توجد ثلاث طرق مُعرّفة مسبقًا: حدود القسم، وتضمين جميع الحالات المتوافقة، وتضمين الحالات المُشار إليها.
- الأقسام_الخاضعة ، وهي أقسام البيانات التي تنتمي مثيلات كياناتها بالكامل إلى السكان.
- يُعدّ مفهوم FILE_POPULATION قريبًا جدًا من مفهوم schema_instance في معيار SDAI. مع الأسف، لم يكن من الممكن التوصل إلى اتفاق لدمج هذين المفهومين خلال عملية التوحيد القياسي. لذا، يُضيف معيار JSDAI سمات إضافية إلى FILE_POPULATION على شكل تعليقات ذكية لتغطية جميع المعلومات الناقصة في schema_instance. هذا مدعوم في كلٍ من عمليات الاستيراد والتصدير.
- يُتيح خيار SECTION_LANGUAGE تحديد لغة افتراضية لجميع أقسام البيانات أو لقسم مُحدد منها. وهذا ضروري لنماذج Express التي لا تُتيح إمكانية تحديد لغة عرض سمات السلاسل النصية للكيانات، مثل الاسم والوصف.
- تتيح خاصية SECTION_CONTEXT إمكانية تحديد معلومات سياقية إضافية لجميع أقسام البيانات أو قسم واحد منها. ويمكن استخدام هذه الخاصية، على سبيل المثال، في STEP-APs لتحديد فئة المطابقة التي يغطيها قسم بيانات معين.
قسم البيانات
يحتوي قسم البيانات على بيانات التطبيق وفقًا لمخطط Express محدد. ويتبع ترميز هذه البيانات بعض المبادئ البسيطة.
- اسم المثيل: يُمنح كل مثيل كيان في بنية التبادل اسمًا فريدًا على النحو التالي
#1234: . يجب أن يتكون اسم المثيل من عدد موجب (أكبر من صفر) وعادةً ما يكون أصغر من 2 ^63 . يكون اسم المثيل صالحًا محليًا فقط ضمن ملف STEP. إذا تم تصدير المحتوى نفسه مرة أخرى من نظام، فقد تختلف أسماء المثيلات لنفس الكيانات. يُستخدم اسم المثيل أيضًا للإشارة إلى مثيلات كيانات أخرى من خلال قيم السمات أو أعضاء التجميع. يمكن تعريف المثيل المشار إليه قبل المثيل الحالي أو بعده. - تُمثَّل حالات أنواع بيانات الكيان الواحد بكتابة اسم الكيان بأحرف كبيرة، ثم تُتبع بقيم السمات بالترتيب المحدد بين قوسين. انظر المثال
#16=PRODUCT(...)أعلاه. - يتم تمثيل حالات أنواع بيانات الكيانات المعقدة في ملف STEP باستخدام إما التعيين الداخلي أو التعيين الخارجي.
- يجب استخدام الربط الخارجي دائمًا إذا كان مثيل الكيان المعقد يتكون من أكثر من كيان فرعي واحد. في هذه الحالة، تُعطى جميع قيم مثيل الكيان الفردي بشكل مستقل عن بعضها البعض بالترتيب الأبجدي كما هو موضح أعلاه، مع تجميع جميع قيم الكيان معًا بين قوسين.
- يُستخدم التعيين الداخلي افتراضيًا لخيار المطابقة 1 عندما يتكون مثيل الكيان المعقد من كيان فرعي واحد فقط. ويكون الترميز مشابهًا لترميز مثيل الكيان الواحد مع الترتيب الإضافي المحدد بتعريف النوع الفرعي.
- ربط قيم السمات:
- يتم تعيين السمات الصريحة فقط. أما السمات العكسية والمشتقة والمعاد تعريفها فلا يتم سردها لأن قيمها يمكن استنتاجها من السمات الأخرى.
- يتم إعطاء قيم السمات غير المُعينة على النحو التالي
$: - يتم ترميز السمات الصريحة التي أعيد تعريفها على أنها مشتقة في نوع فرعي كما
*في موضع سمة النوع الأصلي.
- ربط أنواع البيانات الأخرى:
- يتم كتابة قيم التعداد والقيم المنطقية والقيم البوليانية بأحرف كبيرة مع نقطة في البداية والنهاية مثل
.TRUE.. - تُوضع قيم السلاسل النصية بين علامتي اقتباس مفردتين
'...'. بالنسبة للأحرف التي يزيد رمزها عن 126، يُستخدم ترميز خاص. يدعم البرنامج مجموعات الأحرف المحددة في معياري ISO 8859 و10646. تجدر الإشارة إلى أنه لا يمكن استخدام مجموعات الأحرف النموذجية ذات 8 بت (مثل أحرف غرب أوروبا) أو 16 بت (يونيكود) مباشرةً مع سلاسل ملفات STEP، بل يجب فك ترميزها بطريقة خاصة. - تُستخدم الأعداد الصحيحة والقيم الحقيقية بشكل مشابه للغات البرمجة النموذجية
- تُشفّر القيم الثنائية (تسلسلات البتات) بنظام العد الست عشري وتُحاط بعلامات اقتباس مزدوجة، حيث يشير الحرف الأول إلى عدد البتات غير المستخدمة (0، 1، 2، أو 3)، متبوعًا بتشفير البيانات الست عشري بأحرف كبيرة. تُشفّر القيمة الثنائية كاملةً كرقم ست عشري واحد، حيث تكون البتات ذات الرتبة الأعلى في الحرف الست عشري الأول، والبتات ذات الرتبة الأدنى في الحرف الأخير.
- يتم وضع عناصر المجموعات (SET، BAG، LIST، ARRAY) بين قوسين، مفصولة بـ
,. - يجب توخي الحذر عند اختيار أنواع البيانات بناءً على أنواع البيانات المحددة. ويتم هنا ربط اسم نوع البيانات المحدد أيضًا.
- يتم كتابة قيم التعداد والقيم المنطقية والقيم البوليانية بأحرف كبيرة مع نقطة في البداية والنهاية مثل
- انظر أيضًا "ربط Express بجافا" لمزيد من التفاصيل حول هذا الموضوع.
نقد
ربما تكون الميزة الوحيدة لملفات STEP هي اعتمادها الواسع في العديد من برامج التصميم بمساعدة الحاسوب (CAD). من ناحية أخرى، فإن تنسيقها، وخاصة لغة نمذجة البيانات EXPRESS، له بعض العيوب:
- المواصفات غير متاحة مجاناً (يجب عليك الدفع مقابلها).
- لا يمكن قراءة ملف STEP بشكل تسلسلي. يمكن أن تكون الكيانات بأي ترتيب، ويمكنها الإشارة إلى كيانات أخرى في الملف (انظر الكيان رقم 14 في المثال أعلاه). لذلك، يجب قراءة الملف بأكمله في الذاكرة وتقسيمه إلى رموز قبل تحليله.
- لا يُعدّ هذا التنسيق فعالاً من حيث التخزين. فعلى سبيل المثال، يتطلب تعيين رمز لون RGB لحافة ما لا يقل عن 6 كيانات أخرى، ويتطلب تحديد تحويل ما لا يقل عن 5 كيانات إضافية (مستوى، ومحور ثنائي الأبعاد، ونقطة ديكارتية، وكياني اتجاه).
- التنسيق غير مُحدد بدقة. على سبيل المثال، يمكن ترميز المثلث نفسه في ملف STEP بطرقٍ عديدة ومختلفة (باستخدام FACET_BREP، وADVANCED_FACE، وPOLY_LOOP، وEDGE_LOOP، أو MANIFOLD_SOLID_REPRESENTATION، أو SHELL_BASED_REPRESENTATION، إلخ). يحتاج برنامج الاستيراد إلى التعرّف على جميع هذه الصيغ لقراءة ملف STEP بشكلٍ متسق. لا تدعم معظم برامج التصميم بمساعدة الحاسوب (CAD) المجموعة الكاملة من إدخالات STEP، وبالتالي، فهي تقتصر على مجموعة فرعية مُحددة من كيانات STEP. على سبيل المثال ، راجع قائمة كيانات STEP المدعومة في دليل Autodesk .
- ونتيجة لذلك، تحتوي معظم برامج التصميم بمساعدة الحاسوب (CAD) على نوع من ميزة "إصلاح بيانات الهندسة بعد الاستيراد"، والتي قد تعمل أو لا تعمل.
انظر أيضاً
- دورات تأسيس الصناعة (IFC)
- تمثيل الحدود
- IGES
- STL (تنسيق الملف)
- ملف DXF
- تقنية كاسكيد المفتوحة - مكتبة STEP مفتوحة المصدر تم استخدامها لبناء برنامج FreeCAD
روابط خارجية
- ANSI ISO-10303-21 - المواصفات الرسمية لدى ANSI
- محلل وعارض ملفات STEP - تحليل وعرض ملف STEP الخاص بمعيار ISO 10303 الجزء 21
- عارض ملفات STEP عبر الإنترنت
- عارضات ملفات STE
- STEPcode - خليفة مكتبة فئات STEP التابعة للمعهد الوطني للمعايير والتكنولوجيا (NIST)، وهي مكتبة C++ الرسمية لإنشاء برامج استيراد وتصدير ملفات STEP
مراجع
- ↑ "ملف STEP، ISO 10303-21" . مكتبة الكونغرس . 3 يناير 2017.
- ↑ ISO 10303-21:2002 أنظمة الأتمتة الصناعية والتكامل - تمثيل بيانات المنتج وتبادلها - الجزء 21: أساليب التنفيذ: ترميز نص واضح لبنية التبادل
- ↑ سكرتير اللجنة الفنية 184/اللجنة الفرعية 4 التابعة للمنظمة الدولية للمعايير "القائمة التراكمية للقرارات" القرار 583 (شتوتغارت، ألمانيا، - يونيو 2003) "تسجيل أنواع MIME الخاصة باللجنة الفرعية 4".
- ↑ ISO 10303-21:2016. أنظمة الأتمتة الصناعية والتكامل - تمثيل بيانات المنتج وتبادلها - الجزء 21: أساليب التنفيذ: ترميز نص واضح لبنية التبادل
- ISO 10303
