Найдите элементы модели архитектуры с помощью запроса
[
находит все пути к элементу, начинающие с корневой архитектуры модели, которые удовлетворяют paths
] = find(object
,constraint
,Name,Value
)constraint
запросите с дополнительными опциями, заданными одними или несколькими аргументами name-value.
[
возвращает элементы компонента paths
, elements
] = find(___)elements
и их paths
это удовлетворяет constraint
запрос. Следуйте за синтаксисом выше для входных параметров. Если rootArch
не обеспечивается, затем функция находит элементы модели в корневой архитектуре модели. Выходной аргумент paths
содержит полностью определенный именованный путь для каждого компонента в elements
от данной корневой архитектуры.
[
находит весь компонент, порт или элементы коннектора elements
] = find(___)elements
, это удовлетворяет constraint
запросите с дополнительными опциями, заданными одними или несколькими аргументами name-value, которые должны включать 'Port'
или 'Connector'
для 'ElementType'
.
[
находит все пути к элементу, начинающие с заданной корневой архитектуры paths
] = find(object
,constraint
,rootArch
,Name,Value
)rootArch
это удовлетворяет constraint
запросите с дополнительными опциями, заданными одними или несколькими аргументами name-value.
Импортируйте модель и запустите запрос, чтобы выбрать элементы архитектуры, которые имеют стереотип на основе заданного подограничения.
import systemcomposer.query.*; scKeylessEntrySystem modelObj = systemcomposer.openModel('KeylessEntryArchitecture'); find(modelObj,HasStereotype(IsStereotypeDerivedFrom('AutoProfile.BaseComponent')),... 'Recurse',true,'IncludeReferenceModels',true)
Создайте запрос, чтобы найти компоненты, которые содержат букву 'c'
в их 'Name'
свойство.
constraint = contains(systemcomposer.query.Property('Name'),'c'); find(modelObj,constraint,'Recurse',true,'IncludeReferenceModels',true)
Найдите элементы в архитектуре основанными на модели на запросе System Composer™.
Создайте модель
Создайте модель архитектуры с двумя компонентами.
m = systemcomposer.createModel('exModel'); comps = m.Architecture.addComponent({'c1','c2'});
Создайте профиль и стереотипы
Создайте профиль и стереотипы для вашей модели архитектуры.
pf = systemcomposer.profile.Profile.createProfile('mProfile'); b = pf.addStereotype('BaseComp','AppliesTo','Component','Abstract',true); s = pf.addStereotype('sComp','Parent',b);
Примените профиль и стереотипы
Примените профиль и стереотипы к вашей модели архитектуры.
m.Architecture.applyProfile(pf.Name) comps(1).applyStereotype(s.FullyQualifiedName)
Найдите элемент
Найдите элемент в своей архитектуре основанным на модели на запросе.
import systemcomposer.query.* [p, elem] = find(m, HasStereotype(IsStereotypeDerivedFrom('mProfile.BaseComp')),... 'Recurse',true,'IncludeReferenceModels',true)
p = 1x1 cell array
{'exModel/c1'}
elem = Component with properties: IsAdapterComponent: 0 Architecture: [1x1 systemcomposer.arch.Architecture] Name: 'c1' Parent: [1x1 systemcomposer.arch.Architecture] Ports: [0x0 systemcomposer.arch.ComponentPort] OwnedPorts: [0x0 systemcomposer.arch.ComponentPort] OwnedArchitecture: [1x1 systemcomposer.arch.Architecture] Position: [15 15 65 76] Model: [1x1 systemcomposer.arch.Model] SimulinkHandle: 2.0032 SimulinkModelHandle: 0.0032 UUID: '6ce48729-66ad-46cc-85ac-383ef0c147c5' ExternalUID: ''
Очистка
Не прокомментируйте, чтобы удалить модель и профиль.
% m.close('force') % systemcomposer.profile.Profile.closeAll
Создайте модель, чтобы запросить и создать два компонента.
m = systemcomposer.createModel('exModel'); comps = m.Architecture.addComponent({'c1','c2'}); port = comps(1).Architecture.addPort('cport1','in');
Создайте запрос, чтобы найти порты, которые содержат букву 'c'
в их 'Name'
свойство.
constraint = contains(systemcomposer.query.Property('Name'),'c'); find(m,constraint,'Recurse',true,'IncludeReferenceModels',true,'ElementType','Port')
import systemcomposer.query.*; scKeylessEntrySystem modelObj = systemcomposer.openModel('KeylessEntryArchitecture'); find(modelObj,HasStereotype(IsStereotypeDerivedFrom('AutoProfile.BaseComponent')),... modelObj.Architecture,'Recurse',true,'IncludeReferenceModels',true)
object
— МодельМодель в виде systemcomposer.arch.Model
возразите, чтобы запросить использование constraint
.
constraint
— ЗапросЗапросите в виде systemcomposer.query.Constraint
объект, представляющий особые условия. Ограничение может содержать подограничение, к которому можно соединить с другим ограничением с помощью AND
или OR
. Ограничение может отрицаться с помощью NOT
.
Запросите объекты и условия для ограничений
Объект запроса | Условие |
---|---|
Property | Неоцененное значение для данного свойства или стереотипного свойства. |
PropertyValue | Оцененное значение свойства от объекта System Composer или стереотипного свойства. |
HasPort | Компонент имеет порт, который удовлетворяет данному подограничению. |
HasInterface | Порт имеет интерфейс, который удовлетворяет данному подограничению. |
HasInterfaceElement | Интерфейс имеет интерфейсный элемент, который удовлетворяет данному подограничению. |
HasStereotype | Элемент архитектуры имеет стереотип, который удовлетворяет данному подограничению. |
IsInRange | Значение свойства в данной области значений. |
AnyComponent | Элементом является компонент и не порт или коннектор. |
IsStereotypeDerivedFrom | Стереотип выведен из данного стереотипа. |
rootArch
— Корневая архитектура моделиArchitecture
свойство объекта моделиКорневая архитектура модели в виде systemcomposer.arch.Architecture
возразите или Architecture
свойство systemcomposer.arch.Model
объект.
Пример: modelObj.Architecture
Задайте дополнительные разделенные запятой пары Name,Value
аргументы. Name
имя аргумента и Value
соответствующее значение. Name
должен появиться в кавычках. Вы можете задать несколько аргументов в виде пар имен и значений в любом порядке, например: Name1, Value1, ..., NameN, ValueN
.
find(model,constraint,'Recurse',true,'IncludeReferenceModels',true)
Recurse
— Опция, чтобы рекурсивно искать модельtrue
или 1 (значение по умолчанию) | false
или 0Опция, чтобы рекурсивно искать модели или только искать определенный слой в виде 1 (true
) рекурсивно искать или 0 (false
) только искать определенный слой.
Пример: find(model,constraint,'Recurse',true)
Типы данных: логический
IncludeReferenceModels
— Опция, чтобы искать эталонные архитектурыfalse
или 0 (значений по умолчанию) | true
или 1Опция, чтобы искать эталонные архитектуры или не в виде 0 (false
) не искать архитектуры, на которые ссылаются, или 1 (true
) искать архитектуры, на которые ссылаются.
Пример: find(model,constraint,'IncludeReferenceModels',true)
Типы данных: логический
ElementType
— Опция, чтобы искать типом'Component'
(значение по умолчанию) | 'Port'
| 'Connector'
Опция, чтобы искать типом в виде 'Component'
найти, что компоненты удовлетворяют запросу, 'Port'
найти, что порты удовлетворяют запросу или 'Connector'
найти, что коннекторы удовлетворяют запросу.
Пример: find(model,constraint,'ElementType','Port')
Типы данных: char
paths
— Пути к элементуПути к элементу, возвращенные как массив ячеек из символьных векторов, которые удовлетворяют constraint
.
Типы данных: char
elements
— ЭлементыЭлементы, возвращенные как systemcomposer.arch.Element
объекты, которые удовлетворяют constraint
.
Термин | Определение | Приложение | Больше информации |
---|---|---|---|
архитектура | Архитектура System Composer™ представляет систему компонентов и как они взаимодействуют через интерфейс друг с другом структурно и поведенчески. Можно представлять определенные архитектуры с помощью альтернативных представлений. | Различные типы архитектур описывают различные аспекты систем:
| Составьте архитектуру визуально |
модель | Модель System Composer является файлом, который содержит архитектурную информацию, включая компоненты, порты, коннекторы, интерфейсы и поведения. | Выполните операции на модели:
Модели System Composer хранятся как файлы SLX. | Создайте модель архитектуры со ссылками требования и интерфейсами |
компонент | Компонент является нетривиальным, почти независимая, и заменимая часть системы, которая выполняет функцию clear в контексте архитектуры. Компонент задает элемент архитектуры, такой как функция, система, оборудование, программное обеспечение или другая концептуальная сущность. Компонент может также быть подсистемой или подфункцией. | Представленный как блок, компонент является частью модели архитектуры, которая может быть разделена на допускающие повторное использование артефакты. | Компоненты |
порт | Порт является узлом на компоненте или архитектуре, которая представляет точку взаимодействия с ее средой. Порт разрешает поток информации к и от других компонентов или систем. | Существуют различные типы портов:
| Порты |
коннектор | Коннекторы являются линиями, которые обеспечивают связи между портами. Коннекторы описывают как информационные потоки между компонентами или архитектурами. | Коннектор позволяет двум компонентам взаимодействовать, не задавая природу взаимодействия. Установите интерфейс на порте задавать, как компоненты взаимодействуют. | Связи |
Термин | Определение | Приложение | Больше информации |
---|---|---|---|
представление | Представление показывает настраиваемое подмножество элементов в модели. Представления могут быть отфильтрованы на основе стереотипов или имен компонентов, портов, и интерфейсов, наряду с именем, ввести, или модули интерфейсного элемента. Создайте представления путем добавления элементов вручную. Представления создают упрощенный способ работать с комплексными архитектурами путем фокусировки на определенных частях проекта архитектуры. | Можно использовать различные типы представлений, чтобы представлять систему:
Точка зрения представляет перспективу заинтересованной стороны, которая задает содержимое представления. | Моделирование архитектуры системы системы записи без ключа |
группа элемента | Группа элемента является группировкой компонентов в представлении. | Используйте группы элемента, чтобы программно заполнить представление. | |
запрос | Запрос является спецификацией, которая описывает определенные ограничения или критерии, которым удовлетворят элементы модели. | Используйте запросы, чтобы искать элементы с ограничительными критериями и отфильтровать представления. | Найдите элементы в модели Используя запросы |
диаграмма компонентов | Диаграмма компонентов представляет представление компонентами, портами и коннекторами на основе того, как модель структурирована. | Диаграммы компонентов позволяют вам программно или вручную добавляют и удаляют компоненты из представления. | Смотрите компоненты в пользовательских представлениях архитектуры |
иерархическая схема | Можно визуализировать иерархическую схему как представление с компонентами, портами, ссылочными типами, стереотипами компонента, и стереотипировать свойства. | Существует два типа иерархических схем:
| Отобразите иерархию иерархии компонентов и архитектуры Используя представления |
У вас есть модифицированная версия этого примера. Вы хотите открыть этот пример со своими редактированиями?
1. Если смысл перевода понятен, то лучше оставьте как есть и не придирайтесь к словам, синонимам и тому подобному. О вкусах не спорим.
2. Не дополняйте перевод комментариями “от себя”. В исправлении не должно появляться дополнительных смыслов и комментариев, отсутствующих в оригинале. Такие правки не получится интегрировать в алгоритме автоматического перевода.
3. Сохраняйте структуру оригинального текста - например, не разбивайте одно предложение на два.
4. Не имеет смысла однотипное исправление перевода какого-то термина во всех предложениях. Исправляйте только в одном месте. Когда Вашу правку одобрят, это исправление будет алгоритмически распространено и на другие части документации.
5. По иным вопросам, например если надо исправить заблокированное для перевода слово, обратитесь к редакторам через форму технической поддержки.