ABCDEFGHIJKLMNOPQRSTUVWXYZAA
1
SPLICE SLC Catalog Schema
2
Field NameField SpecificationsExample ValueRequiredProposed ChangesAnnotation
3
catalog_typeSingle Value: Controlled ontology: One of the list of catalogs in the meta-catalog.SLCItemCatalogTRUEWe don't absolutely need this, because the catalog type could be inferred from the fields. But we'll keep it for now.
4
persistentIDSingle Value: String that will be unique for a particular entry and can be repeated to update entrieshttps://opendsax.cs.vt.edu/embed/GrowthRatesPROTRUEWe require submitters provide some persistentID for each exercise. For many this might be the iframe_url, but we also considered using the canonical home of the exercise in our open source repository.
5
platform_nameSingle Value: Controlled ontology: One of the entries in the tools catalog.OpenDSATRUEThe platform name has to map to an entry in the tools catalog.
6
Iframe URLSingle Value: URL formathttps://opendsax.cs.vt.edu/embed/GrowthRatesPROTRUEQuestion: Can it be HTTP? Will that fail when embedded into HTTPS? Question: What is the unique identifier for an entry? Is this it?This is the URL that we embed into the iframe in the item page in the catalog.
7
Protocol Instructions URLSingle Value: URL formathttps://opendsa-server.cs.vt.edu/guides/opendsa-canvasFalse (only if interface exists and == something useful)DEPRECATED: Put this information in the tool
8
LicenseSingle Value: URL formathttps://github.com/opendsa/opendsa/blob/master/MIT-license.txtFalse (but heavily recommended)Should we make this a required field?The link to the license text.
9
DescriptionSingle Value: A string.Introduction Summary QuestionsTRUEAny additional information the content provider wants to provide about an exercise. Typically something descriptive about the content and the type (this can be redundant with keywords or features).
10
AuthorArray of strings[“Cliff Shaffer”, “Molly Domino”]TRUECredit to authors
11
InstitutionArray of strings[“Virginia Tech”, “Stanford University”]TRUECredit to author affiliations
12
KeywordsArray of strings from a controlled vocabulary.[“Algorithm Analysis”, “Hashing”, “Cost Analysis”]TRUESee: SPLICE Catalog Ontology
13
FeaturesArray of strings from a controlled vocabulary.[“Question Set”, “Interactive Proficiency Exercise”]TRUEConsider a better word for this?See Ontology TBD.
14
TitleStringGrowth Rates Ordering ExerciseTRUEShould briefly characterize the topic/SLC type.
15
Programming LanguageArray of strings from a controlled vocabulary: Java; Python; C++, N/A[“Java”, “Python”, “N/A”]False (or reasonable default)
16
Natural LanguageArray of strings from controlled vocabulary: ISO Set 1 2-letter language codes[“en”, “fr”]TRUEAllow a choice: ISO Set 1 2-letter code, OR the 5-character locale code.An array of natural languages that the exercise supports
17
ProtocolArray: Controlled ontology: LTI 1.1, LTI 1.3, SPLICE, A+[LTI 1.1, SPLICE, A+]FALSEWe assume by default that HTTP is supported, as defined by the iframe URL. There is some "risk" that the iframe URL will be redundant with one of the protocol URLs.
18
Protocol URLArray - length matching protocol array length[https://opendsax.cs.vt.edu/lti/launch?custom_ex_short_name=GrowthRatesPRO&custom_ex_settings=%7B%7D]False (only if interface exists and == something useful)Make this field more generic - depends on interface

If this interface URL is LTI 1.1 or SPLICE API, then we should be able to design a request to validate whether it works or not

If it is an HTTP only link, we can validate that it returns a 200 at least
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100