<%*
let title = tp.file.title;
if (title.startsWith("Untitled")) {
title = await tp.system.prompt("Gib den Namen der Person ein:");
await tp.file.rename(title);
}
let profession = await tp.system.suggester(["Economics", "Politics", "Media", "Sociology", "Writer", "Artist", "Science"],["Economics", "Politics", "Media", "Sociology", "Writer", "Artist", "Science"])
-%>
---
created: <% tp.file.creation_date("YYYY-MM-DD HH:mm:ss") %>
profession: <% profession %>
type: <% profession %>
fos: // specific //
cssclass: wiki
tags:
title: <% title %>
hub: Profile
view-count:
---
<% title %>
---
> [!infobox|right]
> # <% title %>
> ![[picturehere]]
> ##### Biographical information
>
> | Table Header | Table Header |
> | ---- | --- |
> | Born | |
> | Died | |
> | Fields | |
> | Known for | |
> | Works| |
> >[!Quote]
>
---
## Life
### Brief Overview
1–2 sentence summary of their life.
### Education
- Institution Name (Years)
- Degrees or significant achievements.
---
## Professional Career
### Primary Field
Describe the scientist's primary field of expertise.
### Related Fields
List other fields they contributed to or influenced.
---
## Theory or Contributions
### Major Theories, Discoveries, or Inventions
- Theory/Discovery 1: Brief explanation.
- Theory/Discovery 2: Brief explanation.
### Impact
Discuss how their contributions influenced science, society, or both.
---
## Works and Honors
### Major Works
- **Title 1** (Year) – Brief description or importance.
- **Title 2** (Year) – Brief description or importance.
### Notable Awards and Honors
- **Award 1** (Year) – For what achievement.
- **Award 2** (Year) – For what achievement.
### Legacy
Explain the long-term significance of their work or how they are remembered.
---
## Quotes
- "_First inspirational quote._"
- "_Second significant quote._"
---
## Sources
- [Source 1](#)
- [Source 2](#)
- [Source 3](#)
```dataviewjs
// Ensure 'fos' is treated as an array
let foss = Array.isArray(dv.current().fos) ? dv.current().fos : [dv.current().fos];
// Loop through each fos
for (let fos of foss) {
if (!fos) continue; // Skip if no fos exists
// Start the collapsible callout for this profession
let calloutHeader = `> [!dv]- **${fos}**\n`;
// Query pages matching the current profession
let results = dv.pages()
.where(p => (Array.isArray(p.fos) ? p.fos.includes(fos) : p.fos === fos)
&& p.file.name !== dv.current().file.name);
if (results.length > 0) {
// Add results as a list inside the callout
let links = results.file.link.array().map(link => `> - ${link}`).join("\n");
dv.paragraph(calloutHeader + links);
} else {
// Add a "No matching files" message inside the callout
dv.paragraph(calloutHeader + "> - No matching files found.");
}
}
```
```dataviewjs
// Ensure 'profession' is treated as an array
let professions = Array.isArray(dv.current().profession) ? dv.current().profession : [dv.current().profession];
// Loop through each profession
for (let profession of professions) {
if (!profession) continue; // Skip if no profession exists
// Start the collapsible callout for this profession
let calloutHeader = `> [!dv]- **${profession}**\n`;
// Query pages matching the current profession
let results = dv.pages()
.where(p => (Array.isArray(p.profession) ? p.profession.includes(profession) : p.profession === profession)
&& p.file.name !== dv.current().file.name);
if (results.length > 0) {
// Add results as a list inside the callout
let links = results.file.link.array().map(link => `> - ${link}`).join("\n");
dv.paragraph(calloutHeader + links);
} else {
// Add a "No matching files" message inside the callout
dv.paragraph(calloutHeader + "> - No matching files found.");
}
}
```