Update: 1 September 2014
The CCSSO has updated the CoreStandards.org website and most of the links in this post no longer work. However, the Common Core XML files still exist and can be found with the developer information here. Sometime in the near future, I'll re-write this post to describe the new provisions that the CCSSO has made for the techie crowd.
The CCSSO has updated the CoreStandards.org website and most of the links in this post no longer work. However, the Common Core XML files still exist and can be found with the developer information here. Sometime in the near future, I'll re-write this post to describe the new provisions that the CCSSO has made for the techie crowd.
Today I'm going into the nuts and bolts of how a developer can make use of the XML. There are some useful features that aren't obvious at first glance. For background, I recommend that you read the announcement memo that accompanied the release of the XML on the corestandards.org website.
Canonical Identifiers
The canonical identifiers for the common core state standards are available in .csv form here: http://corestandards.org/assets/E0607_ccss_identifiers.csv. The first column lists the URLs that were formerly on the Corestandards.org website. They are included to support conversions for legacy applications.Notable is there is an exact 1:1 mapping between the three ID types and there are 1844 IDs in the table. So if two applications are using different forms of IDs (e.g. one uses GUIDs and another uses URIs) the translation is a deterministic table lookup. A closer examination will show that there's a simple algorithmic conversion between the "dot notation" identifiers and the corresponding URIs. I've written functions in c# to do the translation and posted them here. It should be easy to port them to Java or any other language.
Hierarchy
The standards for Mathematics and ELA/Literacy follow different hierarchies that are suited to the way the standards are written and are intended to be used. The Dot Notation and URL forms of the identifiers can be parsed into the corresponding hierarchies as shown in the following examples.Math Example
Dot Notation: CCSS.Math.Content.HSA-SSE.A.1bURL: http://corestandards.org/Math/Content/HSA/SSE/A/1/b
Initiative | CCSS | (Common Core State Standards) |
Framework | Math | |
Set | Content | (Options are 'Content' and 'Practice') |
Grade | HSA | (High School Algebra) |
Domain | SSE | (Seeing Structure in Expressions) |
Cluster | A | |
Standard | 1 | |
Component | b |
You can reference the math standards at the Component, Standard and Cluster levels. Thus, the following are all valid CCSS URI Identifiers:
- http://corestandards.org/Math/Content/HSA/SSE/A/1/b
- http://corestandards.org/Math/Content/HSA/SSE/A/1
- http://corestandards.org/Math/Content/HSA/SSE/A
- http://corestandards.org/Math/Content/HSA/SSE/A/1/b.xml
- http://corestandards.org/Math/Content/HSA/SSE/A/1.xml
- http://corestandards.org/Math/Content/HSA/SSE/A.xml
While the canonical IDs don't include Domain or Grade levels, you can retrieve all standards within a domain or grade by hacking the URL as follows:
And, you can retrieve all of the math standards in one XML document with this URL:
ELA/Literacy Example
Dot Notation: CCSS.ELA-Literacy.W.9-10.3dURL: http://www.corestandards.org/ELA-Literacy/W/9-10/3/d
Initiative | CCSS | (Common Core State Standards) |
Framework | ELA-Literacy | |
Set | (Optional, not used in this example) | |
Strand+Domain | W | (Writing) |
Grade | 9-10 | |
Standard | 3 | |
Component | d |
You can reference the literacy standards at the Component, Standard and Grade levels. Thus, the following are all valid CCSS URI Identifiers:
- http://www.corestandards.org/ELA-Literacy/W/9-10/3/d
- http://www.corestandards.org/ELA-Literacy/W/9-10/3
- http://www.corestandards.org/ELA-Literacy/W/9-10
- http://www.corestandards.org/ELA-Literacy/W/9-10/3/d.xml
- http://www.corestandards.org/ELA-Literacy/W/9-10/3.xml
- http://www.corestandards.org/ELA-Literacy/W/9-10.xml
And, you can retrieve all of the ELA/Literacy standards in one XML document with this URL:
Useful information, Thanks.
ReplyDeleteAny idea how one can look up the full text description for a Domain or Set acronym?
eg: http://www.corestandards.org/Math/Content/HSA/SSE ->
HSA = High School Algebra
SSE = Seeing Structure in Expressions
Likewise for ELA: http://www.corestandards.org/ELA-Literacy/RL/9-10
RL = Reading and Literacy.
You, of course, get the HTML/Human readable version using the URL you specified. Adding .xml like this "http://www.corestandards.org/Math/Content/HSA/SSE.xml" results in an XML document containing all four standards in that domain including the five bulleted items. Left out of the XML version are the textual headings (e.g. "Interpret the structure of expressions."). I'm guessing that's because they are helpful for access but don't compose an actual standard.
ReplyDeleteThanks for this! The CCSS would do well to have you write some docs for them :-)
ReplyDeleteLike the previous commenter I wish I could get data representations of the higher level entities. For example
http://corestandards.org/Math/Content/7/SP/C.xml will list all the standards in this cluster, and they all have childOf=C62D7937C1DD4C009128AE62E48A92C3 but as far as I can tell even if you download everything you will not find an entity whose RefID equals C62D7937C1DD4C009128AE62E48A92C3 so in order to construct a complete tree you need to add some things manually
I seem to have the same problem as the other two comments. The XML is great for 90% of this but there doesn't seem to be an easy way to extract that SSE means Seeing Structure in Expressions. This is not a very long list but it's surprising there's not a domains.xml somewhere. In addition, a mathematicalpractices.xml would be great.
ReplyDeleteThanks for the article though. It's a huge help.
Hi Mr T and Colin:
ReplyDeleteThe CCSSO, who has handled the publishing of the common core, is aware of some of these issues but they've been cautious about publishing updates due to a backlash that happened last time they published fixes. When many organizations rely on the way something is presently working, updates have to be handled carefully. I expect something to happen within the next six months or so.
It seems the xml links are now dead. Was there a site update that killed them? I've noticed all the xml links above return a Page Not Found. Any idea on when the .xml functionality will return?
ReplyDeleteAs part of their campaign to promote the Common Core to a general audience, the CCSSO has done a full update to the website. Unfortunately for us techie folk, they sequestered the XML in the process. There's now a developer page at http://www.corestandards.org/developers-and-publishers/ and about 2/3 down that page is a link that will let you download all of the XML in one .zip package. I'm talking with them about what might be done to improve this but at least they haven't left developers totally in the dark.
ReplyDelete