WGBH / PBCore2.0

Public Broadcasting Metadata Dictionary Project
http://www.pbcore.org
32 stars 9 forks source link

source, ref, version, annotation set #51

Open AllisonAnn opened 10 years ago

AllisonAnn commented 10 years ago

source (text, may be empty) = Attribute source provides the name of the authority used to declare data value of the element.

ref (text, may be empty) = Attribute ref denotes a URI used to provide a controlled vocabulary used for its element data.

version (text, may be empty) = Attribute version identifies any version information about the authority or convention used to express data of this element.

annotation (text, may be empty) = Attribute annotation includes narrative information intended to clarify the nature of data used in the element.


From the definitions supplied for these attributes, it seems to me that these fields were designed as a set to hold metadata / information about the controlled vocabulary or authority list used (source, version) along with the actual URI of the term/value listed in the element (ref) and any additional things you might need to say about it (annotation).

If that is the case, is it possible to agree for the sake of consistency throughout the schema and for best practice purposes (and to help define their usage), that these attributes are always supplied as a set (even though their usage is optional), and that they should be linked to elements for which controlled vocabularies and authority lists are used?

I am confused as to why we would need any of these attributes for text/descriptive fields (title, description, etc.)

However, I do see the value of supplying an additional annotation attribute for many of the elements as a means for adding notes / clarifying information in an element. These additional annotation fields could be named as such (to disambiguate them from annotation tied to source, ref and version) : titleAnnotation, (text, may be empty); descriptionAnnotation (text, may be empty), etc.

We might also do this for source (titleSource, descriptionSource), if people really thought they needed a means to specify that too (although they could always put source type info in the titleAnnotation, descriptionAnnotation field - as best practice).

But I see very little use for a source, ref, version, annotation attribute field set tied to a non-controlled vocab field. I might be persuaded otherwise, if someone could give me a good example of their use.

kvanmalssen commented 10 years ago

I provided a use case for the @source attribute on a related issue: https://github.com/WGBH/PBCore2.0/issues/48#issuecomment-48610728

I think it is important to be able to indicate the source of things like titles and descriptions. For example, I might have multiple descriptions, one which comes from Wikipedia, and another which comes from the station. I think this generally works well as is.

@version is intended to be used to indicate which version of the PBCore element you are using (version 1.1, version 1.3, version 2.0, etc), if I understand it correctly. I would be in support of potentially deprecating this attribute and replacing it with a single @version attribute in the root element, but I would be interested in hearing opinions of others.

AllisonAnn commented 10 years ago

"Attribute version identifies any version information about the authority or convention used to express data of this element."

I don't think we should deprecate the version attribute, or separate it from source, ref, and annotation. The definition seems pretty clear that it refers to the version of the authority used in relation to the term/value (data) assigned to the element.

I would like to have version available for all term/controlled fields along with source, ref, and annotation. Again, I think that these attributes should be considered a set, and applied consistently to all term controlled/authority controlled fields if possible.

People will potentially use version to monitor updates to published vocabulary lists where over time, terms may be deprecated, split into narrower concepts, and/or folded into a broader concept. It could help people to keep their internal lists in sync with the most recently published versions.

I also think annotation is important to keep with this group. It could be used to hold institution-based usage guidelines, local definitions, and/or best practice for assigning a specific term.

AllisonAnn commented 10 years ago

Attributes vs. Elements

I would like to propose the following in order to make the PBCore schema more consistent and forward compatible with semantic web principles:

@source, @ref, @version @annotation attributes should be consistently available (albeit optional in whole or in part) to all elements, and should be used to describe the element / content (@source, @ref, @version) and/or how it is used (@annotation). Attributes should not be used to hold additional cataloguing information about the asset.

All other element attributes (including type attributes) should be assessed, and upgraded where possible to sibling elements, formatted as nested elements.

awead commented 10 years ago

Yep. :+1: