Code Monkey home page Code Monkey logo

familyhistoryvault's People

Contributors

bvanfleet avatar dependabot[bot] avatar

Watchers

 avatar

familyhistoryvault's Issues

Collaboration Models

Description

In order to support collaboration between disparate databases -- currently, only with FHV databases -- a DTO model(s) need to be developed to capture collaborative data. Some of the collaborative data includes:

  • User creating the note
  • Subject reference
  • Text
  • Creation date

This collaboration can be attached to a document or person. This data may be derived from various models in the GEDCOM X spec, such as the Note model. The database may need to include id references and discriminators to support various subject types while keeping the database architecture flat.

Acceptance Criteria

  • Collaboration DTO models are created
  • Object mapping

Internal Model Diagram

Description

Creating a diagram for this system may help with better understanding the mapping between the GEDCOM X spec and the internal DTO spec. Additionally, this diagram may help identify the ideal database architecture.

Acceptance Criteria

  • Diagrams stored in a /docs/diagrams folder.

User Endpoint

Description

Users will need to be managed via the API with the following supported HTTP methods:

  • HEAD
  • GET
  • POST
  • PATCH
  • DELETE

Additional models accessible from the users endpoints will include:

  • Comments
  • Changes (uploads, updates, etc.)

The response Content-Type for requests should default to application/fhv+json, with support for application/gedcom+json upon request. This is especially important if the user needs to export data from the system.

Acceptance Criteria

  • User API endpoint created with desired methods

Dependencies

  • #10 - Will provide the User model and mapping

User Model

Description

The User DTO model will be a top-level object that is based on the Agent GEDCOM X model. This will be utilized to track collaboration when genealogies are communicated between remote systems.

Acceptance Criteria

  • User DTO class is created
  • Mapping for Agent -> User flattening

Document Model

Description

The Document DTO model is a top-level object based on the Document GEDCOM X model. It may also encapsulate additional metadata from the SourceDescription GEDCOM X model.

Acceptance Criteria

  • Document DTO class is created
  • Mapping for GedcomX.Document -> DataAccess.Document

GEDCOM X Implementation

Description

To be able to support third-party applications, like FamilySearch, a simple implementation of the GEDCOM X library will be added. This will be a model-only implementation. As development progresses, validations and additional logic can be added.

Acceptance Criteria

  • FamilyHistoryVault.GedcomX library to be created.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.