public void AddAuthor(Author author) { XmlNode node = this.CreateDatafield("700"); XmlNode name = this.CreateSubfield(author.ToString(), "a"); XmlNode nationality = this.CreateSubfield(author.Nationality, "l"); node.AppendChild(name); node.AppendChild(nationality); record.AppendChild(node); }
// When numbers are less than 0 (preferably -1), deletes ALL authorships/annotations/categories from article public abstract bool DeleteAuthorshipFromArticle(Article article, Author author, int authorship_number);
public abstract bool DeleteAuthor(Author author);
public abstract bool AddAuthorshipToArticle(Article article, Author author, int authorship_number);
public abstract bool UpdateAuthor(Author author);
public abstract string SaveAuthor(Author author);
// Assuming author is an actual author of the article AND that author is in the AUTORSTWO table only once for the article. // Having one author twice for the same article is a mistake. // Returns 0 when Author is not the article author in the database. // Returns -1 on error (when author is twice recorded for the same article, or when 2 articles have the same ID) public abstract int GetAuthorAfiliationForArticle(Article article, Author author);
public override bool AddAuthorshipToArticle(Article article, Author author, int authorship_number) { throw new NotImplementedException(); }
public override bool UpdateAuthor(Author author) { throw new NotImplementedException(); }
public override string SaveAuthor(Author author) { throw new NotImplementedException(); }
public override int GetAuthorAfiliationForArticle(Article article, Author author) { throw new NotImplementedException(); }
public override bool DeleteAuthorshipFromArticle(Article article, Author author, int authorship_number) { throw new NotImplementedException(); }