New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Implement 2.01 "7. Replicate more activity-level elements at transaction level" #70

Open
Bjwebb opened this Issue Apr 9, 2014 · 30 comments

Comments

Projects
None yet
4 participants
@Bjwebb
Contributor

Bjwebb commented Apr 9, 2014

@Bjwebb

This comment has been minimized.

Contributor

Bjwebb commented Apr 10, 2014

This is now visible on the dev site:
http://dev.iatistandard.org/201/activities-standard/iati-activities/iati-activity/transaction/
http://dev.iatistandard.org/201/activities-standard/iati-activities/iati-activity/transaction/recipient-country/
http://dev.iatistandard.org/201/activities-standard/iati-activities/iati-activity/transaction/recipient-region/
http://dev.iatistandard.org/201/activities-standard/iati-activities/iati-activity/transaction/sector/

However, it's currently achieved by referencing the existing elements within transaction. This means that the same schema description is displayed for the subelements under activity and transaction. This means that under the transaction there is text like:

A partner country that will benefit from this activity.

Which might be better as

A partner country that will benefit from this transaction.

@Bjwebb

This comment has been minimized.

Contributor

Bjwebb commented Apr 10, 2014

We also need to clarify what the @percentage attribute means now that these elements are at activity and transaction level. Owen has a proposal for this - http://support.iatistandard.org/entries/41583326-Add-transaction-sector

@bill-anderson

This comment has been minimized.

Contributor

bill-anderson commented Apr 10, 2014

@davidmegginson are you happy with us referencing the same element in different places. I personally prefer this approach to the one we took (eg) with default-aid-type at activity level and aid-type at transaction level.

With this approach the definition would be

The country that benefits from this activity or transaction. This can be recorded at either activity or transaction level. This is not necessarily the country in which the receiver of a transaction is located, but the ultimate recipient of the funds or services.

@caprenter caprenter changed the title from Implement 2.01 "Replicate more activity-level elements at transaction level" to Implement 2.01 "7. Replicate more activity-level elements at transaction level" Apr 10, 2014

@davidmegginson

This comment has been minimized.

Contributor

davidmegginson commented Apr 15, 2014

I think that approach can work. default-X at the activity level has the (modest) advantage that it's more self-documenting — it partly answers the question "what's the difference between X at the activity and transaction level — but I don't think that advantage is compelling enough to decide the question. You can handle the documentation simply by expanding to something like "A partner country that will benefit from this activity or specific transaction."

The one risk to consider is potential user confusion about why we have activity/default-aid-type and transaction/aid-type but activity/sector and transaction/sector. Again, that's not a big deal — as standards mature, they inevitably acquire inconsistencies like that — but there is at least a communications effort involved. In future major versions of the standard, we might want to consider whether to deprecate (not remove) elements like default-aid-type and allow activity/aid-type in its place.

@Bjwebb

This comment has been minimized.

Contributor

Bjwebb commented Jun 9, 2014

http://support.iatistandard.org/entries/57969126-Version-2-01-Iteration-1-7-Replicate-more-activity-level-elements-at-transaction-level

  • If any of these elements is used at transaction level, they must not be used at activity level
@bill-anderson

This comment has been minimized.

Contributor

bill-anderson commented Jun 9, 2014

Noted and added.

@Bjwebb Bjwebb reopened this Jun 9, 2014

Bjwebb added a commit that referenced this issue Jun 23, 2014

[#70] Declare subelements within transaction explicitly
Instead of referencing the ones defined for the activity schema.
This the descriptions to be different and for @percentage to be ommitted
within a transaction.
@Bjwebb

This comment has been minimized.

Contributor

Bjwebb commented Jun 24, 2014

In order to include appropriate descriptions, these transaction level elements are now defined explicitly instead of by reference.

@Bjwebb

This comment has been minimized.

Contributor

Bjwebb commented Jun 26, 2014

Additionally, @percentage is not being replicated at transaction level.

For more information, see the updated section 7 of the Iteration 2 proposal and the recent discussion about transaction/sector.

@Bjwebb

This comment has been minimized.

Contributor

Bjwebb commented Jul 31, 2014

The outstanding issue here is implementing: #70 (comment)

If any of these elements is used at transaction level, they must not be used at activity level

This is problematic because this can not be enforced using the Schema, or the current Rulesets framework. The options are:

  1. Modify the rulesets framework to allow this to be enforced. This is potentially over complex for this simple rule.
  2. Create an independent test for this on the dashboard
  3. Don't check it by machine at all.

Note that this is solely an issue of implementing this for machines. For people the description of this rule is already contained within the schema http://dev.iatistandard.org/201/activity-standard/iati-activities/iati-activity/transaction/recipient-country/

This is similar to #109 (comment)

@caprenter

This comment has been minimized.

Contributor

caprenter commented Jul 31, 2014

Assigning to @bill-anderson to make a decision.

@bill-anderson

This comment has been minimized.

Contributor

bill-anderson commented Aug 11, 2014

We need a machine rule.
This is easier if we modify the rule slightly, by saying:

  • If activity-level element exists then this overrides transaction-level
  • If activity-level is not present then transaction-level is mandatory

@Bjwebb Bjwebb referenced this issue Aug 12, 2014

Closed

Add new uses of codes to codelist mapping file #44

8 of 8 tasks complete
@caprenter

This comment has been minimized.

@caprenter caprenter assigned bill-anderson and unassigned Bjwebb Aug 12, 2014

@bill-anderson

This comment has been minimized.

Contributor

bill-anderson commented Sep 29, 2014

NB this works for sector (which I have changed) but NOT region and country which has a few more and/ors

@Bjwebb

This comment has been minimized.

@Bjwebb

This comment has been minimized.

Contributor

Bjwebb commented Sep 29, 2014

@bill-anderson David did. But in a comment posted at the start of August!

Where should I be getting the rule for region/country from, is it what's written in the schema description? If it is from the schema description, are there other rules written into the schema, that need need adding to http://dev.iatistandard.org/201/rulesets/standard-ruleset/#non-machine-readable-rules?

Also, how does the rule apply to reporting sectors of different vocabularies? Must every vocabulary be reported at the same level (this is what the current rule implies).

@Bjwebb Bjwebb assigned bill-anderson and unassigned Bjwebb Sep 29, 2014

@bill-anderson

This comment has been minimized.

Contributor

bill-anderson commented Sep 29, 2014

Actually this does work

Either recipient-country or recipient-region MUST be reported at activity level or transaction level but not both.

Doesn't it?

@Bjwebb

This comment has been minimized.

Contributor

Bjwebb commented Sep 29, 2014

@bill-anderson Yes, that does work. Can I just double check we are making these mandatory in 2.01, as they're not mentioned here, whereas sector is.

@Bjwebb Bjwebb assigned bill-anderson and unassigned Bjwebb Sep 29, 2014

@bill-anderson

This comment has been minimized.

Contributor

bill-anderson commented Sep 29, 2014

Yes

I will add to the proposal in Strengthning the Core section

Bjwebb added a commit to IATI/IATI-Extra-Documentation that referenced this issue Sep 29, 2014

@Bjwebb

This comment has been minimized.

Contributor

Bjwebb commented Sep 29, 2014

Thanks, have added the rules to http://dev.iatistandard.org/201/rulesets/standard-ruleset/#non-machine-readable-rules

Assigning to @bill-anderson , to update the proposal.

@Bjwebb Bjwebb assigned bill-anderson and unassigned Bjwebb Sep 29, 2014

@Bjwebb

This comment has been minimized.

Contributor

Bjwebb commented Sep 29, 2014

@bill-anderson BTW, not sure I've had an answer to this question:

Also, how does the rule apply to reporting sectors of different vocabularies? Must every vocabulary be reported at the same level (this is what the current rule implies)?

@bill-anderson

This comment has been minimized.

Contributor

bill-anderson commented Sep 29, 2014

Not sure what that means. If you mean you can report one vocabulary at activity-level, and another at transaction-level, definitely not.

""Must be reported at activity level or transaction level but not both." doesn't allow that

@Bjwebb

This comment has been minimized.

Contributor

Bjwebb commented Sep 29, 2014

Yes, current rule does not allow it. I was asking whether we should allow it - it seems like something publishers might want. Happy to leave as is though.

@bill-anderson

This comment has been minimized.

Contributor

bill-anderson commented Sep 29, 2014

Definitely don't want to do make it complicated

@caprenter

This comment has been minimized.

Contributor

caprenter commented Sep 30, 2014

So @bill-anderson what is the action here?

@Bjwebb

This comment has been minimized.

Contributor

Bjwebb commented Sep 30, 2014

Action from Bill's most recent clarification is to do nothing, I was simply asking whether it should be different.

Outstanding action on this issue is for Bill to update the Strengthening the Core section of the proposal #70 (comment)

@Bjwebb

This comment has been minimized.

Contributor

Bjwebb commented Oct 7, 2014

@bill-anderson Has the proposal been updated with this change?

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