Data modelling and formats
Content
Local files
See:
Data introduction
As per Wikipedia: In 1975 ANSI described three kinds of data-model instance:
- Conceptual schema: describes the semantics of a domain (the scope of the model). For example, it may be a model of the interest area of an organization or of an industry. This consists of <entity classes, representing kinds of things of significance in the domain, and relationships assertions about associations between pairs of entity classes. A conceptual schema specifies the kinds of facts or propositions that can be expressed using the model. In that sense, it defines the allowed expressions in an artificial "language" with a scope that is limited by the scope of the model. Simply described, a conceptual schema is the first step in organizing the data requirements.
- Logical schema: describes the structure of some domain of information. This consists of descriptions of (for example) tables, columns, object-oriented classes, and XML tags. The logical schema and conceptual schema are sometimes implemented as one and the same.
- Physical schema: describes the physical means used to store data. This is concerned with partitions, CPUs, tablespaces, and the like.
Data modelling (US: modeling)
Approaches
Entity-Relation
Peter Chen, 1976.
Semantic data model
U.S. Air Force in the mid-1970s.
OMG UML
Unified Modelling Language (UML) is a general-purpose, developmental, modelling language intended to provide a standard way to visualize the design of a system.
- Developed at Rational Software in 1994–1995, with further development led by them through 1996.
- In 1997, UML was adopted as a standard by the OMG and has been managed by this organization ever since.
- In 2005, UML was published as an ISO standard.
UML 2.0 defines thirteen types of diagrams, divided into three categories:
- Structure Diagrams include the Class Diagram, Object Diagram, Component Diagram, Composite Structure Diagram, Package Diagram, and Deployment Diagram.
- Behavior Diagrams include the Use Case Diagram (used by some methodologies during requirements gathering); Activity Diagram, and State Machine Diagram.
- Interaction Diagrams, all derived from the more general Behavior Diagram, include the Sequence Diagram, Communication Diagram, Timing Diagram, and Interaction Overview Diagram.
OMG MDA
MDA is a software design approach.
DDD
BDD - Behavior Driven Development/Design
Other
Legacy
Regarding semantics, JSON Schema is based on the concepts from XML Schema (XSD) but is JSON-based.
JSON processing.
- In 2014, Oracle introduced a Java Enhancement Proposal (JEP) for adding a JSON API to Java. Although “JEP 198: Light-Weight JSON API” ( http://openjdk.java.net/jeps/198 ) was updated in 2017, it will probably be several more years before this JSON API becomes part of Java.
- the Java API for JSON Processing (JSR 353) provides portable APIs to parse, generate, transform, and query JSON using object model and streaming APIs. Implementation status?
- Java includes nashorn, a scripting engine that can be used to execute JavaScript under Java, which makes JSON processing easy
JSON-LD
JavaScript Object Notation for Linked Data is a method of encoding linked data using JSON.
See the description at JSON-LD local info
Transformations
XSL and ETL.
XSL