@startuml(id=person)
!global $C4_LIB_BRANCH="master"
!global $C4_LIB_BASE_URL="https://raw.githubusercontent.com/tmorin/plantuml-libs/"+$C4_LIB_BRANCH+"/c4model"
!includeurl $C4_LIB_BASE_URL/c4-all.puml
' !include c4-all.puml
Person("p1", "A person", "An optional description.")
@enduml

@startuml(id=external_person)
!global $C4_LIB_BRANCH="master"
!global $C4_LIB_BASE_URL="https://raw.githubusercontent.com/tmorin/plantuml-libs/"+$C4_LIB_BRANCH+"/c4model"
!includeurl $C4_LIB_BASE_URL/c4-all.puml
' !include c4-all.puml
ExternalPerson("ep1", "An external person", "An optional description.")
@enduml

@startuml(id=system)
!global $C4_LIB_BRANCH="master"
!global $C4_LIB_BASE_URL="https://raw.githubusercontent.com/tmorin/plantuml-libs/"+$C4_LIB_BRANCH+"/c4model"
!includeurl $C4_LIB_BASE_URL/c4-all.puml
' !include c4-all.puml
System("s1", "A system", "An optional description.")
@enduml

@startuml(id=external_system)
!global $C4_LIB_BRANCH="master"
!global $C4_LIB_BASE_URL="https://raw.githubusercontent.com/tmorin/plantuml-libs/"+$C4_LIB_BRANCH+"/c4model"
!includeurl $C4_LIB_BASE_URL/c4-all.puml
' !include c4-all.puml
ExternalSystem("es1", "An external system", "An optional description.")
@enduml

@startuml(id=container)
!global $C4_LIB_BRANCH="master"
!global $C4_LIB_BASE_URL="https://raw.githubusercontent.com/tmorin/plantuml-libs/"+$C4_LIB_BRANCH+"/c4model"
!includeurl $C4_LIB_BASE_URL/c4-all.puml
' !include c4-all.puml
Container("c1", "A container", "An optional description.", "optional technology")
@enduml

@startuml(id=database)
!global $C4_LIB_BRANCH="master"
!global $C4_LIB_BASE_URL="https://raw.githubusercontent.com/tmorin/plantuml-libs/"+$C4_LIB_BRANCH+"/c4model"
!includeurl $C4_LIB_BASE_URL/c4-all.puml
' !include c4-all.puml
Database("d1", "A database", "An optional description.", "optional technology")
@enduml

@startuml(id=component)
!global $C4_LIB_BRANCH="master"
!global $C4_LIB_BASE_URL="https://raw.githubusercontent.com/tmorin/plantuml-libs/"+$C4_LIB_BRANCH+"/c4model"
!includeurl $C4_LIB_BASE_URL/c4-all.puml
' !include c4-all.puml
Component("c1", "A component", "An optional description.", "optional technology")
@enduml

@startuml(id=boundary)
!global $C4_LIB_BRANCH="master"
!global $C4_LIB_BASE_URL="https://raw.githubusercontent.com/tmorin/plantuml-libs/"+$C4_LIB_BRANCH+"/c4model"
!includeurl $C4_LIB_BASE_URL/c4-all.puml
' !include c4-all.puml
left to right direction
Enterprise("e1", "An enterprise") {
    SystemBoundary("s1", "A system") {
        ContainerBoundary("c1", "A container") {
            note "the container area" as NC
        }
        note "the system area" as NS
    }
    note "the enterprise area" as NE
}
@enduml

@startuml(id=relationship)
!global $C4_LIB_BRANCH="master"
!global $C4_LIB_BASE_URL="https://raw.githubusercontent.com/tmorin/plantuml-libs/"+$C4_LIB_BRANCH+"/c4model"
!includeurl $C4_LIB_BASE_URL/c4-all.puml
' !include c4-all.puml
Person("p1", "A person")
System("s1", "A system")
p1 -> s1 : Relationship("an optional name", "optional technology")
@enduml

@startuml(id=title)
!global $C4_LIB_BRANCH="master"
!global $C4_LIB_BASE_URL="https://raw.githubusercontent.com/tmorin/plantuml-libs/"+$C4_LIB_BRANCH+"/c4model"
!includeurl $C4_LIB_BASE_URL/c4-all.puml
' !include c4-all.puml
title("the title of the diagram", "an optional subtitle", "an optional version", "an optional date")
@enduml

@startuml(id=legend)
!global $C4_LIB_BRANCH="master"
!global $C4_LIB_BASE_URL="https://raw.githubusercontent.com/tmorin/plantuml-libs/"+$C4_LIB_BRANCH+"/c4model"
!includeurl $C4_LIB_BASE_URL/c4-all.puml
' !include c4-all.puml
legend()
@enduml
