Skip to content

Clarify 0.FDO/Attribute and ExtendsProfile rules - #44

Open
Pfeil wants to merge 2 commits into
fairdo-org:devfrom
Pfeil:fix-36
Open

Clarify 0.FDO/Attribute and ExtendsProfile rules#44
Pfeil wants to merge 2 commits into
fairdo-org:devfrom
Pfeil:fix-36

Conversation

@Pfeil

@Pfeil Pfeil commented Jul 21, 2026

Copy link
Copy Markdown

Fix #36

I noticed that the commit I had commented was, in the end, revised. So I am actually quite fine with it. I took the liberty to create this PR anyway, as I wanted to simplify the formulations, and clarify the motivation a bit more. I hope I maintained the intention of the two definitions. If you think it is more understandable now, feel free to merge.

If you think it is not required, we can close the PR and also close #36 anyway.

Note: I was not sure about all the anchors and when/when not to use them. If I get some explanation about this, I can fix the occurrences.

@jboehm1911 jboehm1911 left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Line 170: Add:
[...] with at least the attributes the root profile specifies. Additional attributs can be used as well.

Lines 180-181: Change into:
a FDO MAY extend any other profile. Alternatively, if is does not extend any profile, it MUST specify these minimum attributes directly using 0.FDO/Attribute.

Explanation: To my understanding, profile extension CAN be used, not MUST be used. It is totally allowed to define a profile from scratch, that does not extend the root profile. And this profile can be extended as well. Then the extending profile does neither extend the root profile directly nor indirectly

When not using <a>profile extension</a>, <a><em>0.FDO/Attribute</em></a> MUST be defined with at least the attributes from the <a>root profile</a>.
Other <a>attribute definitionss</a> can be added by adding more <a><em>0.FDO/Attribute</em></a> <a>tuples</a> with the <a>PID</a> of the desired <a>attribute definition</a>.
When not using <a>profile extension</a>, <a><em>0.FDO/Attribute</em></a> MUST be defined
with at least the attributes the <a>root profile</a> specifies.

@maximiliani maximiliani Jul 23, 2026

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Please use <a>attributes</a> for consistency across the document.

<td><em><a><em>0.FDO/Attribute</em></a></em> defines the set of
<a>attribute definitions</a> that MUST be instantiated in any <a>FDO</a> instantiating this <a>profile</a>.
<td><a><em>0.FDO/Attribute</em></a> defines <a>attribute definitions</a>
that MUST be instantiated in any <a>FDO</a> instantiating this <a>profile</a> (via 0.FDO/Profile).

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Strictly speaking, the attributes are not defined in the profile (i.e., with 0.FDO/Attribute), but in their own FDO Record. Possible solution: use "specify"

<a>attribute definitions</a> that MUST be instantiated in any <a>FDO</a> instantiating this <a>profile</a>.
<td><a><em>0.FDO/Attribute</em></a> defines <a>attribute definitions</a>
that MUST be instantiated in any <a>FDO</a> instantiating this <a>profile</a> (via 0.FDO/Profile).
The value of this <a>attribute</a> is a PID of the <a>attribute definition</a>.

@maximiliani maximiliani Jul 23, 2026

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Please use <a>PID</a>

All <a>profiles</a> MUST either extend from <a><em>0.FDO/Root</em></a>, another profile that recursively extends
from <a><em>0.FDO/Root</em></a>, or specify the mandatory attributes from <a><em>0.FDO/Root</em></a> using <a><em>0.FDO/Attribute</em></a>.
<td>This <a>attribute</a> specifies the PID of another <a>profile</a>.
A <a>profile</a> containing this attribute, will implicitly require all attributes

@maximiliani maximiliani Jul 23, 2026

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Please use <a>attribute</a>

from <a><em>0.FDO/Root</em></a>, or specify the mandatory attributes from <a><em>0.FDO/Root</em></a> using <a><em>0.FDO/Attribute</em></a>.
<td>This <a>attribute</a> specifies the PID of another <a>profile</a>.
A <a>profile</a> containing this attribute, will implicitly require all attributes
of the referenced <a>profile</a> (see <a href="#r4_11">[R4-11]</a>).

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

please change the reference to <a href="#rule-r4_11"></a> The matching text will be automatically generated by ReSpec.

<td>This <a>attribute</a> specifies the PID of another <a>profile</a>.
A <a>profile</a> containing this attribute, will implicitly require all attributes
of the referenced <a>profile</a> (see <a href="#r4_11">[R4-11]</a>).
In order to ensure all FDOs using this <a>profile</a> have the minimum set of attributes (as specified by 0.FDO/Root),

@maximiliani maximiliani Jul 23, 2026

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Please use <a>FDOs</a>, <a>attributes</a>, and <a>0.FDO/Root</a>

A <a>profile</a> containing this attribute, will implicitly require all attributes
of the referenced <a>profile</a> (see <a href="#r4_11">[R4-11]</a>).
In order to ensure all FDOs using this <a>profile</a> have the minimum set of attributes (as specified by 0.FDO/Root),
a FDO MUST either extend directly or indirectly from <a><em>0.FDO/Root</em></a>.

@maximiliani maximiliani Jul 23, 2026

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

an <a>FDO profile</a>

I think you mean the profiles and and not the FDOs using it, right?

@github-actions

Copy link
Copy Markdown

🚀 PR Preview Available

A preview deployment of this PR is now available.

🔗 Preview URL: https://fairdo-org.github.io/fdo-architecture-spec/preview/pr-44/

⚠️ This preview is automatically updated with each commit. The banner on the preview page will show when the PR is merged or closed.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants