Update epc_rdf-star_v1.md

This commit is contained in:
Dmitry 2025-10-16 17:51:18 +03:00 committed by GitHub
parent 80d561a860
commit cb1e0f589a
No known key found for this signature in database
GPG key ID: B5690EEEBB952194

View file

@ -375,113 +375,123 @@ Docflow:
```mermaid
graph TB
Event1(("Событие1:<br/>Заявление подано"))
Event2(("Событие2:<br/>Согласование"))
Event3(("Событие3:<br/>Отказ"))
%% Узлы без сложных подписей в самих узлах
Event1(("Событие1"))
Event2(("Событие2"))
Event3(("Событие3"))
Operation1["Операция1:<br/>Рассмотрение заявления"]
Operation1[Операция1]
Document1[/"Документ1:<br/>Заявление составленное"/]
Document2[/"Документ2:<br/>Заявление согласованное"/]
Document3[/"Документ3:<br/>Заявление не согласованное"/]
Document1[/Документ1/]
Document2[/Документ2/]
Document3[/Документ3/]
%% Основные связи процесса
Event1 -- "инициирует" --> Operation1
Document1 -- "входной документ" --> Operation1
%% Процессные связи с подписями
Event1 -->|инициирует| Operation1
Operation1 -->|утвердить| Event2
Operation1 -->|отклонить| Event3
%% Два возможных исхода операции
Operation1 -- "утвердить" --> Event2
Operation1 -- "отклонить" --> Event3
%% Документные связи
Document1 -->|входной| Operation1
Operation1 -.->|создает| Document2
Operation1 -.->|создает| Document3
%% Связи создания документов
Operation1 -. "создает" .-> Document2
Operation1 -. "создает" .-> Document3
%% Связи валидации
Event2 -->|подтверждает| Document2
Event3 -->|отклоняет| Document3
%% Специальные связи между событиями и документами
Event2 == "подтверждает" ==> Document2
Event3 == "отклоняет" ==> Document3
%% Статусы как отдельные узлы
Status1[status: НОВЫЙ]
Status2[status: УТВЕРЖДЁН]
Status3[status: ОТКЛОНЁН]
%% Статусы документов
Document1 -.- "status: НОВЫЙ"
Document2 -.- "status: УТВЕРЖДЁН"
Document3 -.- "status: ОТКЛОНЁН"
Document1 --> Status1
Document2 --> Status2
Document3 --> Status3
classDef event fill:#ffcccc,stroke:#d60000,stroke-width:2px
classDef function fill:#e1f5e1,stroke:#4caf50,stroke-width:2px
classDef document fill:#cccccc,stroke:#555,stroke-width:2px
classDef status fill:#f0f0f0,stroke:#999,stroke-dasharray: 3 3
class Event1,Event2,Event3 event
class Operation1 function
class Document1,Document2,Document3 document
class Status1,Status2,Status3 status
```
## Упрощенный вариант с корректным синтаксисом Mermaid
## Минималистичный рабочий вариант
```mermaid
graph TB
A(("Событие1: Заявление подано"))
B["Операция1: Рассмотрение заявления"]
C(("Событие2: Согласование"))
D(("Событие3: Отказ"))
A(("Событие1"))
B[Операция1]
C(("Событие2"))
D(("Событие3"))
E[/Документ1/]
F[/Документ2/]
G[/Документ3/]
E[/"Документ1: Заявление составленное"/]
F[/"Документ2: Заявление согласованное"/]
G[/"Документ3: Заявление не согласованное"/]
%% Процессные связи
A --> B
E --> B
B --> C
B --> D
%% Документные связи
E --> B
B -.-> F
B -.-> G
C --> F
D --> G
%% Связи валидации (толстые линии)
C ==> F
D ==> G
%% Подписи для связей валидации
linkStyle 5 stroke:#0066cc,stroke-width:3px
linkStyle 6 stroke:#cc0000,stroke-width:3px
classDef event fill:#ffcccc,stroke:#d60000,stroke-width:2px
classDef function fill:#e1f5e1,stroke:#4caf50,stroke-width:2px
classDef document fill:#cccccc,stroke:#555,stroke-width:2px
classDef event fill:#ffcccc,stroke:#d60000
classDef function fill:#e1f5e1,stroke:#4caf50
classDef document fill:#cccccc,stroke:#555
class A,C,D event
class B function
class E,F,G document
```
## Текстовая легенда с пояснениями
## Текстовое описание с пояснениями
```
ЛЕГЕНДА СВЯЗЕЙ:
БИЗНЕС-ПРОЦЕСС РАССМОТРЕНИЯ ЗАЯВЛЕНИЯ:
Тонкая сплошная стрелка (→) - процессный поток
Тонкая пунктирная стрелка (-.→) - создание документа
Толстая сплошная стрелка (==>) - связь валидации
ЭЛЕМЕНТЫ:
- Событие1: Заявление подано
- Операция1: Рассмотрение заявления
- Событие2: Согласование
- Событие3: Отказ
- Документ1: Заявление составленное (статус: НОВЫЙ)
- Документ2: Заявление согласованное (статус: УТВЕРЖДЁН)
- Документ3: Заявление не согласованное (статус: ОТКЛОНЁН)
СВЯЗИ ВАЛИДАЦИИ:
- Событие2 ==> Документ2: "Согласование подтверждает заявление"
- Событие3 ==> Документ3: "Отказ отклоняет заявление"
СВЯЗИ:
1. Событие1 → Операция1 (инициирует процесс)
2. Документ1 → Операция1 (входной документ)
3. Операция1 → Событие2 (утвердить)
4. Операция1 → Событие3 (отклонить)
5. Операция1 -.-→ Документ2 (создает)
6. Операция1 -.-→ Документ3 (создает)
7. Событие2 ==> Документ2 (подтверждает)
8. Событие3 ==> Документ3 (отклоняет)
СТАТУСЫ ДОКУМЕНТОВ:
- Документ1: НОВЫЙ (входной документ)
- Документ2: УТВЕРЖДЁН (результат согласования)
- Документ3: ОТКЛОНЁН (результат отказа)
ЛОГИКА:
- Процесс начинается с События1 и Документа1
- Операция1 анализирует заявление
- Возможны два исхода:
* Утверждение: Событие2 подтверждает Документ2
* Отказ: Событие3 отклоняет Документ3
```
## Компактное RDF-star описание с типами связей
## RDF-star описание
```turtle
@prefix epc: <http://example.org/epc#> .
@prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> .
@prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> .
# Экземпляры
epc:Event1 rdf:type epc:Event ; rdfs:label "Заявление подано" .
epc:Event2 rdf:type epc:Event ; rdfs:label "Согласование" .
epc:Event3 rdf:type epc:Event ; rdfs:label "Отказ" .
@ -490,24 +500,14 @@ epc:Document1 rdf:type epc:Document ; rdfs:label "Заявление соста
epc:Document2 rdf:type epc:Document ; rdfs:label "Заявление согласованное" .
epc:Document3 rdf:type epc:Document ; rdfs:label "Заявление не согласованное" .
# Процессные связи
<<epc:Event1 epc:triggers epc:Operation1>> epc:linkStyle "solid" .
<<epc:Operation1 epc:produces epc:Event2>> epc:linkStyle "solid" .
<<epc:Operation1 epc:produces epc:Event3>> epc:linkStyle "solid" .
# Документные связи
<<epc:Document1 epc:inputs epc:Operation1>> epc:linkStyle "solid" .
<<epc:Operation1 epc:creates epc:Document2>> epc:linkStyle "dashed" .
<<epc:Operation1 epc:creates epc:Document3>> epc:linkStyle "dashed" .
# Связи валидации
<<epc:Event2 epc:validates epc:Document2>>
epc:linkStyle "thick" ;
epc:label "подтверждает" .
<<epc:Event3 epc:invalidates epc:Document3>>
epc:linkStyle "thick" ;
epc:label "отклоняет" .
epc:Event1 epc:triggers epc:Operation1 .
epc:Document1 epc:inputs epc:Operation1 .
epc:Operation1 epc:produces epc:Event2 .
epc:Operation1 epc:produces epc:Event3 .
epc:Operation1 epc:creates epc:Document2 .
epc:Operation1 epc:creates epc:Document3 .
<<epc:Event2 epc:validates epc:Document2>> epc:action "подтверждает" .
<<epc:Event3 epc:invalidates epc:Document3>> epc:action "отклоняет" .
```
Этот вариант использует только поддерживаемый синтаксис Mermaid и четко разделяет три типа связей между объектами с помощью разных стилей линий.
Этот вариант должен работать корректно, так как использует только базовый синтаксис Mermaid без сложных конструкций. Все дополнительные пояснения вынесены в текстовое описание.