dc-rda  

Re: RDA element vocabularies

Jon Phipps
Thu, 22 Oct 2009 08:54:45 -0700

Hi Alexander,

I've put some responses to your questions in-line below.

Thanks,
Jon Phipps
http://metadataregistry.org
http://metadataregistry.org/rdabrowse.htm


On Wed, Oct 21, 2009 at 4:47 AM, Haffner, Alexander <a.haff...@d-nb.de>wrote:

>  Hello everyone,
>
> my name is Alexander Haffner and I started working at German National
> Library in September 2009. I am involved as a research fellow in the
> competence centre for interoperable metadata and I am responsible for
> investigations regarding a fitting integration of RDA compliant metadata for
> the Semantic Web in the German National Library landscape.
>
> Last week I gave a presentation about RDA and the Semantic Web in the
> Library Community Session at DC-2009 (slides online soon).
>
That would be great, we'd love to see them.

> During my preparation I ran into some trouble and misunderstandings
> regarding the RDA Element Sets. In the presentation I  tried to bridge the
> idea out of RDA Element Analysis (*
> www.rda-jsc.org/docs/5rda-elementanalysisrev3.pdf*) and the registered
> elements in the NSDL Registry.
>
As you may have noticed, the RDA Element Analysis itself tries to bridge
RDF, XML, Indecs, and DCAM and isn't yet fully formed or formally reviewed
(as far as we know). So even though we're paying attention to it, we've
departed from it in a number of areas as we've tried to coerce the RDA
"Element Set" into a set of RDFS/OWL ontologies. Since the element analysis
and the RDA documentation haven't always been written with RDFS/OWL or even
RDF in mind, we've had to make some judgment calls. Many of these decisions
try to take into account the utility of the RDA elements beyond the domain
of RDA/FRBR as well as the need to be specific about the RDA/FRBR model.
We're also thinking about how many of the RDA properties might map beyond
the obvious MARC21 mappings and about how our description of the semantics
might enable or restrict such mappings. And of course there are some
additional challenges, such as the fact that there isn't yet a formal FRBR
ontology that can be incorporated into the model.

> For example, I cannot understand why rda:publicationStatementManifestation
> and rda:publishersNameManifestation are specified as properties (property
> and its sub-property) with domain manifestation. Because out of my point of
> view rda:publicationStatementManifestation has to be of type class and has
> to offer a property rda:publishersNameManifestation. Because the RDA Element
> Analysis clarifies that these element sub-element relationships reflect
> composite patterns and so we have to find mechanisms to describe these
> aggregations in our schema too.
>
The "aggregated" statements pose a particular problem and have been the
source of much online and offline discussion. One of the primary questions
is the one you pose and I think there are a number of problems with the
approach you mention.

The element analysis clarifies the fact that there is an element/sub-element
relationship between publicationStatement and publishersName. In XML this is
very easy to express:

<Publication statement>
    <Place of publication> Austin, TX </Place of publication>
    <Publisher’s name>The University of Texas at Austin, College of Liberal
Arts </Publisher’s name>
    <Date of publication> [2001]- </Date of publication>
</Publication statement>

And this maps very nicely to a MARC21 260 field:
260 $a Austin, TX
260 $b The University of Texas at Austin, College of Liberal Arts
260 $c [2001]-

This is clearly the way that the RDA authors are thinking about how these
aggregated statements will be expressed in instance data. Note that in
neither instance do the rules for the main element -- <Publication
statement> or 260 -- permit that element to contain a value. It's clean and
simple.

So what's the best way to express this instance data in RDF and the
semantics in RDFS/OWL? We tried this out in a number of different models and
found that there are quite a few formal and informal inferences that we have
to take into consideration.

Despite the MARC21 rules, can an RDA:publicationStatement contain a string?
If so, can that string be expected to conform to a particular encoding
scheme? These aggregated statements are functional "access points" in a card
catalog and as such they're strings that have a clearly specified order of
elements -- typed literals defined by a syntax encoding scheme. This isn't
in the rules, but is widely understood. If we disable the ability to use
such an encoded string as a value for this property, what are the
consequences for mapping? Does Publication Statement as a distinct
entity/element have any value at all in the description of a resource in the
RDF data model if it can't exist independent of its constituent parts?

And then of course there's those constituent parts. Do we want/need to
restrict those to plain literals? Can we assume that in an open world the
value of rda:placeOfPlublication will always be the plain literal that the
rda:publicationStatement encoding scheme requires? It seems that it's just
as likely, maybe more likely, that rda:placeOfPlublication will have a
non-literal value. How do we conform to the RDA rules and still make the
ontology extensible and future-proof and relatively domain independent? Do
we need to be OWL-DL compatible as does that make us DCAM-compatible too?
What about OWL2 and DCAM2? What's the best way to define a Syntax Encoding
Scheme in an ontology?

Does your head hurt yet?

Unless there's some serious objection, we've decided that yes, aggregated
statements have value in the ontology, but primarily as a place to store the
aggregated syntax-encoding string as it might appear in a card catalog or a
display. Given the lack of semantics, it has limited value, in an RDF query,
as a superproperty of its constituent parts.

For the moment, we have decided to...

   - declare a general class of Syntax Encoding Schemes
   - declare a SES subclass for each statement for use later as a custom
   datatype
   - declare each aggregated statement with no domain or range
   - declare each rda-frbr-specific aggregated statement as a property with
   a domain of the rda-frbr entity and a range of the SES -- this is incorrect,
   but right now we need a placeholder until we can come up with a good way of
   registering custom datatypes
   - declare each sub-element component of the statement as a generic
   property with no domain or range
   - declare each rda-frbr-specific sub-element component of the statement
   as a subproperty of the generic property with a domain of the rda-frbr
   entity
   - There is no range declared on the rda-frbr-specific properties and
   they're not declared as either an owl:objectProperty or an owl:dataProperty

We welcome further feedback and discussion on this approach -- it's very
clear that this isn't the only possible approach. I've inserted the related
ontology fragments at the end of this email.

> Together with Alistair Miles I discussed my concerns and he shard my
> doubts. So I would appreciate to get some feedback regarding your decision
> making. Furthermore, I want to offer my contribution for the finalization of
> the RDA Element Vocabularies. So don’t hesitate to involve me.
>
Your contributions to the discussion are most welcome, as are Alistair's
doubts.

>  Additionally, I’d like to mention that we intend the development of a
> transformation from MARC to RDA metadata (in the beginning as proof of
> concept). Alistair already created an account to code4rda. In this context
> I’d like to know if there are any parallel efforts in this field I don’t
> know yet.
>
> Thanks in advance for your support and best regards from Frankfurt,
> Alexander
>
>
> --
> Alexander Haffner
> Deutsche Nationalbibliothek
> Informationstechnik
> Adickesallee 1
> D-60322 Frankfurt am Main
> Telefon: +49-69-1525-1766
> Telefax: +49-69-1525-1799
> *mailto:a.haff...@d-nb.de* <a.haff...@d-nb.de>
> *http://www.d-nb.de* <http://www.d-nb.de/>
>

<!--Class: Publication Statement Encoding Scheme-->
<rdf:Description
rdf:about="http://RDVocab.info/Elements/PublicationStatementEncodingScheme
<http://rdvocab.info/Elements/PublicationStatementEncodingScheme>">

  <rdfs:isDefinedBy rdf:resource="http://RDVocab.info/Elements
<http://rdvocab.info/Elements>" />
  <reg:status rdf:resource="http://metadataregistry.org/uri/RegStatus/1002"; />

  <reg:name xml:lang="en">PublicationStatementEncodingScheme</reg:name>
  <rdfs:label xml:lang="en">Publication Statement Encoding Scheme</rdfs:label>

  <skos:definition xml:lang="en">This subclass has been created to
define the Syntax Encoding Scheme for the RDA Publication Statement
composite string. The Publication Statement is composed of an ordered,
concatenated list of properties:

    - Place of publication
    - Parallel place of publication
    - Publisher's name
    - Parallel publisher's name
    - Date of publication
  </skos:definition>
  <rdf:type rdf:resource="http://www.w3.org/2002/07/owl#Class"; />

  <rdfs:subClassOf
rdf:resource="http://RDVocab.info/Elements/RDASyntaxEncodingScheme
<http://rdvocab.info/Elements/RDASyntaxEncodingScheme>" />

</rdf:Description>

<!--Class: RDA Syntax Encoding Scheme-->
<rdf:Description
rdf:about="http://RDVocab.info/Elements/RDASyntaxEncodingScheme
<http://rdvocab.info/Elements/RDASyntaxEncodingScheme>">

  <rdfs:isDefinedBy rdf:resource="http://RDVocab.info/Elements
<http://rdvocab.info/Elements>" />
  <reg:status rdf:resource="http://metadataregistry.org/uri/RegStatus/1002"; />

  <reg:name xml:lang="en">RDASyntaxEncodingScheme</reg:name>
  <rdfs:label xml:lang="en">RDA Syntax Encoding Scheme</rdfs:label>

  <skos:definition xml:lang="en">This subclass has been created to
gather the Syntax Encoding Schemes used in RDA. </skos:definition>
  <rdf:type rdf:resource="http://www.w3.org/2002/07/owl#Class"; />

  <rdfs:subClassOf
rdf:resource="http://www.w3.org/2000/01/rdf-schema#Datatype"; />

</rdf:Description>

<!--Property: Publication statement-->
<rdf:Description
rdf:about="http://RDVocab.info/Elements/publicationStatement
<http://rdvocab.info/Elements/publicationStatement>">

  <rdfs:isDefinedBy rdf:resource="http://RDVocab.info/Elements
<http://rdvocab.info/Elements>" />
  <reg:status rdf:resource="http://metadataregistry.org/uri/RegStatus/1002"; />

  <reg:name xml:lang="en">publicationStatement</reg:name>
  <rdfs:label xml:lang="en">Publication statement</rdfs:label>

  <rdf:type rdf:resource="http://www.w3.org/1999/02/22-rdf-syntax-ns#Property";
/>

  <skos:definition xml:lang="en">A statement identifying the place or
places of publication, publisher or publishers, and date or dates of
publication of a resource.</skos:definition>

</rdf:Description>

<!--Property: Publication statement (Manifestation)-->
<rdf:Description
rdf:about="http://RDVocab.info/Elements/publicationStatementManifestation
<http://rdvocab.info/Elements/publicationStatementManifestation>">

  <rdfs:isDefinedBy rdf:resource="http://RDVocab.info/Elements
<http://rdvocab.info/Elements>" />
  <reg:status rdf:resource="http://metadataregistry.org/uri/RegStatus/1002"; />

  <reg:name xml:lang="en">publicationStatementManifestation</reg:name>
  <rdfs:label xml:lang="en">Publication statement (Manifestation)</rdfs:label>

  <skos:definition xml:lang="en">A statement identifying the place or
places of publication, publisher or publishers, and date or dates of
publication of a resource.</skos:definition>

  <rdf:type rdf:resource="http://www.w3.org/1999/02/22-rdf-syntax-ns#Property";
/>

  <rdfs:subPropertyOf
rdf:resource="http://RDVocab.info/Elements/publicationStatement
<http://rdvocab.info/Elements/publicationStatement>" />

  <rdfs:domain 
rdf:resource="http://RDVocab.info/uri/schema/FRBRentitiesRDA/Manifestation
<http://rdvocab.info/uri/schema/FRBRentitiesRDA/Manifestation>" />

  <rdfs:range 
rdf:resource="http://RDVocab.info/Elements/PublicationStatementEncodingScheme
<http://rdvocab.info/Elements/PublicationStatementEncodingScheme>" />

</rdf:Description>

<!--Property: Publisher's name-->
<rdf:Description
rdf:about="http://RDVocab.info/Elements/publishersName
<http://rdvocab.info/Elements/publishersName>">

  <rdfs:isDefinedBy rdf:resource="http://RDVocab.info/Elements
<http://rdvocab.info/Elements>" />
  <reg:status rdf:resource="http://metadataregistry.org/uri/RegStatus/1002"; />

  <reg:name xml:lang="en">publishersName</reg:name>
  <rdfs:label xml:lang="en">Publisher's name</rdfs:label>

  <skos:definition xml:lang="en">The name of a person, family, or
corporate body responsible for publishing, releasing, or issuing a
resource.</skos:definition>

  <rdf:type rdf:resource="http://www.w3.org/1999/02/22-rdf-syntax-ns#Property";
/>

</rdf:Description>

<!--Property: Publisher's name (Manifestation)-->
<rdf:Description
rdf:about="http://RDVocab.info/Elements/publishersNameManifestation
<http://rdvocab.info/Elements/publishersNameManifestation>">

  <rdfs:isDefinedBy rdf:resource="http://RDVocab.info/Elements
<http://rdvocab.info/Elements>" />
  <reg:status rdf:resource="http://metadataregistry.org/uri/RegStatus/1002"; />

  <reg:name xml:lang="en">publishersNameManifestation</reg:name>
  <rdfs:label xml:lang="en">Publisher's name (Manifestation)</rdfs:label>

  <skos:definition xml:lang="en">The name of a person, family, or
corporate body responsible for publishing, releasing, or issuing a
resource.</skos:definition>

  <rdf:type rdf:resource="http://www.w3.org/1999/02/22-rdf-syntax-ns#Property";
/>

  <rdfs:subPropertyOf
rdf:resource="http://RDVocab.info/Elements/publishersName
<http://rdvocab.info/Elements/publishersName>" />

  <rdfs:domain 
rdf:resource="http://RDVocab.info/uri/schema/FRBRentitiesRDA/Manifestation
<http://rdvocab.info/uri/schema/FRBRentitiesRDA/Manifestation>" />

</rdf:Description>

<!--Property: Place of publication-->
<rdf:Description
rdf:about="http://RDVocab.info/Elements/placeOfPublication
<http://rdvocab.info/Elements/placeOfPublication>">

  <rdfs:isDefinedBy rdf:resource="http://RDVocab.info/Elements
<http://rdvocab.info/Elements>" />
  <reg:status rdf:resource="http://metadataregistry.org/uri/RegStatus/1002"; />

  <reg:name xml:lang="en">placeOfPublication</reg:name>
  <rdfs:label xml:lang="en">Place of publication</rdfs:label>

  <skos:definition xml:lang="en">A place associated with the
publication, release, or issuing of a resource.</skos:definition>
  <rdf:type rdf:resource="http://www.w3.org/1999/02/22-rdf-syntax-ns#Property";
/>

</rdf:Description>

<!--Property: Place of publication (Manifestation)-->
<rdf:Description
rdf:about="http://RDVocab.info/Elements/placeOfPublicationManifestation
<http://rdvocab.info/Elements/placeOfPublicationManifestation>">

  <rdfs:isDefinedBy rdf:resource="http://RDVocab.info/Elements
<http://rdvocab.info/Elements>" />
  <reg:status rdf:resource="http://metadataregistry.org/uri/RegStatus/1002"; />

  <reg:name xml:lang="en">placeOfPublicationManifestation</reg:name>
  <rdfs:label xml:lang="en">Place of publication (Manifestation)</rdfs:label>

  <skos:definition xml:lang="en">A place associated with the
publication, release, or issuing of a resource. </skos:definition>
  <rdf:type rdf:resource="http://www.w3.org/1999/02/22-rdf-syntax-ns#Property";
/>

  <rdfs:subPropertyOf
rdf:resource="http://RDVocab.info/Elements/placeOfPublication
<http://rdvocab.info/Elements/placeOfPublication>" />

  <rdfs:domain 
rdf:resource="http://RDVocab.info/uri/schema/FRBRentitiesRDA/Manifestation
<http://rdvocab.info/uri/schema/FRBRentitiesRDA/Manifestation>" />

</rdf:Description>