{"id":13289,"date":"2014-06-05T14:22:00","date_gmt":"2014-06-05T08:52:00","guid":{"rendered":"https:\/\/2thenew.online\/blog\/?p=13289"},"modified":"2014-06-05T14:47:49","modified_gmt":"2014-06-05T09:17:49","slug":"how-to-validate-xml-file-against-xsd-schema-and-list-all-validation-errors","status":"publish","type":"post","link":"https:\/\/2thenew.online\/blog\/how-to-validate-xml-file-against-xsd-schema-and-list-all-validation-errors\/","title":{"rendered":"How to validate XML file against XSD schema and list all validation errors"},"content":{"rendered":"<p dir=\"ltr\">Recently in my project, I had a requirement to validate XML file against XSD schema file and list all validation errors. XSD (XML Schema Definition) is a way to specify metadata (schema, constraints, etc) about the xml data. To validate an XML file against an XSD file, we normally do something like this:<br \/>\n[groovy]<br \/>\n        import javax.xml.XMLConstants<br \/>\n        import javax.xml.transform.stream.StreamSource<br \/>\n        import javax.xml.validation.SchemaFactory<\/p>\n<p>        try {<br \/>\n            File datafile = new File(xmlFilePath) \/\/instanceof XML file.<br \/>\n            File schemaFile = new File(xsdFilePath) \/\/instance of XSD file.<br \/>\n            SchemaFactory factory = SchemaFactory.newInstance(XMLConstants.W3C_XML_SCHEMA_NS_URI)<br \/>\n            Schema schema = factory.newSchema(new StreamSource(new<br \/>\n            FileReader(schemaFile))) \/\/instance of schema<br \/>\n            Validator validator = schema.newValidator() \/\/ instance of validator<br \/>\n            validator.validate(new StreamSource(new FileReader(datafile)))<br \/>\n        } catch (SAXParseException ex) {<br \/>\n            log.error &quot;Error at Line: ${ex.lineNumber} Column: ${ex.columnNumber} in ${xmlFile.name}&quot;<br \/>\n            log.error &quot;Message: ${ex.message}&quot;<br \/>\n        }<br \/>\n[\/groovy]<\/p>\n<p>SAXParseException is thrown by validate() when first validation error is encountered<br \/>\nin the XML file. We can use &#8216;lineNumber&#8217; and &#8216;columnNumber&#8217; fields of<br \/>\nSAXParseException object to know where exactly the error is. If there is no validation<br \/>\nerror (i.e the XML file complies to the specified schema), then no exception will be<br \/>\nthrown.<\/p>\n<p>But, through this approach, we cannot get information about all validation errors in the XML file in a single run. If an XML file has multiple validation errors (say four), then in first run, the exception will be thrown as soon as the first error will be encountered and we do not get to know about remaining three errors. To know about the subsequent errors, we need to fix the previous error and validate the file again and again till no exception is thrown.<\/p>\n<p>Now to list all errors in one go, we need to populate list<br \/>\nof errors by overriding error handling behaviour of the validate(). We need to add a custom ErrorHandler which populates a list of validation errors.<\/p>\n<p>All we need to do is..<br \/>\n[groovy]<br \/>\nValidator validator = schema.newValidator()<br \/>\n        List exceptions = [] \/\/Empty list to store errors<br \/>\n        \/\/Create a custom error handler that populates the list when errors occur.<br \/>\n        validator.setErrorHandler(new ErrorHandler() {<br \/>\n            @Override<br \/>\n            public void warning(SAXParseException exception) throws SAXException {<br \/>\n                exceptions &lt;&lt; exception<br \/>\n            }<\/p>\n<p>            @Override<br \/>\n            public void fatalError(SAXParseException exception) throws SAXException {<br \/>\n                exceptions &lt;&lt; exception<br \/>\n            }<\/p>\n<p>            @Override<br \/>\n            public void error(SAXParseException exception) throws SAXException {<br \/>\n                exceptions &lt;&lt; exception<br \/>\n            }<br \/>\n        });<br \/>\n[\/groovy]<\/p>\n<p>Now we can log the errors,<\/p>\n<p>[groovy]<br \/>\n    if (exceptions) {<br \/>\n            exceptions.each { ex -&gt;<br \/>\n                log.error &quot;Error at Line: ${ex.lineNumber} Column: ${ex.columnNumber} in ${xmlFile.name}&quot;<br \/>\n                log.error &quot;Message: ${ex.message}&quot;<br \/>\n            }<br \/>\n            return false<br \/>\n        } else {<br \/>\n            log.info(&quot;No errors found in ${xmlFile.name}&quot;)<br \/>\n        }<\/p>\n<p>[\/groovy]<br \/>\nHope it is helpful.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Recently in my project, I had a requirement to validate XML file against XSD schema file and list all validation errors. XSD (XML Schema Definition) is a way to specify metadata (schema, constraints, etc) about the xml data. To validate an XML file against an XSD file, we normally do something like this: [groovy] import [&hellip;]<\/p>\n","protected":false},"author":77,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"iawp_total_views":64,"footnotes":""},"categories":[7],"tags":[],"class_list":["post-13289","post","type-post","status-publish","format-standard","hentry","category-grails"],"aioseo_notices":[],"aioseo_head":"\n\t\t<!-- All in One SEO 5.0.0.1 - aioseo.com -->\n\t<meta name=\"description\" content=\"Recently in my project, I had a requirement to validate XML file against XSD schema file and list all validation errors. XSD (XML Schema Definition) is a way to specify metadata (schema, constraints, etc) about the xml data. To validate an XML file against an XSD file, we normally do something like this: [groovy] import\" \/>\n\t<meta name=\"robots\" content=\"max-image-preview:large\" \/>\n\t<meta name=\"author\" content=\"Manish Kapoor\"\/>\n\t<link rel=\"canonical\" href=\"https:\/\/2thenew.online\/blog\/how-to-validate-xml-file-against-xsd-schema-and-list-all-validation-errors\/\" \/>\n\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 5.0.0.1\" \/>\n\t\t<meta property=\"og:locale\" content=\"en_US\" \/>\n\t\t<meta property=\"og:site_name\" content=\"TO THE NEW BLOG\" \/>\n\t\t<meta property=\"og:type\" content=\"blog\" \/>\n\t\t<meta property=\"og:title\" content=\"How to validate XML file against XSD schema and list all validation errors | TO THE NEW Blog\" \/>\n\t\t<meta property=\"og:description\" content=\"Recently in my project, I had a requirement to validate XML file against XSD schema file and list all validation errors. XSD (XML Schema Definition) is a way to specify metadata (schema, constraints, etc) about the xml data. To validate an XML file against an XSD file, we normally do something like this: [groovy] import\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/2thenew.online\/blog\/how-to-validate-xml-file-against-xsd-schema-and-list-all-validation-errors\/\" \/>\n\t\t<meta property=\"og:image\" content=\"https:\/\/2thenew.online\/blog\/wp-content\/themes\/ttn\/images\/social-logo.png\" \/>\n\t\t<meta property=\"og:image:secure_url\" content=\"https:\/\/2thenew.online\/blog\/wp-content\/themes\/ttn\/images\/social-logo.png\" \/>\n\t\t<meta name=\"twitter:card\" content=\"summary\" \/>\n\t\t<meta name=\"twitter:site\" content=\"@tothenew\" \/>\n\t\t<meta name=\"twitter:title\" content=\"How to validate XML file against XSD schema and list all validation errors | TO THE NEW Blog\" \/>\n\t\t<meta name=\"twitter:description\" content=\"Recently in my project, I had a requirement to validate XML file against XSD schema file and list all validation errors. XSD (XML Schema Definition) is a way to specify metadata (schema, constraints, etc) about the xml data. To validate an XML file against an XSD file, we normally do something like this: [groovy] import\" \/>\n\t\t<meta name=\"twitter:image\" content=\"https:\/\/2thenew.online\/blog\/wp-content\/themes\/ttn\/images\/social-logo.png\" \/>\n\t\t<script type=\"application\/ld+json\" class=\"aioseo-schema\">\n\t\t\t{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\\\/\\\/www.tothenew.com\\\/blog\\\/how-to-validate-xml-file-against-xsd-schema-and-list-all-validation-errors\\\/#article\",\"name\":\"How to validate XML file against XSD schema and list all validation errors | TO THE NEW Blog\",\"headline\":\"How to validate XML file against XSD schema and list all validation errors\",\"author\":{\"@id\":\"https:\\\/\\\/www.tothenew.com\\\/blog\\\/author\\\/manish\\\/#author\"},\"publisher\":{\"@id\":\"https:\\\/\\\/www.tothenew.com\\\/blog\\\/#organization\"},\"datePublished\":\"2014-06-05T14:22:00+05:30\",\"dateModified\":\"2014-06-05T14:47:49+05:30\",\"inLanguage\":\"en-US\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/www.tothenew.com\\\/blog\\\/how-to-validate-xml-file-against-xsd-schema-and-list-all-validation-errors\\\/#webpage\"},\"isPartOf\":{\"@id\":\"https:\\\/\\\/www.tothenew.com\\\/blog\\\/how-to-validate-xml-file-against-xsd-schema-and-list-all-validation-errors\\\/#webpage\"},\"articleSection\":\"Grails\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/www.tothenew.com\\\/blog\\\/how-to-validate-xml-file-against-xsd-schema-and-list-all-validation-errors\\\/#breadcrumblist\",\"itemListElement\":[{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/www.tothenew.com\\\/blog#listItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/www.tothenew.com\\\/blog\",\"nextItem\":{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/www.tothenew.com\\\/blog\\\/category\\\/grails\\\/#listItem\",\"name\":\"Grails\"}},{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/www.tothenew.com\\\/blog\\\/category\\\/grails\\\/#listItem\",\"position\":2,\"name\":\"Grails\",\"item\":\"https:\\\/\\\/www.tothenew.com\\\/blog\\\/category\\\/grails\\\/\",\"nextItem\":{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/www.tothenew.com\\\/blog\\\/how-to-validate-xml-file-against-xsd-schema-and-list-all-validation-errors\\\/#listItem\",\"name\":\"How to validate XML file against XSD schema and list all validation errors\"},\"previousItem\":{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/www.tothenew.com\\\/blog#listItem\",\"name\":\"Home\"}},{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/www.tothenew.com\\\/blog\\\/how-to-validate-xml-file-against-xsd-schema-and-list-all-validation-errors\\\/#listItem\",\"position\":3,\"name\":\"How to validate XML file against XSD schema and list all validation errors\",\"previousItem\":{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/www.tothenew.com\\\/blog\\\/category\\\/grails\\\/#listItem\",\"name\":\"Grails\"}}]},{\"@type\":\"Organization\",\"@id\":\"https:\\\/\\\/www.tothenew.com\\\/blog\\\/#organization\",\"name\":\"TO THE NEW Blog\",\"url\":\"https:\\\/\\\/www.tothenew.com\\\/blog\\\/\"},{\"@type\":\"Person\",\"@id\":\"https:\\\/\\\/www.tothenew.com\\\/blog\\\/author\\\/manish\\\/#author\",\"url\":\"https:\\\/\\\/www.tothenew.com\\\/blog\\\/author\\\/manish\\\/\",\"name\":\"Manish Kapoor\",\"image\":{\"@type\":\"ImageObject\",\"@id\":\"https:\\\/\\\/www.tothenew.com\\\/blog\\\/how-to-validate-xml-file-against-xsd-schema-and-list-all-validation-errors\\\/#authorImage\",\"url\":\"https:\\\/\\\/newersworld-sf-static.tothenew.net\\\/prod\\\/profilePicFolder\\\/f118a3bb-db11-4b66-b743-d176e7d21e01_manish.kapoor@tothenew.com.jpg\",\"width\":96,\"height\":96,\"caption\":\"Manish Kapoor\"}},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/www.tothenew.com\\\/blog\\\/how-to-validate-xml-file-against-xsd-schema-and-list-all-validation-errors\\\/#webpage\",\"url\":\"https:\\\/\\\/www.tothenew.com\\\/blog\\\/how-to-validate-xml-file-against-xsd-schema-and-list-all-validation-errors\\\/\",\"name\":\"How to validate XML file against XSD schema and list all validation errors | TO THE NEW Blog\",\"description\":\"Recently in my project, I had a requirement to validate XML file against XSD schema file and list all validation errors. XSD (XML Schema Definition) is a way to specify metadata (schema, constraints, etc) about the xml data. To validate an XML file against an XSD file, we normally do something like this: [groovy] import\",\"inLanguage\":\"en-US\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/www.tothenew.com\\\/blog\\\/#website\"},\"breadcrumb\":{\"@id\":\"https:\\\/\\\/www.tothenew.com\\\/blog\\\/how-to-validate-xml-file-against-xsd-schema-and-list-all-validation-errors\\\/#breadcrumblist\"},\"author\":{\"@id\":\"https:\\\/\\\/www.tothenew.com\\\/blog\\\/author\\\/manish\\\/#author\"},\"creator\":{\"@id\":\"https:\\\/\\\/www.tothenew.com\\\/blog\\\/author\\\/manish\\\/#author\"},\"datePublished\":\"2014-06-05T14:22:00+05:30\",\"dateModified\":\"2014-06-05T14:47:49+05:30\"},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/www.tothenew.com\\\/blog\\\/#website\",\"url\":\"https:\\\/\\\/www.tothenew.com\\\/blog\\\/\",\"name\":\"TO THE NEW Blog\",\"inLanguage\":\"en-US\",\"publisher\":{\"@id\":\"https:\\\/\\\/www.tothenew.com\\\/blog\\\/#organization\"}}]}\n\t\t<\/script>\n\t\t<!-- All in One SEO -->\n\n","aioseo_head_json":{"title":"How to validate XML file against XSD schema and list all validation errors | TO THE NEW Blog","description":"Recently in my project, I had a requirement to validate XML file against XSD schema file and list all validation errors. XSD (XML Schema Definition) is a way to specify metadata (schema, constraints, etc) about the xml data. To validate an XML file against an XSD file, we normally do something like this: [groovy] import","canonical_url":"https:\/\/2thenew.online\/blog\/how-to-validate-xml-file-against-xsd-schema-and-list-all-validation-errors\/","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/2thenew.online\/blog\/how-to-validate-xml-file-against-xsd-schema-and-list-all-validation-errors\/#article","name":"How to validate XML file against XSD schema and list all validation errors | TO THE NEW Blog","headline":"How to validate XML file against XSD schema and list all validation errors","author":{"@id":"https:\/\/2thenew.online\/blog\/author\/manish\/#author"},"publisher":{"@id":"https:\/\/2thenew.online\/blog\/#organization"},"datePublished":"2014-06-05T14:22:00+05:30","dateModified":"2014-06-05T14:47:49+05:30","inLanguage":"en-US","mainEntityOfPage":{"@id":"https:\/\/2thenew.online\/blog\/how-to-validate-xml-file-against-xsd-schema-and-list-all-validation-errors\/#webpage"},"isPartOf":{"@id":"https:\/\/2thenew.online\/blog\/how-to-validate-xml-file-against-xsd-schema-and-list-all-validation-errors\/#webpage"},"articleSection":"Grails"},{"@type":"BreadcrumbList","@id":"https:\/\/2thenew.online\/blog\/how-to-validate-xml-file-against-xsd-schema-and-list-all-validation-errors\/#breadcrumblist","itemListElement":[{"@type":"ListItem","@id":"https:\/\/2thenew.online\/blog#listItem","position":1,"name":"Home","item":"https:\/\/2thenew.online\/blog","nextItem":{"@type":"ListItem","@id":"https:\/\/2thenew.online\/blog\/category\/grails\/#listItem","name":"Grails"}},{"@type":"ListItem","@id":"https:\/\/2thenew.online\/blog\/category\/grails\/#listItem","position":2,"name":"Grails","item":"https:\/\/2thenew.online\/blog\/category\/grails\/","nextItem":{"@type":"ListItem","@id":"https:\/\/2thenew.online\/blog\/how-to-validate-xml-file-against-xsd-schema-and-list-all-validation-errors\/#listItem","name":"How to validate XML file against XSD schema and list all validation errors"},"previousItem":{"@type":"ListItem","@id":"https:\/\/2thenew.online\/blog#listItem","name":"Home"}},{"@type":"ListItem","@id":"https:\/\/2thenew.online\/blog\/how-to-validate-xml-file-against-xsd-schema-and-list-all-validation-errors\/#listItem","position":3,"name":"How to validate XML file against XSD schema and list all validation errors","previousItem":{"@type":"ListItem","@id":"https:\/\/2thenew.online\/blog\/category\/grails\/#listItem","name":"Grails"}}]},{"@type":"Organization","@id":"https:\/\/2thenew.online\/blog\/#organization","name":"TO THE NEW Blog","url":"https:\/\/2thenew.online\/blog\/"},{"@type":"Person","@id":"https:\/\/2thenew.online\/blog\/author\/manish\/#author","url":"https:\/\/2thenew.online\/blog\/author\/manish\/","name":"Manish Kapoor","image":{"@type":"ImageObject","@id":"https:\/\/2thenew.online\/blog\/how-to-validate-xml-file-against-xsd-schema-and-list-all-validation-errors\/#authorImage","url":"https:\/\/newersworld-sf-static.tothenew.net\/prod\/profilePicFolder\/f118a3bb-db11-4b66-b743-d176e7d21e01_manish.kapoor@tothenew.com.jpg","width":96,"height":96,"caption":"Manish Kapoor"}},{"@type":"WebPage","@id":"https:\/\/2thenew.online\/blog\/how-to-validate-xml-file-against-xsd-schema-and-list-all-validation-errors\/#webpage","url":"https:\/\/2thenew.online\/blog\/how-to-validate-xml-file-against-xsd-schema-and-list-all-validation-errors\/","name":"How to validate XML file against XSD schema and list all validation errors | TO THE NEW Blog","description":"Recently in my project, I had a requirement to validate XML file against XSD schema file and list all validation errors. XSD (XML Schema Definition) is a way to specify metadata (schema, constraints, etc) about the xml data. To validate an XML file against an XSD file, we normally do something like this: [groovy] import","inLanguage":"en-US","isPartOf":{"@id":"https:\/\/2thenew.online\/blog\/#website"},"breadcrumb":{"@id":"https:\/\/2thenew.online\/blog\/how-to-validate-xml-file-against-xsd-schema-and-list-all-validation-errors\/#breadcrumblist"},"author":{"@id":"https:\/\/2thenew.online\/blog\/author\/manish\/#author"},"creator":{"@id":"https:\/\/2thenew.online\/blog\/author\/manish\/#author"},"datePublished":"2014-06-05T14:22:00+05:30","dateModified":"2014-06-05T14:47:49+05:30"},{"@type":"WebSite","@id":"https:\/\/2thenew.online\/blog\/#website","url":"https:\/\/2thenew.online\/blog\/","name":"TO THE NEW Blog","inLanguage":"en-US","publisher":{"@id":"https:\/\/2thenew.online\/blog\/#organization"}}]},"og:locale":"en_US","og:site_name":"TO THE NEW BLOG","og:type":"blog","og:title":"How to validate XML file against XSD schema and list all validation errors | TO THE NEW Blog","og:description":"Recently in my project, I had a requirement to validate XML file against XSD schema file and list all validation errors. XSD (XML Schema Definition) is a way to specify metadata (schema, constraints, etc) about the xml data. To validate an XML file against an XSD file, we normally do something like this: [groovy] import","og:url":"https:\/\/2thenew.online\/blog\/how-to-validate-xml-file-against-xsd-schema-and-list-all-validation-errors\/","og:image":"https:\/\/2thenew.online\/blog\/wp-content\/themes\/ttn\/images\/social-logo.png","og:image:secure_url":"https:\/\/2thenew.online\/blog\/wp-content\/themes\/ttn\/images\/social-logo.png","twitter:card":"summary","twitter:site":"@tothenew","twitter:title":"How to validate XML file against XSD schema and list all validation errors | TO THE NEW Blog","twitter:description":"Recently in my project, I had a requirement to validate XML file against XSD schema file and list all validation errors. XSD (XML Schema Definition) is a way to specify metadata (schema, constraints, etc) about the xml data. To validate an XML file against an XSD file, we normally do something like this: [groovy] import","twitter:image":"https:\/\/2thenew.online\/blog\/wp-content\/themes\/ttn\/images\/social-logo.png"},"aioseo_meta_data":{"post_id":"13289","title":null,"description":null,"keywords":null,"keyphrases":null,"primary_term":null,"canonical_url":null,"og_title":null,"og_description":null,"og_object_type":"default","og_image_type":"default","og_image_url":null,"og_image_width":null,"og_image_height":null,"og_image_custom_url":null,"og_image_custom_fields":null,"og_video":null,"og_custom_url":null,"og_article_section":null,"og_article_tags":null,"twitter_use_og":false,"twitter_card":"default","twitter_image_type":"default","twitter_image_url":null,"twitter_image_custom_url":null,"twitter_image_custom_fields":null,"twitter_title":null,"twitter_description":null,"schema":{"blockGraphs":[],"customGraphs":[],"default":{"data":{"Article":[],"Course":[],"Dataset":[],"FAQPage":[],"Movie":[],"Person":[],"Product":[],"ProductReview":[],"Car":[],"Recipe":[],"Service":[],"SoftwareApplication":[],"WebPage":[]},"graphName":"Article","isEnabled":true},"graphs":[]},"schema_type":null,"schema_type_options":null,"pillar_content":false,"robots_default":true,"robots_noindex":false,"robots_noarchive":false,"robots_nosnippet":false,"robots_nofollow":false,"robots_noimageindex":false,"robots_noodp":false,"robots_notranslate":false,"robots_max_snippet":null,"robots_max_videopreview":null,"robots_max_imagepreview":"large","priority":null,"frequency":null,"local_seo":null,"limit_modified_date":false,"created":"2021-04-29 12:57:54","updated":"2024-02-29 08:41:23","focus_keyword":null,"additional_keywords":null,"truseo_locale":null,"ai":null,"breadcrumb_settings":null,"seo_analyzer_scan_date":null},"aioseo_breadcrumb":"<div class=\"aioseo-breadcrumbs\"><span class=\"aioseo-breadcrumb\">\n\t\t\t<a href=\"https:\/\/2thenew.online\/blog\" title=\"Home\">Home<\/a>\n\t\t<\/span><span class=\"aioseo-breadcrumb-separator\">&raquo;<\/span><span class=\"aioseo-breadcrumb\">\n\t\t\t<a href=\"https:\/\/2thenew.online\/blog\/category\/grails\/\" title=\"Grails\">Grails<\/a>\n\t\t<\/span><span class=\"aioseo-breadcrumb-separator\">&raquo;<\/span><span class=\"aioseo-breadcrumb\">\n\t\t\tHow to validate XML file against XSD schema and list all validation errors\n\t\t<\/span><\/div>","aioseo_breadcrumb_json":[{"label":"Home","link":"https:\/\/2thenew.online\/blog"},{"label":"Grails","link":"https:\/\/2thenew.online\/blog\/category\/grails\/"},{"label":"How to validate XML file against XSD schema and list all validation errors","link":"https:\/\/2thenew.online\/blog\/how-to-validate-xml-file-against-xsd-schema-and-list-all-validation-errors\/"}],"_links":{"self":[{"href":"https:\/\/2thenew.online\/blog\/wp-json\/wp\/v2\/posts\/13289","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/2thenew.online\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/2thenew.online\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/2thenew.online\/blog\/wp-json\/wp\/v2\/users\/77"}],"replies":[{"embeddable":true,"href":"https:\/\/2thenew.online\/blog\/wp-json\/wp\/v2\/comments?post=13289"}],"version-history":[{"count":0,"href":"https:\/\/2thenew.online\/blog\/wp-json\/wp\/v2\/posts\/13289\/revisions"}],"wp:attachment":[{"href":"https:\/\/2thenew.online\/blog\/wp-json\/wp\/v2\/media?parent=13289"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/2thenew.online\/blog\/wp-json\/wp\/v2\/categories?post=13289"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/2thenew.online\/blog\/wp-json\/wp\/v2\/tags?post=13289"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}