At this point we have everything needed to generate the RDF for each EduRecord . We will create RDF/XML that describes each as an instance of the class vivo:EducationalTraining . This object is identified by a URI as are the educational institution conferring the degree and the recipient. Each instance is further enriched by other data properties. The special local:weakAttribution predicate is used when the recipient has no netid. The full transform can be found in mkEduRDF.xsl , the main parts are shown in the next two figures.
mkEduRDF.xsl Fragment 1 - Figure 15a
mkEduRDF.xsl Fragment 2 - Figure 15b
The results of this step can be found in example/rdf/ED.rdf .
This part of the process is needed to provide RDF that describes the new people and organizations discovered in earlier steps. The transforms are mkAccPeopleRdf.xsl and mkAccOrgRdf.xsl . These transforms are fairly simple and are applied to the NewPers.xml and NewOrgs.xml respectively. The output of these transformations can be found in example/rdf in the files NewPers.rdf and NewOrgs.rdf . These RDF files must be asserted using the VIVO user interface so that the data model of Figure 2 can be traversed and so that when Per0.xml and Org0.xml are reconstructed for the next round of ingest the new people and organizations names together with their URIs are available for matching and assignment. Otherwise duplicates with different URIs are likely to be created.
The VIVO user interface should now be used to add the two new predicates to the local ontology before adding the RDF files. If this isn’t done first you won’t get another chance until the RDF in ED.rdf is retracted. At this point the ED.rdf file can be asserted, followed by the NewPers.rdf and NewOrgs.rdf files.