Create a table of meeting participants, and include metadata from individual participant notes

What I’m trying to do

I want a meeting note template with a “participants” property field. I’ll input the participants as links to their individual notes, which has metadata for that individual (role, company etc).

I’m trying to find a way to generate a table of the participants listed in the meeting note, and also pulls the “company” metadata from the participants note.

I’m not sure if this is possible with dataview or JS, i’m not very experienced with either.

Things I have tried

TABLE WITHOUT ID participants, role, company
WHERE participants = this.participants

this pulls the list from the “participants” property field in the meeting note, but i’m lost on how/if i can pull the metadata from the other notes too.

I ended up solving this myself and thought i’d post the solution in case anyone else can use it.

just to reiterate the use case:

  • I create a note for individuals that I work with (co-workers, consultants, etc.)
    • each note has property fields which include company, role at a minimum
    • i store these notes in a folder called “people”
  • I have a meeting note template which has a property field “participants”
  • I input the participants as a link to the aforementioned individual note
  • dataview outputs a table with the [[participant’s name]], and their role and [[company]] they work for gathered from the individual’s note.
TABLE WITHOUT ID
	file.link as Participants, 
	Role, 
	Company
FROM
	outgoing([[]]) AND "people"

This works, however I cannot add any more links to other [[individuals]] other than those that I want to be displayed in the participants table. This is a minor limitation but i would like to solve it.

I also tried adding:

WHERE
	contains(file.inlinks, this.participants)

after the FROM code but it does nothing.

Does anyone have any ideas?

Try the following untested query:

```dataview
TABLE WITHOUT ID file.link as Participants, Role, Company
FROM outgoing([[]]) and "people"
WHERE contains(this.participants, file.link)
```

This should start of limiting the candidate set to any outgoings link belonging to the “people” folder, and then continue to only include file links being present in the participants field of the current file (where this query resides). In other words, excluding other people links scattered around in your meeting note.

1 Like

That worked for me! thank you for the reply.

I guess i didnt realize how the order of the conditions inside the contains clause would be executed. Thanks for your help!

This topic was automatically closed 7 days after the last reply. New replies are no longer allowed.