Шаблон:Relation diagram add

Материал из CAMaaS preliminary wiki
Перейти к навигации Перейти к поиску

Создание диаграммы отношений классов реализуется набором шаблонов:

  1. {{relation_diagram|diagram=<имя диаграммы>|graph=<имя графа>|type=<опциональный тип изображения графа>|border=<опциональный тип границы изображения графа>|format=<опциональный формат файла изображения>|size=<опциональный размер изображения графа на странице>|location=<опциональная позиция изображения на странице>|alignment=<опциональное выравнивание изображения на странице>}} - объявление диаграммы отношений с именами диаграммы отношений (diagram) и графа (graph), а также обязательным наполнением, задаваемым нижеследующими шаблонами. Имя графа нигде не отображается и используется при генерации имени файла изображения. Файл будет уникален только если имя графа задано латинскими символами, цифрами и знаком "_".
  2. {{relation_diagram addref|class=<имя класса>|ref=<ссылка в синтаксисе вики>}} - опциональная ассоциация узла графа (т.е. класса диаграммы отношений) с внутренним или внешним ресурсом с помощью механизма HTML map.
  3. {{relation_diagram add|<тип отношения>|<имя класса, инициирующего отношение>|<имя класса, принимающего отношение>|headlabel=<Опциональная подпись у узла, принимающего отношение>|taillabel=<Опциональная одпись у узла задающего отношение>|label=<Опциональная подпись отношения>}} - добавление двух классов и отношения между ними. Если класс с указанным именем уже существует на диаграмме, то новый узел не создается; тип отношения задается одним из ключевых слов:
    1. implementation - реализация интерфейса;
    2. inheritance - наследование;
    3. aggregation - агрегирование;
    4. composition - композиция;
    5. association - ассоциация.

Диаграмма, описанная в данном синтаксисе интерпретируется в синтаксис dot, который подается через расширение GraphViz на вход интерпретатора GraphViz. Загружаемый на вики файл имеет имя, заданное именем статьи. Поэтому при использовании шаблона {{relation_diagram}} внутри другого шаблона может возникать проблема, связанная с большим количеством одинаковых диаграмм.

Использование дополнительных атрибутов и связанные с этим ограничения (например, на размеры) изображения графа type, border, size, format, location, alignment, link и alt: Wikipedia:Wikipedia:Extended_image_syntax.

Поддерживаемые параметры атрибута format: png, gif, jpg, jpeg, svg.

Использование:

{{relation_diagram|diagram=Опциональное имя диаграммы|graph=OptionalGraphName|type=frame|content=
{{relation_diagram addref|class=Interface1|ref=[[ImplementationClass interwiki reference]]}}
{{relation_diagram addref|class=DerivedClass|ref=https://www.google.com}}
{{relation_diagram add|implementation|ImplementationClass|Interface1}}
{{relation_diagram add|implementation|ImplementationClass|Interface2}}
{{relation_diagram add|inheritance|DerivedClass|BaseClass}}
{{relation_diagram add|aggregation|Aggregate|Aggregatee|headlabel=*|taillabel=1|label=<<связь>>}}
{{relation_diagram add|composition|Composition|Element|headlabel=1|taillabel=1}}
{{relation_diagram add|association|Association1|Association2}}
}}

По описанной выше причине, результат см. в отдельном описании.