diff --git a/schemas/mathematicalShape/centroidalPyramid.schema.tpl.json b/schemas/mathematicalShape/centroidalPyramid.schema.tpl.json new file mode 100644 index 000000000..5f063b708 --- /dev/null +++ b/schemas/mathematicalShape/centroidalPyramid.schema.tpl.json @@ -0,0 +1,25 @@ +{ + "_type": "sands:CentroidalPyramid", + "_categories": [ + "mathematicalShape", + "mathematical3DShape" + ], + "required": [ + "apexBaseDistance", + "baseShape" + ], + "properties": { + "apexBaseDistance": { + "_instruction": "Enter the perpendicular distance from the centroid of the base plane to the apex of this centroidal pyramid.", + "_embeddedTypes": [ + "core:QuantitativeValue" + ] + }, + "baseShape": { + "_instruction": "Enter the two-dimensional base shape of this centroidal pyramid.", + "_embeddedCategories": [ + "simplePolygon" + ] + } + } +} diff --git a/schemas/mathematicalShape/circle.schema.tpl.json b/schemas/mathematicalShape/circle.schema.tpl.json index f6751aa91..7ad06a7d1 100644 --- a/schemas/mathematicalShape/circle.schema.tpl.json +++ b/schemas/mathematicalShape/circle.schema.tpl.json @@ -1,7 +1,8 @@ { "_type": "sands:Circle", "_categories": [ - "mathematicalShape" + "mathematicalShape", + "mathematical2DShape" ], "required": [ "radius" diff --git a/schemas/mathematicalShape/circularSector.schema.tpl.json b/schemas/mathematicalShape/circularSector.schema.tpl.json new file mode 100644 index 000000000..1a9d8a244 --- /dev/null +++ b/schemas/mathematicalShape/circularSector.schema.tpl.json @@ -0,0 +1,25 @@ +{ + "_type": "sands:CircularSector", + "_categories": [ + "mathematicalShape", + "mathematical2DShape" + ], + "required": [ + "centralAngle", + "radius" + ], + "properties": { + "centralAngle": { + "_instruction": "Enter the central angle of this circular sector.", + "_embeddedTypes": [ + "core:QuantitativeValue" + ] + }, + "radius": { + "_instruction": "Enter the radius of this circular sector.", + "_embeddedTypes": [ + "core:QuantitativeValue" + ] + } + } +} diff --git a/schemas/mathematicalShape/cube.schema.tpl.json b/schemas/mathematicalShape/cube.schema.tpl.json new file mode 100644 index 000000000..a62acd121 --- /dev/null +++ b/schemas/mathematicalShape/cube.schema.tpl.json @@ -0,0 +1,18 @@ +{ + "_type": "sands:Cube", + "_categories": [ + "mathematicalShape", + "mathematical3DShape" + ], + "required": [ + "sideLength" + ], + "properties": { + "sideLength": { + "_instruction": "Enter the common length of the sides of this cube.", + "_embeddedTypes": [ + "core:QuantitativeValue" + ] + } + } +} diff --git a/schemas/mathematicalShape/ellipse.schema.tpl.json b/schemas/mathematicalShape/ellipse.schema.tpl.json index e76a81bba..de537f6da 100644 --- a/schemas/mathematicalShape/ellipse.schema.tpl.json +++ b/schemas/mathematicalShape/ellipse.schema.tpl.json @@ -1,21 +1,18 @@ { "_type": "sands:Ellipse", "_categories": [ - "mathematicalShape" + "mathematicalShape", + "mathematical2DShape" ], "required": [ - "semiMinorAxis", - "semiMajorAxis" + "diameters" ], "properties": { - "semiMinorAxis": { - "_instruction": "Enter the length of the semi-major axis of this ellipse.", - "_embeddedTypes": [ - "core:QuantitativeValue" - ] - }, - "semiMajorAxis": { - "_instruction": "Enter the length of the semi-minor axis of this ellipse.", + "diameters": { + "type": "array", + "minItems": 2, + "maxItems": 2, + "_instruction": "Enter the lengths of the major and minor diameters of this ellipse.", "_embeddedTypes": [ "core:QuantitativeValue" ] diff --git a/schemas/mathematicalShape/ellipsoid.schema.tpl.json b/schemas/mathematicalShape/ellipsoid.schema.tpl.json new file mode 100644 index 000000000..dfdf049c4 --- /dev/null +++ b/schemas/mathematicalShape/ellipsoid.schema.tpl.json @@ -0,0 +1,32 @@ +{ + "_type": "sands:Ellipsoid", + "_categories": [ + "mathematicalShape", + "mathematical3DShape" + ], + "required": [ + "intermediateDiameter", + "majorDiameter", + "minorDiameter" + ], + "properties": { + "intermediateDiameter": { + "_instruction": "Enter the intermediate diameter of this ellipsoid.", + "_embeddedTypes": [ + "core:QuantitativeValue" + ] + }, + "majorDiameter": { + "_instruction": "Enter the major diameter of this ellipsoid.", + "_embeddedTypes": [ + "core:QuantitativeValue" + ] + }, + "minorDiameter": { + "_instruction": "Enter the minor diameter of this ellipsoid.", + "_embeddedTypes": [ + "core:QuantitativeValue" + ] + } + } +} diff --git a/schemas/mathematicalShape/equilateralTriangle.schema.tpl.json b/schemas/mathematicalShape/equilateralTriangle.schema.tpl.json new file mode 100644 index 000000000..8a8891bcb --- /dev/null +++ b/schemas/mathematicalShape/equilateralTriangle.schema.tpl.json @@ -0,0 +1,19 @@ +{ + "_type": "sands:EquilateralTriangle", + "_categories": [ + "mathematicalShape", + "mathematical2DShape", + "simplePolygon" + ], + "required": [ + "sideLength" + ], + "properties": { + "sideLength": { + "_instruction": "Enter the common length of the sides of this equilateral triangle.", + "_embeddedTypes": [ + "core:QuantitativeValue" + ] + } + } +} diff --git a/schemas/mathematicalShape/frustum.schema.tpl.json b/schemas/mathematicalShape/frustum.schema.tpl.json new file mode 100644 index 000000000..95442ce04 --- /dev/null +++ b/schemas/mathematicalShape/frustum.schema.tpl.json @@ -0,0 +1,32 @@ +{ + "_type": "sands:Frustum", + "_categories": [ + "mathematicalShape", + "mathematical3DShape" + ], + "required": [ + "baseDistance", + "majorBaseShape", + "minorBaseScale" + ], + "properties": { + "baseDistance": { + "_instruction": "Enter the perpendicular distance between the centered major and minor base planes of this frustum.", + "_embeddedTypes": [ + "core:QuantitativeValue" + ] + }, + "majorBaseShape": { + "_instruction": "Enter the major two-dimensional base shape of this frustum.", + "_embeddedCategories": [ + "mathematical2DShape" + ] + }, + "minorBaseScale": { + "type": "float", + "exclusiveMinimum": 0, + "exclusiveMaximum": 1, + "_instruction": "Enter the ratio of the smaller to the larger base size of this frustum." + } + } +} diff --git a/schemas/mathematicalShape/isoscelesTriangle.schema.tpl.json b/schemas/mathematicalShape/isoscelesTriangle.schema.tpl.json new file mode 100644 index 000000000..b664ded50 --- /dev/null +++ b/schemas/mathematicalShape/isoscelesTriangle.schema.tpl.json @@ -0,0 +1,26 @@ +{ + "_type": "sands:IsoscelesTriangle", + "_categories": [ + "mathematicalShape", + "mathematical2DShape", + "simplePolygon" + ], + "required": [ + "apexAngle", + "legLength" + ], + "properties": { + "apexAngle": { + "_instruction": "Enter the angle at the apex between the two equal sides of this isosceles triangle.", + "_embeddedTypes": [ + "core:QuantitativeValue" + ] + }, + "legLength": { + "_instruction": "Enter the common length of the two equal sides meeting at the apex of this isosceles triangle.", + "_embeddedTypes": [ + "core:QuantitativeValue" + ] + } + } +} diff --git a/schemas/mathematicalShape/kite.schema.tpl.json b/schemas/mathematicalShape/kite.schema.tpl.json new file mode 100644 index 000000000..5a68d47b5 --- /dev/null +++ b/schemas/mathematicalShape/kite.schema.tpl.json @@ -0,0 +1,29 @@ +{ + "_type": "sands:Kite", + "_categories": [ + "mathematicalShape", + "mathematical2DShape", + "simplePolygon" + ], + "required": [ + "legLengths", + "symmetryDiagonalLength" + ], + "properties": { + "legLengths": { + "type": "array", + "minItems": 2, + "maxItems": 2, + "_instruction": "Enter the two common leg lengths (for the shorter and longer leg pairs) of this kite.", + "_embeddedTypes": [ + "core:QuantitativeValue" + ] + }, + "symmetryDiagonalLength": { + "_instruction": "Enter the length of the symmetry diagonal of this kite.", + "_embeddedTypes": [ + "core:QuantitativeValue" + ] + } + } +} diff --git a/schemas/mathematicalShape/parallelogram.schema.tpl.json b/schemas/mathematicalShape/parallelogram.schema.tpl.json new file mode 100644 index 000000000..3eaab6c72 --- /dev/null +++ b/schemas/mathematicalShape/parallelogram.schema.tpl.json @@ -0,0 +1,34 @@ +{ + "_type": "sands:Parallelogram", + "_categories": [ + "mathematicalShape", + "mathematical2DShape", + "simplePolygon" + ], + "required": [ + "baseDistance", + "baseLength", + "interiorAngle" + ], + "properties": { + "baseDistance": { + "_instruction": "Enter the perpendicular distance between the parallel lines of the base of this parallelogram.", + "_embeddedTypes": [ + "core:QuantitativeValue" + ] + }, + "baseLength": { + "_instruction": "Enter the uniform length of the bottom and top sides (the base) of this parallelogram.", + "_embeddedTypes": [ + "core:QuantitativeValue" + ] + }, + + "interiorAngle": { + "_instruction": "Enter an interior angle between the base and an adjacent side of this parallelogram.", + "_embeddedTypes": [ + "core:QuantitativeValue" + ] + } + } +} diff --git a/schemas/mathematicalShape/rectangle.schema.tpl.json b/schemas/mathematicalShape/rectangle.schema.tpl.json index 39862e077..454eeb431 100644 --- a/schemas/mathematicalShape/rectangle.schema.tpl.json +++ b/schemas/mathematicalShape/rectangle.schema.tpl.json @@ -1,21 +1,23 @@ { "_type": "sands:Rectangle", "_categories": [ - "mathematicalShape" + "mathematicalShape", + "mathematical2DShape", + "simplePolygon" ], "required": [ - "length", - "width" + "majorSideLength", + "minorSideLength" ], "properties": { - "length": { - "_instruction": "Enter the length of this rectangle.", + "majorSideLength": { + "_instruction": "Enter the common length of the major sides of this rectangle.", "_embeddedTypes": [ "core:QuantitativeValue" ] }, - "width": { - "_instruction": "Enter the width of this rectangle.", + "minorSideLength": { + "_instruction": "Enter the common length of the minor sides of this rectangle.", "_embeddedTypes": [ "core:QuantitativeValue" ] diff --git a/schemas/mathematicalShape/regularPolygon.schema.tpl.json b/schemas/mathematicalShape/regularPolygon.schema.tpl.json new file mode 100644 index 000000000..e2ebbe8dd --- /dev/null +++ b/schemas/mathematicalShape/regularPolygon.schema.tpl.json @@ -0,0 +1,25 @@ +{ + "_type": "sands:RegularPolygon", + "_categories": [ + "mathematicalShape", + "mathematical2DShape", + "simplePolygon" + ], + "required": [ + "circumradius", + "numberOfSides" + ], + "properties": { + "circumradius": { + "_instruction": "Enter the common distance from the center to a vertex of this regular polygon.", + "_embeddedTypes": [ + "core:QuantitativeValue" + ] + }, + "numberOfSides": { + "type": "integer", + "minimum": 3, + "_instruction": "Enter the number of sides of this regular polygon." + } + } +} diff --git a/schemas/mathematicalShape/rhombus.schema.tpl.json b/schemas/mathematicalShape/rhombus.schema.tpl.json new file mode 100644 index 000000000..08ed6f076 --- /dev/null +++ b/schemas/mathematicalShape/rhombus.schema.tpl.json @@ -0,0 +1,22 @@ +{ + "_type": "sands:Rhombus", + "_categories": [ + "mathematicalShape", + "mathematical2DShape", + "simplePolygon" + ], + "required": [ + "diagonalLengths" + ], + "properties": { + "diagonalLengths": { + "type": "array", + "minItems": 2, + "maxItems": 2, + "_instruction": "Enter the lengths of the two perpendicular diagonals of this rhombus.", + "_embeddedTypes": [ + "core:QuantitativeValue" + ] + } + } +} diff --git a/schemas/mathematicalShape/rightCone.schema.tpl.json b/schemas/mathematicalShape/rightCone.schema.tpl.json new file mode 100644 index 000000000..fd0f05f76 --- /dev/null +++ b/schemas/mathematicalShape/rightCone.schema.tpl.json @@ -0,0 +1,26 @@ +{ + "_type": "sands:RightCone", + "_categories": [ + "mathematicalShape", + "mathematical3DShape" + ], + "required": [ + "apexBaseDistance", + "baseShape" + ], + "properties": { + "apexBaseDistance": { + "_instruction": "Enter the perpendicular distance from the center of the base plane to the apex of this right cone.", + "_embeddedTypes": [ + "core:QuantitativeValue" + ] + }, + "baseShape": { + "_instruction": "Enter the two-dimensional elliptic base shape of this right cone.", + "_embeddedTypes": [ + "sands:Circle", + "sands:Ellipse" + ] + } + } +} diff --git a/schemas/mathematicalShape/rightCylinder.schema.tpl.json b/schemas/mathematicalShape/rightCylinder.schema.tpl.json new file mode 100644 index 000000000..601e9c1e6 --- /dev/null +++ b/schemas/mathematicalShape/rightCylinder.schema.tpl.json @@ -0,0 +1,26 @@ +{ + "_type": "sands:RightCylinder", + "_categories": [ + "mathematicalShape", + "mathematical3DShape" + ], + "required": [ + "baseDistance", + "baseShape" + ], + "properties": { + "baseDistance": { + "_instruction": "Enter the perpendicular distance between the two base planes of this right cylinder.", + "_embeddedTypes": [ + "core:QuantitativeValue" + ] + }, + "baseShape": { + "_instruction": "Enter the two-dimensional elliptic base shape of the two planes of this right cylinder.", + "_embeddedTypes": [ + "sands:Circle", + "sands:Ellipse" + ] + } + } +} diff --git a/schemas/mathematicalShape/rightPrism.schema.tpl.json b/schemas/mathematicalShape/rightPrism.schema.tpl.json new file mode 100644 index 000000000..291c17217 --- /dev/null +++ b/schemas/mathematicalShape/rightPrism.schema.tpl.json @@ -0,0 +1,25 @@ +{ + "_type": "sands:RightPrism", + "_categories": [ + "mathematicalShape", + "mathematical3DShape" + ], + "required": [ + "baseDistance", + "baseShape" + ], + "properties": { + "baseDistance": { + "_instruction": "Enter the perpendicular distance between the two base planes of this right prism.", + "_embeddedTypes": [ + "core:QuantitativeValue" + ] + }, + "baseShape": { + "_instruction": "Enter the two-dimensional base shape of the two planes of this right prism.", + "_embeddedCategories": [ + "simplePolygon" + ] + } + } +} diff --git a/schemas/mathematicalShape/rightTriangle.schema.tpl.json b/schemas/mathematicalShape/rightTriangle.schema.tpl.json new file mode 100644 index 000000000..96a7c18b7 --- /dev/null +++ b/schemas/mathematicalShape/rightTriangle.schema.tpl.json @@ -0,0 +1,22 @@ +{ + "_type": "sands:RightTriangle", + "_categories": [ + "mathematicalShape", + "mathematical2DShape", + "simplePolygon" + ], + "required": [ + "perpendicularLegLengths" + ], + "properties": { + "perpendicularLegLengths": { + "type": "array", + "minItems": 2, + "maxItems": 2, + "_instruction": "Enter the lengths of the two perpendicular legs of this right triangle.", + "_embeddedTypes": [ + "core:QuantitativeValue" + ] + } + } +} diff --git a/schemas/mathematicalShape/sphere.schema.tpl.json b/schemas/mathematicalShape/sphere.schema.tpl.json new file mode 100644 index 000000000..ff7055494 --- /dev/null +++ b/schemas/mathematicalShape/sphere.schema.tpl.json @@ -0,0 +1,18 @@ +{ + "_type": "sands:Sphere", + "_categories": [ + "mathematicalShape", + "mathematical3DShape" + ], + "required": [ + "radius" + ], + "properties": { + "radius": { + "_instruction": "Enter the radius of this sphere.", + "_embeddedTypes": [ + "core:QuantitativeValue" + ] + } + } +} diff --git a/schemas/mathematicalShape/spheroid.schema.tpl.json b/schemas/mathematicalShape/spheroid.schema.tpl.json new file mode 100644 index 000000000..39ff569b1 --- /dev/null +++ b/schemas/mathematicalShape/spheroid.schema.tpl.json @@ -0,0 +1,25 @@ +{ + "_type": "sands:Spheroid", + "_categories": [ + "mathematicalShape", + "mathematical3DShape" + ], + "required": [ + "equatorialDiameter", + "polarDiameter" + ], + "properties": { + "equatorialDiameter": { + "_instruction": "Enter the equatorial diameters of this spheroid.", + "_embeddedTypes": [ + "core:QuantitativeValue" + ] + }, + "polarDiameter": { + "_instruction": "Enter the polar diameter of this spheroid.", + "_embeddedTypes": [ + "core:QuantitativeValue" + ] + } + } +} diff --git a/schemas/mathematicalShape/square.schema.tpl.json b/schemas/mathematicalShape/square.schema.tpl.json new file mode 100644 index 000000000..2936baf25 --- /dev/null +++ b/schemas/mathematicalShape/square.schema.tpl.json @@ -0,0 +1,19 @@ +{ + "_type": "sands:Square", + "_categories": [ + "mathematicalShape", + "mathematical2DShape", + "simplePolygon" + ], + "required": [ + "sideLength" + ], + "properties": { + "sideLength": { + "_instruction": "Enter the common length of the sides of this square.", + "_embeddedTypes": [ + "core:QuantitativeValue" + ] + } + } +} diff --git a/schemas/mathematicalShape/trapezoid.schema.tpl.json b/schemas/mathematicalShape/trapezoid.schema.tpl.json new file mode 100644 index 000000000..ea74c6c22 --- /dev/null +++ b/schemas/mathematicalShape/trapezoid.schema.tpl.json @@ -0,0 +1,29 @@ +{ + "_type": "sands:Trapezoid", + "_categories": [ + "mathematicalShape", + "mathematical2DShape", + "simplePolygon" + ], + "required": [ + "baseDistance", + "baseLengths" + ], + "properties": { + "baseDistance": { + "_instruction": "Enter the perpendicular distance between the parallel lines of the major and minor bases of this trapezoid.", + "_embeddedTypes": [ + "core:QuantitativeValue" + ] + }, + "baseLengths": { + "type": "array", + "minItems": 2, + "maxItems": 2, + "_instruction": "Enter the lengths of the major and minor bases of this trapezoid.", + "_embeddedTypes": [ + "core:QuantitativeValue" + ] + } + } +} diff --git a/schemas/mathematicalShape/triangle.schema.tpl.json b/schemas/mathematicalShape/triangle.schema.tpl.json new file mode 100644 index 000000000..aa0081b6c --- /dev/null +++ b/schemas/mathematicalShape/triangle.schema.tpl.json @@ -0,0 +1,29 @@ +{ + "_type": "sands:Triangle", + "_categories": [ + "mathematicalShape", + "mathematical2DShape", + "simplePolygon" + ], + "required": [ + "apexAngle", + "legLengths" + ], + "properties": { + "apexAngle": { + "_instruction": "Enter the angle at the apex of this triangle.", + "_embeddedTypes": [ + "core:QuantitativeValue" + ] + }, + "legLengths": { + "type": "array", + "minItems": 2, + "maxItems": 2, + "_instruction": "Enter the lengths of the two sides meeting at the apex of this triangle.", + "_embeddedTypes": [ + "core:QuantitativeValue" + ] + } + } +}